Главная → Блог → Расшифровка VIN и комплектации через API: как автоматически заполнять карточки авто
Расшифровка VINРасшифровка VIN и комплектации через API: как автоматически заполнять карточки авто

Расшифровать VIN автоматически можно одним запросом GET /decode?vin=: API вернёт модель, поколение, кузов, двигатель, коробку, привод, годы выпуска, страну и завод сборки в JSON. Поле full=1 показывает, что определена единственная модификация, и карточку можно заполнять без ручной правки. Если модификаций несколько, поля подставляются частично, а выбор остаётся за менеджером или пользователем.
Зачем бизнесу автоматическая расшифровка VIN
Откройте любую базу, в которую карточки вносили руками, и найдёте одно и то же: "Mercedes E-class", "Мерседес Е класс", "Mercedes-Benz E 200" как три разные модели, дизель, записанный как бензин, коробка "автомат" у машины с роботом. Каждая такая ошибка потом превращается в дубль, жалобу покупателя или лишнюю минуту модератора.
Больше всего это бьёт по тем, у кого карточки массовые: автосалоны и площадки трейд-ина, выкуп, доски объявлений, маркетплейсы, каталоги запчастей. Для каталога запчастей неверное поколение означает не ту деталь в корзине. Для объявления - неверный двигатель в заголовке и спор с покупателем при осмотре.
Автозаполнение по VIN даёт три вещи. Скорость: пользователь вводит 17 символов вместо десяти полей. Единый справочник: значения приходят в одной схеме, и их можно один раз сопоставить со своими. И меньше модерации: проверять приходится только спорные случаи, а не каждую карточку.
Что возвращает /decode
API расшифровки VIN отдаёт то, что зашифровано в самом номере: модель, поколение, тип кузова, двигатель, коробку передач, привод, годы выпуска, страну и завод сборки. Это данные о модели и модификации, а не об истории конкретной машины: про владельцев, залоги и ограничения здесь речи нет.
Ключевой флаг - full. Значение 1 означает, что по VIN определена единственная модификация: все поля согласованы между собой, и их можно писать в карточку сразу. Если full не равен 1, VIN подошёл нескольким вариантам. Например, одно и то же поколение выпускалось с двумя моторами, а в VIN разница не закодирована. Тогда надёжно заполнены общие поля (марка, модель, поколение, кузов, годы), а спорные (мотор, коробка, привод) лучше предложить выбрать человеку.
Пример запроса с тестовым VIN:
curl -H "Authorization: Bearer ВАШ_ТОКЕН" \
"https://api.avtovincod.ru/decode?vin=X7TEST00000000001"
Ответ приходит в JSON, с полем success и, на тестовых значениях, с "testMode": true. Точный набор и названия полей смотрите в документации и в самом образце: он отвечает по схеме реального метода, поэтому парсер можно написать до первого платного вызова.
Цена - 1,6 ₽ за запрос. Тестовые значения бесплатны, но токен нужен даже для них.
Сценарий 1: форма объявления или добавления авто в каталог
Типичная схема: пользователь вводит VIN, нажимает "Заполнить", форма подставляет поля, он подтверждает или правит. Запрос лучше делать с вашего сервера, а не из браузера: токен не должен попадать на клиент.
Логика ветвится по full. Если full=1, заполняем все поля и показываем их как предзаполненные, с возможностью исправить. Если нет, заполняем общие поля, а для двигателя, коробки и привода показываем выпадающий список с вариантами и просим выбрать. Пользователь, который сидит с ПТС в руках, выберет за секунду; а вот угадывать за него не стоит.
Отдельная задача - сопоставление со своим справочником. Ответ API вы получаете в одной терминологии, ваша база живёт в другой. Заведите таблицу соответствий: значение из ответа - ваш идентификатор марки, модели, типа двигателя. Незнакомое значение не должно ломать форму: пишем в лог, оставляем поле пустым и отправляем в очередь на донастройку справочника. Через пару недель покрытие обычно выходит на стабильный уровень.
И про деньги. Расшифровка по VIN не меняется от того, что её запросили второй раз. Храните результат по VIN у себя: ключ - VIN, значение - ответ и дата получения. Пользователь, который трижды обновил страницу, или два менеджера, открывшие одну машину, заплатят за один запрос, а не за три. Единственное, о чём стоит помнить, - периодически пересматривать кэш, если вы обновляете справочники.
Сценарий 2: комплектация и модификация
Здесь нужна честность и перед собой, и перед пользователями. Расшифровка определяет модификацию по VIN, но не гарантирует полный список опций конкретного экземпляра. Кожаный салон, панорама, пакет ассистентов, диски - это заказывали отдельно, и в стандартном VIN этого может не быть. Не обещайте покупателю в карточке то, чего API не возвращает.
Как закрыть пробел. Для быстрых характеристик есть краткие данные ТС: марка, модель, год, мощность, тип и объём двигателя, руль, масса. Они хорошо дополняют расшифровку и помогают сверить мощность и объём. Для описательной части подойдут плюсы и минусы модели: надёжность, кузов и коррозия, ликвидность и списки сильных и слабых сторон, готовые для блока "о модели". А фактические характеристики конкретной машины из данных ГИБДД приходят в истории регистрации.
Полнота зависит от производителя. У BMW, Mercedes, Volkswagen и Audi данные в VIN закодированы по-разному, и где-то определяется единственная модификация, а где-то остаётся несколько вариантов. Поэтому в коде нужен запасной путь: если full не равен 1 или часть полей пуста, переходите к выбору вручную, подтягивайте недостающее из /brief или оставляйте поле на заполнение менеджером. Не стройте логику на предположении, что для премиальных марок всегда будет полный набор.
Сценарий 3: быстрая карточка до полного отчёта
Для превью не нужен дорогой отчёт. Связка decode (1,6 ₽) и brief (1 ₽) даёт 2,6 ₽ за карточку с маркой, моделью, поколением, мотором, мощностью и годами. Этого достаточно, чтобы показать машину в списке, собрать черновик объявления или оценить, стоит ли вообще идти дальше.
Бывает, что VIN под рукой нет, а есть только госномер, например менеджер сфотографировал машину на площадке. Тогда сначала вызывается VIN по госномеру (8 ₽), а полученный VIN идёт в /decode. Подробнее про такую цепочку - в материале проверка по госномеру для площадок.
Если нужно сверить документы, пригодится номер двигателя по VIN: ответ за доли секунды, стоит 0,8 ₽, и платно только когда номер найден. Расхождение с тем, что написано в ПТС, - повод для осмотра.
Платные проверки истории - ограничения, залоги, ОСАГО - логично подключать уже после публикации или в момент, когда клиент оставил заявку. Так вы не тратите 20 ₽ на проверку ограничений на каждую машину, которая в итоге не дойдёт до сделки. Как собрать полный отчёт, описано в статье сборка отчёта по VIN для бизнеса.
Валидация и обработка ошибок
Начните с проверки формата до запроса. VIN состоит из 17 символов, латинские буквы и цифры, а буквы I, O и Q в нём не используются. Пользователь вместо латинской A вполне может вбить кириллическую, а вместо нуля - букву O. Нормализуйте ввод: верхний регистр, обрезка пробелов, замена похожих кириллических букв на латинские. Это отсекает заметную долю пустых запросов ещё на вашей стороне.
Дальше смотрим на success. Значение 1 - проверка выполнена и тарифицируется. Значение 0 - данных нет или проверка не выполнена, запрос бесплатный. В интерфейсе для success 0 покажите понятное сообщение и оставьте ручной ввод, а не тупик.
Для учёта расходов в каждом ответе, записанном в историю запросов, есть блок billing (charged, currency, billed, balance, requestId) и заголовки X-Charged, X-Balance, X-Request-Id. Складывайте requestId в лог рядом с карточкой: при вопросах к поддержке это самый быстрый способ найти конкретный вызов. Нет блока billing - запрос не списан.
Отдельный случай - автомобили без VIN, например японские с номером кузова вместо него. Для них расшифровка по VIN не сработает, нужны методы, принимающие номер кузова: /pros-cons и /autopark принимают ?body=, а история регистрации доступна через GET /body?body=. Если у вас такие машины встречаются, предусмотрите в форме поле "номер кузова" как равноправную альтернативу.
Массовое обогащение базы
Если в базе уже лежат тысячи карточек с кривыми или пустыми полями, прогоните её через API. В коде это обычный цикл по списку VIN с одним токеном: запрос, разбор, запись в таблицу, пометка full. Сначала обработайте записи, где full=1, а остальные отправьте в очередь на ручную проверку. Добавьте паузу и повтор при сетевых сбоях: ошибки и сбои источника бесплатны, так что повторная попытка денег не стоит.
Без программирования то же можно сделать через массовую проверку в кабинете: список до 100 машин файлом Excel или CSV или вставкой текста, выбор нужных проверок, расчёт "не больше" до запуска и таблица с результатами на выходе. О готовности придёт сообщение на почту и в Telegram. Подходит, когда нужно разово разобрать партию с выкупа или обновить небольшой парк.
Когда база становится живой, следующий шаг - мониторинг автомобилей: регулярная проверка списка по данным реестров и уведомления только об изменениях, например о новом залоге, запрете на регистрационные действия или смене собственника.
Как подключиться и протестировать
Регистрация в личном кабинете занимает минуту, токен выдаётся сразу. Пополнение от 100 ₽ банковской картой, юрлицам доступен счёт с актом, договор не нужен. Бесплатного пробного периода нет, зато и согласований тоже: после пополнения реальные проверки работают в реальном времени.
Интеграцию можно отладить полностью бесплатно на тестовых значениях: VIN X7TEST00000000001 возвращает образец по схеме метода с полем "testMode": true, без пополнения. Токен при этом нужен. Примеры кода на cURL, PHP, Python, JavaScript, Go, Java, C#, Ruby и 1С лежат на странице каждого метода в документации API, уже с тестовыми значениями.
Если у вас ИИ-агент или внутренний ассистент менеджера, подключите MCP-сервер https://api.avtovincod.ru/mcp с тем же Bearer-токеном: вызов инструмента тарифицируется как запрос к соответствующему методу.
Частые вопросы
Чем расшифровка VIN отличается от проверки истории автомобиля?
Расшифровка описывает модель и модификацию: что зашифровано в самом VIN. История касается конкретной машины: периоды владения, ограничения, залоги, ОСАГО, штрафы. Для заполнения карточки хватает расшифровки, для решения о сделке нужна ещё история.
Можно ли получить полную комплектацию с опциями по VIN?
Метод возвращает модификацию: модель, поколение, кузов, двигатель, коробку, привод. Полный список опций конкретного экземпляра он не гарантирует, поэтому опции лучше уточнять у владельца или по документам.
Что делать, если для VIN определено несколько модификаций?
Когда full не равен 1, заполняйте общие поля, а двигатель, коробку и привод предложите выбрать менеджеру или пользователю из списка. Недостающие характеристики можно сверить через краткие данные ТС.
Работает ли расшифровка для BMW, Mercedes, Volkswagen и Audi?
Запрос выполняется для любых марок, но полнота зависит от того, как производитель кодирует данные в VIN. Где-то определяется единственная модификация, где-то несколько вариантов. В коде нужен запасной путь на ручной выбор.
Как расшифровать VIN, если у автомобиля есть только госномер?
Сначала вызовите метод "VIN по госномеру" (GET /gos2vin?plate=), затем передайте полученный VIN в /decode. Это два запроса: 8 ₽ и 1,6 ₽.
Платный ли запрос, если данных по VIN нет?
Нет. При success: 0, когда проверка не выполнена или данных нет, запрос бесплатный. Списание происходит при success: 1.
Как проверить интеграцию без затрат?
Используйте тестовый VIN X7TEST00000000001. Метод ответит образцом по своей схеме с полем "testMode": true, бесплатно и без пополнения. Нужен только токен из личного кабинета.
Проверка автомобилей через API
Без договора и долгих согласований: пополните баланс от 100 ₽ и проверяйте реальные машины. Тестовые значения бесплатно, документация с примерами на популярных языках.
Получить токен Документация API

