Перейти к содержимому

Необходимые cookie-файлы нужны для работы сайта. Аналитические cookie (Яндекс Метрика) — только с вашего согласия. Политика cookie-файлов

Транспортная накладная

Распознавание транспортной накладной (ТН, ТТН)

Грузоотправитель, грузополучатель и перевозчик, водитель и госномер, груз и масса, адреса погрузки и выгрузки — из скана транспортной накладной.

Что извлекается

Готовая схема: берите как есть или добавьте свои поля. Если значения нет в документе, поле вернётся null со статусом missing.

ПолеОписаниеТипПроверка
numberНомер накладнойstring
dateДатаstring (date)
shipperГрузоотправительobject
nameНаименованиеstring
innИННstringИНН
consigneeГрузополучательobject
nameНаименованиеstring
innИННstringИНН
carrierПеревозчикobject
nameНаименованиеstring
innИННstringИНН
driverВодитель (ФИО)string
vehicleТранспортное средствоobject
modelМаркаstring
plateГосударственный номерstring
cargoГрузobject
nameНаименование грузаstring
placesКоличество местinteger
weight_kgМасса брутто, кгnumber
loading_addressАдрес погрузкиstring
unloading_addressАдрес выгрузкиstring

Пример результата

Данные вымышлены, структура — ровно по схеме из таблицы. Рамкой отмечены реквизиты, которые Typizer проверяет.

result.json
{
  "number": "2026-0917-03",
  "date": "2026-09-17",
  "shipper": {
    "name": "ООО «Пример Агро»",
    "inn": "0036925810"
  },
  "consignee": {
    "name": "ООО «Сеть магазинов Условная»",
    "inn": "0014725832"
  },
  "carrier": {
    "name": "ИП Кузнецов Пётр Ильич",
    "inn": "001472583693"
  },
  "driver": "Кузнецов П. И.",
  "vehicle": {
    "model": "ГАЗель NEXT",
    "plate": "А000АА 00"
  },
  "cargo": {
    "name": "Овощи свежие в ящиках",
    "places": 64,
    "weight_kg": 1180
  },
  "loading_address": "Ленинградская обл., условный пос., ул. Полевая, 1",
  "unloading_address": "г. Санкт-Петербург, условный пр., 10"
}

Особенности документа

  • Форма транспортной накладной установлена Правилами перевозок грузов автомобильным транспортом (Постановление Правительства РФ от 21.12.2020 № 2200), но в обороте до сих пор встречаются и старые ТТН. Схема по смыслу работает с обеими.
  • Госномер транспортного средства — частый источник ошибок ручного ввода из-за похожих букв кириллицы и латиницы. Извлечённое значение связано с местом на странице: проверить его можно одним взглядом.
  • Масса груза указывается в разных единицах (кг, т) — добавьте в схему поле единицы или опишите в инструкции, в чём её вернуть.

Что проверяет Typizer

  • ИНН грузоотправителя, грузополучателя и перевозчика — контрольные цифры.
  • Даты — правдоподобный год (1900–2100), иначе статус warn.

Не прошло — поле получает статус warn и причину. У найденных значений есть источник на странице.

Вызов API с этой схемой

Один запрос к /v1/extract: файл, схема и инструкция. Ключ — в кабинете после регистрации.

Инструкция: Номер и дата накладной, грузоотправитель, грузополучатель и перевозчик с ИНН, водитель, марка и госномер ТС, груз, количество мест, масса, адреса погрузки и выгрузки

curl
curl -X POST 'https://api.typizer.ru/v1/extract?wait=60' \
  -H 'Authorization: Bearer tz_live_YOUR_API_KEY' \
  -H "Idempotency-Key: $(uuidgen)" \
  -F 'file=@document.pdf' \
  --form-string 'schema={"type":"object","properties":{"number":{"type":"string","description":"Номер накладной"},"date":{"type":"string","format":"date","description":"Дата"},"shipper":{"type":"object","description":"Грузоотправитель","properties":{"name":{"type":"string","description":"Наименование"},"inn":{"type":"string","description":"ИНН","x-typizer-check":"inn"}},"required":["name","inn"]},"consignee":{"type":"object","description":"Грузополучатель","properties":{"name":{"type":"string","description":"Наименование"},"inn":{"type":"string","description":"ИНН","x-typizer-check":"inn"}},"required":["name","inn"]},"carrier":{"type":"object","description":"Перевозчик","properties":{"name":{"type":"string","description":"Наименование"},"inn":{"type":"string","description":"ИНН","x-typizer-check":"inn"}},"required":["name","inn"]},"driver":{"type":"string","description":"Водитель (ФИО)"},"vehicle":{"type":"object","description":"Транспортное средство","properties":{"model":{"type":"string","description":"Марка"},"plate":{"type":"string","description":"Государственный номер"}},"required":["model","plate"]},"cargo":{"type":"object","description":"Груз","properties":{"name":{"type":"string","description":"Наименование груза"},"places":{"type":"integer","description":"Количество мест"},"weight_kg":{"type":"number","description":"Масса брутто, кг"}},"required":["name","places","weight_kg"]},"loading_address":{"type":"string","description":"Адрес погрузки"},"unloading_address":{"type":"string","description":"Адрес выгрузки"}},"required":["number","date","shipper","consignee","carrier","driver","vehicle","cargo","loading_address","unloading_address"]}' \
  --form-string 'instructions=Номер и дата накладной, грузоотправитель, грузополучатель и перевозчик с ИНН, водитель, марка и госномер ТС, груз, количество мест, масса, адреса погрузки и выгрузки'

FAQ

Вопросы о распознавании транспортных накладных

Не нашли ответ? Напишите — ответит человек.

hello@typizer.ruДокументация
Подойдут ли накладные со смартфона водителя?

Да. Фото обрабатываются распознаванием текста; источник у каждого значения помогает быстро проверить сомнительные значения. Для плохих снимков — режим «Точный».

Можно ли получать результаты автоматически?

Да: отправляйте накладные в API без ожидания и получайте результат вебхуком по спецификации Standard Webhooks — с подписью и повторами в течение суток.

Распознаётся ли электронная транспортная накладная (ЭТрН)?

Если у вас её печатная форма в PDF — да. Сам формат ЭТрН уже структурирован и распознавания не требует.

Первые страницы — за наш счёт.

100 страниц при регистрации и ещё 200 страниц за ИНН компании. Без карты и без подписки.