Cash register integration

In many store setups, shoppers may be able to scan products themselves but then need to complete payment at a traditional staffed register (instead of using a digital payment on the app directly). shopreme enables this hybrid flow through the Pay at Cash Register (PAC) integration.
This article outlines when PAC integration is necessary, what it enables, how it operates, and who typically supports it on the retailer’s side.

Why this integration is important

Pay At Cash Register (PAC) lets a shopper hand over their Scan & Go shopping basket to a cashier using a QR code. This creates a familiar checkout experience while still reducing friction and wait times.

This process must be integrated with the retailer’s POS system and is only required when “Pay at Cash Register” is offered as a payment option.

From a technical standpoint, PAC ensures:

  • The cash register can retrieve the shopper’s basket

  • The Scan & Go app locks the basket during checkout

  • The shopreme backend is notified when payment is complete or canceled

  • Optional: in-store audits (spot checks) and age verification are enforced, handled either by shopreme Supervisor or on the cash register.

How the cash register flow works

1. Basket handover

At checkout, the Scan & Go app shows a QR code with a unique Transaction ID. The cash register scans this to retrieve the basket using one of two endpoints:

Option

When to use

/evaluatedBasket

Use this when the basket is finalized, including prices

/unevaluatedBasket

Use this when the cashier may modify items or prices

Once the basket is handed over:

  • The shopper’s app enters a lock state

  • The screen displays “Follow the instructions at the cash register”

  • Modifications are blocked until /confirm or /cancel is called

📌 Note: The QR code used at this step also encodes the Transaction ID used for spot checks. The POS must handle a “Selected for Spot check” flag in the response from shopreme to avoid bypassing the basket verification.

2. Optional: Basket modifications

If the basket was fetched via /unevaluatedBasket, the cashier is allowed to:

  • Add/remove items

  • Modify quantities

  • Apply in-store promotions

These changes must be reflected in the final confirmation call (next step), so that the Scan & Go app and the shopreme analytics reflect the correct and updated information about this purchase (total price and total number of products).

3. Confirming or canceling payment

Once the shopper starts the payment process at the cash register:

Option

When to use

/confirm

Notifies shopreme of success and optionally updates basket content

/cancel

Unlocks the app and it returns to the cart view

The confirmation endpoint accepts:

  • transactionId

  • totalPrice (amount paid at the register)

  • (Optional) updated basket positions

  • (Optional) PSP transaction ID and payment method

  • (Optional) additional metadata used for analytics or reconciliation

📌 Note: shopreme does not generate a receipt in this case. The cash register is expected to handle all fiscal documentation.

Integration requirements

To implement PAC, your cash register system must:

  • Be able to scan a Transaction ID from the app, in a linear barcode (Code128) or QR code format

  • Support API calls to the shopreme DataHub (secured via API token)

  • Retrieve the basket via /evaluatedBasket or /unevaluatedBasket

  • Send a confirmation or cancellation response

Who sets this up?

PAC integration usually involves collaboration between:

  • POS system integrators – to add shopreme API calls into the checkout flow

  • IT or middleware teams – to enable network access to the shopreme DataHub

  • In-store operations – to configure training and UX behavior.

shopreme © 2025