Skip to content
Warrantv0.1

Recipient screening

Not built. No allowlist, blocklist or sanctions check exists.

Warrant does not screen payees. There is no allowlist, no blocklist, no sanctions list and no third-party screening call anywhere in the codebase.

$ grep -rniE "screen|allowlist|blocklist|sanction" packages/db/src apps/api/src
(no matches in any screening sense)

This page documents an absence

It is in the sidebar because the information architecture names it. If your compliance requirements include payee screening, Warrant does not provide it today and you will need it in front of, or alongside, this system.

What payee actually is

A required string on the warrant. It is stored, shown in the console, included in the trace, and used for nothing else.

It is not validated against any list, resolved to a legal entity, or checked for format beyond being non-empty. "api.exampledata.io" and "definitely-not-a-sanctioned-entity" are equally acceptable to the API.

What does constrain where money goes

Not screening, but worth knowing since they are the controls that exist:

ControlLimits
Policy maxAmountHow much a single warrant may be.
Session amount_ceilingHow much an agent may spend in total.
Session warrant_limitHow many warrants an agent may open.
Kill switchStops all new warrants.
The clause specWhether the payee gets paid at all.

All of these constrain how much and on what condition. None constrain who.

Where screening would have to go

For concreteness, since "we'll add it later" is not an architecture:

  • at open, before funds are held — refusing after a hold means an unwind path
  • at settle, before release — a payee can be listed between open and settle
  • a decision about warrants already held when a payee becomes blocked: refund automatically, or escalate to a person
  • an audit record of the screening result, since "we checked" is a claim that needs evidence
  • a provider, and a rule for what happens when they are unreachable

None of this exists, and no provider has been chosen.

In the meantime

Screen before you call. Decide who a payee may be in your own system, and open the warrant only for payees that have passed. The policy and session limits then constrain the amount.

That is not a substitute for screening at settlement — a payee listed after you opened will still be paid if the check passes — but it is the control available today, and it is better than assuming this layer does something it does not.