Airwallex logo
Airwallex logo

Desktop/Mobile Website Browser

Accept Philipines online banking payments on your website by redirecting shopper to bank pages. See checkout experience as below:

  1. The shopper chooses to pay with online banking
  2. The shopper selects their preferred bank on checkout page
  3. The shopper is redirected to selected bank
  4. The shopper logs in to online banking and review the order
  5. The shopper authorizes the payment
  6. The shopper is redirected to payment confirmation page

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

Step 2. Get available banks

Philipines Online Banking requires bank_name when confirming the Payment Intent, you can call this API endpoint /api/v1/pa/config/banks with payment_method_type, country_code and lang to get available bank names based on the payment method selected. Request:

1/api/v1/pa/config/banks?payment_method_type=online_banking&country_code=TH&lang=zh

Response:

1{
2 "has_more": false,
3 "items": [
4 {
5 "name": "bpi", // Bank name to be passed to our API
6 "display_name": "BPI", // For front-end to display
7 "recources": {
8 "logo_url": "" // .svg
9 }
10 }
11 ]
12}

Note:

Alternatively, you can maintain a list of available banks locally on your server for payment methods that require bank_name if you do not want to use this API endpoint. However, we highly recommend you get the banks dynamically from this API to avoid any trouble when bank information or availability gets updated.

Supported banks

bank_nameDisplay name
bpiBPI

Step 3. Redirect to selected bank to complete payment

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

  1. Obtain URL from Airwallex and redirect shopper to Philipines Online Banking 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 "type": "online_banking",
9 "online_banking": {
10 "country_code": "PH",
11 "bank_name": "bpi",
12 }
13 }
14 }'

Response:

1{
2 "id": "int_hkstnp6nhg1rvlqn7bb",
3 "request_id": "65f37438-202e-4d3e-99c4-70eb71d16c7b",
4 "amount": "20",
5 "currency": "PHP",
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:06:23+0000",
15 "next_action": {
16 "type": "redirect",
17 "method": "GET",
18 "url": "https://alipayplus.com/page/checkout/...",
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 Philipines Online Banking.

  1. Query the PaymentIntent status

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

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