Fraud controls
Fraud controls give you a blocklist (bans on ip / email /
card_fingerprint / person), sliding-window velocity checks over recent
order attempts, and AVS/CVV screening. Velocity and AVS/CVV screening run
automatically at checkout, before money moves; you manage the blocklist and
read velocity events through the routes below.
Privacy / no enumeration oracle: every subject is stored only as a tenant-salted fingerprint, never in the clear — no raw email, IP, or PAN is persisted. Checkout refuses a banned entity with the same generic decline a normal card decline produces, so probing “is this email banned?” through checkout is impossible.
Blocklist administration (operator-managed)
Tenant-level blocklist administration is operator/console-managed. Merchants manage their own bans through the merchant routes below.
| Method | Path | Purpose |
|---|---|---|
POST | /v1/tenants/:tenant/fraud/bans | Add a ban on an ip/email/card_fingerprint/person subject (stored as a tenant-salted fingerprint). |
GET | /v1/tenants/:tenant/fraud/bans | List the tenant’s active bans (fingerprint previews only). |
DELETE | /v1/tenants/:tenant/fraud/bans/:id | Lift a ban. |
GET | /v1/tenants/:tenant/fraud/velocity-events | Read the tenant’s recent order-attempt velocity events. |
Merchant routes
fdk_ credential, tenant from the credential per credential-carries-ownership,
scope manage:own_fraud. Mounted at /v1/merchant/fraud.
| Method | Path | Scope | Purpose |
|---|---|---|---|
GET | /v1/merchant/fraud/bans | manage:own_fraud | List the caller’s bans. |
POST | /v1/merchant/fraud/bans | manage:own_fraud | Add a ban. |
DELETE | /v1/merchant/fraud/bans/:id | manage:own_fraud | Lift a ban. |
AVS/CVV screening
AVS (address verification) and CVV screening run automatically at checkout,
before money moves. Their strictness is tuned per store through the store
manifest under behavior.fraud — there is no separate API call to enable
them.
Notes
- Bans are keyed to a fingerprint, never a raw identifier — there is no reverse lookup from a ban row back to a plaintext email/IP/PAN.