Выгрузка заказов с сайта в систему учета
1C (СБИС, МойСклад, то есть система учета, далее СУ).
Как правило, кроме загрузки и обновления каталога на сайте, требуется еще и выгружать заказы с сайта в СУ.
Настройка на стороне сайта производится в блоке «Обмен заказами с 1С».
Для того, чтобы базово включить выгрузку, то есть, чтобы сайт начал отдавать заказы на запрос из СУ, достаточно отметить чекбокс «Выгружать заказы».
Чуть ниже есть информация о том, какие заказы будут выгружены при следующем запросе из СУ, а также есть возможность посмотреть, содержимое, которое будет сформировано для СУ.
Ваша конфигурация может не принимать данные в utf-8, поэтому может потребоваться изменить кодировку, через пункт «Кодировка ответа».
При необходимости, вы можете ограничить нижний порог даты/времени создания заказов, чтобы не выгружать старые, даже если они изменятся. Или же, наоборот, сместить назад, дату/время последнего запроса, чтобы включить в состав выгрузки старые заказы.
Также, может потребоваться исключить из выгрузки заказы в каких-то статусах.
В ситуации, когда в заказах на сайте есть товары не только из СУ, может потребоваться следующая настройка, чтобы обеспечить совместимость.
Помимо этого, если у товара нет GUID из СУ, то в информацию о товаре автоматически попадут данные об артикуле, если он заполнен.
В узел «Валюта» выгружаемого заказа, по умолчанию записывается валюта первого типа цен или «руб», если данных по типам цен нет. При необходимости, вы можете включить поведение, чтобы значение валюты было получено из данных заказа.
В набор данных по реквизитам заказа, добавляются данные по способу оплаты, способу доставки, адресу доставки, текущему статусу, адресу плательщика и т.д.
Если заказ на сайте находится в статусе «Отменен», то реквизит «Отменен» выгружается со значением «true», а также реквизит «ПометкаУдаления» с аналогичным значением.
Пример XML сформированного по заказу
1. Основные данные и данные контрагента:
Если по какой-то причине вам требуется изменить содержимое основных данных, то есть таких узлов, как «Дата», «Время», «ХозОперация», «Роль» и т.д., то вы можете воспользоваться фильтром. Передаются 3 параметра, массив текущих основных данных, ID заказа и объект заказа.
Предположим, вы хотите изменить значение по узлу «ХозОперация» на другое, а также добавить какой-то свой кастомный узел с данными, значение для которого хранится в метаданных заказа.
Вполне возможно, вам может потребоваться модифицировать данные контрагента, то есть что-то добавить/изменить/удалить в содержимом «Контрагенты->Контрагент». Для решения задачи вы можете воспользоваться фильтром. Передаются 2 параметра, массив текущих данных контрагента, а также объект заказа.
Предположим, что мете заказа, также хранится ИНН контрагента и вам нужно его передать.
Контрагент — физ/юр
По умолчанию, контрагент всегда выгружается по данным, как физ. лицо. Если вам требуется деление на физ и юр лиц, то необходимо включить настройку:
При обработке данных о контрагенте, модуль в СУ решает юрлицо или нет, на основании отсутствии узла «ПолноеНаименование» и наличии узла «ОфициальноеНаименование».
Таким образом, при формировании данных по контрагенту, если включена настройка и в данных заказа заполнено стандартное поле компании «billing_company», то у контрагента не будет узла «ПолноеНаименование», а в «Наименование» и «ОфициальноеНаименование» попадет название компании, при этом указанные фамилия и имя будут выгружены, как представитель с отношением контактное лицо.
2. Данные по товарам:
3. Данные по реквизитам:
Если вам требуется модифицировать набор реквизитов заказа, то вы можете воспользоваться фильтром. Передаются 2 параметра, массив текущих реквизитов, где ключ это имя реквизита, а значение — значение реквизита, а также объект заказа.