Skip to main content
POST
Simulate a USD Deposit (Sandbox)
A testing helper that simulates an incoming USD deposit into your account’s USD wallet so you can verify your USD funding flow end-to-end — the wallet is credited and the deposit webhook is delivered — without sending a real wire transfer. It is the USD counterpart of Simulate a Deposit. The request is dispatched to your account’s USD provider sandbox; the wallet balance is then credited asynchronously via that provider’s normal deposit webhook — so the call only submits the simulated inbound transfer.
Sandbox / testing only. This endpoint does not exist in production — calls to the production API return 404 Not Found. Use it against your sandbox environment only.

Prerequisites

The account must already have an issued, active USD account. Issue one first via Issue a Bank Account with currency: "USD". If no USD account is provisioned yet, the call returns 404 with code USD_ACCOUNT_NOT_FOUND. To simulate a deposit for a specific sub-account under your tenancy, send its id in the X-Account-Id header. Without it the deposit is credited to your own business, which returns 404 if your business has no USD account of its own.
This endpoint always credits the client’s primary USD account. If the client holds several deposit accounts — one per reference — use Simulate an Account Deposit instead, which can target one of them by reference.

Request Body

Example Request

Example Response

What happens

  1. The request is routed to your account’s USD provider sandbox, which submits a simulated incoming transfer against your USD account. The response status is submitted — the balance is not credited yet.
  2. The provider then delivers a deposit webhook through the same crediting path a real USD deposit uses, and your USD wallet is credited.
  3. The transaction is completed, emitting the deposit webhook to your configured endpoint: a transaction.pending event, followed by transaction.completed. See Webhook Payloads.
Because the credit is delivered by the provider webhook, it is not instant. After a submitted response, poll List Wallets or Transactions until the USD balance lands.
Because this credits a real (sandbox) wallet balance, treat it like any other write: it moves your test wallet’s balance and generates a real transaction record and webhook delivery.

Authorizations

X-API-Key
string
header
required

Your Rolla API key

Headers

X-Account-Id
string<uuid>

Target a specific sub-account under your tenancy. Omit to use the calling account.

Body

application/json
amount
string
required

Deposit amount in major units of USD. Must be greater than 0.

Example:

"100"

reference
string

Your own reference for the simulated transfer. Auto-generated if omitted.

Maximum string length: 120
sender_name
string

Name to record as the sender/counterparty on the transaction.

Maximum string length: 120
Example:

"John Sender"

Response

Simulated USD deposit submitted