Airwallex logo
Airwallex logoAirwallex logo

Transfers

Copy for LLMView as Markdown

A Scale Transfer can be used to send funds directly from a Platform Account or Connected Account to another Account connected to the same platform. Destination Connected Account must have passed KYC and be in state ACTIVE.

Endpoints
GET /api/v1/transfers
GET /api/v1/transfers/{id}
POST /api/v1/transfers/create

Get list of transfers

GET /api/v1/transfers

Get a list of transfers created by your Airwallex account. The transfers returned are sorted by creation time.

Parameters
currencystring

Currency (3-letter ISO-4217 code)

destinationstring

Airwallex account unique identifier

from_created_atstring

The start date of created_at in ISO8601 format (inclusive)

page_numinteger

Page number, starts from 0.

page_sizeinteger

Number of results per page. Default value is 100, minimum 10, maximum 2000

request_idstring

Transfer request_id

statusstring

Status of the transfer. One of: NEW, SETTLED, PENDING, SUSPENDED, FAILED

to_created_atstring

The end date of created_at in ISO8601 format (inclusive)

Response body - 200 OK
has_moreboolean

A flag which identifies whether there are more results.

itemsarray

Paged results.

items.amountnumber

Amount of the transfer in currency specified in the request

items.created_atstring

The time this transfer was created

items.currencystring

Currency (3-letter ISO-4217 code) specified in the request

items.destinationstring

Airwallex account unique identifier specified in the request

items.feenumber

Fee of the transfer in currency specified in the request

items.idstring

Unique identifier for the transfer

items.reasonstring

Reason for the transfer instruction specified in the request

items.referencestring

User specified reference that will be displayed to the beneficiary specified in the request

items.request_idstring

Unique request identifier specified in the request

items.short_reference_idstring

Short reference for support purposes

items.statusstring

Status of the transfer. One of: NEW, SETTLED, PENDING, SUSPENDED, FAILED

items.updated_atstring

The time this transfer was updated

items.additional_infoobject

Additional information about the transaction.

items.additional_info.card_payment_dataobject

Additional information about the card payment funding the connected account transfer.

items.additional_info.card_payment_data.amountstring

The payment amount for this transaction.

items.additional_info.card_payment_data.brandstring

The card brand. Possible enum values:

MASTERCARD, VISA, UNION_PAY, AMERICAN_EXPRESS, JCB, DISCOVER, DINERS_CLUB_INTERNATIONAL

items.additional_info.card_payment_data.card_issuing_countrystring

Country code where the card was issued (e.g., US, GB, CN).

items.additional_info.card_payment_data.card_tokenstring

A unique token (GUID) representing the customer’s card number.

items.additional_info.card_payment_data.card_typestring

The card type. Possible enum values:

CREDIT, DEBIT, PREPAID

items.additional_info.card_payment_data.cardholder_namestring

The cardholder's name. Not applicable to APPLE_PAY and GOOGLE_PAY.

items.additional_info.card_payment_data.created_atstring

The timestamp when the customer created the payment transaction.

items.additional_info.card_payment_data.deposit_idstring

The unique identifier of the deposit that corresponds to the settlement into Airwallex's Global Account.

items.additional_info.card_payment_data.ip_addressstring

IP address (IPv4 or IPv6) of the payer’s device at the time of payment.

items.additional_info.card_payment_data.payment_methodstring

The payment method used for this transaction. Possible enum values:

APPLE_PAY, GOOGLE_PAY, CARD_ON_FILE

items.additional_info.card_payment_data.three_dsecure_outcomestring

The outcome of a 3D Secure authentication process, which verifies the identity of a cardholder during an online purchase. Possible enum values:

ATTEMPTED, AUTHENTICATED, FAILED, NOT_APPLICABLE, NOT_REQUESTED

items.additional_info.merchant_dataobject

Structured merchant information for nested-flow transfers.

items.additional_info.merchant_data.business_namestring

The merchant's official legal name.

items.additional_info.merchant_data.business_registration_datestring

The date when the merchant's business was registered, in YYYY-MM-DD format. For example, 2025-03-15.

items.additional_info.merchant_data.business_registration_numberstring

The merchant's Business Registration Number (BRN) or equivalent identifier.

items.additional_info.merchant_data.business_trading_namestring

The merchant's trading or DBA (doing business as) name.

items.additional_info.merchant_data.industry_category_codestring

The merchant's industry category code.

items.additional_info.merchant_data.merchant_identifierstring

The merchant's unique identifier on the platform.

items.additional_info.merchant_data.registration_countrystring

The merchant's country of registration in ISO 3166-1 alpha-2 format. For example, CN or HK.

items.additional_info.merchant_data.store_urlsarray

The merchant's store URL(s).

items.failure_reasonsarray

List of failure reason codes when status is FAILED

Errors
Error statusDescription
400

Possible errors: field_required, invalid_argument

401

Possible errors: credentials_invalid, credentials_expired

429

Too many requests

500

Service unavailable

GET /api/v1/transfers
$curl --request GET \
> --url 'https://api-demo.airwallex.com/api/v1/transfers' \
> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
> --header 'Content-Type: application/json'
Response (200 OK)
1{
2 "has_more": false,
3 "items": [
4 {
5 "amount": 10000,
6 "created_at": "2018-03-22T16:08:02+1100",
7 "currency": "AUD",
8 "destination": "acct_DjU6FcdYPYy6MEJsU0JAPg",
9 "failure_reasons": [
10 "EXPIRED_TRANSACTION_RFI_PAYER",
11 "EXPIRED_TRANSACTION_RFI_BENEFICIARY",
12 "DORMANCY_KYC_NO_RESPONSE_PAYER",
13 "DORMANCY_KYC_NO_RESPONSE_BENEFICIARY",
14 "WEBSITE_KYC_NO_RESPONSE_PAYER",
15 "WEBSITE_KYC_NO_RESPONSE_BENEFICIARY",
16 "WATCHLIST_RESTRICTION_PAYER",
17 "WATCHLIST_RESTRICTION_BENEFICIARY",
18 "OTHER_HIGH_RISK_PAYER",
19 "OTHER_HIGH_RISK_BENEFICIARY"
20 ],
21 "fee": 10,
22 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",
23 "reason": "travel",
24 "reference": "PMT1936398",
25 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d9d2",
26 "short_reference_id": "D220926-QZ7BTZE",
27 "status": "NEW",
28 "updated_at": "2018-03-22T16:08:02+1100"
29 }
30 ]
31}
Was this section helpful?

Get a transfer by ID

GET /api/v1/transfers/{id}

Get transaction details for a transfer by specifying the transfer unique identifier.

Parameters
idrequiredstring

Unique identifier of the transfer to retrieve

Response body - 200 OK
additional_infoobject

Additional information about the transaction.

additional_info.card_payment_dataobject

Additional information about the card payment funding the connected account transfer.

additional_info.card_payment_data.amountstring

The payment amount for this transaction.

additional_info.card_payment_data.brandstring

The card brand. Possible enum values:

MASTERCARD, VISA, UNION_PAY, AMERICAN_EXPRESS, JCB, DISCOVER, DINERS_CLUB_INTERNATIONAL

additional_info.card_payment_data.card_issuing_countrystring

Country code where the card was issued (e.g., US, GB, CN).

additional_info.card_payment_data.card_tokenstring

A unique token (GUID) representing the customer’s card number.

additional_info.card_payment_data.card_typestring

The card type. Possible enum values:

CREDIT, DEBIT, PREPAID

additional_info.card_payment_data.cardholder_namestring

The cardholder's name. Not applicable to APPLE_PAY and GOOGLE_PAY.

additional_info.card_payment_data.created_atstring

The timestamp when the customer created the payment transaction.

additional_info.card_payment_data.deposit_idstring

The unique identifier of the deposit that corresponds to the settlement into Airwallex's Global Account.

additional_info.card_payment_data.ip_addressstring

IP address (IPv4 or IPv6) of the payer’s device at the time of payment.

additional_info.card_payment_data.payment_methodstring

The payment method used for this transaction. Possible enum values:

APPLE_PAY, GOOGLE_PAY, CARD_ON_FILE

additional_info.card_payment_data.three_dsecure_outcomestring

The outcome of a 3D Secure authentication process, which verifies the identity of a cardholder during an online purchase. Possible enum values:

ATTEMPTED, AUTHENTICATED, FAILED, NOT_APPLICABLE, NOT_REQUESTED

additional_info.merchant_dataobject

Structured merchant information for nested-flow transfers.

additional_info.merchant_data.business_namestring

The merchant's official legal name.

additional_info.merchant_data.business_registration_datestring

The date when the merchant's business was registered, in YYYY-MM-DD format. For example, 2025-03-15.

additional_info.merchant_data.business_registration_numberstring

The merchant's Business Registration Number (BRN) or equivalent identifier.

additional_info.merchant_data.business_trading_namestring

The merchant's trading or DBA (doing business as) name.

additional_info.merchant_data.industry_category_codestring

The merchant's industry category code.

additional_info.merchant_data.merchant_identifierstring

The merchant's unique identifier on the platform.

additional_info.merchant_data.registration_countrystring

The merchant's country of registration in ISO 3166-1 alpha-2 format. For example, CN or HK.

additional_info.merchant_data.store_urlsarray

The merchant's store URL(s).

amountnumber

Amount of the transfer in currency specified in the request

created_atstring

The time this transfer was created

currencystring

Currency (3-letter ISO-4217 code) specified in the request

destinationstring

Airwallex account unique identifier specified in the request

failure_reasonsarray

List of failure reason codes when status is FAILED

feenumber

Fee of the transfer in currency specified in the request

idstring

Unique identifier for the transfer

reasonstring

Reason for the transfer instruction specified in the request

referencestring

User specified reference that will be displayed to the beneficiary specified in the request

request_idstring

Unique request identifier specified in the request

short_reference_idstring

Short reference for support purposes

statusstring

Status of the transfer. One of: NEW, SETTLED, PENDING, SUSPENDED, FAILED

updated_atstring

The time this transfer was updated

Errors
Error statusDescription
400

Possible errors: field_required, invalid_argument

401

Possible errors: credentials_invalid, credentials_expired

429

Too many requests

500

Service unavailable

GET /api/v1/transfers/{id}
$curl --request GET \
> --url 'https://api-demo.airwallex.com/api/v1/transfers/transfer_id' \
> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
> --header 'Content-Type: application/json'
Response (200 OK)
1{
2 "additional_info": {
3 "card_payment_data": {
4 "amount": "<string>",
5 "brand": "MASTERCARD",
6 "card_issuing_country": "<string>",
7 "card_token": "<string>",
8 "card_type": "CREDIT",
9 "cardholder_name": "<string>",
10 "created_at": "<string>",
11 "deposit_id": "<string>",
12 "ip_address": "<string>",
13 "payment_method": "APPLE_PAY",
14 "three_dsecure_outcome": "ATTEMPTED"
15 }
16 },
17 "amount": 10000,
18 "created_at": "2018-03-22T16:08:02+1100",
19 "currency": "AUD",
20 "destination": "acct_DjU6FcdYPYy6MEJsU0JAPg",
21 "failure_reasons": [
22 "EXPIRED_TRANSACTION_RFI_PAYER",
23 "EXPIRED_TRANSACTION_RFI_BENEFICIARY",
24 "DORMANCY_KYC_NO_RESPONSE_PAYER",
25 "DORMANCY_KYC_NO_RESPONSE_BENEFICIARY",
26 "WEBSITE_KYC_NO_RESPONSE_PAYER",
27 "WEBSITE_KYC_NO_RESPONSE_BENEFICIARY",
28 "WATCHLIST_RESTRICTION_PAYER",
29 "WATCHLIST_RESTRICTION_BENEFICIARY",
30 "OTHER_HIGH_RISK_PAYER",
31 "OTHER_HIGH_RISK_BENEFICIARY"
32 ],
33 "fee": 10,
34 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",
35 "reason": "travel",
36 "reference": "PMT1936398",
37 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d9d2",
38 "short_reference_id": "D220926-QZ7BTZE",
39 "status": "NEW",
40 "updated_at": "2018-03-22T16:08:02+1100"
41}
Was this section helpful?

Create a new transfer

POST /api/v1/transfers/create

Initiate a new transfer to send funds from your Airwallex account to a connected account. Your Airwallex balance must cover the transfer amount or you will receive an “Insufficient Funds” error message.

Request body

The request body schema is loaded dynamically.

Response body - 201 Created
additional_infoobject

Additional information about the transaction.

additional_info.card_payment_dataobject

Additional information about the card payment funding the connected account transfer.

additional_info.card_payment_data.amountstring

The payment amount for this transaction.

additional_info.card_payment_data.brandstring

The card brand. Possible enum values:

MASTERCARD, VISA, UNION_PAY, AMERICAN_EXPRESS, JCB, DISCOVER, DINERS_CLUB_INTERNATIONAL

additional_info.card_payment_data.card_issuing_countrystring

Country code where the card was issued (e.g., US, GB, CN).

additional_info.card_payment_data.card_tokenstring

A unique token (GUID) representing the customer’s card number.

additional_info.card_payment_data.card_typestring

The card type. Possible enum values:

CREDIT, DEBIT, PREPAID

additional_info.card_payment_data.cardholder_namestring

The cardholder's name. Not applicable to APPLE_PAY and GOOGLE_PAY.

additional_info.card_payment_data.created_atstring

The timestamp when the customer created the payment transaction.

additional_info.card_payment_data.deposit_idstring

The unique identifier of the deposit that corresponds to the settlement into Airwallex's Global Account.

additional_info.card_payment_data.ip_addressstring

IP address (IPv4 or IPv6) of the payer’s device at the time of payment.

additional_info.card_payment_data.payment_methodstring

The payment method used for this transaction. Possible enum values:

APPLE_PAY, GOOGLE_PAY, CARD_ON_FILE

additional_info.card_payment_data.three_dsecure_outcomestring

The outcome of a 3D Secure authentication process, which verifies the identity of a cardholder during an online purchase. Possible enum values:

ATTEMPTED, AUTHENTICATED, FAILED, NOT_APPLICABLE, NOT_REQUESTED

additional_info.merchant_dataobject

Structured merchant information for nested-flow transfers.

additional_info.merchant_data.business_namestring

The merchant's official legal name.

additional_info.merchant_data.business_registration_datestring

The date when the merchant's business was registered, in YYYY-MM-DD format. For example, 2025-03-15.

additional_info.merchant_data.business_registration_numberstring

The merchant's Business Registration Number (BRN) or equivalent identifier.

additional_info.merchant_data.business_trading_namestring

The merchant's trading or DBA (doing business as) name.

additional_info.merchant_data.industry_category_codestring

The merchant's industry category code.

additional_info.merchant_data.merchant_identifierstring

The merchant's unique identifier on the platform.

additional_info.merchant_data.registration_countrystring

The merchant's country of registration in ISO 3166-1 alpha-2 format. For example, CN or HK.

additional_info.merchant_data.store_urlsarray

The merchant's store URL(s).

amountnumber

Amount of the transfer in currency specified in the request

created_atstring

The time this transfer was created

currencystring

Currency (3-letter ISO-4217 code) specified in the request

destinationstring

Airwallex account unique identifier specified in the request

failure_reasonsarray

List of failure reason codes when status is FAILED

feenumber

Fee of the transfer in currency specified in the request

idstring

Unique identifier for the transfer

reasonstring

Reason for the transfer instruction specified in the request

referencestring

User specified reference that will be displayed to the beneficiary specified in the request

request_idstring

Unique request identifier specified in the request

short_reference_idstring

Short reference for support purposes

statusstring

Status of the transfer. One of: NEW, SETTLED, PENDING, SUSPENDED, FAILED

updated_atstring

The time this transfer was updated

Errors
Error statusDescription
400

Possible errors: field_required, invalid_argument

401

Possible errors: credentials_invalid, credentials_expired

429

Too many requests

500

Service unavailable

POST /api/v1/transfers/create
$curl --request POST \
> --url 'https://api-demo.airwallex.com/api/v1/transfers/create' \
> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
> --header 'Content-Type: application/json'
Response (201 Created)
1{
2 "additional_info": {
3 "card_payment_data": {
4 "amount": "<string>",
5 "brand": "MASTERCARD",
6 "card_issuing_country": "<string>",
7 "card_token": "<string>",
8 "card_type": "CREDIT",
9 "cardholder_name": "<string>",
10 "created_at": "<string>",
11 "deposit_id": "<string>",
12 "ip_address": "<string>",
13 "payment_method": "APPLE_PAY",
14 "three_dsecure_outcome": "ATTEMPTED"
15 }
16 },
17 "amount": 10000,
18 "created_at": "2018-03-22T16:08:02+1100",
19 "currency": "AUD",
20 "destination": "acct_DjU6FcdYPYy6MEJsU0JAPg",
21 "failure_reasons": [
22 "EXPIRED_TRANSACTION_RFI_PAYER",
23 "EXPIRED_TRANSACTION_RFI_BENEFICIARY",
24 "DORMANCY_KYC_NO_RESPONSE_PAYER",
25 "DORMANCY_KYC_NO_RESPONSE_BENEFICIARY",
26 "WEBSITE_KYC_NO_RESPONSE_PAYER",
27 "WEBSITE_KYC_NO_RESPONSE_BENEFICIARY",
28 "WATCHLIST_RESTRICTION_PAYER",
29 "WATCHLIST_RESTRICTION_BENEFICIARY",
30 "OTHER_HIGH_RISK_PAYER",
31 "OTHER_HIGH_RISK_BENEFICIARY"
32 ],
33 "fee": 10,
34 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",
35 "reason": "travel",
36 "reference": "PMT1936398",
37 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d9d2",
38 "short_reference_id": "D220926-QZ7BTZE",
39 "status": "NEW",
40 "updated_at": "2018-03-22T16:08:02+1100"
41}
Was this section helpful?