Skip to content

How to Print a Receipt

The receipt is the only thing a customer takes away from a POS sale. Getting it right is two settings and one test print.

Go to DevDiggers Plugins → MultiPOS → Configuration → Printer and find the Receipt Size section.

The Receipt Size section with width, height and margin fields

Field Default Set it to
Thermal Roll Width 150mm Your paper width, usually 80mm or 58mm
Thermal Content Height 300mm Leave empty for automatic
Safe Content Margins 10mm Enough to stop text clipping

The Thermal Roll Width field on the printer tab

  • Thermal Roll Width is the one that matters. The 150mm default suits a wide label printer, and most receipt printers take 80mm or 58mm. Measure the roll rather than guessing.
  • Thermal Content Height left empty lets the receipt grow to fit. A fixed height either cuts a long order short or feeds blank paper after a short one.

Click Save Changes.

The receipt prints your outlet’s name, street, city, postcode, phone and email.

The Location and Contact section of the outlet form

Go to MultiPOS → Outlet and read them. This is what a customer looks at when they want to bring something back. Use the trading address rather than a registered office.

Go to Configuration → General → Branding.

The Branding section of the General tab with the POS logo field

POS Terminal Branding Logo prints at the top of the receipt. The recommended size is 200 by 60 pixels.

Use a simple, high-contrast version. Thermal printers have no greyscale worth the name, so fine detail and soft gradients come out as a smudge.

Open the POS, add a product, and press Proceed to Pay.

The POS payment screen with the total due, payment methods and numeric keypad

Choose a method, enter the amount handed over and press Pay.

A Print Receipt prompt appears carrying the order number and its status. Press Print.

The Print Receipt prompt naming the order and its status

The browser print dialog opens. Two settings decide whether the receipt fits:

  • Margins: None. Browser margins fight the millimetre values you set in step 1.
  • Scale: 100%. “Fit to page” resizes the receipt and throws your width out.

Set both once and most browsers remember them for that printer.

  • Your logo
  • The outlet’s name, address, phone and email
  • The order number, date and cashier
  • Every line item with quantity and price
  • Subtotal, tax, discount and total
  • The payment method, the amount handed over and the change
  • Text runs off the right edge. Thermal Roll Width is bigger than the paper. Set it to 80mm or 58mm.
  • Every receipt feeds a page of blank paper. Thermal Content Height is set. Empty it.
  • The edges are clipped. Increase Safe Content Margins, or check the print dialog is on Margins: None.
  • The logo is a black block. The logo has a transparent or dark background. Re-export it as a high-contrast image on white.
  • Nothing prints at all. The browser cannot see the printer. That is an operating system problem, not a plugin one. Print a test page from the printer’s own settings first.

A cashier can reopen a past order from Orders in the terminal and print it again. Select the order in the Online tab, then press Print Invoice at the bottom of the detail panel.

The Print Invoice button on a POS order detail panel

Closing the print prompt without printing never undoes a sale. The order is already created.

The printed receipt carries your logo, the outlet’s name and address, the order number and date, the cashier and the customer. Under those sit every line with its unit price and quantity, then the totals down to the change given.

A printed MultiPOS sales receipt showing the order, items and totals

Everything on it comes from the receipt template, so a field you do not want is removed there rather than in the printer settings.

The three size fields also live inside the terminal, under Settings → Outlet.

The POS settings screen showing the outlet section

That override is per-cashier and per-browser, which is what you want when two terminals in one shop have different printers.