Integration checklist
After you build your integration, you can simulate payments in the demo environment to test your integration before going live in the production environment.
Test in the demo environment
Set up your demo Airwallex account using the following guidelines and get started with testing. Use test card numbers to test your integration for various success and error scenarios. These card numbers work in test mode with any CVC and future expiry date.
API keys
- Log into the demo Airwallex web app and generate test API keys and obtain the unique client ID to make API calls. Note that you will need multiple demo API keys for multi-region deployments.
Account configuration
Mandatory
Contact your Airwallex Account Executive to configure your Airwallex demo account:
- Add relevant Merchant Category Codes (MCC) to your account
- Add all the payment methods that you want to offer to your shopper
- Configure 3DS settings (FORCE_3DS, EXTERNAL_3DS, SKIP_3DS)
- Decide on your principal settlement currency and fallback settlement currency configuration
- Learn about the required PCI DSS certification for your integration.
- If you are PCI-DSS Level 1 certified, you are eligible to integrate through Native API. If you choose to do so, provide your certification to Airwallex.
- If you are not PCI-DSS Level 1 certified, then you will need to complete a PCI-DSS SAQ A questionnaire to integrate with our other payments acceptance options (excluding Pay by Link and Native API).
Optional
- If you want to enable IP whitelisting, contact your Account Executive to configure and share the IP addresses you want to whitelist.
Web app configuration
Configure your risk settings on the demo Airwallex web app .
Configure webhooks on the demo Airwallex web app . Follow the getting started with webhooks guide and review the webhook events you can listen to.
Integration
Use demo API endpoints (api-demo.airwallex.com/api/v1/) for your integration:
- Transaction tests: Create the following transaction types and share the PaymentIntent ids with your Account Executive and Solutions Engineer for validation.
Transaction type | Test card number | Expected return response |
---|---|---|
1 successful transaction - 3DS frictionless flow | 4012 0003 0000 0021. Use any amount, cvc, and expiry date. | Frictionless Mode Success with 200 response code |
1 successful transaction - 3DS challenge flow | 4012 0003 0000 0088. Use any amount, cvc, expiry date, and OTP 1234 on 3DS challenge. | Challenge Mode Success with 200 response code |
1 failed transaction - 3DS authentication failed | Use any of the cards: 4012 0003 0000 0013 / 4012 0003 0000 0039 / 4012 0003 0000 0070. Use any amount, cvc, and expiry date. | authentication_declined with 400 response code |
1 failed transaction - authorization failed (3DS frictionless) | 4012 0003 0000 0021. Use amount $88.88, any cvc, and expiry date. | issuer_declined with 400 response code |
1 failed transaction - authorization failed (3DS challenge) | 4012 0003 0000 0088. Use amount $88.88, any cvc, expiry date, and OTP 1234 on 3DS challenge. | issuer_declined with 400 response code |
1 successful payment status check | None. | When your frontend receives the result of a synchronous payment, call Retrieve a PaymentIntent API API and check that the correct status has been received: REQUIRES_PAYMENT_METHOD, REQUIRES_CUSTOMER_ACTION, REQUIRES_CAPTURE, CANCELLED, SUCCEEDED. |
Webhook tests: Ensure subscribed webhook events are received and managed in your integration. All these events will return a HTTP response with a 200 response code. Learn about our Online Payments webhook events here .
Success notification
Authorization failure notification
3DS authentication failure notification
(Optional) Refund creation notification
(Optional) Successful refund notification
Reporting
Download reports from Airwallex to learn about what data is available for your reporting. Learn more about our transaction reports and settlement reports
If you decide to download reports programatically, you can use our demo API endpoints API
Go live in the production environment
Set up your production Airwallex account using the following guidelines and get started with transacting live.
API keys
- Log into the production Airwallex web app to generate production API keys and obtain the unique client ID to make API calls. Note that you will need multiple production API keys for multi-region deployments.
Account configuration
Contact your Airwallex Account Executive to replicate your demo account settings on your production account.
Web app configuration
Configure your risk settings on the production Airwallex web app .
Configure webhooks on the production Airwallex web app . Follow the getting started with webhooks guide and review the webhook events you can listen to.
Integration
Update demo API endpoints in your integration to point to the production URLs: https://api.airwallex.com/api/v1/
- Transaction tests: We highly recommend you replicate the transaction types you tested in the demo environment on the production environment to ensure your integration is working correctly. You can use nominal transaction amounts (e.g. $1) for live testing.
Transaction type | Test card number | Expected return response |
---|---|---|
1 successful 3DS trigger | Use a real card and input a nominal amount (e.g. $1). Set three_ds_action as FORCE_3DS to trigger 3DS when creating the PaymentIntent. | Authorization is successful with 200 response code |
1 successful transaction | Use a real card and input a nominal amount (e.g. $1). | Authorization is successful with 200 response code |
1 successful payment status check | None. | When your frontend receives the result of a synchronous payment, call Retrieve a PaymentIntent API API and check that the correct status has been received: REQUIRES_PAYMENT_METHOD, REQUIRES_CUSTOMER_ACTION, REQUIRES_CAPTURE, CANCELLED, SUCCEEDED. |
Webhook tests: Ensure subscribed webhook events are received and managed in your integration. All these events will return a HTTP response with a 200 response code. Learn about our Online Payments webhook events here.
- Success notification
Reporting
If you are downloading reports programatically, update to production URLs: https://api.airwallex.com/api/v1/