---
title: "Add ScanCapture Request – Submits Matricula Consular ID images for verification."
method: POST
path: "/programs/{programCode}/kycGates/scanCapture"
tags: ["Kyc"]
---

# Add ScanCapture Request – Submits Matricula Consular ID images for verification.

`POST /programs/{programCode}/kycGates/scanCapture`

Submits Matricula Consular ID images for verification. Returns onboarding ID and verification status.

## Path parameters

- `programCode` string, required

## Headers

- `X-GD-RequestId` string, required

## Request body

- CreateScanCaptureRequest — Represents a request to submit Matricula Consular ID images for scan capture verification. Used to initiate document image processing for identity verification and onboarding, including product context and encrypted identity documentation.
  - `channel` string, nullable — The channel through which the scan capture request was initiated (e.g., "Web", "Mobile"). Used to identify the source platform or integration for the request.
  - `productCode` string, nullable — The product code associated with the scan capture request (e.g., "CARD", "SAVINGS"). Used to scope the scan capture and verification to a specific product or service.
  - `encryptedIdentityDocumentation` EncryptedData — Represents a container for encrypted data used in secure data transfer operations. Contains the encrypted payload and associated cryptographic metadata, including encryption version, ephemeral public key, and public key hash. Used to securely transmit sensitive information such as user data, ensuring confidentiality and integrity during transport.
    - `version` string, nullable — The version of the encryption algorithm used to encrypt the data (e.g., "v1", "v2").
    - `ephemeralPublicKey` string, nullable — The ephemeral public key used in the encryption process, typically for key exchange or session establishment.
    - `publicKeyHash` string, nullable — The hash of the public key used to verify the integrity and authenticity of the encryption key.
    - `data` string, nullable — The encrypted data payload, typically base64-encoded, containing the sensitive information.

## Response `202`

Accepted

- CreateScanCaptureResponse — Represents the response returned after processing a scan capture request for identity verification. Contains the extracted document data, such as onboarding ID, document type, template type, and encrypted identity data. Used to communicate the results of Matricula Consular ID image processing, enabling partners to complete onboarding and verification flows.
  - `documentData` DocumentData — Represents the extracted document data returned after a scan capture or identity verification operation. Contains encrypted identity data, onboarding ID, document type, and template type. Used to securely transmit identity information and document metadata for onboarding and compliance processes.
    - `encryptedIdentityData` EncryptedData — Represents a container for encrypted data used in secure data transfer operations. Contains the encrypted payload and associated cryptographic metadata, including encryption version, ephemeral public key, and public key hash. Used to securely transmit sensitive information such as user data, ensuring confidentiality and integrity during transport.
      - `version` string, nullable — The version of the encryption algorithm used to encrypt the data (e.g., "v1", "v2").
      - `ephemeralPublicKey` string, nullable — The ephemeral public key used in the encryption process, typically for key exchange or session establishment.
      - `publicKeyHash` string, nullable — The hash of the public key used to verify the integrity and authenticity of the encryption key.
      - `data` string, nullable — The encrypted data payload, typically base64-encoded, containing the sensitive information.
    - `onboardingID` string, nullable — The unique onboarding identifier associated with the document and user. Used to track the onboarding process and link document verification to the user account.
    - `documentType` string, nullable — The type of document scanned (e.g., "Matricula", "Passport", "DriverLicense"). Used to identify the document category for verification and compliance.
    - `templateType` string, nullable — The template type used for document recognition and extraction. Used to specify the document recognition model or template applied during processing.
  - `responseDetails` ResponseDetail[], nullable — Required: A list of response details providing status codes, descriptions, and additional information about the result of the operation.
    - `code` integer — The primary status or error code for the response (e.g., 200 for success, 400 for validation error).
    - `subCode` integer, nullable — An optional subcode providing more granular detail about the response or error.
    - `description` string, nullable — A human-readable description of the response, error, or status.
    - `url` string, nullable — A URL linking to documentation or a web page with more information about the response code.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/greendot/apis/baas-apis.md) · [All operations](https://skmtc.net/greendot/apis/baas-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/greendot/baas-apis/revisions/666553766b78/schema)
