Airwallex logo

Transfers

Copy for LLMView as Markdown

The Transfers resource allows factors (partners) to initiate transfers for accounts receivable payments received under the associated factor managed account.

Endpoints
POST /partner-api/v1/transfers/create
GET /partner-api/v1/transfers/{transferId}
GET /partner-api/v1/transfers

Create a Transfer

POST /partner-api/v1/transfers/create

Creates a transfer from the Airwallex user's account to the factor's bank account. On success, the transfer's status will be returned as PENDING.

Request body
beneficiaryrequiredobject

Details for the repayment beneficiary. The schema of the bank_transfer_beneficiary can be referenced from the beneficiary field in the request body in create a new beneficiary APIAPI. We only support LOCAL as payment method for now.

beneficiary.typerequiredstring
beneficiary.additional_infoobject
beneficiary.additional_info.business_areastring
beneficiary.additional_info.business_phone_numberstring
beneficiary.additional_info.business_registration_expiry_datestring
beneficiary.additional_info.business_registration_numberstring
beneficiary.additional_info.business_registration_typestring
beneficiary.additional_info.external_identifierstring
beneficiary.additional_info.external_namestring
beneficiary.additional_info.legal_rep_addressobject
beneficiary.additional_info.legal_rep_address.citystring
beneficiary.additional_info.legal_rep_address.country_codestring
beneficiary.additional_info.legal_rep_address.full_addressstring
beneficiary.additional_info.legal_rep_address.postcodestring
beneficiary.additional_info.legal_rep_address.statestring
beneficiary.additional_info.legal_rep_address.street_addressstring
beneficiary.additional_info.legal_rep_bank_account_numberstring
beneficiary.additional_info.legal_rep_date_of_birthstring
beneficiary.additional_info.legal_rep_emailstring
beneficiary.additional_info.legal_rep_first_namestring
beneficiary.additional_info.legal_rep_first_name_in_chinesestring
beneficiary.additional_info.legal_rep_id_expiry_datestring
beneficiary.additional_info.legal_rep_id_numberstring
beneficiary.additional_info.legal_rep_id_typestring
beneficiary.additional_info.legal_rep_last_namestring
beneficiary.additional_info.legal_rep_last_name_in_chinesestring
beneficiary.additional_info.legal_rep_mobile_numberstring
beneficiary.additional_info.legal_rep_nationalitystring
beneficiary.additional_info.legal_rep_occupationstring
beneficiary.additional_info.personal_emailstring
beneficiary.additional_info.personal_first_name_in_chinesestring
beneficiary.additional_info.personal_id_expiry_datestring
beneficiary.additional_info.personal_id_numberstring
beneficiary.additional_info.personal_id_typestring
beneficiary.additional_info.personal_last_name_in_chinesestring
beneficiary.additional_info.personal_mobile_numberstring
beneficiary.additional_info.personal_nationalitystring
beneficiary.additional_info.personal_occupationstring
beneficiary.additional_info.recipient_account_idstring
beneficiary.additional_info.security_questionstring
beneficiary.additional_info.security_question_answerstring
beneficiary.addressobject
beneficiary.address.citystring
beneficiary.address.country_codestring
beneficiary.address.full_addressstring
beneficiary.address.postcodestring
beneficiary.address.statestring
beneficiary.address.street_addressstring
beneficiary.bank_detailsobject
beneficiary.bank_details.account_currencystring
beneficiary.bank_details.account_namestring
beneficiary.bank_details.account_name_aliasstring
beneficiary.bank_details.account_numberstring
beneficiary.bank_details.account_routing_type1string
beneficiary.bank_details.account_routing_type2string
beneficiary.bank_details.account_routing_value1string
beneficiary.bank_details.account_routing_value2string
beneficiary.bank_details.bank_account_categorystring
beneficiary.bank_details.bank_branchstring
beneficiary.bank_details.bank_citystring
beneficiary.bank_details.bank_country_codestring
beneficiary.bank_details.bank_namestring
beneficiary.bank_details.bank_statestring
beneficiary.bank_details.bank_street_addressstring
beneficiary.bank_details.binding_mobile_numberstring
beneficiary.bank_details.ibanstring
beneficiary.bank_details.intermediary_bank_namestring
beneficiary.bank_details.intermediary_bank_swift_codestring
beneficiary.bank_details.local_clearing_systemstring
beneficiary.bank_details.swift_codestring
beneficiary.company_namestring
beneficiary.date_of_birthstring
beneficiary.digital_walletobject
beneficiary.digital_wallet.account_namestring
beneficiary.digital_wallet.country_codestring
beneficiary.digital_wallet.currencystring
beneficiary.digital_wallet.id_typestring
beneficiary.digital_wallet.id_valuestring
beneficiary.digital_wallet.providerstring
beneficiary.entity_typestring
beneficiary.first_namestring
beneficiary.last_namestring
factor_managed_account_idrequiredstring

The unique identifier of the associated factor managed account.

fee_paid_byrequiredstring

Denotes whether PAYER/BENEFICIARY will be liable for the transfer fees, and it affects the actual amount the beneficiary receives.

PAYER
BENEFICIARY
referencerequiredstring

A user specified reference that will be displayed to the beneficiary on the payment transaction with their bank.

  • 1-140 characters long
  • Should not contain emojis
request_idrequiredstring

A unique request identifier specified by you for idempotency. Up to 50 characters.

source_currencyrequiredobject

The currency of the source transfer.

transfer_currencyrequiredobject

The currency of the target transfer.

source_amountnumber

The amount of the source transfer.

target_amountnumber

The amount of the target transfer.

Response body - 200 OK
amount_beneficiary_receivesnumber

The total amount the beneficiary receives for this transfer,.

beneficiarystring

Details for the repayment beneficiary. The schema of the bank_transfer_beneficiary can be referenced from the beneficiary field in the request body in create a new beneficiary APIAPI. We only support LOCAL as payment method for now.

created_atstring

The time when this transaction was created.

factor_managed_account_idstring

The unique identifier of the factor managed account.

fee_amountnumber

The amount of the fee.

fee_currencyobject

The currency of the fee.

fee_paid_bystring

Denotes whether PAYER/BENEFICIARY will be liable for the transfer fees, and it affects the actual amount the beneficiary receives.

PAYER
BENEFICIARY
idstring

The unique identifier of the transfer.

referencestring

A user specified reference that will be displayed to the beneficiary on the payment transaction with their bank.

  • 1-140 characters long
  • Should not contain emojis
request_idstring

A unique request identifier specified by you for idempotency. Up to 50 characters.

source_amountnumber

The amount of the source transfer.

source_currencyobject

The currency of the source transfer.

statusstring

The status of the transfer.

PENDING

The transfer is pending to be executed.

COMPLETED

The transfer is completed successfully.

FAILED

The transfer is failed.

target_amountnumber

The amount of the target transfer.

transfer_currencyobject

The currency of the target transfer.

updated_atstring

The time when this transaction was last updated.

POST /partner-api/v1/transfers/create
$curl --request POST \
> --url 'https://api.sandbox.airwallex.com/partner-api/v1/transfers/create' \
> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
> --header 'Content-Type: application/json' \
> --data '{
> "beneficiary": "{\"bank_transfer_beneficiary\":{\"additional_info\":\n |{\"personal_email\":\"[email protected]\"},\"address\":{\"city\":\"Hong Kong\",\n |\"country_code\":\"HK\",\"postcode\":\"3000\",\"state\":\"VIC\",\"street_address\":\"38 \n |Chengtu Rd\"},\"bank_details\":{\"account_currency\":\"USD\",\"account_name\":\"John \n |Walker\",\"account_number\":\"786005728434\",\"bank_country_code\":\"HK\",\"bank_name\":\n |\"HANG SENG BANK LIMITED BIC\",\"local_clearing_system\":\"RTGS\",\"swift_code\":\"HASEHKHH\"}\n |,\"company_name\":\"Complete Concrete Pty Ltd\",\"entity_type\":\"COMPANY\"}}",
> "factor_managed_account_id": "e1f3c6e3-ba66-4400-83ec-e81553647806",
> "fee_paid_by": "BENEFICIARY",
> "reference": "payment-2025-01-01",
> "request_id": "e26fe780-ac29-4130-b650-edb1cc1bd4a4",
> "source_amount": 100,
> "source_currency": "USD",
> "target_amount": 100,
> "transfer_currency": "USD"
>}'
Response (200 OK)
1{
2 "amount_beneficiary_receives": 1,
3 "beneficiary": "<string>",
4 "created_at": "<date-time>",
5 "factor_managed_account_id": "e1f3c6e3-ba66-4400-83ec-e81553647806",
6 "fee_amount": 1,
7 "fee_currency": "USD",
8 "fee_paid_by": "BENEFICIARY",
9 "id": "b05a7b0f-e24f-4339-ab4f-67bf398b2b0a",
10 "reference": "payment-2025-01-01",
11 "request_id": "ffb277f7-c10d-4e46-ab1e-25acd90a79fc",
12 "source_amount": 100,
13 "source_currency": "USD",
14 "status": "PENDING",
15 "target_amount": 100,
16 "transfer_currency": "USD",
17 "updated_at": "<date-time>"
18}
Was this section helpful?

Retrieve a Transfer

GET /partner-api/v1/transfers/{transferId}

Retrieve details of a transfer using its unique identifier.

Path parameters
transferIdrequiredstring

The transfer unique identifier.

Response body - 200 OK
amount_beneficiary_receivesnumber

The total amount the beneficiary receives for this transfer,.

beneficiarystring

Details for the repayment beneficiary. The schema of the bank_transfer_beneficiary can be referenced from the beneficiary field in the request body in create a new beneficiary APIAPI. We only support LOCAL as payment method for now.

created_atstring

The time when this transaction was created.

factor_managed_account_idstring

The unique identifier of the factor managed account.

fee_amountnumber

The amount of the fee.

fee_currencyobject

The currency of the fee.

fee_paid_bystring

Denotes whether PAYER/BENEFICIARY will be liable for the transfer fees, and it affects the actual amount the beneficiary receives.

PAYER
BENEFICIARY
idstring

The unique identifier of the transfer.

referencestring

A user specified reference that will be displayed to the beneficiary on the payment transaction with their bank.

  • 1-140 characters long
  • Should not contain emojis
request_idstring

A unique request identifier specified by you for idempotency. Up to 50 characters.

source_amountnumber

The amount of the source transfer.

source_currencyobject

The currency of the source transfer.

statusstring

The status of the transfer.

PENDING

The transfer is pending to be executed.

COMPLETED

The transfer is completed successfully.

FAILED

The transfer is failed.

target_amountnumber

The amount of the target transfer.

transfer_currencyobject

The currency of the target transfer.

updated_atstring

The time when this transaction was last updated.

GET /partner-api/v1/transfers/{transferId}
$curl --request GET \
> --url 'https://api.sandbox.airwallex.com/partner-api/v1/transfers/transferId' \
> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
> --header 'Content-Type: application/json'
Response (200 OK)
1{
2 "amount_beneficiary_receives": 1,
3 "beneficiary": "<string>",
4 "created_at": "<date-time>",
5 "factor_managed_account_id": "e1f3c6e3-ba66-4400-83ec-e81553647806",
6 "fee_amount": 1,
7 "fee_currency": "USD",
8 "fee_paid_by": "BENEFICIARY",
9 "id": "b05a7b0f-e24f-4339-ab4f-67bf398b2b0a",
10 "reference": "payment-2025-01-01",
11 "request_id": "ffb277f7-c10d-4e46-ab1e-25acd90a79fc",
12 "source_amount": 100,
13 "source_currency": "USD",
14 "status": "PENDING",
15 "target_amount": 100,
16 "transfer_currency": "USD",
17 "updated_at": "<date-time>"
18}
Was this section helpful?

List all Transfers

GET /partner-api/v1/transfers

Retrieve details of transfers.

Query parameters
factor_managed_account_idstring

The unique identifier of the factor managed account.

from_created_atstring

The start time of created_at in ISO8601 format (inclusive).

pagestring

A bookmark for use in pagination to retrieve either the next page or the previous page of results. You can fetch the value for this identifier from the response of the previous API call. To retrieve the next page of results, pass the value of page_after (if not null) from the response to a subsequent call. To retrieve the previous page of results, pass the value of page_before (if not null) from the response to a subsequent call.

page_sizeinteger

Number of transfer objects per page. Defaults to 20.

statusstring

Status of the transfer.

to_created_atstring

The end time of created_at in ISO8601 format (exclusive).

Response body - 200 OK
itemsarray

Paged results.

items.created_atstring

The time when this transaction was created.

items.factor_managed_account_idstring

The unique identifier of the factor managed account.

items.idstring

The unique identifier of the transfer.

items.referencestring

A user specified reference that will be displayed to the beneficiary on the payment transaction with their bank.

  • 1-140 characters long
  • Should not contain emojis
items.request_idstring

A unique request identifier specified by you for idempotency. Up to 50 characters.

items.statusstring

The status of the transfer.

PENDING

The transfer is pending to be executed.

COMPLETED

The transfer is completed successfully.

FAILED

The transfer is failed.

items.updated_atstring

The time when this transaction was last updated.

items.amount_beneficiary_receivesnumber

The total amount the beneficiary receives for this transfer,.

items.beneficiarystring

Details for the repayment beneficiary. The schema of the bank_transfer_beneficiary can be referenced from the beneficiary field in the request body in create a new beneficiary APIAPI. We only support LOCAL as payment method for now.

items.fee_amountnumber

The amount of the fee.

items.fee_currencyobject

The currency of the fee.

items.fee_paid_bystring

Denotes whether PAYER/BENEFICIARY will be liable for the transfer fees, and it affects the actual amount the beneficiary receives.

PAYER
BENEFICIARY
items.source_amountnumber

The amount of the source transfer.

items.source_currencyobject

The currency of the source transfer.

items.target_amountnumber

The amount of the target transfer.

items.transfer_currencyobject

The currency of the target transfer.

page_afterstring

The page cursor used for searching after page.

page_beforestring

The page cursor used for search before page.

GET /partner-api/v1/transfers
$curl --request GET \
> --url 'https://api.sandbox.airwallex.com/partner-api/v1/transfers' \
> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
> --header 'Content-Type: application/json'
Response (200 OK)
1{
2 "items": [
3 {
4 "amount_beneficiary_receives": 1,
5 "factor_managed_account_id": "e1f3c6e3-ba66-4400-83ec-e81553647806",
6 "fee_amount": 1,
7 "fee_currency": "USD",
8 "fee_paid_by": "BENEFICIARY",
9 "id": "b05a7b0f-e24f-4339-ab4f-67bf398b2b0a",
10 "reference": "payment-2025-01-01",
11 "request_id": "ffb277f7-c10d-4e46-ab1e-25acd90a79fc",
12 "source_amount": 100,
13 "source_currency": "USD",
14 "status": "PENDING",
15 "target_amount": 100,
16 "transfer_currency": "USD"
17 }
18 ],
19 "page_after": "<string>",
20 "page_before": "<string>"
21}
Was this section helpful?