Перейти к содержанию

MRZ

Описание#

MRZ - это технология, позволяющая считывать MRZ строки с удостоверения личности. На данный момент работает только с удочтоверениями граждан Кыргызстана.

Для комфортной интеграции через Backend API воспользуйтесь Swagger (OpenAPI)


Термины#

  • MRZ — это специальная область в нижней части паспортов, виз и ID-карт, состоящая из двух или трех строк текста. Она содержит основные данные владельца (фамилия, имя, номер документа, дата рождения, гражданство).

Этапы:#

1. Получение API-KEY организации#

Первый этап для использования технологии - получение API-KEY организации. Чтобы получить API-KEY организации, необходимо зайти в Личный Кабинет по данной ссылке. API-KEY находится в поле Backend Api Key

backend_api_key

Пример API-KEY организации:

API-KEY: Efy202XKbVAWRu...

Примечание

Для наглядности используется укороченная длина API KEY. Его фактическая длина составляет 47 и более символов.

2. Отправка запроса на сканирование MRZ строк с документа#

При отправке запроса на сканирование MRZ строк с документа используются данные в Form Data.

Важно

Чтобы использовать данный сервис, необходимо иметь на него подписку. Подробнее о подписках можно прочитать здесь.

URL запроса:

https://kyc.biometric.kz/api/v1/backend/mrz/retrieve/

Формат Тела Метод запроса
Form Data POST

API KEY необходимо передать в теле запроса:

Наименование поля Тип Обязательно Описание
api_key String Да API KEY организации в личном кабинете
image File Да Изображение с документом

Примеры запроса:

    curl -X 'POST' \
    'https://kyc.biometric.kz/api/v1/backend/mrz/retrieve/' \
    -H 'accept: application/json' \
    -H 'Content-Type: multipart/form-data' \
    -F 'api_key=<organization_api_key>'
    -F 'image=@/path/to/your/image.jpg'
    import requests

    url = 'https://kyc.biometric.kz/api/v1/backend/mrz/retrieve/'

    headers = {
        'Accept': 'application/json',
    }

    files = {
        'image': open('/path/to/your/image.jpg', 'rb'),
    }

    data = {
        'api_key': '<organization_api_key>',
    }

    response = requests.post(
        url,
        headers=headers,
        data=data,
        files=files,
    )

    print(response.json())
    import fs from 'fs';
    import FormData from 'form-data';
    import fetch from 'node-fetch';

    const url = 'https://kyc.biometric.kz/api/v1/backend/mrz/retrieve/';
    const apiKey = '<organization_api_key>';

    const form = new FormData();
    form.append('api_key', apiKey);
    form.append('image', fs.createReadStream('/path/to/your/image.jpg'));

    fetch(url, {
        method: 'POST',
        headers: {
            'Accept': 'application/json',
            ...form.getHeaders(),
        },
        body: form
    })
    .then(res => res.json())
    .then(data => console.log(data))
    .catch(err => console.error(err));

В качестве ответа придет JSON со следующими полями:

  • backend_session_id - UUID идентефикатор сессии
  • status - Статус сессии (CREATED, FAILED и т.д.)
  • result - Результат прохождения MRZ технологии
  • mrz_string - Считанные MRZ строки
  • failure_reason - Причина провала считывания (в случае провала)

Пример ответа:

{
  "backend_session": "00000000-0000-0000-0000-000000000000",
  "status": "RECEIVED",
  "result": true,
  "mrz_string": "IDKAZ0123456789012345678901<<<\n0123456F0123456KAZ<<<<<<<<<<<0\nJHON<<DOE<<<<<<<<<<<<<<<<<<<<<",
  "failure_reason": null
}

Ошибки#

Код состояния Ответ Описание
400 Subscription has not started Подписка еще не активировалась
400 No active or future subscription for technology Нет активной или будущей подписки на технологию
400 Client does not have subscription У клиента отсутствует подписка, подробнее о подписках можно прочитать здесь
400 Client does not have access to MRZ technology У клиента нет доступа к технологии. Причины: подписка отсутствует, либо она истекла, или технология не активна
400 MRZ max attempts exceeded У конечного клиента истекли попытки прохождения технологии MRZ
422 Error while parsing MRZ Ошибка при считывании MRZ строк
503 MRZ service not available now Сервис MRZ в данное время не доступен