Skip to content

ZetaID documentation

ZetaID checks that a person is who they say they are: an identity document, a selfie or a hand-movement check, sanctions screening, a wallet proof. You start a check from your server, send the person to the ZetaID verification page, and receive the result on your server.

  1. Your server creates a verification with your API key (POST /api/v1/verifications). ZetaID answers with a verification_id and a url.
  2. The person opens the url: the ZetaID verification page walks them through the steps your key asks for (for example: photograph the ID card, then a short selfie). On a computer without a camera, the page offers to continue on a phone.
  3. ZetaID checks what was captured and decides: verified, rejected or needs_manual_review.
  4. Your server gets the result: a signed webhook to the URL you set on the key, and on request with GET /api/v1/verifications/{id}.
  5. The person comes back to your return_url, and your site continues with what your server now knows.

Your API key never leaves your server. The person’s browser only ever talks to the ZetaID verification page.

An operator console login

We set up your organization and send you the login for the operator console. There you create API keys, choose what each key checks, and see every verification.

A server

Any backend that can make HTTPS requests and receive one: Node.js, PHP, Python, Java, Go, … The API is not meant to be called from a browser or a mobile app.