Why item mapping is required
ZRA Smart Invoice requires every product or service that appears on a fiscal receipt to be pre-registered with a standardized classification code. This is how ZRA categorizes what your business sells and which tax rules apply. DishInk handles the ZRA registration automatically — but you need to tell DishInk what category each menu item belongs to.Items that have not been mapped and synced to ZRA cannot appear on fiscal receipts. If an unmapped item is sold, DishInk will still complete the sale but the ZRA submission will use a generic fallback description rather than the specific item name.
UNSPSC codes
UNSPSC stands for United Nations Standard Products and Services Code. ZRA uses this international standard to classify all goods and services. For a restaurant, nearly everything you sell falls into a small number of categories:
DishInk provides a searchable list of the most common restaurant codes. You can search by:
- Item name (e.g. “burger”, “beer”, “coffee”)
- Code prefix (e.g. “5019”)
- Category name (e.g. “prepared meals”)
VAT categories
Each item also needs a VAT category that tells ZRA how to tax it:Mapping your items
- Go to ZRA Smart Invoice → Item Mapping
- You will see all your menu items listed with their current mapping status
- For each unmapped item:
- Click the UNSPSC field and search for the right category
- Select the VAT category from the dropdown
- Click Save Mapping
Bulk mapping
If many items share the same category (e.g. all your spirits are the same UNSPSC code):- Select multiple items using the checkboxes
- Click Bulk Apply
- Set the UNSPSC code and VAT category once
- Click Apply to X items
Syncing to ZRA
Saving a mapping in DishInk does not immediately tell ZRA. You need to sync:- Sync Pending — sends all items that have been mapped but not yet sent to ZRA
- Sync All — force-resyncs every mapped item (use after changing codes)
- Retry — on individual items that failed to sync
Syncing registers items with ZRA using your device’s TPIN and branch code. An active, initialized device must exist before you can sync.
Sync statuses
Understanding sync failures
Common reasons an item sync fails: Invalid UNSPSC code The code you entered does not exist in ZRA’s classification list. Search DishInk’s code browser for the closest match. Item name too long ZRA caps item names at 200 characters. Shorten the menu item name. No active device You cannot sync items without an initialized, active device. Set up your device first. ZRA server unavailable Temporary ZRA outage. Click Retry — DishInk will try again automatically.Keeping mappings up to date
- When you add a new menu item, DishInk will show it as Not Mapped
- When you change a classification code, the item reverts to Pending Sync and must be re-synced
- Changing a price or item name alone does not require re-sync

