ОКАТО-код — важная штука для бизнеса: без него и договор не составить, и перед налоговой не отчитаться.

С 2005 года мы перелопатили сотни миллионов кодов ОКАТО из баз заказчиков и теперь расскажем, о чем узнали. В статье: что такое код ОКАТО, что полезного можно из него достать и как мы проверяем корректность этого идентификатора.

Зачем нужен справочник и код ОКАТО

ОКАТО — это Общероссийский классификатор объектов административно-территориального деления. В нем хранятся данные о субъектах федерации, округах и районах, городах и селах. Сущности в классификаторе расставлены по старшинству: от субъектов федерации и далее по нисходящей.

Код же ОКАТО — это идентификатор объекта в справочнике. Он иерархичен и показывает, какое место занимает объект в административно-территориальной структуре страны.

Чем мельче объект, тем длиннее код
Чем мельче объект, тем длиннее код

По ОКАТО-коду ФНС определяет, в бюджет какой территории поступают налоги и платежи от ИП, предприятий и организаций. Любой адрес, по которому зарегистрировано юридическое или физическое лицо, привязан к своему коду.

Адрес: г Москва, Турчанинов пер, д 6 стр 2.
Код ОКАТО: 45 286 590 000.

В 2014 году у ОКАТО якобы появился преемник — ОКТМО. По задумке это тот же справочник территорий, но с муниципальным делением, а не административно-территориальным.

Однако реального обновления не случилось: кое-где в документах и отчетности ОКАТО действительно заменили на ОКТМО, но далеко не везде. С тех пор в стране живут оба справочника и оба типа кодов, по сути дублируя друг друга.

Поэтому без ОКАТО пока — никуда. Где только его не используют.

  • Центральный банк требует, чтобы банки включали в отчеты ОКАТО-коды местонахождения клиентов, банкоматов и терминалов;
  • Центробанк, считая статистику, с помощью ОКАТО группирует заемщиков и вкладчиков по территориям;
  • предприятия указывают коды в разного рода договорах (например, о переводе пенсии на счет в банке);
  • автовладельцы указывают ОКАТО-код получателя в платежке, когда оплачивают штрафы ГИБДД.

Разбираемся в формате

Длина кода ОКАТО — 2–11 символов в зависимости от уровня объекта. Часто, чтобы идентификаторы смотрелись аккуратно и целостно, «потерянные» разряды заполняют нулями.

ОКАТО-коды 45 000 000 000 и 45 равнозначны.

Код максимальной длины выглядит так: XX XXX XXX XXX.

В хвост иногда добавляют одинокостоящую цифру — контрольное число (КЧ). КЧ придумали как страховку: подставляешь цифры из ОКАТО-кода в специальную формулу, считаешь итог и сравниваешь с КЧ. Совпали — хорошо. Но мы контрольное число не используем и проверяем код по-другому. Возможно, Росстат и вовсе придумал КЧ для внутренних нужд.

Разберу формат кода ОКАТО подробнее.

Для примера прочитаю код 45 286 590 000.

Две цифры в начале обозначают регион, это верхний уровень административного деления. Регионы пронумерованы один за другим, список можно найти в открытых источниках. Коды регионов применяют, например, в паспортах — первые две цифры серии паспорта — это номер региона, где напечатали бланк.

45 286 590 000.
45 — это Москва. 80 — Башкортостан, 08 — Хабаровский край.

Третья, четвертая и пятая цифры отправляют нас на второй уровень иерархии — здесь закодированы автономные округа, районы, города́.

Третий символ обозначает тип объекта:

  • 1 — автономный округ;
  • 2 — район (в том числе внутригородской), округ;
  • 4 — город, поселок городского типа;
  • 5 — город, подчиняющийся субъекту, но находящийся в ведении федеральных органов.

А четвертая и пятая цифры ОКАТО-кода — собственно номер объекта. Номера́ порядковые, расшифровывать ничего не нужно.

45 286 590 000.
2 — внутригородской район или округ, 86 — его номер. 45 286 — это код Центрального административного округа Москвы.

Шестой, седьмой и восьмой цифрами кодируют объект третьего уровня: внутригородской район, город, поселок.

Шестая цифра обозначает тип объекта, все по лекалам предыдущего уровня:

  • 3 — внутригородской район, округ города;
  • 5 или 6 — город, поселок городского типа;
  • 8 или 9 — сельсовет.

Но здесь встречаются исключения, когда речь заходит об особенных объектах. Например, у городов федерального значения на третьем уровне цифра 5 означает административный район.

Седьмая и восьмая цифры — просто порядковый номер объекта.

45 286 590 000.
У Москвы и Питера на третьем уровне 5, но никаких городов и поселков городского типа здесь, естественно нет. У Москвы на третьем уровне административные районы. 5 — административный район, 90 — его номер. 45 286 590 — это код Хамовников.

Девятым, десятым и одиннадцатым символами кодируют сёла, деревни и поселки. На этом уровне обходятся без типа населенного пункта: все три разряда — просто цифры, без шифра.

Иногда сельский населенный пункт подчиняется напрямую объекту первого уровня — региону. Или второго уровня — какому-нибудь району. Тогда «лишние» разряды заполняют нулями.

Код ОКАТО села Чан-Ручей Мурманской области — 47 000 000 002

Увы, в формате ОКАТО-кодов полно исключений. Несколько я перечислил выше, а другие и объяснить сложно. Для сильных духом людей эти отступления от правил описали в официальном документе.

Если не брать исключения, вот как мы видим код ОКАТО Если не брать исключения, вот как мы видим код ОКАТО

Проверяем корректность (на самом деле нет)

Готовясь к статье, я вдоль и поперек изучил внутреннюю документацию — искал алгоритмы проверки ОКАТО в «Факторе». И нашел. Хороший такой алгоритм на восемь полновесных шагов. Проверил его, расписал понятным языком. А потом показал коллеге и узнал, что ОКАТО мы не проверяем уже лет семь.

Дело в том, что нет смысла проверять формат ОКАТО-кода по алгоритму. Проще взять идентификатор, что хранится у заказчика, и поискать его в эталонном справочнике ОКАТО. А вдобавок сравнить адрес, который у заказчика обязательно лежит в базе, с соответствующим коду адресом в ОКАТО. Вот и все.

Вдобавок софт регуляторов страхует от ошибок с ОКАТО. Правильные коды натурально вшиты в шаблоны отчетов, предполагающих территориальное деление, для Банка России, Росстата или Налоговой.

Поэтому этот раздел лишний — алгоритм проверки ОКАТО-кода не нужен. Чтобы подстраховаться, мы просто берем данные из базы заказчика и смотрим, есть ли что-то подобное в ОКАТО.