На данной странице описан протокол (алгоритм) процесса экспорта заказов с сайта на платформе komiz.io в систему бухгалтерского учета, например «1C».
signature
(см. далее). Значение данного ключа можно узнать зайдя в раздел Настройки / Другие настройки / Интеграция с системой бухгалтерского учета в панели управления сайтом. Данный ключ не должен передаваться третьим лицам.Процесс обмена данными происходит посредством двух обращений системы бухгалтерского учета к сайту:
Обращения происходят по адресу: http://site.domain/accounting-system/order-export/
, где вместо site.domain
используется домен панели управления синхронизируемого сайта.
В процессе первого обращения необходимо передать следующие параметры:
signature
- «подпись», формируемая как хэш секретного ключа, вычисляемый по алгоритму US Secure Hash Algorithm 1 (SHA1).type
- тип обращения. Для первого равно export
.time_zone
- временная зона, в которой будут интерпретироваться даты и время (например, Europe/Paris
). Список поддерживаемых временных зон. Если данный параметр не передается, то используется временная зона из настроек сайта.additionalFieldArray
- массив дополнительных полей, которые необходимо экспортировать. Значением каждого элемента массива является значение поля «Имя в интерфейсе» для определенного дополнительного поля. Если данный параметр не передать, то дополнительные поля не будут экспортированы.Если не возникло никаких ошибок на стороне сайта и передаваемые параметры корректны, то сайт выводит в поток содержимое XML файла со списком экспортируемых заказов.
Если возникла ошибка на стороне сайта либо передаваемые параметры некорректны, то сайт выводит в поток текст, в первой строке которого содержится failure
, а во второй - текст описания ошибки. Для разделения строк используется спецсимвол \n
.
После того, как системой бухгалтерского учета был получен XML файл со списком заказов, а также после того как они были обработаны, необходимо выполнить второй запрос к сайту.
В процессе данного обращения необходимо передать следующие параметры:
signature
- «подпись», формируемая как хэш секретного ключа, вычисляемый по алгоритму US Secure Hash Algorithm 1 (SHA1).type
- тип обращения. Для второго равно export_confirm
.session_id
- идентификатор сессии обмена данными с системой бухгалтерского учета. Значение данного параметра передается на первом этапе в XML файле в атрибуте sessionId
тега orders
. Это же значение необходимо передать на втором этапе.status
- статус операции. Если заказы успешно обработаны, то необходимо передать значение success
. В противном случае значением данного параметра может быть текст описания произошедшей ошибки.orderCodeArray
- массив кодов заказов. Если передать данный параметр, то только те заказы, чьи коды будут содержаться в данном массиве, будут отмечены сайтом как успешно переданные системе бухгалтерского учета. ВНИМАНИЕ! Данные действия производятся только в случае, если значение передаваемого параметра status
= success
.
Если не возникло никаких ошибок на стороне сайта и передаваемые параметры корректны, то, в зависимости от значения параметра status
происходит следующее.
status
равен success
, то сайт помечает переданные на первом этапе заказы, как успешно синхронизированные и при следующем обращении не будет их передавать.status
не равен success
, то сайт оповещает разработчиков платформы о данной ошибке.
В любом случае (т.е. не зависимо от значения параметра status
) сайт выводит в поток текст, в первой строке которого содержится success
, а во второй - текст дополнительного описания ответа. Для разделения строк используется спецсимвол \n
.
Если возникла ошибка на стороне сайта либо передаваемые параметры некорректны, то сайт выводит в поток текст, в первой строке которого содержится failure
, а во второй - текст описания ошибки. Для разделения строк используется спецсимвол \n
.
На рис. 1 приведено схематическое изображение протокола обмена данными описанного выше.