| Previous Topic | Next Topic | |
|---|---|---|
| POS Module 9: Print Check - Example Scenarios | POS Module 10: Handling POS Disconnections - Example Scenarios |
POS API Certification Tutorial - Module 10: Handling POS Disconnections - Concepts
Goal
Handle the processing of transactions in a queue at the POS in the event of a network outage.
Prerequisites
-
You must have read Module 8a: Receipt Details - Concepts and Module 9: Print Check - Concepts tutorials.
-
Ensure that enough disk space is available on the POS for storing the offline transactions for a maximum of 30 days.
Use Cases and Context
The POS system is unable to process the transactions at the POS due to a network outage.
Workflow
When the POS system cannot connect to Punchh to process transactions, the POS is expected to queue all transactions and store them locally for a minimum of 10 days and a maximum of 30 days until the connectivity is restored. When the connection is restored, the POS will begin to send the POS check details to the Punchh datasink in order of first-in, first-out (FIFO) until the queue is emptied.
Here is the general workflow for offline queuing transactions:
1. Spool the check API calls details (Receipt Details) in the event of network connectivity outage or server errors.
2. Cache check details locally. The POS will store POS check details and the assigned unique barcode locally on the POS for each transaction before sending them to the Punchh POS datasink.
3. Hold check details during network connectivity outages. During a network outage, hold the POS check details until network connectivity is restored for a minimum of 10 days and a maximum of 30 days.
4. Send check details using the Receipt Details API after connectivity restoration. The POS will continue to attempt to re-send the POS check details until they are successfully received by the Punchh datasink or until the end of the maximum caching period. Sending of check details should occur in FIFO order.
Offline Queuing Transactions
These are some of the important functions that the POS should support when the POS is offline:
| Feature | Description |
| Queue all transactions when the POS is offline | When the POS cannot reach the Punchh server, the POS will queue all transactions until the connectivity is restored. |
| Print barcode or QR code when the POS is offline | When the POS is offline, the POS will still print the unique barcode or QR code for guests to earn loyalty. The guest can scan that code in the mobile app, and will earn loyalty when the connectivity is restored and Punchh receives the transactions from the POS. |
Best Practices
Print the assigned barcodes/QR codes on checks when the POS is offline.