Widget Integration (Deprecated)
Embed the VerifiMe verification widget in your application
Widget V1 is no longer actively developed. New integrations should use Widget V2. V1 URLs continue to be served indefinitely - existing integrations require no changes.
The VerifiMe widget is a drop-in UI component that handles the customer verification experience for you. It is the recommended integration path, but not required. If you need full control over the UI, you can build a custom integration using the inviteUrl and tracking status API directly.
Try it live: Use the Widget Demo to test the full invite + widget flow against the staging environment.
Widget Initialisation
1. Load the widget script (production):
<script src="https://widget.static.prod.verifime.com/widgets/verifime-widget.min.js"></script>Use the staging URL during integration testing:
<script src="https://widget.static.stage.verifime.com/widgets/verifime-widget.min.js"></script>2. Add a container element:
<div id="verifime-widget"></div>3. Initialise the widget:
VerifimeWidget(
'#verifime-widget',
trackingReference,
{
onSuccess: () => {
// Customer has completed data entry (Phase 1 complete)
},
onError: (error) => {
// Technical error occurred
}
}
);Parameters:
| Parameter | Type | Description |
|---|---|---|
selector | String | CSS selector for the container element |
trackingReference | String | UUID from /v1/user/invite response |
options.onSuccess | Function | Called when tracking status reaches "Completed" |
options.onError | Function | Called if a technical error occurs |
The widget is loaded as the global function
VerifimeWidget. An ESM import is also available for bundler-based setups - use the.esm.min.jsbuild and import the default export.
Widget Callbacks
onSuccess() - triggers when:
- ✅ Customer completed data entry (Phase 1 complete)
- ✅ Customer has returned to your application
- ❌ Does NOT mean identity is verified
- ❌ Does NOT mean risk assessment is complete
- ❌ Currently returns
undefined(no parameters)
onError(error) - triggers when a technical error occurs (network failure, API error).
Widget Behaviour
The widget automatically polls GET /v1/user/signup/tracking/{trackingReference}/status every 3 - 5 seconds.
| Status | Display |
|---|---|
| Inactive | QR code and "Verify with VerifiMe" button |
| Active | "Verifying with VerifiMe" message with spinner |
| Completed | Triggers onSuccess() callback |
| Error | Triggers onError() callback |