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

Document Recognition

Описание#

Document Recognition - это технология считывания данных с документов. Автоматическое определение идентификационных документов распознает документы по типу и стране. Проводит серию технических проверок для выявления мошенничества или несоответствий и проверяет правильность всей информации.

Ниже подробнее описаны этапы для использования данной технологии. Вы также можете проверить OpenAPI-спецификацию всех доступных для использования технологий.


Этапы:#

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

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

backend_api_key

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

API-KEY: Efy202XKbVAWRu...

Примечание

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

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

В запросах к данному сервису используются данные в формате multipart/form-data. Ответные данные от сервиса будут представлены в формате JSON.

Важно

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

URL запроса:

https://kyc.biometric.kz/api/v1/backend/document/parse/

Формат запроса Метод запроса
multipart/form-data POST

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

Наименование поля Тип Обязательно Описание
api_key String Да API KEY организации в личном кабинете
frontside_image File Нет Фотография передней части документа
backside_image File Нет Фотография задней части документа
country_code File Да Код страны документа. Доступные значения: kz, other

Важно

Несмотря на то, что поля frontside_image и backside_image являются необязательными, один из этих полей обязательно должен быть передан в запросе.

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

    curl --location 'https://kyc.biometric.kz/api/v1/backend/document/parse/' \
    --form 'api_key="<YOUR_API_KEY>"' \
    --form 'frontside_image=@"doc_front.jpg"' \
    --form 'backside_image=@"doc_back.jpg"' \
    --form 'country_code="kz"'
    import requests

    url = "https://kyc.biometric.kz/api/v1/backend/document/parse/"

    payload = {'api_key': '<YOUR_API_KEY>',
    'country_code': 'kz'}
    files=[
      ('frontside_image',('doc_front.jpg',open('doc_front.jpg','rb'),'image/jpeg')),
      ('backside_image',('doc_back.jpg',open('doc_back.jpg','rb'),'image/jpeg'))
    ]
    headers = {}

    response = requests.request("POST", url, headers=headers, data=payload, files=files)

    print(response.text)
    var formdata = new FormData();
    formdata.append("api_key", "<YOUR_API_KEY>");
    formdata.append("frontside_image", fileInput.files[0], "doc_front.jpg");
    formdata.append("backside_image", fileInput.files[0], "doc_back.jpg");
    formdata.append("country_code", "kz");

    var requestOptions = {
      method: 'POST',
      body: formdata,
      redirect: 'follow'
    };

    fetch("https://kyc.biometric.kz/api/v1/backend/document/parse/", requestOptions)
      .then(response => response.text())
      .then(result => console.log(result))
      .catch(error => console.log('error', error));

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

  • first_name - Имя;
  • last_name - Фамилия;
  • patronymic - Отчество;
  • personal_number - Идентификационный номер;
  • date_of_birth - Дата рождения;
  • document_number - Номер документа;
  • authority - Орган выдачи;
  • date_of_issue - Дата выдачи;
  • date_of_expiry - Срок действия;
  • country_code - Код страны документа;
  • images - Фотографии в формате base64:
    • face_photo - Фотография лица
    • front_side_image - Фотография задней части документа
    • back_side_image - Фотография передней части документа
  • failure_reason - причина провала документа.

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

{
   "first_name":"Тест",
   "last_name":"Тестов",
   "patronymic":"Тестович",
   "personal_number":"123456789012",
   "date_of_birth":"01.10.1996",
   "document_number":"document_number",
   "authority":"МВД РЕСПУБЛИКИ КАЗАХСТАН",
   "date_of_issue":"02.07.2012",
   "date_of_expiry":"02.07.2022",
   "country_code":"kz",
   "images": {
      "face_photo": "base64",
      "front_side_image": "base64",
      "front_side_image": "base64"
   },
  "failure_reason": "None"
}

Ошибки#

Код состояния Ответ Описание
400 Frontside document not found Данные передней части документа не найдены
400 Document image at frontside_image field is not frontside Фотография документа не является лицевой стороной
400 Document image at backside_image field is not backside Фотография документа не является обратной стороной
400 Client does not have access to Document Recognition Technology У клиента нет доступа к технологии. Причины: подписка отсутствует, либо она истекла, или технология не активна
415 Not allowed file, valid extensions: .jpg .png .jpeg Недопустимое расширение для файла, допустимые: .jpg .png .jpeg
400 Subscription has not started Подписка еще не активировалась
400 No active or future subscription for technology Нет активной или будущей подписки на технологию
400 Client does not have subscription У клиента отсутствует подписка, подробнее о подписках можно прочитать здесь