Назад

Процедура загрузки из 1с в битрикс по шагам, или как эмулировать 1с из браузера.

Главная
Блог
Процедура загрузки из 1с в битрикс по шагам, или как эмулировать 1с из браузера.

Интеграция 1С и Битрикс24 — важная задача для автоматизации учета товаров, заказов и клиентов. Однако иногда стандартный модуль обмена может не работать из-за ошибок конфигурации, проблем с сервером или особенностей данных. В таких случаях полезно знать, как вручную загрузить данные в Битрикс, минуя стандартный механизм.

Этот метод пригодится, если:

  • Нужно протестировать выгрузку перед настройкой автоматического обмена.
  • Стандартный обмен не работает, а исправление требует времени.
  • Требуется разовая загрузка данных без настройки полной синхронизации.

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

Зачем это нужно?

Ручная загрузка данных — это аварийный способ, но он помогает:

  • Быстро проверить корректность данных перед автоматизацией.
  • Загрузить товары и категории, если стандартный обмен "упал".
  • Избежать простоев в работе интернет-магазина при проблемах с 1С.

Важно! Этот метод не заменяет полноценную интеграцию, но выручит в критической ситуации.

Подготовка файлов для загрузки

Перед началом необходимо подготовить catalog.zip, который должен содержать:

  • import.xml — основной файл в формате CommerceML с данными о товарах, категориях и свойствах;

  • папку с изображениями (если есть), при этом в import.xml должны быть указаны корректные пути к картинкам.

Пример структуры import.xml

<КоммерческаяИнформация ВерсияСхемы="2.04">
    <Каталог>
        <Товары>
            <Товар>
                <Ид>123</Ид>
                <Наименование>Тестовый товар</Наименование>
                <Картинка>images/test.jpg</Картинка>
            </Товар>
        </Товары>
    </Каталог>
</КоммерческаяИнформация>

Пошаговая процедура загрузки

Шаг 1: Авторизация в системе

Перейдите по ссылке:
http://test.ru/bitrix/admin/1c_exchange.php?type=catalog&mode=checkauth

Ожидаемый ответ сервера:

PHPSESSID  
123456789  
PHPSESSID=123456789  
09.01.2018T10:10:10

Сохраните PHPSESSID, он понадобится для следующих шагов.

Шаг 2: Инициализация обмена

Перейдите по адресу:
http://test.ru/bitrix/admin/1c_exchange.php?type=catalog&mode=init&version=2

Ожидаемый ответ сервера:

zip=yes  
file_limit=10000  
PHPSESSID=123456789  
version=2

Шаг 3: Загрузка файла catalog.zip

Отправьте запрос:
http://test.ru/bitrix/admin/1c_exchange.php?type=catalog&mode=file&filename=catalog.zip

Ожидаемый ответ:

success

Действие:

  1. Перейдите в папку /upload/1c_exchange/

  2. Загрузите туда catalog.zip

  3. Убедитесь, что у папки есть права на запись (chmod 755 или 777 для тестирования).

Шаг 4: Запуск импорта

Выполните запрос:
http://test.ru/bitrix/admin/1c_exchange.php?type=catalog&mode=import&filename=catalog.zip

Сервер будет возвращать статусы вида:

progress Распаковка архива завершена.  
progress Временные таблицы созданы.  
progress Файл импорта прочитан.  

Повторяйте запрос, пока не получите success или failed.

Шаг 5–12: Обработка данных

После распаковки выполняйте запросы с mode=import и filename=import.xml:
http://test.ru/bitrix/admin/1c_exchange.php?type=catalog&mode=import&filename=import.xml

Этапы ответов сервера:

progress Временные таблицы удалены.  
progress Метаданные импортированы успешно.  
progress Группы импортированы.  
progress Товары обновлены.  

Итоговый ответ:

success Импорт успешно завершен.

Настройка прав и логирования

1. Права на папку /upload/1c_exchange/

Убедитесь, что веб-сервер имеет права на запись:

chmod 755 /upload/1c_exchange/  # для Linux

2. Включение логов обмена (если импорт не работает)

В Командной PHP-строке Битрикс выполните:

COption::SetOptionString("catalog", "export_log", "Y");  // Включает логирование

Возможные ошибки и их решение

Ошибка 1: "Failure Ошибка проверки источника запроса"

Выполните в Командной PHP-строке Битрикс:

COption::SetOptionString("catalog", "DEFAULT_SKIP_SOURCE_CHECK", "Y");  
COption::SetOptionString("sale", "secure_1c_exchange", "N");  

Важно! Это временное решение, после импорта верните настройки в исходное состояние.

Ошибка 2: Файл не читается после загрузки

  1. Убедитесь, что catalog.zip загружен в /upload/1c_exchange/.

  2. Проверьте структуру import.xml (должен быть в кодировке UTF-8).

  3. Убедитесь, что в import.xml указаны правильные пути к файлам (например, images/photo.jpg).

Заключение

Данный метод позволяет вручную загружать данные из 1С в Битрикс, если стандартный обмен не работает.
Рекомендации:
  • Проверяйте структуру import.xml перед загрузкой.
  • Включайте логирование при проблемах.
  • После отладки возвращайте настройки безопасности (secure_1c_exchange).
Нужен надежный исполнитель?
Разрабатываем сайты, выполняем миграцию на Битрикс, дорабатываем функционал, сопровождаем проекты, а также занимаемся поисковым продвижением и комплексным маркетингом
Получить консультацию
Читайте по теме
Все статьи
Нужен надежный исполнитель?
Разрабатываем сайты, выполняем миграцию на Битрикс, дорабатываем функционал, сопровождаем проекты, а также занимаемся поисковым продвижением и комплексным маркетингом
Получить консультацию
Все статьи