Skip to main content
Each account number has a controls block for each rail. You set them on POST /v2/account_numbers and change them with PATCH /v2/account_numbers/{account_number_id}.

How it works

Each block has an incoming side and an outgoing side. Wires also have outgoing_international. On each side, counterparty_filter decides who the account number can transact with:
  • accept_all: every counterparty is allowed.
  • allowlist_only: only the counterparties in the matching allowlist are allowed.
  • reject_all: every counterparty is blocked.
Incoming ACH also has accept_credit and accept_debit, so you can take credits but refuse debits. Lead rejects contradictory combinations with 422, such as accept_credit false together with counterparty_filter accept_all.

Defaults

When you don’t set a control, Lead applies a default from the role of the entity that holds the account number. For an account_holder, the defaults are fully open:
  • accept_credit true
  • accept_debit true
  • counterparty_filter accept_all on every side
For a minor_account_holder or authorized_user, the defaults turn off the outgoing rails that role can’t use. The table also sets the limit on what you can turn on. A PATCH or create request that turns on an outgoing rail the role doesn’t allow returns 422. Lead never rewrites your controls when a role changes. When an entity’s role allows more, you update the controls yourself.

Microdeposits and reversals

Your controls never block ACH microdeposits or reversals. You need them to verify accounts and fix errors, so they go through.

ACH

The table lists the ACH controls.

Wire

The table lists the wire controls.

Instant payments

The table lists the instant payment controls.

Internal transfers

The table lists the internal transfer controls.