Funds Splits
A Funds Split will guide you through the process to divide part of the collected funds to another destination before settling to the account that owns the funds.
You may create multiple Funds Splits for the same source of funds to send money to different destinations. However, one Funds Split will only have one destination.
You may specify the following on a Funds Split.
- What is the source of funds? Denoted by
source_type. - How much do you want to split? Denoted by
amount. - Who will receive the funds? Denoted by
destination.
Currently, Funds Split only works when the source of funds is a payment acceptance transaction, and the destinations are connected accounts to the funds owner.
Data Retention Policy: You can query and operate Funds Split resources for a maximum of 2 years since creation.
POST /api/v1/pa/funds_splits/createGET /api/v1/pa/funds_splits/{id}GET /api/v1/pa/funds_splitsPOST /api/v1/pa/funds_splits/{id}/release
Create a Funds Split
POST /api/v1/pa/funds_splits/create
Start dividing the funds you are collecting by creating a Funds Split.
A Funds Split can be created only after the Payment Intent succeeds and before funds settlement. Subscribe to payment_intent.succeeded webhook to confirm if the payment was successful or alternatively provide funds_split_data directly in Create/Confirm/Capture a Payment Intent request.
The destination account has to pass KYC to be able to receive fund splits
The auto_release flag controls at what point the split funds will be released and settled to the destination. The behavior is as follows: * true(default) - Automatically release the split funds following the standard settlement mode. * false - Release split funds as a separate manual process by calling release.
Amount of this split. Please refer to supported currencies for supported minor units.
The destination that the money is splitting to. The value could be either:
- a connected account ID. Used to split funds when collecting payments directly
- a platform account ID. Used to split funds when collecting payments on behalf of connected accounts
- a Funds Split Destination ID. Used to split funds to an external destination.
Unique request identifier specified by the merchant. Maximum length is 64.
Unique identifier of which source this split would be created from. Currently only payment_intent_id is supported.
Type of the source for this split. Currently only PAYMENT_INTENT is supported.
Set it to false if you want to release split manually. true by default.
A set of key-value pairs that you can attach to the Funds Split. You can specify up to 50 keys with key names up to 50 characters long and values up to 500 characters long.
Amount of this split
Release type of this split
Instant when this split is created at
Currency of this split
The destination that the money is splitting to. The value could be either:
- a connected account ID. Used to split funds when collecting payments directly
- a platform account ID. Used to split funds when collecting payments on behalf of connected accounts
Unique identifier for the Funds Split
A set of key-value pairs that you can attach to the Funds Split. You can specify up to 50 keys with key names up to 50 characters long and values up to 500 characters long.
Unique request identifier specified by the merchant in the last operation
The source unique identifier of the transaction that this split is created from
Transaction source type, such as PAYMENT_INTENT
Status of this split, one of CREATED, RELEASED, SETTLED
| Error status | Description |
|---|---|
| 400 | Bad Request. Possible error codes: |
| 401 | Unauthorized. Possible error codes: |
| 403 | Forbidden |
| 404 | Not Found. Possible error codes: |
| 500 | Server Error. Possible error codes: |
$curl --request POST \> --url 'https://api.sandbox.airwallex.com/api/v1/pa/funds_splits/create' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "request_id": "b7a93a42-fd15-4529-885f-4d4d7553f2f5",> "source_id": "int_hkpdskz7vg1xc7uscdj",> "source_type": "PAYMENT_INTENT",> "amount": "0.23",> "destination": "acct_sjnladsfjklasjd",> "metadata": {> "foo": "bar"> }>}'
1{2 "id": "spt_hkpd1k27vg1xc7u",3 "request_id": "b7a93a42-fd15-4529-885f-4d4d7553f2f5",4 "source_id": "int_hkpdskz7vg1xc7uscdj",5 "source_type": "PAYMENT_INTENT",6 "currency": "USD",7 "amount": "0.23",8 "destination": "acct_sjnladsfjklasjd",9 "status": "CREATED",10 "auto_release": true,11 "metadata": {12 "foo": "bar"13 },14 "created_at": "2023-10-01T00:00:00+00:00"15}
Retrieve a Funds Split
GET /api/v1/pa/funds_splits/{id}
Retrieve a Funds Split by unique identifier.
Funds Split Id.
Amount of this split
Release type of this split
Instant when this split is created at
Currency of this split
The destination that the money is splitting to. The value could be either:
- a connected account ID. Used to split funds when collecting payments directly
- a platform account ID. Used to split funds when collecting payments on behalf of connected accounts
Unique identifier for the Funds Split
A set of key-value pairs that you can attach to the Funds Split. You can specify up to 50 keys with key names up to 50 characters long and values up to 500 characters long.
Unique request identifier specified by the merchant in the last operation
The source unique identifier of the transaction that this split is created from
Transaction source type, such as PAYMENT_INTENT
Status of this split, one of CREATED, RELEASED, SETTLED
| Error status | Description |
|---|---|
| 400 | Bad Request. Possible error codes: |
| 401 | Unauthorized. Possible error codes: |
| 403 | Forbidden |
| 404 | Not Found. Possible error codes: |
| 500 | Server Error. Possible error codes: |
$curl --request GET \> --url 'https://api.sandbox.airwallex.com/api/v1/pa/funds_splits/spt_hkpd1k27vg1xc7u' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "id": "spt_hkpd1k27vg1xc7u",3 "request_id": "b7a93a42-fd15-4529-885f-4d4d7553f2f5",4 "source_id": "int_hkpdskz7vg1xc7uscdj",5 "source_type": "PAYMENT_INTENT",6 "currency": "USD",7 "amount": "0.23",8 "destination": "acct_sjnladsfjklasjd",9 "status": "RELEASED",10 "auto_release": true,11 "metadata": {12 "foo": "bar"13 },14 "created_at": "2023-10-01T00:00:00+00:00"15}
List all Funds Splits
GET /api/v1/pa/funds_splits
List all Fund Splits.
Unique identifier of which source this split would be created from. Currently only payment_intent_id is supported.
Type of the source for this split. Currently only PAYMENT_INTENT is supported.
Page number starting from 0.
Number of Fund Splits to be listed per page. Default value is 10. Maximum is 1000. The value greater than the maximum will be capped to the maximum.
A flag which identifies whether there are more results.
List items
Amount of this split
Release type of this split
Instant when this split is created at
Currency of this split
The destination that the money is splitting to. The value could be either:
- a connected account ID. Used to split funds when collecting payments directly
- a platform account ID. Used to split funds when collecting payments on behalf of connected accounts
Unique identifier for the Funds Split
A set of key-value pairs that you can attach to the Funds Split. You can specify up to 50 keys with key names up to 50 characters long and values up to 500 characters long.
Unique request identifier specified by the merchant in the last operation
The source unique identifier of the transaction that this split is created from
Transaction source type, such as PAYMENT_INTENT
Status of this split, one of CREATED, RELEASED, SETTLED
| Error status | Description |
|---|---|
| 400 | Bad Request. Possible error codes: |
| 401 | Unauthorized. Possible error codes: |
| 403 | Forbidden |
| 404 | Not Found. Possible error codes: |
| 500 | Server Error. Possible error codes: |
$curl --request GET \> --url 'https://api.sandbox.airwallex.com/api/v1/pa/funds_splits' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "has_more": false,3 "items": [4 {5 "id": "spt_hkpd1k27vg1xc7u",6 "request_id": "b7a93a42-fd15-4529-885f-4d4d7553f2f5",7 "source_id": "int_hkpdskz7vg1xc7uscdj",8 "source_type": "PAYMENT_INTENT",9 "currency": "USD",10 "amount": "0.23",11 "destination": "acct_sjnladsfjklasjd",12 "status": "CREATED",13 "auto_release": true,14 "metadata": {15 "foo": "bar"16 },17 "created_at": "2023-10-01T00:00:00+00:00"18 }19 ]20}
Release a Funds Split
POST /api/v1/pa/funds_splits/{id}/release
Call this endpoint when you are ready to let the funds arrive at the destination. A Funds Split is capturable if auto_release=false.
Fund Split Id.
Unique request identifier specified by the merchant. Maximum length is 64.
Amount of this split
Release type of this split
Instant when this split is created at
Currency of this split
The destination that the money is splitting to. The value could be either:
- a connected account ID. Used to split funds when collecting payments directly
- a platform account ID. Used to split funds when collecting payments on behalf of connected accounts
Unique identifier for the Funds Split
A set of key-value pairs that you can attach to the Funds Split. You can specify up to 50 keys with key names up to 50 characters long and values up to 500 characters long.
Unique request identifier specified by the merchant in the last operation
The source unique identifier of the transaction that this split is created from
Transaction source type, such as PAYMENT_INTENT
Status of this split, one of CREATED, RELEASED, SETTLED
| Error status | Description |
|---|---|
| 400 | Bad Request. Possible error codes: |
| 401 | Unauthorized. Possible error codes: |
| 403 | Forbidden |
| 404 | Not Found. Possible error codes: |
| 500 | Server Error. Possible error codes: |
$curl --request POST \> --url 'https://api.sandbox.airwallex.com/api/v1/pa/funds_splits/spt_hkpd1k27vg1xc7u/release' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "request_id": "5894cf98-f4e4-49f6-9179-cb50e79beff5">}'
1{2 "id": "spt_hkpd1k27vg1xc7u",3 "request_id": "5894cf98-f4e4-49f6-9179-cb50e79beff5",4 "source_id": "int_hkpdskz7vg1xc7uscdj",5 "source_type": "PAYMENT_INTENT",6 "currency": "USD",7 "amount": "0.23",8 "destination": "acct_sjnladsfjklasjd",9 "status": "RELEASED",10 "auto_release": true,11 "metadata": {12 "foo": "bar"13 },14 "created_at": "2023-10-01T00:00:00+00:00"15}