Upload a KYC document for a user. fileContent must be base64 encoded.
Formats and size
- Accepted MIME types:
image/jpeg,image/jpg,image/png,application/pdf. - Max 20MB decoded per file.
- The card provider caps document uploads at 2MB. JPEG and PNG images above that are recompressed automatically, so you do not need to resize them; a PDF cannot be recompressed, so send identity documents as JPG or PNG if they exceed 2MB.
Document types
passport, id_card, driving_licence, residence_permit count as
identity documents; selfie_with_document and proof_of_address are
separate. POST /v1/users/{id}/kyc/submit requires at least one identity
document plus a selfie_with_document.
Two-sided documents
For an ID with a front and a back, include back (or rear /
reverse) as a word in the file name of the reverse side, e.g.
id-card-back.jpg. That is how the sides are routed to the provider;
without the hint the upload order decides, and swapped sides are
rejected. Within each slot the newest non-rejected upload wins, so a
re-upload replaces an earlier scan.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id |
path | string |
yes | User identifier. |
Request body
application/json
· KYCDocumentUploadRequest
· required
| Field | Type | Required | Description |
|---|---|---|---|
documentType |
KYCDocumentType |
yes | |
fileContent |
string (byte) |
yes | Base64-encoded file content. Max 20MB decoded. Images above the provider's 2MB cap are recompressed automatically; PDFs are not. |
fileName |
string |
yes | Original file name. For the reverse side of a two-sided document include "back" (or "rear"/"reverse") as a word, e.g. "id-card-back.jpg". |
mimeType |
string |
yes | MIME type of the file. |
Responses
| Status | Body | Description |
|---|---|---|
201 |
KYCDocumentResponse |
Document uploaded. |
400 |
Error |
Invalid request (file too large, invalid type, etc.). |
Specification
This page is generated from the OpenAPI specification, which remains the authoritative machine-readable source.