Static QR to app
Also covered in In-person payments
This flow is also documented in In-person payments → Static QR → Merchant Callback QR, which covers unmanned location scenarios including vending machines, trust shops, and self-service kiosks.
Customer scans a static QR code posted on the vending machine, approves a maximum amount in their app, makes their product selection, and is charged only for what they selected.

- Customer scans QR - Customer scans the merchant callback QR code posted on the vending machine.
- Receive callback - Your system receives a webhook with the customer token.
- Initiate payment - Send payment request for the maximum amount (most expensive item) with
userFlow: "WEB_REDIRECT". - Customer authorizes - Customer approves the reserved amount in their app.
- Customer makes selection - Customer selects the product on the vending machine.
- Capture actual amount - Capture only the amount for the selected product (partial capture).
- Cancel remaining - Release the unused reserved amount.
Use when you don't have a screen
This flow works for unmanned locations without customer-facing screens where you can't display a dynamic QR code.
Regulatory requirement
Per regulations, specify "customerInteraction": "CUSTOMER_PRESENT".
View sequence diagram
Static QR directing to the app
Technical details​
- How the QR API works with merchant callback - Visual walkthrough of the flow
- Partial capture - Capture only actual amount
- Cancel after partial capture - Release remaining amount