Virtual Account Callbacks
StraitsX sends a virtualAccountStatusUpdated callback to your registered URL when a Virtual Bank Account (VBA) is enabled or disabled.
When this callback fires
| Trigger | Description |
|---|---|
| VBA enabled | A USD virtual bank account has been activated and is ready to receive payments. |
| VBA disabled | A virtual bank account has been deactivated. |
SGD vs USD behavior
USD virtual accounts go through an asynchronous activation/review flow after creation. You will receive a callback when the VBA is enabled or disabled.
SGD virtual accounts are auto-enabled synchronously on creation and typically do not trigger an enabled callback. A disabled callback will still fire if the SGD VBA is later deactivated.
Status values
| Status | Meaning |
|---|---|
enabled | VBA is active and ready to receive incoming payments. |
disabled | VBA has been deactivated — it can no longer receive payments. |
Payload structure
{
"data": {
"id": "virtual_account_0fbec826-5c15-4afe-b338-5818cc706da5",
"type": "virtual_bank_account",
"attributes": {
"referenceId": "your_reference_id",
"currency": "USD",
"status": "disabled",
"createdAt": "2026-01-15T08:30:00.000Z"
}
}
}{
"data":{
"id":"virtual_account_df1689fc-9fd5-452b-bbad-2eccfbc7459b",
"type":"virtual_bank_account",
"attributes":{
"referenceId":"414186459",
"currency":"USD",
"status":"enabled",
"instructions":{
"recipientName":"ABC LIMITED",
"bankName":"DBS Bank",
"bankAddress":"12 MARINA BOULEVARD, MBFC TOWER 3, SINGAPORE 018982",
"bankCountry":"Singapore",
"swiftBic":"DBSSSGSGXXX",
"accountNo":"885375018112345"
},
"createdAt":"2025-12-04T06:51:39.669Z"
}
}
}Field reference
Top-level fields
| Field | Scope | Type | Description |
|---|---|---|---|
data.id | Common fields | String | Unique virtual bank account ID. |
data.type | Common fields | String | Always virtual_bank_account. |
data.attributes.referenceId | Common fields | String | Your reference ID provided during VBA creation. |
data.attributes.instructions | Common fields | Object | Bank account details for receiving payments. Only included when the VBA is enabled. |
data.attributes.createdAt | Common fields | String | ISO 8601 timestamp when the VBA was created. |
data.attributes.currency | USD VA only | String | Currency code. |
data.attributes.status | USD VA only | String | Virtual bank account status. |
instructions object
instructions objectPresent only when status is
enabled. Contains the banking details your senders need to wire funds to this VBA.
| Field | Type | Description |
|---|---|---|
recipientName | String | Recipient name to use for incoming transfers. |
bankName | String | Bank full name. |
bankAddress | String | Bank address. |
bankCountry | String | Bank country. |
swiftBic | String | SWIFT/BIC code. |
accountNo | String | Virtual bank account number. |
Updated 2 months ago
Did this page help you?

