Skip to main content
POST
Send a Mock Deposit

Authorizations

Authorization
string
header
required

Bearer token authentication, for client-server calls.

Send the access token issued by POST /v1/auth/token as Authorization: Bearer {token}. The token carries its own program and user context, so the X-Meridian-* headers are not required. See Authentication.

Headers

X-Meridian-Api-Key
string

Server-to-server (HMAC) requests only. Partner API key issued by Meridian during provisioning.

X-Meridian-Timestamp
string

Server-to-server (HMAC) requests only. Current time in milliseconds since the Unix epoch. Must be within 60 seconds of the request.

X-Meridian-Program-Id
string

Server-to-server (HMAC) requests only. Identifies the program context for the request.

X-Meridian-User-Id
string

Server-to-server (HMAC) requests only. Identifies the Meridian user targeted by the request. Required for MULTI_USER integrations; omit for SINGLE_USER.

Path Parameters

accountId
string
required

ID of the balance account to deposit into — the id returned by GET /v1/accounts (e.g. uspay-...).

Body

application/json

The deposit instruction to credit and the amount to deposit, plus an optional reference and counterparty name to carry onto the deposit.

Request payload for simulating an inbound deposit in the sandbox

depositInstructionId
string
required

The id of the deposit instruction to credit — an opaque identifier such as uspay-..., NOT a rail name like ACH or WIRE. Each deposit instruction is a funding rail (ACH, Fedwire, etc.) configured on the account that an inbound deposit would arrive through. To find it, call GET /v1/accounts/{accountId} and copy the id of the desired entry from the depositInstructions array (match on its rail.label, e.g. Fedwire for a wire). Passing anything that is not an existing instruction id returns 404.

Example:

"uspay-rvrsmt8vngju3kea5mm6fcck"

amount
string
required

Amount to deposit, as a decimal string in the account's currency (e.g. 100.00). Must be greater than zero.

Example:

"100.00"

reference
string | null

Optional payment reference for the simulated deposit, so you can exercise reference matching against realistic data. Max 255 characters. On the resulting transaction it is mapped to debitReference, in both API responses and webhooks; some providers also copy it to debitMemo. Omit it and the transaction carries the backing provider's default, which is a placeholder reference or none at all.

Example:

"INV-5530"

counterpartyName
string | null

Optional name of the sending counterparty for the simulated deposit. Max 255 characters. On the resulting transaction it is mapped to debitParty.payer.displayName, in both API responses and webhooks; a transaction has no counterpartyName field. Omit it and the deposit arrives from Meridian.

Example:

"Acme Corp"

Response

Deposit simulation accepted; settles out of band

Response carrying no resource data, with an optional human-readable message

message
string | null

Optional human-readable message describing the outcome