Ongoing AML Monitoring at $0.07 per User per Year
Onboarding screening is a snapshot. Ongoing monitoring rescreens every customer daily against 1,300+ lists, auto-changes their AML status when a new hit crosses your thresholds, and fires a webhook. $0.07 per user per year.

You screened a customer at onboarding and they came back clean. Six months later they're appointed to a political position, added to a sanctions list, or named in an adverse-media report. Your one-time screening said nothing — because it was a snapshot taken on day one, and the world has moved since.
That gap is exactly what ongoing AML monitoring closes. Didit rescreens every enrolled customer daily against the same 1,300+ watchlists used at onboarding, automatically changes their AML status when a new hit crosses your thresholds, and fires a webhook so your systems react in near-real time. It costs $0.07 per user per year — a fraction of a cent per day to keep an entire book under continuous watch.
Key takeaways
- Daily rescreening against 1,300+ sanctions, PEP, criminal, and adverse-media lists — automatically, with no action from you.
- Automatic status changes. When a new match crosses your thresholds, the customer's AML status moves (for example to
In RevieworDeclined) without manual intervention. - Webhooks fire on every status change, so your onboarding, ledger, or case-management systems react immediately.
- Enrolment is a flag. Set
save_api_request: trueon a check to make that user eligible for ongoing monitoring. - Disable per user from the Console whenever a customer offboards or no longer needs monitoring.
- $0.07 per user per year, billed on top of the $0.20 one-time check — predictable, per-user, no minimums.
What ongoing monitoring does
A one-time AML check tells you a customer's status at a single moment. Ongoing monitoring turns that single check into a standing subscription on that identity: every day, Didit re-runs the screening against the current state of all 1,300+ lists. If nothing has changed, nothing happens and the customer stays Approved. If a new record appears that matches the customer above your thresholds, the engine re-evaluates the two scores, updates the AML status, and notifies you.
In practice this means your customer base is never more than 24 hours stale against the watchlists. A name added to OFAC overnight is reflected in your portfolio the next day, not at your next periodic review — which is what regimes increasingly call "perpetual KYC" and what auditors increasingly expect to see.
Why it matters
Regulators have moved decisively from periodic to continuous expectations. The EU's AML framework, FATF guidance, and most national regimes require firms to keep customer risk current, not to revisit it annually. A customer who becomes a PEP, or whose government is sanctioned, is a risk you are obligated to detect promptly — and "we only screened at onboarding" is a finding waiting to happen.
The traditional answer was a periodic batch rescreen: dump the whole book against the lists once a quarter, then drown in the resulting hits. That is both too slow (a sanctioned customer can transact for weeks before the next batch) and too bursty (every quarter, a flood of alerts). Continuous daily monitoring inverts both problems: detection is near-real-time, and hits arrive as a steady trickle the day they appear, not as a quarterly avalanche. At $0.07 per user per year, it's also cheaper than the engineering time most teams spend building batch rescreening themselves.
Technical details
Ongoing monitoring is built on top of the standard AML check. Enrolment is a single flag on the screening call.
curl -X POST https://verification.didit.me/v3/aml/ \
-H "x-api-key: $DIDIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"first_name": "Maria",
"last_name": "Gonzalez",
"date_of_birth": "1984-03-12",
"country": "ES",
"save_api_request": true
}'
Setting save_api_request: true is what makes the user eligible for daily rescreening. From then on, when a new hit crosses your thresholds, Didit re-evaluates and emits a status change. Your webhook receives the new state:
{
"event": "aml.status.updated",
"vendor_data": "user_4521",
"previous_status": "Approved",
"aml_status": "In Review",
"risk_score": 84,
"new_matches": [
{ "profile_id": "prf_9d12f0", "match_score": 95, "categories": ["Sanctions"], "country": "RU" }
]
}
Daily cadence. Rescreening runs every day against the current state of all 1,300+ lists.
Threshold-driven. A new match only changes a customer's status if it crosses the same Match Score and Risk Score thresholds you configured for onboarding — so monitoring inherits your tuned risk appetite and doesn't reintroduce false positives.
Webhooks. Every automatic status change fires a webhook, so your systems can freeze an account, open a case, or notify compliance the moment a customer's risk profile changes.
Control. Ongoing monitoring requires save_api_request: true, and it can be disabled per user from the Console when a customer offboards or no longer needs to be watched.
Price. $0.07 per user per year for daily monitoring, on top of the $0.20 one-time check. Per user, predictable, no minimums.
What gets rescreened
Daily monitoring covers the full watchlist set, so a customer who was clean at onboarding is re-checked against:
- Sanctions additions (OFAC, EU, UN, national lists) — the highest-urgency category.
- PEP status changes, including newly appointed officials and updates to relatives and close associates (RCA).
- Criminal records newly published.
- Adverse media that emerges after onboarding.
- Regulatory warnings, fitness and probity, special-interest, and insolvency updates.
Use cases
- Fintech. Keep an entire account base sanctions-current daily, instead of discovering a listed customer at the next audit.
- Crypto / Web3. Pair daily AML monitoring of the human with on-chain wallet screening of their addresses for continuous counterparty risk.
- Lending. Monitor borrowers and guarantors for the full life of a loan — a multi-year exposure where onboarding-only screening is plainly inadequate.
- Marketplaces. Watch high-GMV sellers continuously so a seller who becomes a PEP or appears in adverse media is flagged before reputational damage lands.
- iGaming. Demonstrate perpetual screening of the player base to regulators in markets that demand ongoing, not periodic, AML coverage.
How to integrate with Didit
- Enrol on the check. Set
save_api_request: trueon each AML screening you want monitored. - Subscribe to the webhook for AML status changes and wire it to your account-control logic.
- Reuse your thresholds. Monitoring respects the Match and Risk thresholds you set for onboarding — no separate tuning needed.
- Manage the population in the Console. Disable monitoring per user as customers offboard so you only pay for the book you actually need to watch.
Because it's on the unified /v3/ API, the same monitoring covers individuals onboarded via KYC and the beneficial owners screened during a Business Verification (KYB) session — one continuous watch across people and entities.
Frequently asked questions
How much does ongoing monitoring cost?
$0.07 per user per year for daily rescreening, in addition to the $0.20 one-time check. It's per user, predictable, and has no minimums.
How often are customers rescreened?
Every day, against the current state of all 1,300+ watchlists.
What happens when a customer gets a new hit?
If the new match crosses your configured Match and Risk thresholds, Didit automatically updates the customer's AML status and fires a webhook so your systems can react.
How do I turn monitoring on?
Set save_api_request: true on the AML check. That makes the user eligible for daily rescreening. You can disable it per user from the Console at any time.
Does monitoring add false positives?
No more than your onboarding tuning allows — monitoring uses the same Match and Risk thresholds you configured, so it only surfaces hits that would have mattered at onboarding.
Ready to get started?
Read the AML Screening overview in the docs, see ongoing monitoring on the AML Screening product page, and check transparent pricing on the pricing page. When you're ready, start free — 500 free KYC checks every month, with AML screening at $0.20 per check and ongoing monitoring at $0.07 per user per year.