Upload KYC documents

The following API allows a merchant to upload customer's documents for KYC within a host-to-host SEPA Secure flow. In order for a customer to pass a KYC, at least 3 documents must be provided by a merchant:

  • Photo: SELFIE

  • Document ID (one of the following): PASSPORT, ID_CARD, DRIVERS, RESIDENCE_PERMIT

  • Proof of address: UTILITY_BILL (can also be other documents than bill, see list)

Documents must follow the following rules:

  • DRIVERS, ID_CARD - it is required to upload two sides

    • Use documentSubType parameter with FRONT_SIDE / BACK_SIDE values

  • SELFIE, PASSPORT, UTILITY_BILL - it is required to upload one side

  • RESIDENCE_PERMIT - can be one or two sides

Document quality

Submitted documents should meet the following criteria:

  • Official and unexpired (passports, national IDs, etc.) and valid for at least 1 more month

  • Fully visible — no cut-off edges, glare, or blur

  • Not screenshots — original files or clear photos only

    • No edited, cropped, or screenshot versions

  • Correct file format: JPG, PNG, or PDF, under 50MB

  • Proof of address must be issued within the last 3 months and clearly show the client’s name and address.

Acceptable Proof of Address Documents

  • Recent utility bill (electricity, gas, internet)

  • Bank or credit card statement

  • Local or national tax letter (issued within the past 12 months)

  • Mortgage or rental agreement

  • Official correspondence from a government authority

  • Voter registration certificate

API specification

Deprecated

Uploads a KYC (Know Your Customer) document for a specified customer to assist in their KYC verification process.

put

Uploads a KYC (Know Your Customer) document for a specified customer to assist in their KYC verification process.

Access to this endpoint requires a valid API key. The API key is sent in the x-api-key header on requests.

Authorizations
Path parameters
idstringRequired
  • The external identifier for the customer whose KYC document is being uploaded.
Body
any ofOptional
  • The KYC document details to be uploaded.

Params:

  • documentType - The document type. "SELFIE" || "PASSPORT" without documentSubType. "DRIVERS" || "ID_CARD" with documentSubType.
  • documentSubType - The document subtype. "FRONT_SIDE" || "BACK_SIDE".
  • content - The base64 image. The image with size more than 500KB is not allowed.
  • country - The ISO 3166-1 alpha-2 country name.
or
Responses
204

No Content

application/json
put
PUT /api/v2/customer/{id}/bank-transfer/kyc/document HTTP/1.1
Host: api.xgateway.tech
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 153

{
  "documentType": "SELFIE",
  "content": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAEElEQVR4nGJin5ABCAAA//8BqQECzq78DQAAAABJRU5ErkJggg==",
  "country": "AU"
}
{
  "success": true,
  "data": null
}

Last updated