Pugofka / Tools / Проверки
Проверка CommerceML
Проверьте XML обмена 1С и Битрикса: корневой элемент, версию, товары и предложения.
Когда пригодится проверка commerceml
CommerceML используется для передачи каталога, предложений и документов между учётной системой и сайтом. Импорт нередко падает из-за битого XML, отсутствующего корневого элемента, пустого Ид или повторяющихся идентификаторов. Локальная проверка позволяет отделить такие очевидные ошибки файла от проблем прав доступа, таймаутов и логики приёма в Битриксе. Вставьте import.xml или offers.xml; инструмент определит встречающиеся секции, версию схемы и число товаров и предложений.
Идентификатор Ид связывает объект учётной системы с записью сайта, поэтому дубль в одном потоке обмена нужно расследовать. Проверьте, повторяется ли товар внутри одного каталога, пришёл ли вариант товара в пакете предложений и не смешаны ли данные нескольких выгрузок. Перед исправлением сохраните исходный файл и журнал импорта. Если файл большой, выберите несколько проблемных записей и воспроизведите ошибку на тестовой среде. Полная совместимость зависит от версии обмена, настроек 1С и обработчика Битрикса.
Как пользоваться: проверка commerceml
Вставьте import.xml или offers.xml. Проверка ищет тип документа, Ид товаров и предложений, а также повторы.
Начните с кнопки «Вставить пример», чтобы увидеть ожидаемый формат ввода. Затем замените демонстрационные значения своими данными в полях «Исходные данные». Нажмите «Получить результат». Если формат неверный, инструмент покажет ошибку на русском языке; исправьте исходные данные и повторите действие.
Готовый результат можно скопировать одной кнопкой или скачать в файл commerceml-report.txt. Проверьте итог перед публикацией на рабочем сайте: инструмент видит только переданные ему данные и не знает особенностей вашего проекта. Для больших выгрузок удобно сначала обработать небольшой фрагмент и убедиться, что структура результата подходит дальнейшему процессу.
Пример входных данных и результата
Два товара с одним Ид будут отмечены как дубли.
<?xml version="1.0"?><КоммерческаяИнформация ВерсияСхемы="2.10"><Каталог><Ид>catalog-1</Ид><Товары><Товар><Ид>sku-1</Ид><Наименование>Товар</Наименование></Товар></Товары></Каталог></КоммерческаяИнформация>
Пример показывает форму исходных данных. Результат создаётся только после запуска виджета, поэтому вы можете изменить пример и сразу увидеть, как это влияет на вывод. Если вы работаете с клиентским сайтом, используйте обезличенный образец для первой проверки, затем переходите к полному файлу.
Какие ошибки проверить вручную
Диагностика структуры не является полной XSD-валидацией и не подтверждает успешный импорт в конкретную конфигурацию 1С или Битрикса.
Технически корректный результат ещё не означает, что он подходит бизнес-логике сайта. Например, URL может быть синтаксически верным, но вести на удалённую страницу; XML может быть хорошо сформированным, но не соответствовать настройкам конкретной площадки. После автоматической проверки откройте итог в целевой системе или браузере и сравните его с ожидаемым поведением.
Если инструмент сообщает об ошибке, начните с названного поля или строки. При обработке файлов проверьте кодировку, переносы строк, кавычки и спецсимволы. Они часто попадают в данные при экспорте из Excel, CMS или интеграции и могут менять смысл результата.
Практические ограничения и следующий шаг
Инструмент намеренно не объявляет файл полностью валидным по схеме: это только синтаксис XML и выбранные структурные проверки. Для строгой проверки нужен соответствующий XSD конкретной версии CommerceML и правила обмена вашего проекта. После устранения дублей повторите пробный импорт, сравните количество товаров, предложений и цен до и после, затем проверьте, не появились ли пропавшие SKU. Не загружайте в форму файл с паролями или токенами; обработка идёт локально, но исходные данные всё равно остаются на вашем устройстве.
Для повторяющихся задач сохраните входной пример и ожидаемый результат как проверочный сценарий. После обновления сайта или формата данных прогоните его снова: небольшое изменение шаблона экспорта иногда меняет поведение без явной ошибки. Если результат используется в производственной системе, проверьте не только синтаксис, но и последствия на нескольких реальных записях. При публикации конфигурации или метатегов сравните исходный HTML и ответ сервера с тем, что вы видите в форме.
Как применить результат: проверка commerceml
CommerceML часто приходит несколькими файлами: классификатор, каталог, пакет предложений. Не ожидайте, что один offers.xml обязательно содержит все сведения о товаре. Проверяйте каждый файл отдельно и сопоставляйте Ид между ними. Повтор идентификатора товара внутри каталога подозрителен; одинаковый текстовый Ид товара и предложения в разных типах элементов может быть допустимым, поэтому анализатор не смешивает их в одну группу дублей. Если импорт падает только на части каталога, выделите соответствующие элементы и воспроизведите проблему на копии данных.
После проверки синтаксиса сравните ожидаемое число товаров и торговых предложений с фактическим числом созданных записей в Битриксе. Расхождение может быть вызвано настройками инфоблока, свойств, прав или сопоставления цен, даже если XML корректен. Не исправляйте выгрузку вручную и не запускайте полный импорт на проде без резервной копии. Лучше найти место, где 1С формирует ошибочный идентификатор или Битрикс неверно сопоставляет его, затем повторить обмен на тестовом стенде и сохранить журнал результатов.
Проверка перед публикацией
Сохраните исходный пример и результат рядом с задачей, чтобы при следующем обновлении можно было повторить проверку. Откройте итоговый файл в целевой системе и сравните не только отсутствие ошибки, но и число обработанных записей, конечные адреса, отображение кириллицы и поведение на мобильном экране, если результат используется в интерфейсе. Для конфигурации сервера сначала примените изменения на тестовом окружении и выполните запрос к реальному URL. Для данных каталога выберите несколько контрольных SKU с разными ценами и остатками. Если расхождение найдено, исправляйте источник данных или шаблон генерации, а не только один скачанный файл. Так следующая автоматическая выгрузка не вернёт проблему.
Приватность и обработка в браузере
Поля этого инструмента обрабатываются в вашем браузере. Содержимое не отправляется на сервер Pugofka, а локальный файл читается только после вашего выбора. Для XML определяется кодировка из объявления или BOM; при отсутствии подсказки сначала пробуется UTF-8, затем Windows-1251. Виджет скрыт от записи содержимого в Вебвизоре; в Яндекс Метрику передаются slug инструмента и тип действия — открытие, первое взаимодействие, запуск, получение результата, копирование или скачивание.
При копировании данные попадают в системный буфер обмена устройства, где их могут видеть другие приложения с соответствующим доступом. Если исходник содержит секреты или персональные данные, очистите поле после работы. Скачанный файл остаётся на устройстве, в выбранной браузером папке загрузок.
Что делать после проверки
Используйте результат как рабочий черновик: вставьте его в конфигурацию, страницу или документ и повторно проверьте там, где он будет применяться. Если вы меняете индексируемые страницы, обновите связанные ссылки и карту сайта. Для миграции URL дополнительно запустите сетевую проверку редиректов, чтобы увидеть фактические HTTP-ответы после публикации.
Если задача связана с каталогом, импортом или поддержкой интернет-магазина, команда Pugofka может помочь встроить такую проверку в регулярный обмен данными и исправить источник ошибок. Одноразовая онлайн-утилита полезна для диагностики, а постоянный поток данных обычно требует автоматической проверки на стороне проекта.
Частые вопросы
- Как начать работу с «Проверка CommerceML»?
- Нажмите «Вставить пример», посмотрите формат полей, затем замените пример собственными данными и нажмите «Получить результат». Для файла используйте загрузку рядом с текстовым полем. Если увидите сообщение об ошибке, исправьте указанное поле и запустите инструмент снова.
- Можно ли скачать результат?
- Да. После успешной обработки появится кнопка скачивания файла commerceml-report.txt. Кнопка создаёт файл в браузере, поэтому данные не отправляются на сервер. Если нужно вставить итог в редактор или CMS, воспользуйтесь кнопкой копирования.
- Отправляются ли введённые данные на сервер?
- Нет. Обработка этого инструмента выполняется на устройстве посетителя. Даже при загрузке локального файла его содержимое читается браузером для обработки на странице. В аналитические события не включаются введённые значения, адреса и содержимое результата.
- Что означает сообщение об ошибке?
- Обычно исходные данные не соответствуют ожидаемому формату. Проверьте поля «Исходные данные», кавычки, разделители и адреса. Вернитесь к встроенному примеру, чтобы сравнить структуру своего ввода с рабочим образцом.
- Есть ли ограничение на размер файла?
- Виджет принимает локальный текстовый файл размером до 5 МБ. Большой файл лучше разбить на части: это уменьшает нагрузку на браузер и упрощает поиск конкретной ошибочной строки. Если файл бинарный, его следует открыть в подходящем приложении, а не вставлять как текст.
- Можно ли использовать результат сразу на рабочем сайте?
- Сначала проверьте его на тестовой странице или небольшом фрагменте данных. Диагностика структуры не является полной XSD-валидацией и не подтверждает успешный импорт в конкретную конфигурацию 1С или Битрикса. Итог может быть синтаксически верным, но не учитывать особенности вашего сервера, CMS или обмена данными.
- Будет ли результат доступен после перезагрузки страницы?
- Нет. Введённые данные и результат хранятся в состоянии открытой страницы. Скопируйте или скачайте итог до обновления вкладки. Такой подход также снижает риск случайного хранения чувствительных данных на общем устройстве.
- Чем эта проверка отличается от проверки опубликованного сайта?
- Локальный инструмент работает с тем, что вы вставили или загрузили. Он не делает запросы к внешнему сайту и не подтверждает, что опубликованная страница или файл совпадают с вашим образцом. После применения изменений отдельно проверьте фактический ответ сервера.
Нужна помощь с сайтом?
Поможем разобраться с технической задачей и оценить её решение.