#Обмен данными

Раздел настройки синхронизации с 1С и МойСклад на стороне магазина.

#Обмен данными

#Обмен с сайтом

В разделе Настройки → Обмен данными настраиваются параметры связи с 1С/МойСклад на стороне магазина.

Выберите, какие данные нужно забирать из 1С/МойСклад в магазин при синхронизации, например, не нужно синхронизировать описание товара.

Если вы обрабатываете заказы в админпанели, можно указать, что для 1С/МойСклад нужно забирать заказы из магазина только с определенным статусом заказа, а не сразу все:

Если структура каталогов 1С отличается от нужной вам структуры магазина, нужно сначала выгрузить товары в магазин, и после экспорта из 1С, поменять структуру папок, как хотите.

Чтобы, при очередной выгрузке из 1С, структура не поменялась, снимите галочку ☑️ Родительская категория. При следующей синхронизации, товары останутся там, где вы их определили в магазине.

Если после этого выгружаете еще новые товары, то они попадут в папку Неопределенные - Загруженные из CRM.

Подробно описано тут.

#Настройка CommerceML

Поддерживается обмен данными по стандарту CommerceML, используемый популярными CRM системами и типовым обменом с 1С.

#Обмен информацией

⏬️ Загружается из учетной системы

  1. Наименование товара.
  2. Категория.
  3. Описание товара.
  4. Артикул.
  5. Остатки на складах. По умолчанию выгружаются общие остатки. Если складов несколько, заведите склады в PHPShop в меню Настройки - Склады и укажите в них внешний код из учетной системы.
  6. Цены (до 5 цен).
  7. Характеристики. Для загрузки характеристик следует включить галочку Характериcтики и свойства в настройках Обмен данными. Если нужно загружать только определенные характеристики, то следует заполнить поле Блокировка характеристик - указать через запятую ненужные характеристики.
  8. Модификации.
  9. Изображения.
  10. Вес.
  11. Единица измерения.
  12. Габариты (длина / ширина / высота)

⏫️ Выгружается из магазина

  1. Номенклатура
  2. Новые заказы.
  3. Статусы заказов. Придумайте Код статуса на сайте и пропишите его в настройке Обмена на стороне учетной системы:

#Настройка

  1. Выберите тип Авторизации. Авторизация может происходить по логину и паролю или по имени файла. Тип авторизации выбирается в поле Авторизация.

На сайте ядро PHP должно работать в режиме модуля Apache. В режиме CGI/Fast CGI авторизация по протоколу Basic HTTP Authentication не поддерживается, используйте авторизацию в режиме имя файла.

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

  1. Адрес магазина - https://имя_сайта/1cManager/
  2. Логин - логин администратора магазина
  3. Пароль - пароль администратора магазина
  4. При нажатии кнопки Проверить соединение происходит проверка соединения.

Настройка подключения в МойСклад

Секретное имя файла задается в поле Имя файла, например secretcml. На стороне учетной системы для настройки обмена информацией следует указать:

  1. Адрес магазина - https://имя_сайта/1cManager/secretcml.php
  2. Логин - пусто или любое значение
  3. Пароль - пусто или любое значение
  4. При нажатии кнопки Проверить соединение происходит проверка соединения.

Для авторизации CML по имени файла у администратора должны быть права доступа по API и сформирован токен.

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

Теперь, после повторного входа, вы увидите Токен:


  1. Укажите, что будет загружено в качестве Артикула на сайт. (Если в учетной системе используются артикулы, и они есть у каждого товара, то рекомендуется использовать ключ Артикул.)
  2. Выберите, что загружать из учетной системы: товары, категории, фото.
  3. Если нужно выключить на сайте товары, отсутствующие в учетной системе, проставьте эту опцию:

Выберите, что загружать из учетной системы: товары, категории, фото

  1. Выберите Обработка измененных данных если из учетной системы выгружаются только измененные данные. При использовании подтипов товаров эту настройку лучше выключить из-за возможного расхождения данных в цене и остатке главного товара.
  2. Цены. Из учетной системы можно выгрузить до 5 видов цен, которые можно сопоставить с ценами на сайте Цена, Цена 2, Цена 3, Цена 4 и Цена 5 (заполняются в карточке товара). Сопоставление цен происходит в настройке Обмен данными на сайте по внешнему коду цены. При отсутствии сопоставления цен, они будут загружены в порядке присутствия в файле выгрузки друг за другом (Цена - Цена 5).
  1. Блокировка - заблокируйте ненужные характеристики у товаров, отдельные товары.

#Отладка

При включенной опции Журнал соединений ведется журнал обмена информацией по протоколу CommerceML, доступный в папке 1cManager/log/cml_дата.log

==== 22-11-22 14:11:49=====
IN: /1cManager/cml.php?type=catalog&mod=checkauth
OUT: success
CommerceMLLoader
ang7sbb11su9dap279b27ta4igeie0b7
sessid=ang7sbb11su9dap279b27ta4igeie0b7
timestamp=1669115509

==== 22-11-22 14:11:49=====
IN: /1cManager/cml.php?type=catalog&mod=init
OUT: zip=no
file_limit=104857600
sessid=ang7sbb11su9dap279b27ta4igeie0b7
version=2.04

==== 22-11-22 14:11:49=====
IN: /1cManager/cml.php?type=catalog&mod=file&filename=goods.zip
OUT: success

==== 22-11-22 14:11:49=====
IN: /1cManager/cml.php?type=catalog&mod=import&filename=import.xml
OUT: success

Обмен с CommerceML требователен к ресурсам хостинга. Для работы с ним следует использовать профессиональный тариф для интернет-магазинов на хостинге. Особое внимание нужно обратить на параметры PHP memory_limit и upload_max_filesize.

Обмен с CommerceML доступен для версии PHPShop 6.1.3 и выше.