Desktop/Mobile Website Browser
Accept Malaysian GrabPay payments on your website by redirecting shopper to GrabPay payment page. See checkout process below:
- The shopper selects to pay with GrabPay on merchant checkout page
- The shopper is redirected to GrabPay authentication page where they log into their GrabPay account
- The shopper confirms the payment and pays
- The shopper is redirected back to payment success 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.
Step 2. Get available payment methods
To be able to display GrabPay as a payment option on your checkout page, you need to get available payment methods from Airwallex API.
When the PaymentIntent is created, send a GET
request with parameters country_code
, transaction_currency
, transaction_mode
to API endpoint /api/v1/pa/config/payment_method_types
to query for a list of available payment method based on the information provided. The response will also contain the required fields and necessary resources of each payment method for you to display them on your page.
Request:
Response: Render payment methods in items
to show all available payment methods to the shopper at checkout page.
Alternatively, you can maintain available payment methods and corresponding resources locally on your server if you do not want to use this API endpoint. However, we highly recommend you get available payment methods dynamically from this API to avoid any trouble when payment method information or resources get updated.
Step 3. Redirect to GrabPay payment page to complete payment
When a shopper selects to pay with GrabPay on their desktop/mobile browser, call the following API endpoints to get the URL which you can use to redirect the shopper to GrabPay payment page to complete the payment.
- Obtain URL from Airwallex and redirect shopper to GrabPay payment page
Request:
Response:
- 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 GrabPay.
- Query the PaymentIntent status
You may also query the status of a payment anytime via the PaymentIntents API