Take payments while the POS is offline
On this page
The POS keeps trading when the register loses its connection. Transactions are held on the device and sync once it reconnects.
What still works depends on whether the payment method needs to reach something outside the register.
| Payment method | Offline | Notes |
|---|---|---|
| Cash | Works | Nothing external to contact |
| Card (manual) | Works | Requires a reference for a payment authorized outside StoreConnect, see below |
| Bank transfer | Works | Requires a reference number |
| Cheque | Works | Requires cheque details |
| Account credit | Works | Needs a customer who is set up to use account credit, with a balance from the last synced data |
| Pay on account | Works | Needs a customer whose Contact and Account are already set up for it, read from the last synced data |
| Voucher | Does not work | The code is validated against the store, so the register cannot check it or read the balance offline |
| Pay by link | Does not work | Sending the link needs a connection |
| Card (Tyro), Card (Square), and other integrated devices | Does not work | The method still appears at the register, but the payment cannot complete while the device cannot reach its gateway |
Card payments with no connection
An integrated card device cannot complete a payment through StoreConnect while the register is offline. To take a card payment, get the payment authorized outside StoreConnect, then record it against the sale as a Card (manual) payment.
How you get that authorization depends on your acquiring bank and your market, not on StoreConnect. Depending on what your provider supports, the options may include a standalone terminal with its own connection, a terminal that holds transactions and forwards them when it reconnects, or a phoned-in authorization. Offline card acceptance also shifts risk onto you as the merchant: a payment approved without reaching the issuer can still be declined later. Confirm with your provider which options are available to you, and at what limits, before you rely on any of them.
Once you have the authorization, record it against the sale.
- Go to the payment step of the sale.
- Select Card (manual) as the payment method.
- Enter the authorization or receipt reference in Reference Number, along with the amount.
- Select Take payment to finalize the sale.
The value you enter is stored on the Payment record as Transaction Number, so it can be reconciled against your provider’s records later.
:::warning Get the authorization before completing the sale, not after. There is no way to charge the card later. StoreConnect never stores card numbers, and a card can only be tokenized for future use by a gateway at the time of payment, which is exactly what is unavailable offline. This applies to parked carts too: parking a sale does not retain anything chargeable. :::
The reference is required
You do not need to configure anything to enforce this. On a Card (manual) payment the Reference Number field is required, and Take payment stays disabled until you enter a value. A manual card sale cannot be completed without a reference.
Card (manual) is available at the register by default. If it does not appear, it has been disabled for your store, see Configure POS payment methods.
Alternatives to a card payment
Cash is the simplest option while the register is offline. It needs nothing outside the register, and it is available at every checkout.
Pay on account defers the payment instead, but it is not available to every customer. The sale needs a customer attached, and that customer must already be set up for it: Can Purchase For Account on the Contact (s_c__can_purchase_for_account__c), with Pay By Account enabled and Credit Hold clear on their Account. The register reads these from the last synced data, so a customer set up while the register was offline will not be eligible until it reconnects. If Pay on account does not appear or is grayed out at the payment step, take cash instead.
Parking a cart holds an unfinished sale, but it is not a way to defer payment. A parked order stays on the register it was created on and does not sync.
When the register reconnects
Queued transactions sync automatically. Before closing the shift, confirm nothing is still waiting to upload.
- In the POS, go to Settings > Manage data.
- Open the objects you sold against, for example
s_c__order__cands_c__payment__c, and check that Unsaved records is zero. See Manage POS data sync for how to read this screen. - In Salesforce, open the resulting orders and confirm Transaction Number on each payment matches the reference you entered.
:::note Do this while the register is still on hand. An upload that keeps failing is retried a limited number of times and then given up on, so a sale that never clears Unsaved records needs attention rather than more waiting. :::
Verify offline sales before go-live
This check is for the store administrator rather than the register operator. Run it on your own setup before staff need it in front of a customer.
- Let the POS fully sync while online.
- Open the browser’s Developer Tools, go to the Network tab, and set throttling to Offline.
- Build a cart as normal.
- At the payment step, select Card (manual), enter a reference, and select Take payment.
- Set the Network throttling back to Online.
- Confirm the sale clears Unsaved records in Settings > Manage data.
- In Salesforce, open the resulting Order and confirm the Payment record’s Transaction Number matches what you entered.
:::note Product images are not held for offline use the way records are (see POS storage, sync, and device administration). Any image that has not already loaded in the browser before the connection drops will not display until it returns, so operators may see products without photos while offline. :::
Was this article helpful?
Thanks for your feedback! It helps us improve our docs.