Stages
AML status
Oncekyc_status = VERIFIED, the AML block tells you the screening
outcome:
How your CRM should react
Starting verification over the API
Triggering KYC/KYB is the billable moment in the flow: real-money credits are deducted (or the customer is billed) and the check is armed. Because of that, it is kept separate from ingest:- Ingesting never charges. Creating or updating a record via
/customersor/entitiesonly records the obligation — it never starts a check. - Starting is a distinct, scoped action.
POST /customers/{id}/kycandPOST /entities/{id}/kybrun the same flows as the app and need the separateverification:writescope — a key can ingest without being able to spend, and only a key-holder with the in-app “Start checks” permission can mint a key that verifies. - One charge per record, fail-closed on empty credits. The same
charge-before-arm and settlement rules as the app apply, so a retry
loop can never double-charge, and an org with no credits gets a
402with nothing armed.

