Search...
Log inGet started
Airwallex logo
Home
Core API
Payments
Transactional FX
Payouts
Issuing
Back to home
OverviewChoose your payments solutionGet started with payments
Online payments
Invoice integrations
Payment methods
Payment Methods OverviewGlobal
EU & UK
APAC
NORTH AMERICA & LATAM
ACH Direct Debit - BETA
EFT Pre-Authorized Debit - BETA
SPEI - BETA
Desktop/Mobile Website Browser

Desktop/Mobile Website Browser

This guide describes how to offer SPEI as a payment method on your checkout page using Native API integration. See the checkout process below:

  1. The shopper chooses to pay with SPEI on your checkout page.
  2. The shopper inputs their email (optional)
  3. The shopper receives the payment instructions
  4. The shopper initiates the payment on their banking app
  5. The shopper receives a payment reminder if they have not paid by the 2nd day.

Step 1. Initialize a payment intent

Create a Payment Intent with the Create a Payment Intent API API.

POST /api/v1/pa/payment_intents/create

Shell

Step 2. Generate payment instruction

When a shopper selects to pay with SPEI on their desktop browser, call the Confirm a Payment Intent API API to get the URL of the payment instruction page.

You can optionally provide the shopper_email when confirming with SPEI. If the payment_method.spei.shopper_email is provided, then the below emails will be sent to the shopper:

  • Payment Instruction Email will be sent immediately after creating the order.
  • Payment Reminder Email will be sent 1 day before the order’s expiry.

POST /api/v1/pa/payment_intents/{id}/confirm

Shell

You will get a response similar to the following.

JSON

You should redirect the shopper to the payment instruction page with the next_action.url returned in the confirm Payment Intent response.

Step 3. Query the payment result status

To get the payment result, we suggest you poll the status of the Payment Intent via the Retrieve a Payment Intent API API. You may start polling the Payment Intent status after the shopper is redirected back to your website or mobile app, i.e., the return_url passed when creating the Payment Intent.

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

In addition, Airwallex will notify you of the payment result asynchronously via the webhooks. Please refer to the webhook documentation to set up your webhook accordingly. Although subscribing to webhook events is optional, it is recommended to subscribe to the payment_intent.succeeded webhook which indicates that the shopper has paid the order.