Batch Transfers
A batch transfer resource is created when you want to create multiple payments with one fund deduction from your funding source. You can create a batch transfer first, and then add items into this batch. You can only input one funding source in a batch. Beneficiary information is contained in each item in the batch.
GET /api/v1/batch_transfersGET /api/v1/batch_transfers/{id}POST /api/v1/batch_transfers/{id}/add_itemsPOST /api/v1/batch_transfers/{id}/deletePOST /api/v1/batch_transfers/{id}/delete_itemsGET /api/v1/batch_transfers/{id}/itemsPOST /api/v1/batch_transfers/{id}/quotePOST /api/v1/batch_transfers/{id}/submitPOST /api/v1/batch_transfers/create
List all batch transfers
GET /api/v1/batch_transfers
Retrieve batch transfers with optional filters on request id, status, or pagination parameters (page, page_size).
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.
Number of results per page, default and max value is 50
Batch transfer request_id
Batch transfer short_reference_id
The batch transfer status
Paged results.
System generated batch transfer id.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
Date when batch transfer is scheduled to be processed.
The page cursor used for searching after page
The page cursor used for search before page
| Error status | Description |
|---|---|
| 400 | Possible errors: |
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request GET \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "items": [3 {4 "funding": {5 "deposit_type": "DIRECT_DEBIT",6 "failure_details": {7 "code": "insufficient_funds",8 "iso_code": "AM04",9 "provider_failure_details": {10 "code": "R01",11 "local_clearing_system": "US_ACH",12 "message": "INSUFFICIENT FUNDS"13 }14 },15 "failure_reason": "regulatory_reason",16 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",17 "reference": "DD for batch transfer 12345",18 "status": "FUNDED"19 },20 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",21 "metadata": {22 "order_id": "0123456789"23 },24 "name": "batch-name",25 "quote_summary": {26 "expires_at": "2024-01-24T18:03:02+1100",27 "last_quoted_at": "2024-01-24T18:00:02+1100",28 "quotes": [29 {30 "amount_beneficiary_receives": 200,31 "amount_payer_pays": 1005,32 "client_rate": 5,33 "currency_pair": "AUDUSD",34 "fee_amount": 5,35 "fee_currency": "USD",36 "payment_currency": "AUD",37 "source_currency": "USD"38 }39 ]40 },41 "remarks": "Any information",42 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",43 "short_reference_id": "B231018-TMA1RTC",44 "status": "SCHEDULED",45 "total_item_count": 100,46 "transfer_date": "2024-01-24",47 "updated_at": "2024-01-24T18:00:02+1100",48 "valid_item_count": 9949 }50 ],51 "page_after": "<string>",52 "page_before": "<string>"53}
Retrieve a batch transfer
GET /api/v1/batch_transfers/{id}
Retrieve details of a batch transfer by specifying the batch transfer id.
Unique identifier of the batch transfer to retrieve
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 400 | Possible errors: |
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request GET \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_reason": "regulatory_reason",5 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",6 "reference": "DD for batch transfer 12345",7 "status": "FUNDED"8 },9 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",10 "metadata": {11 "order_id": "0123456789"12 },13 "name": "batch-name",14 "quote_summary": {15 "expires_at": "2024-01-24T18:03:02+1100",16 "last_quoted_at": "2024-01-24T18:00:02+1100",17 "quotes": [18 {19 "amount_beneficiary_receives": 200,20 "amount_payer_pays": 1005,21 "client_rate": 5,22 "currency_pair": "AUDUSD",23 "fee_amount": 5,24 "fee_currency": "USD",25 "payment_currency": "AUD",26 "source_currency": "USD"27 }28 ],29 "validity": "MIN_1"30 },31 "remarks": "Any information",32 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",33 "short_reference_id": "B231018-TMA1RTC",34 "status": "SCHEDULED",35 "total_item_count": 100,36 "transfer_date": "2024-01-24",37 "updated_at": "2024-01-24T18:00:02+1100",38 "valid_item_count": 9939}
Add items to a batch
POST /api/v1/batch_transfers/{id}/add_items
Add transfer items to a batch by specifying the batch transfer id. You may add 100 items at a time and add up to a maximum of 1000 items per batch transfer. Please note that you can only add items to a batch when its status is DRAFTING.
Unique identifier of the batch transfer to add batch transfer items
A list of batch items to be added, you may add 100 items at a time and add up to a maximum of 1000 items per batch transfer.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
A unique request identifier specified by the client. payout requests with the same request_id will be ignored. This allows requests to be replayed if client is unsure of the outcome, e.g. due to network issues, system failures, etc. Note: Can be non-UUID as long as it is unique between requests.
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code)
Details for the beneficiary in the payment request. If beneficiary_id provided in the payment request then beneficiary should be empty
Beneficiary's bank account details where the payment will be credited
Account Currency
Account holder name of the beneficiary’s bank account
Bank country code (2-letter ISO 3166-2 country code)
Fingerprint of current beneficiary's bank account
The beneficiary’s account name known in the payment system. This is only supported in some regions and transfer methods. See detailed definitions in the Payouts Product Docs .
Account number, mostly for non-european countries, either account_number or iban should be filled
Routing code type
Routing code sub type
Routing code value
Routing code sub type value
bank account type
Specific branch of bank account
Bank name of the beneficiary's bank account
Bank State
Bank street address
The mobile number tied to the Beneficiary's bank account
International bank account number, mostly for european countries
Bank name of the beneficiary's intermediary bank
Intermediary bank SWIFT code / BIC,Should contain alphanumeric characters only, Should be a valid and supported SWIFT code / BIC
Which clearing system should be used for this local bank transfer.
Please refer to our payout guide for details about each option.
We suggest explicitly specifying this value, however if it's not provided we will select a default (using the specified account routing type and/or what's most often the best option).
Bank swift code
The unique reference number that clients need to add when they doing the deposit so that we can top up the fund to correct account
Entity type of the beneficiary
Additional information about the beneficiary
Category of business activity
Business phone number
Business registration number
The identifier that you use to identify a beneficiary, usually a unique identifier. This field can be used to link transfers or beneficiaries to other records such as tax form details for filing purposes
Legal representative's personal bank account number used for declaration purposes. No funds will be sent to this account number.
Legal representative first name in chinese
Legal representative id number
Legal representative last name in chinese
Legal representative’s mobile number associated with their bank account.
Personal email
Beneficiary's first name in Chinese
Personal unique identifier number
Personal unique identifier type
Beneficiary's last name in Chinese
Personal mobile number
Account unique identifier of the recipient account used for payout processing. The account must be active and have customer_agreements.terms_and_conditions.service_agreement_type set to RECIPIENT (verify via Retrieve account details API).
Security question. Required when the email address is not registered with Interac e-Transfer autodeposit.
Security question answer. Required when the email address is not registered with Interac e-Transfer autodeposit.
Beneficiary's address details
Beneficiary's city
Beneficiary's country code (2-letter ISO 3166-2 country code)
Beneficiary's post code
Beneficiary's state
Beneficiary's street address
Company name of the beneficiary
beneficiary date of birth
First name of the beneficiary
Last name of the beneficiary
An Airwallex beneficiary_id previously generated by utilising the Airwallex Contact API. This may be provided in place of the beneficiary section and should be empty if the beneficiary fields are provided.
Denotes whether PAYER/BENEFICIARY will be liable for the payment fees, and it affects the actual amount the beneficiary receives.
A set of key-value pairs for storing your own data together with the payment.
Details for the payer in the payment request. If payer_id provided in the payment request then payer should be empty
Payer's address details
Payer's country code (2-letter ISO 3166-2 country code)
Payer's city
Payer's post code
Payer's state
Payer's street address
Entity type of the payer
Additional information about the payer
Business registration number
Type of business as registered with the local government authority
Unique identifier of the person in your company
Personal email
Personal unique identifier number
Company name of the payer
Payer's date of birth
First name of the payer
Last name of the payer
An Airwallex payer_id previously generated by utilising the Airwallex Contact API. This may be provided in place of the payer section and should be empty if the payer fields are provided.
Payment amount in payment_currency.
Payment method, i.e. SWIFT, LOCAL.
Reason for the payment instruction.
A user specified reference that will be displayed to the beneficiary on the payment transaction with their bank.
Additional information about this payment, which will not be passed to the beneficiary.
Source amount in source_currency.
(For SWIFT payments only), specify who should bear SWIFT charges, either SHARED (default) or PAYER.
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id/add_items' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "items": [> {> "beneficiary": {> "additional_info": {> "business_area": "Travel",> "business_phone_number": "689342234",> "business_registration_number": "IT593003",> "legal_rep_bank_account_number": "44250100003700000000",> "legal_rep_first_name_in_chinese": "小芳",> "legal_rep_id_number": "110108199304203520",> "legal_rep_last_name_in_chinese": "刘",> "legal_rep_mobile_number": "13651362890",> "personal_email": "[email protected]",> "personal_first_name_in_chinese": "大明",> "personal_id_number": "1234567890",> "personal_id_type": "NATIONAL_ID",> "personal_last_name_in_chinese": "李",> "personal_mobile_number": "13651362890",> "security_question": "What is the name of my second puppy?",> "security_question_answer": "Scooby Doo"> },> "address": {> "city": "Melbourne",> "country_code": "AU",> "postcode": "3000",> "state": "VIC",> "street_address": "15 William Street"> },> "bank_details": {> "account_currency": "AUD",> "account_name": "Lee Da Ming",> "account_name_alias": "Lee D M",> "account_number": "12750852",> "account_routing_type1": "bsb",> "account_routing_type2": "sort_code",> "account_routing_value1": "083064",> "account_routing_value2": "123456",> "bank_account_category": "Checking,Savings,Vista,Maestra",> "bank_branch": "Melbourne",> "bank_country_code": "AU",> "bank_name": "National Australia Bank",> "bank_street_address": "500 Bourke Street, Melbourne 3000, Australia",> "binding_mobile_number": "654897612345",> "fingerprint": "2e99758548972a8e8822ad47fa1017ff72f06f3ff6a016851f45c398732bc50c",> "iban": "ES8023100001180000012345",> "local_clearing_system": "ACH",> "swift_code": "CTBAAU2S",> "transaction_reference": "4140110135",> "intermediary_bank_swift_code": "CTBAAU2S",> "intermediary_bank_name": "National Australia Bank"> },> "company_name": "Complete Concrete Pty Ltd",> "date_of_birth": "1976-08-26",> "entity_type": "COMPANY",> "first_name": "John",> "last_name": "Walker"> },> "beneficiary_id": "8365ea88-2946-4877-abe1-e02a1015288d",> "fee_paid_by": "PAYER",> "metadata": {> "order_id": "0123456789"> },> "payer": {> "additional_info": {> "business_registration_number": "EU300503",> "business_registration_type": "Partnership",> "external_id": "1234567890",> "personal_email": "[email protected]",> "personal_id_number": "1234567890"> },> "address": {> "city": "Melbourne",> "country_code": "AU",> "postcode": "3000",> "state": "VIC",> "street_address": "15 William Street"> },> "company_name": "Complete Concrete Pty Ltd",> "date_of_birth": "1976-08-26",> "entity_type": "COMPANY",> "first_name": "James",> "last_name": "Smith"> },> "payer_id": "46c22228-5831-4c53-a4fa-a3ab4954877c",> "payment_amount": 10000,> "payment_currency": "AUD",> "payment_method": "SWIFT",> "reason": "travel",> "reference": "PMT1936398",> "remarks": "Any information",> "request_id": "7f687fe6-dcf4-4462-92fa-80335301d9d2",> "source_amount": 10000,> "source_currency": "AUD",> "swift_charge_option": "SHARED"> }> ]>}'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_details": {5 "code": "insufficient_funds",6 "iso_code": "AM04",7 "provider_failure_details": {8 "code": "R01",9 "local_clearing_system": "US_ACH",10 "message": "INSUFFICIENT FUNDS"11 }12 },13 "failure_reason": "regulatory_reason",14 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",15 "reference": "DD for batch transfer 12345",16 "status": "FUNDED"17 },18 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",19 "metadata": {20 "order_id": "0123456789"21 },22 "name": "batch-name",23 "quote_summary": {24 "expires_at": "2024-01-24T18:03:02+1100",25 "last_quoted_at": "2024-01-24T18:00:02+1100",26 "quotes": [27 {28 "amount_beneficiary_receives": 200,29 "amount_payer_pays": 1005,30 "client_rate": 5,31 "currency_pair": "AUDUSD",32 "fee_amount": 5,33 "fee_currency": "USD",34 "payment_currency": "AUD",35 "source_currency": "USD"36 }37 ],38 "validity": "MIN_1"39 },40 "remarks": "Any information",41 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",42 "short_reference_id": "B231018-TMA1RTC",43 "status": "SCHEDULED",44 "total_item_count": 100,45 "transfer_date": "2024-01-24",46 "updated_at": "2024-01-24T18:00:02+1100",47 "valid_item_count": 9948}
Delete a batch transfer
POST /api/v1/batch_transfers/{id}/delete
Before submitting a batch transfer, you can delete a batch by specifying the batch transfer id. Please note that you can only delete a batch transfer when its status is DRAFTING.
Unique identifier of the batch transfer to be deleted
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id/delete' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_reason": "regulatory_reason",5 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",6 "reference": "DD for batch transfer 12345",7 "status": "FUNDED"8 },9 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",10 "metadata": {11 "order_id": "0123456789"12 },13 "name": "batch-name",14 "quote_summary": {15 "expires_at": "2024-01-24T18:03:02+1100",16 "last_quoted_at": "2024-01-24T18:00:02+1100",17 "quotes": [18 {19 "amount_beneficiary_receives": 200,20 "amount_payer_pays": 1005,21 "client_rate": 5,22 "currency_pair": "AUDUSD",23 "fee_amount": 5,24 "fee_currency": "USD",25 "payment_currency": "AUD",26 "source_currency": "USD"27 }28 ],29 "validity": "MIN_1"30 },31 "remarks": "Any information",32 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",33 "short_reference_id": "B231018-TMA1RTC",34 "status": "SCHEDULED",35 "total_item_count": 100,36 "transfer_date": "2024-01-24",37 "updated_at": "2024-01-24T18:00:02+1100",38 "valid_item_count": 9939}
Delete items within a batch
POST /api/v1/batch_transfers/{id}/delete_items
Before submitting a batch transfer, you can delete invalid or wrong items in the batch by specifying the batch transfer id and item_ids. Please note that you can only delete items when the batch transfer status is DRAFTING.
Unique identifier of the batch transfer to delete batch transfer items
A list of batch item ids to be deleted.
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id/delete_items' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "item_ids": []>}'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_details": {5 "code": "insufficient_funds",6 "iso_code": "AM04",7 "provider_failure_details": {8 "code": "R01",9 "local_clearing_system": "US_ACH",10 "message": "INSUFFICIENT FUNDS"11 }12 },13 "failure_reason": "regulatory_reason",14 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",15 "reference": "DD for batch transfer 12345",16 "status": "FUNDED"17 },18 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",19 "metadata": {20 "order_id": "0123456789"21 },22 "name": "batch-name",23 "quote_summary": {24 "expires_at": "2024-01-24T18:03:02+1100",25 "last_quoted_at": "2024-01-24T18:00:02+1100",26 "quotes": [27 {28 "amount_beneficiary_receives": 200,29 "amount_payer_pays": 1005,30 "client_rate": 5,31 "currency_pair": "AUDUSD",32 "fee_amount": 5,33 "fee_currency": "USD",34 "payment_currency": "AUD",35 "source_currency": "USD"36 }37 ],38 "validity": "MIN_1"39 },40 "remarks": "Any information",41 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",42 "short_reference_id": "B231018-TMA1RTC",43 "status": "SCHEDULED",44 "total_item_count": 100,45 "transfer_date": "2024-01-24",46 "updated_at": "2024-01-24T18:00:02+1100",47 "valid_item_count": 9948}
List all items within a batch
GET /api/v1/batch_transfers/{id}/items
Retrieve all items added to the batch transfer by specifying the batch transfer id.
Unique identifier of the batch transfer to retrieve items
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.
Number of results per page, default and max value is 1000
Paged results.
System generated batch transfer item id, can be used to delete batch items.
Original request_id of the user for the batch item.
Batch transfer item statuses, can be one of: VALIDATION_FAILED, VALIDATED, BOOKING, BOOKED, BOOKING_FAILED
The time this batch transfer was last updated.
Any detailed error codes if status is VALIDATION_FAILED or BOOKING_FAILED.
Unique numeric identifier of the specific validation error encountered.
Additional parsable information relating to the specific validation error where applicable, e.g. minimum and maximum character length.
The specific field within the request that has failed.
Transfer draft preview after obtaining a quote. It will no longer be available once batch transfer is booked.
The total amount (in payment payment_currency) the beneficiary receives for this payment, and is governed by value specified in fee_paid_by, i.e. if fee_paid_by is PAYER, then the beneficiary receives the exact same payment_amount since payer is responsible for the payment fee. Otherwise, beneficiary receives payment_amount - fee as the fee is implicitly passed onto the beneficiary
The total amount (in source_currency) the payer has to pay for making this payment. For example, if fee_paid_by is PAYER and FX conversion is not involved, then this is the sum of payment_amount + fee as the payer is responsible for the fee. Otherwise this field is the same as payment_amount
Details of the beneficiary
Beneficiary's bank account details where the payment will be credited
Account Currency
Account holder name of the beneficiary’s bank account
Bank country code (2-letter ISO 3166-2 country code)
Fingerprint of current beneficiary's bank account
The beneficiary’s account name known in the payment system. This is only supported in some regions and transfer methods. See detailed definitions in the Payouts Product Docs .
Account number, mostly for non-european countries, either account_number or iban should be filled
Routing code type
Routing code sub type
Routing code value
Routing code sub type value
bank account type
Specific branch of bank account
Bank name of the beneficiary's bank account
Bank State
Bank street address
The mobile number tied to the Beneficiary's bank account
International bank account number, mostly for european countries
Bank name of the beneficiary's intermediary bank
Intermediary bank SWIFT code / BIC,Should contain alphanumeric characters only, Should be a valid and supported SWIFT code / BIC
Which clearing system should be used for this local bank transfer.
Please refer to our payout guide for details about each option.
We suggest explicitly specifying this value, however if it's not provided we will select a default (using the specified account routing type and/or what's most often the best option).
Bank swift code
The unique reference number that clients need to add when they doing the deposit so that we can top up the fund to correct account
Entity type of the beneficiary
Additional information about the beneficiary
Category of business activity
Business phone number
Business registration number
The identifier that you use to identify a beneficiary, usually a unique identifier. This field can be used to link transfers or beneficiaries to other records such as tax form details for filing purposes
Legal representative's personal bank account number used for declaration purposes. No funds will be sent to this account number.
Legal representative first name in chinese
Legal representative id number
Legal representative last name in chinese
Legal representative’s mobile number associated with their bank account.
Personal email
Beneficiary's first name in Chinese
Personal unique identifier number
Personal unique identifier type
Beneficiary's last name in Chinese
Personal mobile number
Account unique identifier of the recipient account used for payout processing. The account must be active and have customer_agreements.terms_and_conditions.service_agreement_type set to RECIPIENT (verify via Retrieve account details API).
Security question. Required when the email address is not registered with Interac e-Transfer autodeposit.
Security question answer. Required when the email address is not registered with Interac e-Transfer autodeposit.
Beneficiary's address details
Beneficiary's city
Beneficiary's country code (2-letter ISO 3166-2 country code)
Beneficiary's post code
Beneficiary's state
Beneficiary's street address
Company name of the beneficiary
beneficiary date of birth
First name of the beneficiary
Last name of the beneficiary
The payment fee (in source_currency) for sending this payment
The payment fee currency. This should always equal to the source_currency
Denotes whether PAYER / BENEFICIARY will be liable for the the payment fee. Defaults to PAYER unless field is populated in the request
Details of the payer
Payer's address details
Payer's country code (2-letter ISO 3166-2 country code)
Payer's city
Payer's post code
Payer's state
Payer's street address
Entity type of the payer
Additional information about the payer
Business registration number
Type of business as registered with the local government authority
Unique identifier of the person in your company
Personal email
Personal unique identifier number
Company name of the payer
Payer's date of birth
First name of the payer
Last name of the payer
Amount to be paid.
Currency the payment should be made in (3-letter ISO-4217 code).
Date when payment should be made (Copied from the request if specified)
Copied from the request if specified. Otherwise the system will populate this field automatically
Reason for the payment instruction
Bank payment reference to be shown on beneficiary's bank transaction history
A unique request identifier specified in the payment request.
Short payment reference for support purposes
Amount to be received.
Copied from the request if specified
beneficiary_id of the beneficiary contact used to create this payment
A set of key-value pairs for storing your own data together with the payment.
payer_id of the payer contact used to create this payment
Additional information about this payment, which will not be passed to the beneficiary.
System generated transaction id of the batch item, if not booked, return null
The page cursor used for searching after page
The page cursor used for search before page
| Error status | Description |
|---|---|
| 400 | Possible errors: |
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request GET \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id/items' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "items": [3 {4 "errors": [5 {6 "code": "002",7 "params": {8 "length_min": "5",9 "length_max": "200"10 },11 "source": "beneficiary.address.street_address"12 }13 ],14 "id": "aaaaaaaa-a6a1-4d45-aae7-6858fceeeeee",15 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d9d2",16 "status": "VALIDATED",17 "transfer_draft": {18 "amount_beneficiary_receives": 99996,19 "amount_payer_pays": 10004,20 "beneficiary": {21 "additional_info": {22 "business_area": "Travel",23 "business_phone_number": "689342234",24 "business_registration_number": "IT593003",25 "legal_rep_bank_account_number": "44250100003700000000",26 "legal_rep_first_name_in_chinese": "小芳",27 "legal_rep_id_number": "110108199304203520",28 "legal_rep_last_name_in_chinese": "刘",29 "legal_rep_mobile_number": "13651362890",30 "personal_email": "[email protected]",31 "personal_first_name_in_chinese": "大明",32 "personal_id_number": "1234567890",33 "personal_id_type": "NATIONAL_ID",34 "personal_last_name_in_chinese": "李",35 "personal_mobile_number": "13651362890",36 "security_question": "What is the name of my second puppy?",37 "security_question_answer": "Scooby Doo"38 },39 "address": {40 "city": "Melbourne",41 "country_code": "AU",42 "postcode": "3000",43 "state": "VIC",44 "street_address": "15 William Street"45 },46 "bank_details": {47 "account_currency": "AUD",48 "account_name": "Lee Da Ming",49 "account_name_alias": "Lee D M",50 "account_number": "12750852",51 "account_routing_type1": "bsb",52 "account_routing_type2": "sort_code",53 "account_routing_value1": "083064",54 "account_routing_value2": "123456",55 "bank_account_category": "Checking,Savings,Vista,Maestra",56 "bank_branch": "Melbourne",57 "bank_country_code": "AU",58 "bank_name": "National Australia Bank",59 "bank_street_address": "500 Bourke Street, Melbourne 3000, Australia",60 "binding_mobile_number": "654897612345",61 "fingerprint": "2e99758548972a8e8822ad47fa1017ff72f06f3ff6a016851f45c398732bc50c",62 "iban": "ES8023100001180000012345",63 "local_clearing_system": "ACH",64 "swift_code": "CTBAAU2S",65 "transaction_reference": "4140110135",66 "intermediary_bank_swift_code": "CTBAAU2S",67 "intermediary_bank_name": "National Australia Bank"68 },69 "company_name": "Complete Concrete Pty Ltd",70 "date_of_birth": "1976-08-26",71 "entity_type": "COMPANY",72 "first_name": "John",73 "last_name": "Walker"74 },75 "fee_amount": 4,76 "fee_currency": "AUD",77 "fee_paid_by": "PAYER",78 "metadata": {79 "order_id": "0123456789"80 },81 "payer": {82 "additional_info": {83 "business_registration_number": "EU300503",84 "business_registration_type": "Partnership",85 "external_id": "1234567890",86 "personal_email": "[email protected]",87 "personal_id_number": "1234567890"88 },89 "address": {90 "city": "Melbourne",91 "country_code": "AU",92 "postcode": "3000",93 "state": "VIC",94 "street_address": "15 William Street"95 },96 "company_name": "Complete Concrete Pty Ltd",97 "date_of_birth": "1976-08-26",98 "entity_type": "COMPANY",99 "first_name": "James",100 "last_name": "Smith"101 },102 "payment_amount": 10000,103 "payment_currency": "AUD",104 "payment_date": "2021-01-24",105 "payment_method": "SWIFT",106 "reason": "travel",107 "reference": "PMT1936398",108 "remarks": "string",109 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d9d2",110 "short_reference_id": "20170322-9F6ML2",111 "source_amount": 10000,112 "source_currency": "AUD"113 },114 "transfer_id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",115 "updated_at": "2021-01-24T18:00:02+1100"116 }117 ],118 "page_after": "<string>",119 "page_before": "<string>"120}
Quote a batch transfer
POST /api/v1/batch_transfers/{id}/quote
After adding valid transfer items to the batch, you can quote/lock FX rates by specifying the batch transfer id. Please note that only valid items in the batch will be quoted; you can only quote a batch transfer when its status is DRAFTING or IN_APPROVAL.
Unique identifier of the batch transfer to quote
Quote validity period. Available options: [MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24]. The value will default to MIN_1 if not specified.
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id/quote' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "validity": "HR_24">}'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_details": {5 "code": "insufficient_funds",6 "iso_code": "AM04",7 "provider_failure_details": {8 "code": "R01",9 "local_clearing_system": "US_ACH",10 "message": "INSUFFICIENT FUNDS"11 }12 },13 "failure_reason": "regulatory_reason",14 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",15 "reference": "DD for batch transfer 12345",16 "status": "FUNDED"17 },18 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",19 "metadata": {20 "order_id": "0123456789"21 },22 "name": "batch-name",23 "quote_summary": {24 "expires_at": "2024-01-24T18:03:02+1100",25 "last_quoted_at": "2024-01-24T18:00:02+1100",26 "quotes": [27 {28 "amount_beneficiary_receives": 200,29 "amount_payer_pays": 1005,30 "client_rate": 5,31 "currency_pair": "AUDUSD",32 "fee_amount": 5,33 "fee_currency": "USD",34 "payment_currency": "AUD",35 "source_currency": "USD"36 }37 ],38 "validity": "MIN_1"39 },40 "remarks": "Any information",41 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",42 "short_reference_id": "B231018-TMA1RTC",43 "status": "SCHEDULED",44 "total_item_count": 100,45 "transfer_date": "2024-01-24",46 "updated_at": "2024-01-24T18:00:02+1100",47 "valid_item_count": 9948}
Submit a batch transfer
POST /api/v1/batch_transfers/{id}/submit
Submit a batch transfer by specifying the batch transfer id. Please note that only valid items in the batch will be submitted. If no approval is required, this batch will transition to SCHEDULED status and will be processed by Airwallex accordingly. If approval is required, this batch will transition to IN_APPROVAL status.
Unique identifier of the batch transfer to submit
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/batch_transfer_id/submit' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_reason": "regulatory_reason",5 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",6 "reference": "DD for batch transfer 12345",7 "status": "FUNDED"8 },9 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",10 "metadata": {11 "order_id": "0123456789"12 },13 "name": "batch-name",14 "quote_summary": {15 "expires_at": "2024-01-24T18:03:02+1100",16 "last_quoted_at": "2024-01-24T18:00:02+1100",17 "quotes": [18 {19 "amount_beneficiary_receives": 200,20 "amount_payer_pays": 1005,21 "client_rate": 5,22 "currency_pair": "AUDUSD",23 "fee_amount": 5,24 "fee_currency": "USD",25 "payment_currency": "AUD",26 "source_currency": "USD"27 }28 ],29 "validity": "MIN_1"30 },31 "remarks": "Any information",32 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",33 "short_reference_id": "B231018-TMA1RTC",34 "status": "SCHEDULED",35 "total_item_count": 100,36 "transfer_date": "2024-01-24",37 "updated_at": "2024-01-24T18:00:02+1100",38 "valid_item_count": 9939}
Create a batch transfer
POST /api/v1/batch_transfers/create
Create a new batch transfer.
A unique batch payout reference specified by the client. Batch payout create requests with the same request_id will be rejected.
Specify funding source for the batch. If not set, default is wallet.
The type of deposit you would like to create, either DIRECT_DEBIT or FASTER_DIRECT_DEBIT. If not specified, it will default to DIRECT_DEBIT.
The funding source unique identifier only supports Linked Accounts. Please provide the unique identifier of your Linked Account as returned in Create a Linked Account. Note that if not specified, the funding source will default to your Wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Additional information about this batch transfer, which will not be passed to the beneficiary.
If you are using your Wallet as the funding source, you can specify a current or future date (ISO 8601 format) for when the batch transfer items should be processed. If left blank, the transfer date will default to the earliest possible date.
The funding information of this batch transfer.
The Funding statuses of this batch transfer, can be one of SCHEDULED, PROCESSING, FUNDED, FAILED, REVERSED.
Can be one of: FASTER_DIRECT_DEBIT, DIRECT_DEBIT.
Details about why the funding has failed. Only present when the funding is in a failure state.
Error code (details can be found here ).
A set of original information received from the local clearing system.
The original error code received from the local clearing system.
The local clearing system used for the direct debit deposit. Possible values are AU_BECS, US_ACH, GB_BACS, EU_SEPA.
The original error message received from the local clearing system.
Empty unless the funding is in an error state.
The id of the funding source, it can be null if using a wallet.
A user specified reference that will be displayed to the Direct Debit bank account owner on the bank statement.
System generated batch transfer id.
A set of key-value pairs for storing your own data together with the batch transfer.
The name of the batch transfer.
Summary of all payment quotes in the batch. Quotes are consolidated based on currency pairs.
The time this batch transfer's quote will expire.
The time this batch transfer last quoted.
The quote details of the batch transfer.
Total amount beneficiary will need receive quoted in payment_currency.
Total amount payer need to pays quoted in source_currency.
Conversion rate. If pure payment, it will be null.
Currency pair related with the conversion rate. If pure payment, it will be null.
Total fee for this quote.
Fee currency.
Payment currency, i.e. the currency that the beneficiary receives (3-letter ISO-4217 code).
Source currency, i.e. the currency that the Payer uses to fund the payment (3-letter ISO-4217 code).
Quote validity period in the request.
MIN_1, MIN_15, MIN_30, HR_1, HR_4, HR_8, HR_24
Additional information about this batch transfer, which will not be passed to the beneficiary.
A unique batch transfer reference specified by the client.
System generated batch short reference id.
Batch transfer statuses , can be one of: DRAFTING, IN_APPROVAL, APPROVAL_RECALLED, APPROVAL_REJECTED, APPROVAL_BLOCKED, SCHEDULED, OVERDUE, BOOKING, PARTIALLY_BOOKED, BOOKED, FAILED, CANCELLATION_REQUESTED, CANCELLED.
The total count of items within the batch transfer.
Date when batch transfer is scheduled to be processed.
The time this batch transfer was last updated.
The total count of valid batch transfer items contained. Invalid items will also be stored in the batch, you can use add_items and delete_items API to update it or execute without those invalid items.
| Error status | Description |
|---|---|
| 401 | Possible errors: |
| 429 | Too many requests |
| 500 | Service unavailable |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/batch_transfers/create' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "funding_source": {> "deposit_type": "DIRECT_DEBIT",> "id": "8365ea88-2946-4877-abe1-e02a1015288d",> "reference": "DD for batch transfer 12345"> },> "metadata": {> "order_id": "0123456789"> },> "name": "batch-name",> "remarks": "Any information",> "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",> "transfer_date": "2024-01-24">}'
1{2 "funding": {3 "deposit_type": "DIRECT_DEBIT",4 "failure_details": {5 "code": "insufficient_funds",6 "iso_code": "AM04",7 "provider_failure_details": {8 "code": "R01",9 "local_clearing_system": "US_ACH",10 "message": "INSUFFICIENT FUNDS"11 }12 },13 "failure_reason": "regulatory_reason",14 "funding_source_id": "b3856846-31b0-44d8-855d-e0eedf532282",15 "reference": "DD for batch transfer 12345",16 "status": "FUNDED"17 },18 "id": "d9af1614-a6a1-4d45-aae7-6858fc6d9ede",19 "metadata": {20 "order_id": "0123456789"21 },22 "name": "batch-name",23 "quote_summary": {24 "expires_at": "2024-01-24T18:03:02+1100",25 "last_quoted_at": "2024-01-24T18:00:02+1100",26 "quotes": [27 {28 "amount_beneficiary_receives": 200,29 "amount_payer_pays": 1005,30 "client_rate": 5,31 "currency_pair": "AUDUSD",32 "fee_amount": 5,33 "fee_currency": "USD",34 "payment_currency": "AUD",35 "source_currency": "USD"36 }37 ],38 "validity": "MIN_1"39 },40 "remarks": "Any information",41 "request_id": "7f687fe6-dcf4-4462-92fa-80335301d911",42 "short_reference_id": "B231018-TMA1RTC",43 "status": "SCHEDULED",44 "total_item_count": 100,45 "transfer_date": "2024-01-24",46 "updated_at": "2024-01-24T18:00:02+1100",47 "valid_item_count": 9948}