attach
Important Notice:
- All request and response parameters are strictly subject to the official API documentation.
- The API response may contain fields not defined in the documentation. These fields are for internal debugging purposes only and are not guaranteed to be stable or compatible. Do not rely on these fields in production environments. ZOLOZ reserves the right to modify or remove these fields at any time without prior notice.
Overview
- API URL: POST /api/v1/zoloz/applicant/attach
- API Description: This API is used to attach a successfully completed RealID transaction data to a specified applicant. After successful attachment, the applicant can use the corresponding document and face data in KYC data sharing scenarios.
Notes:
- Both the specified applicant and the RealID transaction must belong to the current merchant.
- The RealID transaction must have been successfully completed, and the product type must be RealID.
- This API supports idempotent calls with the same
applicantIdandtransactionId. Repeated calls will not result in duplicate data. - When attaching data of the same document type, the document data from the new transaction will overwrite the existing document data of the same type for the applicant. Document data of other types will be appended to the applicant.
- The face in the new transaction must belong to the same person as the applicant's existing face. If the verification passes, the newly attached face result will be used. If the verification fails,
FACE_MISMATCHis returned.
Request Parameters
Field Name | Data Type | Max Length | Required | Default Value | Description | Example |
bizId | String | 32 | Yes | - | A unique business ID for tracing purposes. For example, the sequence ID from the merchant's business-related database. Note: The ZOLOZ server does not perform uniqueness checks on the value of this field. For better tracking, it is strongly recommended to enable the merchant server to guarantee the uniqueness of the business ID. | 2026053000015 |
applicantId | String | 50 | Yes | - | The ZOLOZ applicant ID to which the KYC data will be attached. The applicant must belong to the current merchant. | APHK_a1b2c3d4e5f6 |
transactionId | String | 64 | Yes | - | The RealID transaction ID to be attached. The transaction must belong to the current merchant, have been successfully completed, and have the product type RealID. | G000000005FID2020030400000000000157**** |
Response Parameters
Field Name | Data Type | Always Returned | Description | Example |
result | Yes | The API request result, which contains the result status, result code, and result message. | { "resultStatus": "S", "resultCode": "SUCCESS", "resultMessage": "Success" } | |
transactionId | String | No | The transaction ID for this API call, which can be used for business tracking and troubleshooting. Note: The system will only return the
| G000000005FID2020030400000000000157**** |
Response Rules
Processing Result | Returned Content |
Attachment Successful | Returns |
Idempotent Hit | Returns |
Attachment Failed | Returns |
Data Attachment Rules
Scenario | Processing Result |
Repeated call with the same | Returns idempotent success. No duplicate data is created. |
New transaction contains a document of the same type as an existing document for the applicant | The document data from the new transaction overwrites the existing document of the same type. |
New transaction contains a document type that the applicant does not yet have | The document data is appended to the applicant. |
The face in the new transaction belongs to the same person as the applicant's existing face | The newly attached face result is used. |
The face in the new transaction does not belong to the same person as the applicant's existing face | Returns |
Result
For different request results, different actions will be performed. See the following for details:
- When
result.resultCode = SUCCESS: The RealID transaction data has been successfully attached to the applicant, or the idempotent request matched an existing attachment result. - When
result.resultCode = APPLICANT_NOT_FOUND: The applicant corresponding to the providedapplicantIddoes not exist or does not belong to the current merchant. - When
result.resultCode = TRANSACTION_NOT_FOUND: The transaction corresponding to the providedtransactionIddoes not exist or does not belong to the current merchant. - When
result.resultStatus = F: The attachment failed. Check the returnedresultCodeandresultMessageto identify issues with the applicant, transaction status, product type, face consistency, or request parameters.
Common error codes
For the full list of common error codes, see the Common error codes section in the Error handling topic.
API-specific error codes
The error codes specific to the Reusable RealID attach API are listed in the table below.
resultCode | resultStatus | Description |
SUCCESS | S | The RealID transaction data was attached successfully, or the idempotent request matched an existing attachment result. |
APPLICANT_NOT_FOUND | F | The applicant corresponding to the provided |
TRANSACTION_NOT_FOUND | F | The transaction corresponding to the provided |
TRANSACTION_NOT_SUCCESS | F | The specified RealID transaction has not been successfully completed and cannot be attached to the applicant. |
TRANSACTION_NOT_REALID | F | The specified transaction is not a RealID product transaction. |
FACE_MISMATCH | F | The face in the new transaction does not belong to the same person as the applicant's existing face. The transaction data was not attached. |
INVALID_ARGUMENT | F | Invalid input parameters. Possible causes include missing required parameters, field length exceeded, etc. For detailed error information, check the returned |
SYSTEM_ERROR | F | Internal system error. For error details, check the returned |
Sample
Request Sample
{
"bizId": "2026053000015",
"applicantId": "APHK_a1b2c3d4e5f6",
"transactionId": "G000000005FID20200304000000000001570702"
}Response Sample
Successful Response
{
"result": {
"resultStatus": "S",
"resultCode": "SUCCESS",
"resultMessage": "Success"
},
"transactionId": "G000000005FID20200304000000000001570703"
}Failure Response
{
"result": {
"resultStatus": "F",
"resultCode": "TRANSACTION_NOT_SUCCESS",
"resultMessage": "The RealID transaction is not successful."
},
"transactionId": "G000000005FID20200304000000000001570704"
}