How it works
- An agent requests a purchase or action from your service
- Your service calls AgentScore to verify the operator’s identity
- AgentScore returns
allowordenybased on your compliance policy - If denied, the operator can self-serve verify via a URL you provide
Define your compliance policy
A policy specifies what identity checks the operator must pass:| Field | Type | Description |
|---|---|---|
require_kyc | boolean | Operator must have completed identity verification |
require_sanctions_clear | boolean | Operator must not be on OFAC/sanctions lists |
min_age | number | Minimum age (18 or 21) |
blocked_jurisdictions | string[] | ISO country codes to block |
allowed_jurisdictions | string[] | ISO country codes to allow (denies all others) |
Check identity at transaction time
When an agent sends a request to your service, extract the identity from the headers and callPOST /v1/assess:
Handle unverified operators
When an operator isn’t verified, the assess response includes averify_url. Return it to the agent so the operator can self-serve:
Session-based verification (recommended)
For a smoother flow, create a verification session before returning the deny. This lets the agent poll for the result instead of requiring the operator to copy-paste credentials:operator_token. It retries the request — this time assess returns allow. The user closes the AgentScore tab; the agent finishes the transaction in the background.
What’s checked
| Check | What it verifies |
|---|---|
require_kyc | Government-issued photo ID via Stripe Identity |
require_sanctions_clear | Not on OFAC, SDN, or PEP lists |
min_age | Age bracket derived from ID (18+ or 21+) |
blocked_jurisdictions | Country from ID is not in blocked list |
allowed_jurisdictions | Country from ID is in allowed list |
What sellers see
Sellers receive binary decisions —allow or deny. You never see the operator’s name, address, date of birth, or ID documents. The only data exposed:
- Verification level (none / claimed / verified)
- Whether each policy check passed or failed
Privacy
- AgentScore does not store ID documents — they are processed by Stripe Identity and never leave Stripe
- We store derived facts only: verification status, jurisdiction (country code), age bracket, sanctions status
- If our database is breached, attackers see “operator X is verified, US, individual” — no identity data
Sandbox testing
Usetest: true with reserved test addresses to simulate compliance scenarios:
Pricing
Compliance gating is included in the Pro plan ($100/mo, 1,000 assess calls). See pricing.Next steps
POST /v1/assess
Full assess endpoint reference.
Sessions
Create verification sessions for agent polling.
Credentials
Create and manage operator credentials.
AgentScore Passport
How operators verify their identity.