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

NameInTypeRequiredDescription
id path string yes

User identifier.

Request body

application/json · KYCDocumentUploadRequest · required

FieldTypeRequiredDescription
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

StatusBodyDescription
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.