Developer docs
Everything you need to add Passwave to your product: the REST API, the drop-in libraries, and the open-source chip reader that powers verification.
Add verification in two calls.
Create a verification session and the API returns everything the browser needs to render the QR itself, plus the session id to poll. What comes back is a set of signed answers: over 18, one real person, an age band, and a code that lets you ask later whether a name matches. Never a document.
Open the API referencecurl https://api.passwave.com/api/verification/init \ -H "Authorization: Bearer sk_test_..." \ -H "Accept: application/json"
{
"status": {
"success": true,
"code": 200,
"message": "Verification session created"
},
"data": {
"access_code": "AB3X-7K9M-2PQ5-4WZ8",
"expires_at": "2026-04-29T12:10:00Z",
"expires_in": 600
}
}The chip reader is open source.
Our reader is a Dart library that reads the RFID chip in passports and ID cards (ICAO 9303 / eMRTD). It's the exact reader our app uses. It's MIT-licensed, ported from an MIT-licensed reader, so you can read it, audit it, and ship it anywhere.
Which countries it reads is published in full: see chip coverage.
Stuck on something?
A real engineer answers integration questions. No ticket maze.