Checkout Flow
Checkout Flow
API Flow
This section details the user experience of a customer performing a standard checkout from the payment method section within your POS
User Journey
-
The customer finishes browsing the store and heads to a register operator
-
The operator selects Zip as the payment option at checkout
-
The customer requests a pre-approval code (Instore Code)
-
When the customer presses the "Create Instore Code" button, this should generate a 6-digit code, and a QR code
- The operator inputs the pre-approval code into a dialog box (or similar)
Redemption Options
For retailers who have QR scanning capabilities, you are able to scan the image and submit the decoded value into the customerApprovalCode
value in the endpoint
Alternatively, you are able to manually input the value into the customerApprovalCode
if your POS does not support QR scanning
-
This should then trigger a request to the Zip APIs. The server-side handler will need to make a call to the /pos/order API method
-
Ensure you pass as many parameters as possible for order details (item name, quantities, price etc.)
-
The customer is presented with the option to either "Approve" or "Cancel" the transaction
- Once the customer clicks "Approve", the server-side handler will need to poll Zip with the /v2.0/pos/order/{orderId}/status endpoint to enquire if this order has been confirmed by the customer
status:
Indicates the status of the order - Possible values are:
-
pending:
Order has been created, awaiting user response -
approved:
Order has been approved. This is relevant for orders created with theauth
flow -
complete:
Payment has been taken successfully and order has been completed -
declined:
Order was declined by the user -
cancelled:
Order has been cancelled prior to the customer approving/declining, or the order has been rolled back by the merchant. This is relevant for orders reated with theauth
flow
- A successful order should present a success page/dialog within the POS
Updated over 2 years ago