Интеграция 1С-Битрикс с КЛАДР: импорт, поиск, маппинг на ФИАС

Ручной ввод адресов в интернет-магазине на 1С-Битрикс приводит к ошибкам, дублям и сбоям доставки, особенно когда учётная система работает с КЛАДР, а сайт — с ФИАС. Мы разрабатываем и внедряем интеграцию, которая синхронизирует справочники и обеспечивает корректное автодополнение. Наша команда реализует проект под ключ — от настройки импорта до маппинга и последующей поддержки.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Интеграция 1С-Битрикс с КЛАДР: импорт, поиск, маппинг на ФИАС
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1532
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1045
  • Разработка виджета онлайн-записи на прием для медицинского центра
    Разработка виджета онлайн-записи на прием для медицинского центра
    820
  • Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    915
  • Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    853
  • Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1208

Интеграция 1С-Битрикс с КЛАДР

При разработке интернет-магазина на 1С-Битрикс рано или поздно возникает задача автодополнения адреса. Клиенты вводят город и улицу вручную — ошибки, дубли, отказы доставки. Мы регулярно сталкиваемся с ситуацией, когда учётная система 1С:Предприятие использует КЛАДР, а на сайте подключён ФИАС через DaData. Адреса не сходятся, заказы зависают. В этой статье разберём, как правильно встроить КЛАДР в Битрикс и обеспечить бесшовный обмен с 1С.

Почему КЛАДР всё ещё актуален?

КЛАДР — классификатор адресов РФ, поддерживаемый ФНС. Ранее он был основным стандартом. Сейчас большинство новых систем перешли на ФИАС, но legacy-инфраструктура в 1С и отчётность в ФНС по-прежнему требуют КЛАДР-код. Если у вас интернет-магазин на Битриксе, интегрированный с 1С, игнорировать КЛАДР нельзя.

Когда нужна интеграция с КЛАДР, а не с ФИАС?

  • Учётная система клиента — 1С:Предприятие версии 8.3.14 и ниже, оперирующая КЛАДР-кодами.
  • Обмен с ФНС в форматах, требующих код КЛАДР.
  • Транспортные компании (СДЭК, Почта России), которые ещё не перешли на ФИАС.
  • Импорт старой базы адресов, где все записи — в КЛАДР-формате.

Если таких ограничений нет — смело используйте ФИАС, он поддерживается официально и точнее. Но для гибридных сценариев нужен маппинг КЛАДР ↔ ФИАС.

Характеристика КЛАДР ФИАС
Глубина 5 уровней (регион, район, город, н.п., улица) 7+ уровней (добавлены здания, квартиры)
Код 11-13 знаков GUID (AOGUID) + КЛАДР-код в поле CODE
Обновления Раз в квартал Ежедневно
Поддержка ФНС Да, legacy Да, актуальный

Структура КЛАДР

КЛАДР-код — 11-значное число или 13-значное (с признаком актуальности). Структура:

ПП РРРРР ГГГ РРР УЛИЧУ 2 5 3 3 4 = 17 символов (с дополнениями) 
  • ПП — код субъекта РФ (регион).
  • РРРРР — код района.
  • ГГГ — код города.
  • РРР — код населённого пункта.
  • УЛИЧУ — код улицы.

Файлы базы КЛАДР скачиваются с сайта ФНС (fias.nalog.ru — там же, раздел КЛАДР). Формат — DBF-файлы. Источник: fias.nalog.ru

Импорт КЛАДР в MySQL/PostgreSQL

# Конвертация DBF → SQL через утилиту dbf2sql или Python
python3 -c "
import dbf, csv
table = dbf.Table('KLADR.DBF')
table.open()
for record in table:
    print(','.join([str(f) for f in record]))
table.close()
" > kladr.csv

После импорта в таблицу kladr_objects создаём индексы по коду и родительскому коду для быстрого поиска.

Поиск по КЛАДР в Битриксе

function searchKladrCities(string $regionCode, string $cityName): array {
    $connection = \Bitrix\Main\Application::getConnection();
    $name = $connection->getSqlHelper()->forSql(mb_strtolower($cityName));
    $sql = "
        SELECT CODE, NAME, SOCR
        FROM kladr_objects
        WHERE CODE LIKE '{$regionCode}%'
        AND LENGTH(CODE) = 13 -- уровень города
        AND LOWER(NAME) LIKE '%{$name}%'
        AND STATUS = '1' -- актуальные записи
        LIMIT 20
    ";
    // ...
}

Этот метод возвращает список городов, чей код начинается с кода региона. Используем в компоненте автодополнения.

Маппинг КЛАДР ↔ ФИАС

Поскольку современные системы используют ФИАС, а legacy — КЛАДР, часто нужна таблица соответствия. В базе ФИАС есть поле CODE — это и есть КЛАДР-код. Таблица ADDROBJ содержит оба идентификатора: AOGUID (ФИАС) и CODE (КЛАДР).

// Получить КЛАДР-код по ФИАС GUID
$sql = "SELECT CODE FROM fias_ADDROBJ WHERE AOGUID = '" . $fiasGuid . "'";

Таблица соответствия решает проблему расхождения адресов при обмене с 1С.

Автодополнение адреса через DaData с КЛАДР-кодом

DaData в ответе подсказки возвращает и kladr_id, и fias_id. Если нужен именно КЛАДР:

$("#address").suggestions({
  token: dadataToken,
  type: "ADDRESS",
  onSelect: function(suggestion) {
    const d = suggestion.data;
    $("#kladr-id").val(d.kladr_id);
    $("#fias-id").val(d.fias_id);
    // Сохраняем оба — для разных downstream-систем
  }
});

Хранить оба идентификатора — правильная практика при миграции с КЛАДР на ФИАС.

Передача в 1С:Предприятие

При синхронизации заказов с 1С:Предприятие через CommerceML или прямой REST-обмен адрес передаётся в формате, который 1С распознаёт. Если версия 1С старая (до 8.3.14) — она принимает КЛАДР-коды. Передаём kladr_id из поля заказа вместе со строковым адресом.

Как мы реализуем интеграцию КЛАДР в Битрикс

  1. Анализ текущей схемы адресов: какие поля хранятся, какие идентификаторы использует 1С.
  2. Импорт базы КЛАДР (последняя версия с сайта ФНС) в отдельную таблицу kladr_objects.
  3. Создание REST-эндпоинтов для поиска по иерархии: регионы → города → улицы.
  4. Маппинг существующих адресов (если есть) на КЛАДР-коды через открытые данные ФИАС.
  5. Интеграция с DaData или другим сервисом автодополнения с сохранением КЛАДР-кода в заказе.
  6. Настройка обмена с 1С: в CommerceML добавляем поле kladr_id.
  7. Тестирование на боевых данных — проверка, что все адреса из 1С корректно маппятся.

На одном из проектов мы делали интеграцию для сети магазинов с 50 000 адресов. База КЛАДР заняла около 2 ГБ после индексации. Поиск города по первым символам выполнялся за 0.02 секунды.

Что входит в нашу работу

  • Импорт и настройка базы КЛАДР на вашем сервере.
  • REST API поиска по адресу с фильтрацией по родительскому коду.
  • Таблица соответствия КЛАДР ↔ ФИАС для бесшовной работы с современными сервисами.
  • Интеграция с 1С: настройка обмена адресными реквизитами.
  • Документация по использованию API и поддержка после внедрения.

Сроки и стоимость

Трудозатраты зависят от объёма legacy-данных:

Задача Оценка (ч.)
Импорт базы КЛАДР 4–6
Создание эндпоинтов поиска 6–8
Маппинг КЛАДР ↔ ФИАС 3–4
Интеграция с 1С 4–8

Стоимость рассчитывается индивидуально после аудита вашей системы. Оценим проект за один день — свяжитесь с нами.

Связаться — напишите в Telegram или оставьте заявку на сайте. Мы ответим в течение часа.