Reusable RealID Integration Guide
Reusable RealID enables the reuse of user KYC data between merchants that have established a sharing partnership. The merchant that provides the data is the Donor, and the merchant that receives and uses the data is the Recipient. A merchant can act as both a Donor and a Recipient, forming a mutual data provision and reception relationship.
This document is intended for integration developers. It covers pre-integration preparations, mode selection, API call sequences, and sources of key fields.
Pre-Integration Requirements
Before starting integration, ensure the following requirements are met:
- An effective KYC sharing partnership must be established between the Donor and the Recipient. A valid agreement is required as proof. Once confirmed, ZOLOZ will configure the partnership in the system.
- The Donor must have the ShareToken creation permission enabled. Contact ZOLOZ technical support to enable this.
- The Recipient must have completed product purchase and have the Reusable RealID permission enabled.
- The Donor must obtain the Recipient's API
clientIdto create a targeted ShareToken. This value typically starts with2188(e.g.,2188499706886568). - The Donor must have completed a successful standard RealID verification and attached the verification data to the corresponding Applicant.
Capabilities and Permissions
Capability | Caller | Activation Requirement | Billing |
Applicant Management | Merchant owning the Applicant | No separate activation required | Free of charge |
ShareToken Creation | Donor | Donor permission required | Free of charge |
Reusable RealID (SDK Mode) | Recipient | Recipient permission + Reusable RealID product permission required | Billed per product rules |
Applicant Data Isolation
- Applicants are isolated by merchant. Each merchant can only manage Applicants under their own account.
- Other merchants cannot access any data under an Applicant, even if they obtain the
applicantIdoruserId. - After a successful reuse:
- If no Applicant exists under the Recipient for the given
userId, the system automatically creates a new Applicant. - If an Applicant already exists, the reused KYC data is merged into the existing Applicant.
- The Applicant is independently managed by the Recipient. Subsequent operations (query, update, delete, etc.) are controlled solely by the Recipient.
Choosing an Integration Mode
The Recipient can choose one of the following integration modes based on business scenarios:
Mode | Target Platform | Re-capture Document Required? | Re-capture Face Required? | Interaction Method |
Native SDK | iOS / Android App | No | Yes | Server initializes, then the mobile app loads the ZOLOZ SDK interface. The user completes face capture, and the server polls for results. |
H5 SDK | Mobile H5 | No | Yes | Server initializes, then the H5 page loads the ZOLOZ SDK interface. The user completes face capture, and the server polls for results. |
Both SDK modes are suitable for scenarios that require user participation in face liveness detection (e.g., login verification, high-risk operation confirmation). Both SDKs share the same set of APIs (initialize + checkresult). The main differences in the initialize request parameters are:
- Different
flowTypevalues. - Different ways of passing the
metaInfoandh5ModeConfigparameters.
Complete Integration Flow
Step 1: Donor Prepares and Authorizes Data
The Donor must first create an Applicant, complete standard RealID verification, attach the data, and finally generate a ShareToken and securely deliver it to the Recipient.
Step | API / Action | Key Input Parameters | Result |
1 |
| Donor-side stable and unique |
|
2 | Complete standard RealID verification | Follow standard RealID integration flow | Successful RealID |
3 |
|
| Verification data attached successfully |
4 |
|
| Confirm shareable data exists under the Applicant |
5 |
|
|
|
6 | Deliver ShareToken server-side | Use a secure server-side channel | Recipient receives the |
Note: The recipientClientId is the API clientId used by the Recipient to authenticate calls to the ZOLOZ OpenAPI. It is provided by the Recipient to the Donor. It is not a user ID, Applicant ID, or a business serial number generated by the merchant.
Step 2: Integration Methods for Different Modes
Recipient Using Native SDK
- Call
v1.zoloz.realid.reusable.initializewith theshareToken, Recipient-sideuserId,flowType=REUSABLE_REALIDLITE_KYC, and pass through the metaInfo generated by the Native SDK. - Save the
transactionIdfrom the response. Use theclientCfgfrom the response to configure and load the Native SDK interface. - The user completes face capture in the SDK interface. ZOLOZ automatically performs liveness detection and face matching.
- Use the
transactionIdreturned from initialize to callv1.zoloz.realid.reusable.checkresultto poll for results. - After successful reuse, the system automatically creates a new Applicant if none exists under the Recipient for the
userId, or merges the reused KYC data into the existing Applicant if one already exists. The Recipient can then query the data using theuserIdfrom the initialize request viav1.zoloz.applicant.query.
Recipient Using H5 SDK
- Call
v1.zoloz.realid.reusable.initializewith theshareToken, Recipient-sideuserId,flowType=H5_REUSABLE_REALIDLITE_KYC,metaInfo=MOB_H5, and the requiredh5ModeConfig. - Save the
transactionIdfrom the response. Use theclientCfgfrom the response to configure and load the H5 SDK interface. - The user completes face capture in the H5 SDK interface. ZOLOZ automatically performs liveness detection and face matching.
- Use the
transactionIdreturned from initialize to callv1.zoloz.realid.reusable.checkresultto poll for results. - After successful reuse, the system automatically creates a new Applicant if none exists under the Recipient for the
userId, or merges the reused KYC data into the existing Applicant if one already exists. The Recipient can then query the data using theuserIdfrom the initialize request viav1.zoloz.applicant.query.
Key Field Reference
Field | Provider / How to Obtain | Used In |
| Provided by the Recipient (the API | Donor creates ShareToken |
| Generated and maintained by the calling merchant (should be stable and unique per merchant) | Applicant creation, Recipient reuse, and ownership query |
| Returned by | attach, query, update, delete, ShareToken creation |
Standard RealID | Returned from the standard RealID flow |
|
Reusable | Returned by | Result query after SDK loading (checkresult) |
| Returned by | initialize request |
| Generated by the API caller (should be unique per business request) | Corresponding API request |
Notes:
- Except for checkresult, all API responses for this product include a
transactionIdfor the call itself. It is recommended to save this for business tracking and issue troubleshooting. - Do not confuse the two
transactionIdvalues:
- The
transactionIdin the attach request is the standard RealID transaction ID to be attached. - The
transactionIdin the attach response is the transaction ID for the attach API call itself (used to track the attach operation).
ShareToken and Data Rules
Rule | Description |
Validity Period | ShareToken is valid for 20 minutes. The exact expiration time is provided in the |
Bound to Recipient | A ShareToken can only be used by the |
Single Use | Once initialize succeeds, the ShareToken is immediately consumed and cannot be reused. |
Invalid After Use | Even if the user subsequently cancels or fails verification after a successful |
Not Consumed on Filter Mismatch | If Donor data does not meet the Recipient's document filtering criteria, |
Token Invalid Scenarios |
|
No Secondary Sharing | Data obtained by the Recipient via REUSE cannot be shared further as Donor data (i.e., cannot be used to generate a new ShareToken). |
Deletion Does Not Cascade | Deleting an Applicant only deletes the data held by the current merchant. It does not cascade-delete independent data copies already obtained by other merchants. |
Integration Checklist
Before starting integration testing, confirm the following items:
Check Item | Description |
Environment and Credentials | Use the correct environment addresses, API |
Recipient Client ID Match | The |
ShareToken Secure Delivery | The ShareToken must be delivered only through a secure server-side channel and used within its validity period (20 minutes). |
Transaction ID Storage | Save the |
Async Ownership Retry Strategy | Set a reasonable retry interval and timeout for async ownership queries for the Recipient Applicant. |