Airwallex logo
Airwallex logo

Desktop/Mobile Website Browser

Accept payments at Indonesian convenience stores on your website by redirecting shopper to payment instructions. See checkout process below:

  1. The shopper selects convenience store payment channel
  2. The shopper is redirected to a new page where they select their preferred store (Alfamart/Indomaret)
  3. The page shows the generated payment code to the shopper
  4. The shopper pays in the selected convenience store
  5. The shopper is redirected back to merchant’s page where payment result is displayed

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": 10000,
8 "currency": "IDR",
9 "merchant_order_id": "85d7b0e0-7235-11ea-862e-9f6aa1adfca6"
10 "return_url": "https://www.airwallex.com"
11 }'

Step 2. Redirect to Indonesian Convenience Store to complete payment

When a shopper selects to pay with Indonesian Convenience Stores on their desktop/mobile browser, call the following API endpoints to get the URL which you can use to redirect the shopper to Indonesian Convenience Store payment page to complete the payment.

  1. Obtain URL from Airwallex and redirect shopper to payment instructions

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": "alfamart", // available values: "indomaret", "alfamart"
10 "alfamart": { // this key shall be consistent with type value above
11 "shopper_name": "xxxxxx",
12 "shopper_email": "[email protected]"
13 }
14 }
15 }'

Response: Render the value of url to redirect shoppers to payment instructions.

Shell
1{
2 "next_action": {
3 "type": "redirect",
4 "method": "GET",
5 "url": "https://r2.girogate.de/doku/T1138/I?tx=918109047&rs=cp4IfXyteit09BHYSaxYDWBDgG7Nr7sW&cs=ddca1293ccf5b7466a95d164ac9b10781c54d603caee9e927ec70b96485a1bda"
6 }
7}
  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 Indonesian Convenience Stores.

  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?