Airwallex logo

Transfers via Stablecoin

Copy for LLMView as Markdown

Stablecoin payments are currently available via API only and are not supported in the Airwallex web app.

Sending stablecoins to an incorrect wallet address or unsupported network will result in the irreversible loss of funds. Always verify the recipient wallet address and network before initiating a transfer.

You can pay out stablecoins to a beneficiary's wallet on a supported blockchain network by creating a transfer with our Transfer APIAPI endpoints. Learn how to do this in the following sections.

The current transfer approval workflow also applies to transfers via stablecoin.

For supported stablecoins and networks, see Stablecoin wallet payout network.

Before you begin

  • Contact your Airwallex Account Manager to enable stablecoin payouts for your account. The following setup is managed by your Account Manager:
    • Stablecoin beneficiary configuration
    • Stablecoin transfer type configuration
    • Payout fee configuration
    • Routing configuration
  • Obtain your access tokenAPI by authenticating to Airwallex using your unique Client ID and API key. You will need the access token to make API calls.

Step 1: Create a stablecoin wallet beneficiary

Call the Create a beneficiaryAPI endpoint with type set to STABLECOIN_WALLET and a stablecoin_wallet object.

Required fieldsPermitted dataNotes
typeSTABLECOIN_WALLETBeneficiary type
entity_typeCOMPANY or PERSONALEntity type of the beneficiary
company_nameStringRequired when entity_type is COMPANY
additional_info.business_registration_numberStringRequired when entity_type is COMPANY
first_nameStringRequired when entity_type is PERSONAL
last_nameStringRequired when entity_type is PERSONAL
date_of_birthYYYY-MM-DDRequired when entity_type is PERSONAL
address.country_code2-letter ISO 3166-2 country codeCountry of the beneficiary
stablecoin_wallet.assetUSDCStablecoin asset type
stablecoin_wallet.networkETHEREUMBlockchain network
stablecoin_wallet.addressEthereum address (0x...)Wallet address of the beneficiary

Example request

Shell
1curl -X POST https://api-demo.airwallex.com/api/v1/beneficiaries/create \
2 -H 'Content-Type: application/json' \
3 -H 'Authorization: Bearer {{ACCESS_TOKEN}}' \
4 -d '{
5 "beneficiary": {
6 "additional_info": {
7 "business_registration_number": "123456789"
8 },
9 "address": {
10 "country_code": "US"
11 },
12 "entity_type": "COMPANY",
13 "company_name": "Acme Web3 Ltd",
14 "stablecoin_wallet": {
15 "asset": "USDC",
16 "network": "ETHEREUM",
17 "address": "0x5abfe17b2e9e1234567890abcdef1234567890"
18 },
19 "type": "STABLECOIN_WALLET"
20 },
21 "nickname": "Acme-USDC-Rail"
22 }'

Example response

JSON
1{
2 "beneficiary": {
3 "additional_info": {
4 "business_registration_number": "123456789"
5 },
6 "address": {
7 "country_code": "US"
8 },
9 "company_name": "Acme Web3 Ltd",
10 "stablecoin_wallet": {
11 "asset": "USDC",
12 "network": "ETHEREUM",
13 "address": "0x5abfe17b2e9e1234567890abcdef1234567890"
14 },
15 "entity_type": "COMPANY",
16 "type": "STABLECOIN_WALLET"
17 },
18 "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
19 "nickname": "Acme-USDC-Rail",
20 "payer_entity_type": "COMPANY"
21}

Step 2: Create a transfer

Call the Create a transferAPI endpoint. You can either reference a saved beneficiary_id or pass the beneficiary details inline.

For stablecoin transfers, set transfer_method to LOCAL. This routes the payout through Airwallex's stablecoin infrastructure to the blockchain network.

Example request (inline beneficiary)

Shell
1curl -X POST https://api-demo.airwallex.com/api/v1/transfers/create \
2 -H 'Content-Type: application/json' \
3 -H 'Authorization: Bearer {{ACCESS_TOKEN}}' \
4 -d '{
5 "beneficiary": {
6 "additional_info": {
7 "business_registration_number": "123456789"
8 },
9 "address": {
10 "country_code": "US"
11 },
12 "company_name": "Acme Web3 Ltd",
13 "entity_type": "COMPANY",
14 "stablecoin_wallet": {
15 "asset": "USDC",
16 "network": "ETHEREUM",
17 "address": "0x5abfe17b2e9e1234567890abcdef1234567890"
18 },
19 "type": "STABLECOIN_WALLET"
20 },
21 "reason": "pay_for_goods",
22 "reference": "STABLECOIN-PMT-001",
23 "request_id": "b2c3d4e5-f6a7-8901-bcde-f01234567890",
24 "source_amount": 1000,
25 "source_currency": "USD",
26 "transfer_method": "LOCAL"
27 }'

If you are registered as a platform account, you can call this endpoint on behalf of your connected accounts by specifying the open ID in the x-on-behalf-of header.

Example response

JSON
1{
2 "beneficiary": {
3 "additional_info": {
4 "business_registration_number": "123456789"
5 },
6 "address": {
7 "country_code": "US"
8 },
9 "company_name": "Acme Web3 Ltd",
10 "entity_type": "COMPANY",
11 "stablecoin_wallet": {
12 "asset": "USDC",
13 "network": "ETHEREUM",
14 "address": "0x5abfe17b2e9e1234567890abcdef1234567890"
15 },
16 "type": "STABLECOIN_WALLET"
17 },
18 "created_at": "2025-04-20T12:00:00+0000",
19 "fee_amount": 0,
20 "fee_currency": "USD",
21 "id": "c3d4e5f6-a7b8-9012-cdef-012345678901",
22 "reason": "pay_for_goods",
23 "reference": "STABLECOIN-PMT-001",
24 "request_id": "b2c3d4e5-f6a7-8901-bcde-f01234567890",
25 "source_amount": 1000,
26 "source_currency": "USD",
27 "status": "PROCESSING",
28 "transfer_amount": 1000,
29 "transfer_currency": "USD",
30 "transfer_method": "LOCAL"
31}

Step 3: Check transfer status

Call Get a transferAPI to check the status. Once the on-chain transaction is submitted, dispatch_info will contain:

  • external_reference: the blockchain transaction hash
  • external_reference_type: NETWORK_TRANSACTION_ID

You can use the transaction hash to verify the payout on a blockchain explorer (e.g., Etherscan).

Transfer lifecycle

Stablecoin transfers follow this status progression:

StatusDescription
SCHEDULEDTransfer created and queued for processing
PROCESSINGTransfer is being processed
SENTOn-chain transaction submitted to the network
PAIDOn-chain transaction confirmed, funds delivered

Sandbox testing

Sandbox simulation for stablecoin transfers is not currently available. To test your integration end-to-end, contact your Airwallex Account Manager to set up a demo environment with stablecoin payments enabled.

Next steps

Was this page helpful?