Browser API for Checkify Pass verification. CDN URL:
https://checkify.me/sdk/v1/checkify.min.js
<script src="https://checkify.me/sdk/v1/checkify.min.js"></script>
After load,
window.Checkify.version
reports the SDK release (currently 1.0.4).
The SDK auto-mounts elements with these attributes on page load:
<div
data-checkify-pass="YOUR_PASS_ID"
data-checkify-request="human"
data-checkify-text="Verify with Checkify"
data-checkify-return-url="https://yoursite.com/done"
></div>
Deprecated:
data-checkify-launcher
still works but logs a console warning. Use Pass + request type instead.
| Method | Description |
|---|---|
data-checkify-pass | Your Checkify Pass public ID (required) |
data-checkify-request | Request type: human, age_over_13, age_over_16, age_over_18, age_over_21, age_over_25, or age_over_N |
data-checkify-text | Button label text |
data-checkify-return-url | Optional URL to return to after app handoff |
data-checkify-fields | Optional comma-separated identity fields to request (for example country) |
data-checkify-proofs | Optional comma-separated proof types when your Pass supports multiple proofs |
data-checkify-launcher | Deprecated launcher ID — use data-checkify-pass instead |
When using Checkify.bindForm, you can also set these on the form element:
| Method | Description |
|---|---|
data-checkify-pass | Your Checkify Pass public ID (required) |
data-checkify-request | Request type: human, age_over_13, age_over_16, age_over_18, age_over_21, age_over_25, or age_over_N |
data-checkify-auto="true" | Set data-checkify-auto="true" on a form to auto-bind on page load without calling bindForm manually |
data-checkify-hidden-input | CSS selector for the hidden input that receives request_id (default: input[name=checkify_token]) |
Set global defaults before mounting widgets.
Checkify.configure({
baseUrl: 'https://checkify.me',
completeUrl: '/checkify/complete'
});
Renders a verify button, writes a token to a hidden input, and disables submit until verified.
Checkify.bindForm('#my-form', {
passId: 'YOUR_PASS_ID',
requestType: 'human',
buttonTarget: '#checkify-wrap',
submitButton: '#submit',
hiddenInput: '#checkify_token',
disableSubmitUntilVerified: true
});
Common options passed as the second argument to Checkify.bindForm(form, options):
| Method | Description |
|---|---|
passId | Checkify Pass public ID (required unless set on the form via data-checkify-pass) |
requestType | Request type (human, age_over_18, etc.) |
buttonTarget | Container element where the verify button is rendered |
submitButton | Submit control to enable after verification |
hiddenInput | Hidden field selector for request_id |
disableSubmitUntilVerified | When true, keeps submit disabled until verification succeeds |
Full-page or container gate that blocks content until verification completes.
Checkify.createHumanGate({
passId: 'YOUR_PASS_ID',
requestType: 'human',
container: '#gate-root',
title: 'Verify to continue'
});
When users complete verification in the Checkify app, they may return to your site with
checkify_request_id
in the query string. The SDK calls
Checkify.checkReturnedVerification()
automatically on load.
Start verification programmatically without auto-mounting HTML. Returns a promise that resolves when the user completes or cancels.
const result = await Checkify.verify({
passId: 'YOUR_PASS_ID',
requestType: 'human',
container: document.getElementById('checkify-root')
});
console.log(result.requestId); // send to your server as request_id
window.addEventListener('checkify:verified', (e) => {
console.log('Verified', e.detail);
});
window.addEventListener('checkify:error', (e) => {
console.error('Checkify error', e.detail);
});
Most integrations should verify on form submit with POST /v1/qr/results/verify. For custom frontends without the embed, you may poll status while the user completes verification in the app.
Legacy poll token from older embeds:Request ID + status token from the start response:| Method | Description |
|---|---|
Checkify.mount(root?) | Mount Pass widgets under optional root element |
Checkify.bindForm(...) | Form integration helper |
Checkify.createHumanGate(...) | Human verification gate UI |
Checkify.verify(options) | Programmatic verify flow |
Checkify.checkReturnedVerification() | Handle return URL after app handoff |