🧪 Testing ACH Payments

Developers can use this documentation to test various outcomes while testing ACH payments.

🏦 ACH Payments (Sandbox Testing)

Approvely provides a mock bank that can be used to fully test ACH integration in our sandbox environment — no actual banking interaction occurs.

The mock provider accepts any:

  • Account numbers
  • Routing numbers
  • Names and addresses

🧪 Test Amounts

These amounts can be passed to simulate various ACH outcomes:

AmountTypeResult
11.11TotalBank account setup fails – negative accounts table
0.01SubtotalStays pending – will not get picked up for batching
1.11SubtotalFails on ACH update – negative accounts table
2.22SubtotalMarked as returned – insufficient funds
3.33SubtotalMarked as returned – invalid account number
4.44SubtotalMarked as batched, then settled after 3 days, then chargeback – stop pay on item
Any otherSubtotalMarked as batched, then settled after 3 days

🏁 Test Bank Account Numbers

🔗 Plaid Integration

You may use Plaid’s sandbox credentials when connecting a bank account.


🧾 Test Settling to a Bank Account

To simulate bank settlement in sandbox, you may use the following:

TypeNumber
Routing021000021
Account1111222233331111
⚠️

On production, ensure you replace these with your actual bank account details.


🪪 ACH Statuses and Error Codes

ACH payments go through multiple lifecycle stages before they settle.

📄 View all ACH statuses and error codes here