Overview

What the receipt template builder is and when to use it.

The receipt template builder lets administrators design custom print templates directly on the device. A template is an ordered list of commands that the printer executes from top to bottom — each command adds a line of text, a table row, a barcode, a spacer, or other elements to the printed output. Templates are stored on the Omnium server and are shared across the entire tenant.

The receipt template builder is available on Android, iOS, and Windows. It is not available on the web version of the app.

Opening the builder

  1. Open Settings (tap the gear icon in the sidebar).
  2. Scroll to the Printer section and tap Receipt Templates.

The Receipt Builder screen opens. If no template is loaded, the canvas area is empty. Tap the folder icon in the top bar to open My Templates and load an existing template, or use the menu to create a new one.

Screen layout

The builder adapts its layout to the screen size:

Screen widthLayout
Under 600 px (mobile)Tabs switch between the template canvas and the command palette. A floating + button adds commands.
600–1200 px (tablet)Canvas on the left, command palette panel on the right, side by side.
Over 1200 px (desktop)Three columns: command palette, canvas, properties panel.

On tablet and desktop, the command palette and canvas are always visible at the same time. On mobile, switch between them using the tabs at the top.

AppBar controls

The top bar shows the screen title Receipt Builder and, when a template is loaded, an Editing: [template name] chip. The following controls are available:

ControlWhat it does
Folder iconOpens My Templates — browse, load, or delete saved templates
Print iconSends a test print of the current template to the configured printer
menuSave, Save As, Template Settings, Show JSON, Tutorial Mode

Core concepts

Commands

Every element on a receipt is a command. Commands are added from the command palette and appear as rows on the canvas. Reorder them by dragging, or remove them individually.

There are ten command types in four categories:

Content

CommandWhat it prints
TextA single line of text. Supports merge tags, alignment, font size, and bold.
Table RowA row with up to three columns — useful for item name, quantity, and price lines.
Merge GroupIterates over a collection (e.g. line items, payments) and repeats a sub-template for each entry. Use item.* merge tags inside the group.

Layout

CommandWhat it prints
Feed LinesAdvances the paper by a number of blank lines (default: 1).
DividerPrints a horizontal rule — a repeated character across the paper width (default: -, 32 characters).
SpacerAdds a fixed amount of vertical space in millimetres.

Graphics

CommandWhat it prints
ImagePrints a logo or image. Default source: {{logoUrl}} (the tenant logo).
BarcodePrints a 1D barcode. Default type: CODE128, default data: {{order.orderNumber}}.
QR CodePrints a QR code with configurable data and size.

Control

CommandWhat it prints
Cut PaperSends a cutter signal to the printer at the end of the receipt.

Merge tags

Merge tags embed live data into text commands. They use the format {{path}}, for example {{order.orderNumber}} or {{store.name}}.

Four data contexts are available:

ContextExample tags
Store{{store.name}}, {{store.phone}}, {{store.email}}, {{store.orgNumber}}, {{store.url}}, {{store.address.street}}
Shipment{{shipment.shipmentMethod}}, {{shipment.trackingNumber}}, {{shipment.address.name}}, {{shipment.address.street}}
Meta{{meta.printedAt}}
Order{{order.orderNumber}}, {{order.createdDate}}, {{order.grandTotal}}, and many more order-level fields

Collections — used inside a Merge Group command — allow you to iterate over:

CollectionItem fields (item.*)
order.orderForm.lineItemsitem.displayName, item.code, item.ean, item.quantity, item.placedPrice, item.lineItemId, and more
order.orderForm.discountsitem.discountName, item.discountAmount, and more
order.orderForm.paymentsitem.paymentMethod, item.amount, and more

Inside a Merge Group, set the Collection property to one of the paths above and reference fields as item.* in the nested commands.

Template areas

Each template is assigned to an area that controls where it is available for printing:

AreaWhen it is offered
Sale ReceiptPrinting from a completed sale or order
OtherOther manual print actions

Store and market scoping

When saving a template, you can optionally restrict it to specific stores and/or markets. Leave both fields empty to make the template available across the entire tenant.

Server-side storage

Templates are saved to and loaded from the Omnium server. Any template saved from one device is immediately available on all other devices in the tenant. There is no local-only template storage.

In this section

On this page