Skip to main content
1

Start a session

2

The user comes back

Didit returns to https://app.matocard.xyz/?verificationSessionId=…&status=Approved. Do not trust status in the URL.
3

Poll until verified

Done when me.verified is true. Usually a few seconds: the backend binds the identity onchain and drips 0.5 MON for fees.

Statuses

verified is the source of truth

Gate screens on verified, which is the contract’s isVerified. user.kyc is only Matocard’s record of Didit’s decision; some demo accounts were verified onchain directly and show kyc: "none" with verified: true.

Testing

Didit has a sandbox and a live environment. In live, one document verifies one account, so a second account with the same ID ends duplicate. In sandbox, Didit gives every tester the same document, so Matocard also mixes the wallet into the identity hash to keep test accounts apart.