Log inGet started
Airwallex logo
Home
Online Payments
Treasury
Transactional FX
Payouts
Issuing
Scale
Open Banking
Developer Tools
API Reference
Home
Online Payments
Overview
Starting with paymentsAirwallex platform overviewOnline payments modelPricing model
Payment Methods
OverviewGlobal
CardsPaysafecardSkrillPayPal
Desktop/Mobile Website Browser
Apple PayGoogle Pay™
EU & UKAPACUS & LATAM

Desktop/Mobile Website Browser

Accept Paypal payments on your website by redirecting shopper to Paypal pages. See checkout process below:

  1. The shopper selects Paypal payment option on checkout page
  2. The shopper is redirected to Paypal checkout page with payment details
  3. The shopper enters required information and confirms the payment
  4. The shopper is redirected to the confirmation page containing the payment result

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.

https://pci-api.airwallex.com/api/v1/pa/payment_intents/create \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer your_bearer_token \
  -d '{
    "request_id": "ed11e38a-7234-11ea-aa94-7fd44ffd1b89",
    "amount": 20,
    "currency": "EUR",
    "merchant_order_id": "85d7b0e0-7235-11ea-862e-9f6aa1adfca6"
    "return_url": "https://www.airwallex.com"
  }'

Step 2. Get available payment methods

To be able to display PayPal 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:

/api/v1/pa/config/payment_method_types?transaction_currency=EUR&transaction_mode=oneoff&country_code=EE

Response: Render payment methods in items to show all available payment methods to the shopper at checkout page.

{
    "has_more": false,
    "items": [
        {
            "name": "paypal",
            "display_name": "PayPal",
            "transaction_mode": "oneoff",
            "flows": [],
            "transaction_currencies": [
                "*"
            ],
            "country_codes": [
                "*"
            ],
            "resources": {
              "logo_url": "",
              "has_schema": true // default is true
            },
            "active": true
        },
        ...
    ]
}
Note for available payment methods:

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 Paypal to complete payment

When a shopper selects to pay with Paypal on their desktop/mobile browser, call the following API endpoints to get the URL in next_action which you can use to redirect the shopper to Paypal pages to complete the payment.

  1. Obtain URL from Airwallex and redirect shopper to Paypal

Request:

https://pci-api.airwallex.com/api/v1/pa/payment_intents/{id}/confirm \
  -H 'Content-Type: application/json' \
  -H 'client-secret: 
Ss3thJHPE6TyI4r-8BJFlqNz1mA7DblVuN0c8GOthnchp7Sf-_JuQnuX3sqzv7_0EiTMOs2kcGopFrMoFC0w7IzPCErJ1a0P7sFnpwB6uz-H2h_6rDhhSd2tKJF-l2myVOXQV4Zou3s_OsX6thLiUKI=" \
  -d '{
    "request_id": "ed11e38a-7234-11ea-aa94-7fd44ffd1b89",
    "payment_method": {
        "type": "paypal",
        "paypal": {
            "shopper_name": "xxxxxx"
            "country_code": "EE" // Alpha-2 country code according to ISO 3166
        }
    }
  }'

Response:

{
  ...
  "next_action": {
      "type": "redirect",
      "method": "GET",
      "url": "https://r2.girogate.de/paypal/T1069/I?tx=946001329&rs=PpRx4KawQpYlXP991Nx9PM2uNje3tqHR&cs=c54ab68084c1e125a1060370a2788b58f2f424ea0cc320b697248d437b105a59"
  }
}
  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 Paypal.

  1. Query the PaymentIntent status

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

GET /payment_intents/{id}