Payment Flow

You must program your server or your standalone mPOS to request Thunes Collections web services that will run various payment operations.

Payment steps:

  1. Your client pays with a QRcode (say a mobile wallet) at the checkout

  2. The scan of the QR code triggers:

    • Your server to initiate a call to Thunes’ web service
    • The web service to reserve and charge the amount due by the customer.
  3. All amounts charged may subsequently be refunded. Note that refunding operations may be total, partial, and/or refunded in several instalments.

NOTE: The operations you see with Thunes are not necessarily the same as those handled by Thunes with the user's payment methods. The exact rules depend on the payment method concerned, and are handled entirely by Thunes.

Payment Flow Description:

Step 1: Checkout:

  • Customer goes to the checkout and presents the shopping cart to the cashier.

  • The cashier scans each item and informs the customer of the due amount.

  • Customer requests to pay with QRCode (say a mobile wallet).

  • Cashier scans the customer's QRCode (on a mobile wallet for instance)

Step 2: Payment Initialisation:

  • Once the QR code is scanned, your server must call the PaymentOrder/Pay web service to create a payment order (with parameters such as: identifiers, QRCode credentials scanned, etc....

  • Thunes then creates the payment order and calls the server of the payment method.

  • From there there are 3 possible scenarios:

    • If an error occurs, Thunes provides you with an "Error" status. In such a situation you can display an appropriate message, cancel the order and inform the customer.

    • If the payment method refuses the payment order (inadequate balance, risk of fraud, etc.), we provide you a "Refused" status.

    • If the payment method accepts the payment, we provide you a "Charged" status. You must then check the payment order status by calling the PaymentOrder/Detail web service (required for security reasons and because the amount authorized may be less than requested). Please note there are two possible scénario with the “Charged” status: following:

  • You must compare the authorized amount against the requested amount before confirming the order. There are two possible scenarios:

    • If the transaction amount is the same as requested, you can confirm the order and print a ticket.
    • If the authorized amount is less than the amount requested, you must inform the customer there is a remaining amount to be paid before confirming the order and printing a ticket.

Step 3: Refund Process:

  • Once the status of the payment order is "Charged", and in case the customer returns the product, you can either totally or partially refund the customer with the (PaymentOrder/Refund).


Once your project starts, Thunes Collections guides walk you through the the integration process and explains the connection to the different payment methods.

What’s Next

Please read the following links in order to go further!