Airwallex logo
Airwallex logo

Desktop/Mobile Website Browser

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 \
2 https://api.airwallex.com/api/v1/pa/payment_intents/create \
3 -H 'Content-Type: application/json' \
4 -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJhNDc...' \
5 -d '{
6 "request_id": "ed11e38a-7234-11ea-aa94-7fd44ffd1b89",
7 "amount": 20,
8 "currency": "THB",
9 "merchant_order_id": "85d7b0e0-7235-11ea-862e-9f6aa1adfca6"
10 "return_url": "https://www.airwallex.com"
11 }'

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 \
2 https://api.airwallex.com/api/v1/pa/payment_intents/{id}/confirm \
3 -H 'Content-Type: application/json' \
4 -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJhNDc...' \
5 -d '{
6 "request_id": "ed11e38a-7234-11ea-aa94-7fd44ffd1b89",
7 "payment_method":
8 {
9 "type": "tesco_lotus",
10 "tesco_lotus": {
11 "shopper_name": "xxxxxx"
12 "shopper_email": "[email protected]"
13 "shopper_phone": "010456897856"
14 }
15 }
16 }'

Response:

Shell
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://pci-api.airwallex.com/pa/webhook/molpay/th/redirect?reference_id=...",
19 }
20}
  1. 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.

  1. Query the PaymentIntent status

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

Shell
1 GET /payment_intents/{id}
Was this page helpful?