Автоматизация · 13 мин
Маппинг в 1С: что это такое и как его настроить
Маппинг в 1С — это сопоставление данных между системами. Разбираем, где применяется, как настроить соответствие полей и справочников, типичные ошибки и проверку результата.
Маппинг в 1С — это сопоставление (от англ. mapping — «отображение») данных одной системы данным другой системы. Когда 1С обменивается информацией с сайтом, CRM, банком, маркетплейсом или другой базой 1С, поля и справочники в этих системах называются по-разному и хранятся в разном виде. Маппинг описывает правила: какое поле откуда берётся, куда записывается и как преобразуется по пути.
Простой пример: на сайте товар называется «Картридж HP CF283A черный», а в 1С — «Картридж лазерный CF283A». У товара на сайте есть артикул «HP-283», а в 1С — код номенклатуры. Чтобы заказы с сайта попадали в 1С с правильными товарами, нужно один раз задать соответствие — смаппить позиции. Дальше обмен работает автоматически.
Маппинг встречается почти во всех интеграциях: обмен с интернет-магазином, загрузка банковских выписок, синхронизация с маркетплейсами (Ozon, Wildberries), обмен между конфигурациями 1С (например, УТ и БП), выгрузка данных в BI-системы. Без корректного маппинга обмен либо не работает, либо создаёт дубли, потерянные документы и неверные остатки.
Где конкретно применяется маппинг в 1С
Чаще всего с маппингом сталкиваются при обмене 1С с интернет-магазином. При выгрузке каталога на сайт сопоставляются наименования товаров, цены, остатки, характеристики и картинки. При загрузке заказов — статусы, способы доставки, данные покупателей. Если магазин работает на 1С-Битрикс, используется типовой модуль обмена, где маппинг полей настраивается в отдельной форме.
Вторая частая область — интеграция с маркетплейсами. У Ozon, Wildberries и Яндекс Маркета свои идентификаторы товаров, категории и атрибуты. Номенклатуру 1С нужно смаппить с карточками маркетплейса, иначе заказы будут падать в ошибки или создавать неопознанные позиции. Обычно соответствие задаётся через артикул, штрихкод или SKU.
Третья область — обмен между базами 1С: например, между «Управлением торговлей» и «Бухгалтерией предприятия». Здесь маппинг реализуется через правила конвертации данных (технология «Конвертация данных 2.0/3.0» или формат EnterpriseData). Сопоставляются справочники, документы, планы счетов и аналитика.
Отдельно стоит упомянуть загрузку банковских выписок и выгрузку платёжных поручений. Там маппинг минимальный и встроен в типовые механизмы обмена с клиент-банком, но при нестандартных форматах файлов его тоже приходится дорабатывать.
Модуль обмена с сайтом, CommerceML
Соответствие по артикулу или штрихкоду
Конвертация данных, EnterpriseData
Типовой обмен с клиент-банком
Что именно сопоставляется при маппинге
Маппинг работает на нескольких уровнях, и важно понимать разницу между ними. Первый уровень — маппинг полей: какое поле источника в какое поле приёмника записывается. Например, поле «phone» из заказа с сайта записывается в реквизит «Телефон» контрагента, а «delivery_address» — в «Адрес доставки» документа «Заказ покупателя».
Второй уровень — маппинг справочников. Это сопоставление целых объектов: номенклатуры, контрагентов, складов, договоров. Здесь ключевое значение имеет правило поиска: по какому реквизиту система понимает, что объект уже существует. Обычно это код, артикул, ИНН + КПП, GUID или внешний идентификатор.
Третий уровень — маппинг значений перечислений и статусов. Статус заказа на сайте «Оплачен» должен превратиться в конкретный статус в 1С, а способ оплаты «card_online» — в вид оплаты «Безналичная». Такие соответствия задаются таблицей: значение с одной стороны — значение с другой.
Четвёртый уровень — преобразование данных. Иногда значение нельзя перенести напрямую: дату нужно привести к формату, строку обрезать, цену пересчитать по курсу, ФИО разбить на три поля. В конвертации данных для этого пишутся обработчики на встроенном языке, в модулях обмена — свои алгоритмы.
Как настроить маппинг: общий порядок действий
Независимо от того, настраиваете вы обмен с сайтом, маркетплейсом или другой базой, логика действий одинаковая. Сначала нужно проанализировать обе системы: выписать, какие данные должны передаваться, в каком направлении и с какой периодичностью. На этом этапе полезно составить таблицу соответствий на бумаге или в Excel — она станет техническим заданием для настройки.
Затем определяются ключи связи — уникальные идентификаторы, по которым объекты будут сопоставляться. Для номенклатуры это обычно артикул или штрихкод, для контрагентов — ИНН и КПП, для документов — номер и дата в связке с организацией. Ключ должен быть заполнен и уникален в обеих системах, иначе маппинг будет нестабильным.
После этого настраивается само соответствие: в типовом модуле обмена — через формы настройки, в конвертации данных — через правила конвертации объектов и свойств, в самописной интеграции — через код обработки. Завершающий этап — тестовый обмен на копии базы и проверка результата.
- 1Составьте список передаваемых данных и направлений обмена
- 2Выпишите соответствие полей и справочников двух систем в таблицу
- 3Определите ключи поиска: артикул, ИНН, GUID, номер документа
- 4Настройте соответствия в модуле обмена или правилах конвертации
- 5Выполните тестовый обмен на копии базы
- 6Проверьте дубли, незаполненные поля и ошибки загрузки
- 7Запустите обмен в рабочей базе и понаблюдайте первые циклы
Маппинг при обмене с сайтом: практический пример
Рассмотрим типовой сценарий: выгрузка товаров из 1С на сайт и загрузка заказов обратно. В настройках обмена с сайтом (в УТ, КА или ERP это узел обмена с сайтом) задаётся, какие товары выгружать, по каким ценам и с какими остатками. Соответствие товаров при загрузке заказов ищется по уникальному идентификатору, который 1С передала на сайт при выгрузке каталога.
Если товар был создан на сайте вручную и идентификатора из 1С у него нет, при загрузке заказа позиция не найдётся. Для таких случаев в настройках предусмотрен поиск по артикулу или наименованию, либо создание новой номенклатуры. Первый вариант надёжнее: создание «на лету» быстро захламляет справочник позициями с названиями с сайта.
Контрагенты из заказов сопоставляются по телефону, email или ИНН — в зависимости от настроек. Здесь частая проблема: один и тот же покупатель оформляет заказы с разными email, и в 1С плодятся дубли контрагентов. Практичное решение — грузить розничных покупателей на одного обобщённого контрагента «Покупатель интернет-магазина», а реквизиты хранить в дополнительных сведениях заказа.
Маппинг при обмене между базами 1С
Обмен между конфигурациями, например УТ 11 и БП 3.0, в типовом варианте работает через формат EnterpriseData или правила конвертации. Правила конвертации — это XML-файл, где описано, как объект источника превращается в объект приёмника: правила конвертации объектов (ПКО), свойств (ПКС) и значений (ПКЗ).
Для редактирования правил используется конфигурация «1С:Конвертация данных». В ней можно изменить маппинг отдельных полей, добавить обработчики, задать условия выгрузки. Например, можно настроить, чтобы из УТ в БП выгружались только проведённые документы реализации, а поле «Комментарий» дополнялось номером заказа.
Ключевой момент при обмене между базами — синхронизация по GUID (уникальному идентификатору объекта). Если обмен настроен с нуля и базы заполнялись независимо, одинаковые объекты имеют разные GUID. Поэтому первый обмен выполняют с поиском по реквизитам (наименование, ИНН, код), а уже после сопоставления объекты связываются идентификаторами.
Перед первым обменом между базами полезно провести нормализацию справочников: закрыть явные дубли контрагентов и номенклатуры, заполнить ИНН и артикулы. Чем чище данные до первого обмена, тем меньше ручного сопоставления потребуется после.
Типичные ошибки и их последствия
Самая распространённая ошибка — ненадёжный ключ поиска. Если контрагенты ищутся по наименованию, любое расхождение в написании («ООО Ромашка» и «ООО \"Ромашка\"») создаёт дубль. Надёжные ключи — ИНН+КПП для юрлиц, артикул или штрихкод для товаров, GUID там, где базы синхронизированы изначально.
Вторая ошибка — неполный маппинг обязательных полей. Если в приёмнике у документа обязателен реквизит «Склад», а в маппинге он не задан, документ либо не запишется, либо запишется с пустым складом и сломает проведение. Перед запуском нужно сверить обязательные реквизиты приёмника с настроенными соответствиями.
Третья ошибка — игнорирование различий в единицах измерения, валютах и ставках НДС. Цена «за упаковку» на сайте и «за штуку» в 1С, рубли и условные единицы, НДС 20% и «Без НДС» — всё это требует явного преобразования в маппинге, иначе суммы документов будут неверными.
Как проверить, что маппинг настроен правильно
Проверка начинается с контрольного примера: возьмите 3–5 реальных объектов каждого типа (товар, контрагент, заказ) и проследите их путь через обмен. Сравните значения полей в источнике и приёмнике: наименование, код, цены, суммы, статусы. Все критичные поля должны совпадать или осознанно отличаться согласно правилам преобразования.
Второй шаг — анализ журнала обмена. Типовые модули обмена пишут протокол: сколько объектов загружено, сколько создано новых, какие ошибки возникли. Большое количество «создано новых» там, где объекты должны были найтись, — верный признак проблемы с ключом поиска.
Третий шаг — поиск дублей после тестового обмена. В 1С есть типовая обработка «Поиск и удаление дублей» — прогоните её по справочникам номенклатуры и контрагентов. Если дублей много, маппинг нужно дорабатывать до запуска в продуктив.
Как проверить результат
Новые объекты создаются только для реально новых позиций
Массовое создание дублей существующих товаров или контрагентов
Документы проводятся, все обязательные реквизиты заполнены
Документы записаны, но не проводятся из-за пустых полей
Суммы в 1С совпадают с источником с учётом правил пересчёта
Расхождения из-за единиц измерения, валют или НДС
Обработка поиска дублей ничего не находит
Десятки однотипных контрагентов или товаров
Когда типового маппинга недостаточно
Типовые модули обмена закрывают стандартные сценарии, но есть ситуации, где нужна доработка. Это нестандартная структура данных (самописная CRM, редкий формат выгрузки), сложные правила преобразования (разбор составных полей, расчёт значений на лету), а также требования к производительности при больших объёмах.
В таких случаях есть три пути. Первый — доработка правил конвертации в «1С:Конвертация данных»: подходит для обменов между базами 1С и не требует изменения конфигураций. Второй — доработка модуля обмена или написание собственной обработки загрузки/выгрузки: гибче, но требует разработчика. Третий — использование готовых интеграционных решений и шин данных, если обменов много и они разнородные.
Как выбрать подход
Частые вопросы о маппинге в 1С
Чем маппинг отличается от синхронизации?
Синхронизация — это процесс обмена данными между системами, а маппинг — часть её настройки: правила соответствия полей и объектов. Можно сказать, что маппинг отвечает на вопрос «что куда переносить», а механизм синхронизации — «когда и как часто это делать».
Можно ли настроить маппинг без программиста?
Базовые соответствия в типовых модулях обмена с сайтом или маркетплейсом настраиваются через формы и доступны опытному пользователю или консультанту. Но правила конвертации данных, обработчики и нестандартные преобразования требуют навыков разработки на встроенном языке 1С.
Почему после обмена появляются дубли контрагентов?
Почти всегда причина в ненадёжном ключе поиска: сопоставление по наименованию или по полю, которое заполнено не у всех объектов. Настройте поиск по ИНН и КПП для юридических лиц, а для физических лиц — по телефону или email, и перед обменом очистите существующие дубли.
Что делать, если у товара на сайте и в 1С разные названия?
Разные наименования — нормальная ситуация: маппинг должен идти не по названию, а по стабильному идентификатору — артикулу, штрихкоду или GUID, который 1С передаёт на сайт при выгрузке. Наименование же можно выгружать в отдельное поле «Наименование для сайта», не меняя рабочее название в 1С.
Нужно ли заново настраивать маппинг после обновления конфигурации?
Настройки обмена и сопоставленные объекты хранятся в базе и при штатном обновлении сохраняются. Но если обновление меняет структуру метаданных или версию модуля обмена, стоит проверить обмен на копии: иногда правила конвертации нужно обновить вместе с конфигурацией.
Как понять, что проблема именно в маппинге, а не в самом обмене?
Если соединение работает, файлы или сообщения передаются, но данные попадают не в те поля, создаются дубли или документы не проводятся — это проблема маппинга. Если же обмен не запускается, файлы не формируются или возникают ошибки соединения — проблема в транспорте, а не в соответствиях.
Что важно запомнить
Маппинг в 1С — это правила соответствия данных при обмене между системами: полей, справочников, статусов и значений. Ключ к стабильному обмену — надёжные идентификаторы поиска, полный маппинг обязательных полей и обязательное тестирование на копии базы. Большинство проблем — дубли и неверные суммы — возникают из-за слабого ключа поиска и отсутствия преобразований.