verafirma
Verify a real human. Capture a real signature. Through a trusted third party — the only way it counts.
Government-ID verification, liveness, name screening, and legally-meaningful human e-signatures — run by us, not by you, so the result actually means something in a dispute.
Why it must be third-party
A verification or signature is only worth something if the party relying on it couldn’t have forged it. If an agent or developer hosts their own signing/verification, they could backdate, replay, or fabricate it — so it proves nothing when challenged. A neutral third party that holds the process is what makes the result non-repudiable.
So, by design: we do not let agents or developers host the signing or verification themselves. That’s not a limitation — it’s the entire point. Verafirma is the trusted third party; the trust comes from the separation. If you could sign your own counterparty’s signature, it wouldn’t be a signature.
Identity verification (government ID)
- Verify a passport / driver’s license / national ID —
idverify_create(document) →hostedUrlfor the end-user →idverify_status. - Liveness — is it a live person? Biometric — does the face match the ID?
Government ID only (passport / driver’s license / national ID) — not “any credential.” The charge stands whether the check passes or fails (no refund on the verification attempt).
Name screening (sanctions + PEP) — two tiers
The working call is a tier param on screening.match.
OFAC / EU / UK sanctions lists + a PEP principals list (heads of state/government, cabinet, senior judges). Our own engine. ~$0.01.
~681,000 PEP records — full FATF categories + relatives & close associates (RCAs), entity-resolved, daily — via a licensed provider, cost-plus. Post-launch; not yet enabled.
Honesty: sanctions screening is list-complete; the principals tier has known gaps (no RCAs, not FATF-complete); even Expanded is not adverse-media and not a substitute for your own compliance program.
Human e-signature
- Send a document for signature —
esigndoc_create(PDF + recipients + fields) →esigndoc_send. - Route multiple signers + approvers in order — sequential signing + the APPROVER role.
- Chase, retrieve, verify — resend, get the executed copy,
pdf_verify_signatures.
This is the human signing path — a person signs in a hosted flow — distinct from the agent/wallet contract signing on thedracotavern.
Drop it into your flow
Verify-then-proceed; the hosted-URL handoff; the webhook/status round-trip; signing-order + approvers. Per-call prices — idverify (flat), screening (included tier + Expanded cost-plus), esign (per sent envelope) — link to the working surface (API reference · /v1/catalog); marketing states the shape, exact numbers live there.