Airwallex logo
Airwallex logoAirwallex logo

Desktop/Mobile Website Browser

Copy for LLMView as Markdown

Accept Tesco Lotus payments on your website by redirecting shopper to payment instructions. See checkout process below:

  1. The shopper selects Tesco Lotus payment channel
  2. The shopper is redirected to order bill page with a QR code or bar code which the shopper can print out or take a screenshot of
  3. The shopper takes the order bill to an Tesco Lotus branch to make the payment by cash
  4. A receipt is provided for the shopper

Step 1. Initialize a Payment Intent

Create a PaymentIntent object with a request_id, amount, currency and a merchant_order_id from your backend server.

Shell
1curl -X POST https://api-demo.airwallex.com/api/v1/pa/payment_intents/create \
2 -H 'Content-Type: application/json' \
3 -H 'Authorization: Bearer {{ACCESS_TOKEN}}' \
4 -d '{
5 "request_id": "ed11e38a-7234-11ea-aa94-7fd44ffd1b89",
6 "amount": 20,
7 "currency": "THB",
8 "merchant_order_id": "85d7b0e0-7235-11ea-862e-9f6aa1adfca6",
9 "return_url": "https://www.airwallex.com"
10 }'

Step 2. Redirect to payment instruction page to complete payment

When a shopper selects to pay with Tesco Lotus on their desktop/mobile browser, call the following API endpoints to get the URL in next_action to redirect the shopper to Tesco Lotus payment page to complete the payment.

  1. Obtain URL from Airwallex and redirect shopper to payment instruction page

    Request:

    Shell
    1curl -X POST https://api-demo.airwallex.com/api/v1/pa/payment_intents/{{PAYMENT_INTENT_ID}}/confirm \
    2 -H 'Content-Type: application/json' \
    3 -H 'Authorization: Bearer {{ACCESS_TOKEN}}' \
    4 -d '{
    5 "request_id": "ed11e38a-7234-11ea-aa94-7fd44ffd1b89",
    6 "payment_method": {
    7 "type": "tesco_lotus",
    8 "tesco_lotus": {
    9 "shopper_name": "xxxxxx",
    10 "shopper_email": "[email protected]",
    11 "shopper_phone": "010456897856"
    12 }
    13 }
    14 }'

    Response:

    JSON
    1{
    2 "id": "int_hkstnp6nhg1rvlqn7bb",
    3 "request_id": "d4237e2c-3c1f-4bca-a36e-d4d62a16f1da",
    4 "amount": 200,
    5 "currency": "THB",
    6 "merchant_order_id": "af38b82a-451c-4405-bee6-d4715bd50908",
    7 "descriptor": "vip8888",
    8 "status": "REQUIRES_CUSTOMER_ACTION",
    9 "captured_amount": 0,
    10 "latest_payment_attempt": {
    11 ...
    12 },
    13 "created_at": "2021-08-26T08:04:03+0000",
    14 "updated_at": "2021-08-26T08:04:19+0000",
    15 "next_action": {
    16 "type": "redirect",
    17 "method": "GET",
    18 "url": "https://api-demo.airwallex.com/pa/webhook/molpay/th/redirect?reference_id=...",
    19 }
    20}
  2. Wait for notification from Airwallex

    Airwallex will notify you on the payment result asynchronously via the webhook API. Please refer to webhook documentation to set up your webhook accordingly. Although subscribing to different events is optional, it is recommended to at least subscribe to the payment_intent.succeeded which indicates that the shopper has successfully paid for the order via Tesco Lotus.

  3. Query the PaymentIntent status

    You may also query the status of a payment anytime via the PaymentIntents API

    GET /api/v1/pa/payment_intents/{id}

Was this page helpful?