Simulate Incoming ACH Transaction

Use the /simulateAchTransaction endpoint to simulate an incoming ACH entry against an account in non-production environments, as if an external company had originated it. A credit (C) pushes funds into the account, like a payroll direct deposit. A debit (D) pulls funds out of the account, like a utility company collecting a bill.


📘 Note: This endpoint is only available in non-production environments (local, development, sandbox, cv). Calls to this endpoint in production will return an error.


Requirements:

  • The account must hold its own balance (card-only accounts attached to a line of credit are not supported)
  • The account status is not checked, so entries can be simulated against closed or restricted accounts to exercise return and failure flows

Result:

The entry is queued, not posted. The response returns a simulatedAchTransactionId for the queued entry. The entry is processed on the next scheduled simulated ACH batch, which is not immediate. At that point it either posts to the account or is returned or failed (for example, insufficient funds on a debit or a closed account). The outcome shows up in Get All Transaction History and is delivered through transaction webhooks.

Body Params

POST /v1/transaction/simulateAchTransaction Request body

string
required

Pass in the Spidr account ID

string
enum
required

Direction of the simulated incoming ACH entry from the account's point of view. C (credit) pushes funds into the account, like a payroll direct deposit. D (debit) pulls funds out of the account, like a utility company collecting a bill.

Allowed:
double
required
≤ 10000000

The amount of the simulated ACH entry

string
length between 1 and 16
^[\w!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~ ]+$

Name of the originating company. Defaults to Spidr Simulator.

string
length between 1 and 10
^[\w!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~ ]+$

Company entry description of the ACH entry. Defaults to PAYROLL for credits and BILLPAY for debits.

string
length between 1 and 22
^[\w!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~ ]+$

Name of the receiver on the ACH entry. Defaults to Account Holder.

string
enum

Standard entry class (SEC) code of the ACH entry. Defaults to PPD.

Allowed:
string
enum

Receiving account type on the ACH entry. Defaults to checking.

Allowed:
string
^\d{4}-\d{2}-\d{2}$

Date the entry is scheduled to be processed (YYYY-MM-DD). Must be today or later in UTC-7, the processing time zone. Defaults to today.

string
length ≤ 80
^[\w!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~ ]+$

Free-form addenda text describing the entry

Responses

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json