Create KYC Cardholder (Manual)
Submit identity collected by your own KYC pipeline.
Deprecated. This endpoint will be removed on August 10, 2026. Please migrate to POST /kyc/cardholders/form, which accepts the user's basic information along with a third-party KYC report.
Submit cardholder identity collected by your own KYC pipeline. Documents must first be uploaded via POST /kyc/presignedUploads; pass the resulting fileTokens in attachments. The submission enters PENDING and is reviewed by our compliance team.
Body
firstNamestringbodyrequiredMax 128 chars.
lastNamestringbodyrequiredMax 128 chars.
idTypestringbodyrequiredPASSPORT, ID_CARD, or DRIVER_LICENSE.
idNumberstringbodyrequiredDocument number, max 128 chars.
attachmentsarray<string>bodyrequiredNon-empty list of fileToken values returned by POST /kyc/presignedUploads. The submitted attachment must be a PDF verification report generated by a third-party verification provider, such as Sumsub, Didit, or other KYC service providers.
Response
idstringCardholder ID (kyc_…).
kycStatusstringAlways PENDING immediately after creation.
modestringAlways MANUAL for this endpoint.
{
"firstName": "John",
"lastName": "Doe",
"idType": "PASSPORT",
"idNumber": "X1234567",
"attachments": [
"kyc_upl_8f3a9c2b1d4e5f6a",
"kyc_upl_2c1d4e5f6a8f3a9b"
]
}{
"code": 0,
"message": "SUCCESS",
"data": {
"id": "kyc_2c1d4e5f6a8f3a9b",
"kycStatus": "PENDING",
"mode": "MANUAL"
}
}Notes
- Each
fileTokenis single-use and is consumed by the first successful submission that references it. - Manual review is performed by Buvei's compliance team; turnaround time depends on document quality and queue volume.
- Listen for
CARDHOLDER_KYC_STATUSfor the final outcome.