Offboardings
The Offboarding API allows platforms to programmatically submit offboarding requests for connected accounts and query the status of submitted offboardings.
GET /api/v1/accounts/{account_id}/offboardingsGET /api/v1/accounts/{account_id}/offboardings/{id}POST /api/v1/accounts/{account_id}/offboardings/create
List offboardings
GET /api/v1/accounts/{account_id}/offboardings
Retrieve a paginated list of offboardings for a connected account.
The account ID of the connected account to list offboardings for
The start date of created_at in ISO8601 format (inclusive)
A bookmark for use in pagination to retrieve the next or previous page of results
Number of results per page. Default 100, min 10, max 200
Status of offboarding request
CANCELLED, COMPLETED, PENDING
The end date of created_at in ISO8601 format (inclusive)
Paged results.
Optional comment specified in the request
The time when this case was created
A unique ID of the offboarding case
Reason for the offboarding specified in the request
Status of the offboarding case. One of: PENDING, COMPLETED, CANCELLED
The time when this case was last updated
The page bookmark used for search the item after the result.
The page bookmark used for search the item before the result.
| Error status | Description |
|---|---|
| 400 | Possible errors: |
$curl --request GET \> --url 'https://api-demo.airwallex.com/api/v1/accounts/account_id/offboardings' \> --header 'Authorization: Bearer <token>' \> --header 'Content-Type: application/json'
1{2 "items": [3 {4 "comment": "Account no longer needed",5 "created_at": "2026-03-24T10:00:00+0000",6 "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",7 "reason_code": "OTHER",8 "status": "PENDING",9 "updated_at": "2026-04-10T12:00:00+0000"10 }11 ],12 "page_after": "<string>",13 "page_before": "<string>"14}
Get an offboarding by ID
GET /api/v1/accounts/{account_id}/offboardings/{id}
Retrieve details of a specific offboarding by its unique ID.
The account ID of the connected account
The unique ID of the offboarding case
Optional comment specified in the request
The time when this case was created
A unique ID of the offboarding case
Reason for the offboarding specified in the request
Status of the offboarding case. One of: PENDING, COMPLETED, CANCELLED
The time when this case was last updated
| Error status | Description |
|---|---|
| 400 | Possible errors: |
| 404 | Possible errors: |
$curl --request GET \> --url 'https://api-demo.airwallex.com/api/v1/accounts/account_id/offboardings/offboarding_id' \> --header 'Authorization: Bearer <token>' \> --header 'Content-Type: application/json'
1{2 "comment": "Account no longer needed",3 "created_at": "2026-03-24T10:00:00+0000",4 "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",5 "reason_code": "OTHER",6 "status": "PENDING",7 "updated_at": "2026-04-10T12:00:00+0000"8}
Create an offboarding
POST /api/v1/accounts/{account_id}/offboardings/create
Submit an offboarding request for a connected account. The system will generate a case within the offboarding system.
The account ID of the connected account to offboard
Optional comment providing additional context for the offboarding request.
Reason code for offboarding the connected account. Possible values:
-
COMMERCIAL_DECISION: Account closure due to a commercial factors, such as account inactivity, low profitability, or other business-strategy reasons. -
INCOMPLETE_ONBOARDING_KYC: The account holder signed up but did not complete KYC within specific timeframe. -
COMPANY_DISSOLVED_OR_LIQUIDATING: The associated company has been dissolved or entered liquidation. -
POLICY_VIOLATION: Offboarding due to a breach of the Acceptable Use Policy or Terms of Service. This includes operating an unsupported business model (e.g., prohibited industry, unsupported country) or actively misusing the account (e.g., personal use, circumvention of controls). -
FRAUDULENT_ACTIVITY: Offboarding due to evidence of fraud. Some examples: application fraud (stolen/fake identity), merchant fraud, payment fraud, or card testing. -
SANCTIONS_EXPOSURE: Offboarding due to a confirmed sanctions link or exposure, violating global sanctions policies. -
SUSPECTED_MONEY_LAUNDERING_OR_TERRORIST_FINANCING: Offboarding due to suspicion of Money Laundering (ML), Terrorist Financing (TF), or other serious financial crimes, based on transaction patterns, unclear source of funds/wealth, or links to illicit activities (e.g., human trafficking, shell companies). -
REPUTATIONAL_RISK_OR_ADVERSE_MEDIA: Offboarding due to negative public information (adverse media) or other factors that pose a significant reputational risk to Airwallex, even if not directly linked to a confirmed financial crime. -
NOT_COMPLY_WITH_ONGOING_REVIEWS: Offboarding due to repeated failure to respond to Risk and Compliance-related Requests for Information (RFI) or Customer Due Diligence (CDD) reviews regarding their account activity. -
LINKAGE_TO_HIGH_RISK_CLIENT: Offboarding due to a confirmed connection (e.g., shared ownership, validated linked devices) to another entity that has been flagged or offboarded for high-risk activity, such as fraud or financial crime. -
OTHER: Client initiated closure or other reason if not listed above.
Optional comment specified in the request
The time when this case was created
A unique ID of the offboarding case
Reason for the offboarding specified in the request
Status of the offboarding case. One of: PENDING, COMPLETED, CANCELLED
The time when this case was last updated
| Error status | Description |
|---|---|
| 400 | Possible errors: |
$curl --request POST \> --url 'https://api-demo.airwallex.com/api/v1/accounts/account_id/offboardings/create' \> --header 'Authorization: Bearer <token>' \> --header 'Content-Type: application/json' \> --data '{> "comment": "Account no longer needed",> "reason_code": "OTHER">}'
1{2 "comment": "Account no longer needed",3 "created_at": "2026-03-24T10:00:00+0000",4 "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",5 "reason_code": "OTHER",6 "status": "PENDING",7 "updated_at": "2026-04-10T12:00:00+0000"8}