Skip to main content
POST

Authorizations

Authorization
string
header
required

Token from POST /auth/token

Headers

Idempotency-Key
string
required

Required on POST and PUT requests. Use a unique value per logical mutation attempt, for example a UUID.

Path Parameters

virtualAccountId
string
required

Body

application/json

US domestic (ACH or Wire) inbound simulation against a Virtual Account.

type
enum<string>
required

Rail discriminator. Always bankUs for a US domestic inbound.

Available options:
bankUs
network
enum<string>
required

Which US rail to simulate.

Available options:
ach,
wire
asset
enum<string>
required

Always "usd", the only asset the VA rail supports today.

Available options:
usd
amount
string
required

Must be greater than 0.00 and at most 1000.00 (422 simulationAmountOutOfRange beyond).

Response

200 - application/json

The request has succeeded.

Flat (non-discriminated) response for POST /virtual-accounts/{id}/simulate/inbound-transfer.

virtualAccountId
string
required

The Virtual Account that received the simulated transfer (va_ prefix).

Pattern: ^[a-z]+_([0-9a-hjkmnp-tv-z]{26}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$
type
enum<string>
required

Echoes the request's rail discriminator.

Available options:
bankUs,
bankIban
network
enum<string>
required

The rail the transfer settled on.

Available options:
ach,
wire,
swift
asset
enum<string>
required

Always "usd".

Available options:
usd
amount
string
required

The simulated transfer amount.

status
enum<string>
required

"submitted" for ach/wire (settles synchronously); "pending" for swift - the upstream provider settles SWIFT asynchronously.

Available options:
submitted,
pending
submittedAt
string<date-time>
required

When the simulated transfer was submitted.

referenceId
string | null
required

Correlation id for the subsequent webhook. null for ach/wire; an intl_wire_in_… id for swift.