Главная » IS-Kiosk » Интеграция сторонних систем в IS-Kiosk » 1С в IS-Kiosk » Описание формата обмена данными с 1С в IS-Kiosk » 2.2 - Отправка данных об оформляемом заказе с помощью web-сервиса (1C)
Назад

2.2 - Отправка данных об оформляемом заказе с помощью web-сервиса (1C)

Номер статьи: 0000408

2.2  Отправка данных об оформляемом заказе с помощью web-сервиса

2.2.1        Общее описание

Web-сервис должен быть развёрнут со стороны back-офиса (со стороны 1С).

https-методы GET web-сервиса необходимы для получения номера заказа со стороны back-офиса, возможности загрузки заказа на кассе, а также для перехода на обмен данными с back-офисом без использования файлов (при оплате заказа и загрузки заказа на кассе).

Ответ от сервера приходит в формате json

 

2.2.2        Команда отправки сохранённого (неоплаченного) заказа

Отправка сохранённого (неоплаченного) заказа в back-офис (1С) и получение его номера

https://server/CreateOrder?order=параметр1

параметр1 - информация о заказе - текст в формате 1С (АРМ)

Пункты

Формат заголовка документа см. раздел 2.1.2

Формат товарных позиций документа см. раздел 2.1.3

Формат модификаторов товарных позиций см. раздел 2.1.4

 

Пример:

https://server/CreateOrder?order=Чек 00000895/000000 13.08.18 18:41:00 1      1118.00 000000 Администратор      

        00089         1.0     318.00     318.00          0 000000    0.00% 0000000000000

~        00085        2.0     130.00     130.00          0 000000    0.00% 0000000000000

~        00086        1.0      76.00      76.00          0 000000    0.00% 0000000000000

~        00087        2.0       0.00       0.00          0 000000    0.00% 0000000000000

        00130         2.0     800.00     800.00          0 000000    0.00% 0000000000000

 

Пример ответа от сервера:

{

"orderNum": "L100-000000137"

}

 

Метод используется для проверки связи с web-сервисом и проверки корректности сформированного заказа.

Метод используется для сохранения заказа в back-офисе (1С) с присвоением ему уникального номера заказа.

Номер заказа будет использоваться для загрузки заказа на кассе, если выбран соответствующий способ оплаты.

Метод будет вызываться на Киоске и на Кассе перед началом оформления заказа (до вызова оплаты по к/карте, до оформления на ФР)

 

2.2.3        Команда закрытия заказа в back-офисе (1С)

https://server/1c/CloseOrder?order=параметр1&orderNum=параметр2

параметр1 - информация о заказе - текст в формате 1С (АРМ)

Пункты

Формат заголовка документа см. раздел 2.1.2

Формат товарных позиций документа см. раздел 2.1.3

Формат модификаторов товарных позиций см. раздел 2.1.4

Формат типа оплаты документа см. раздел 2.1.5

 

Параметр2 – номер заказа, полученный в методе CreateOrder, если метод вызывался

 

Метод используется для отметки в back-офисе 1С факта оплаты заказа

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

Метод будет вызываться на Киоске и на Кассе после успешного оформления по к/карте или по системе лояльности и перед оформлением на ФР

 

Пример ответа от сервера:

{

"orderNum": "L100-000000137"

}

 

2.2.4        Команда отмены заказа в back-офисе (1С)

https://server/1c/CancelOrder?orderNum=параметр2

В случае ошибки при оформлении заказа (например, при печати чека на ФР), заказ должен быть отменён.

Метод будет вызываться на Киоске и на Кассе при возникновении какой-либо ошибки во время оформления, если уже был вызван метод .CloseOrder для данного заказа

 

Параметр2 – номер заказа, полученный в методе CreateOrder или CloseOrder

 

Пример:

https://server/CancelOrder?orderNum=L0001-157

Пример ответа от сервера:

{

"ErrorCode": 0,

"ErrorText": "OK"

}

 

2.2.5        Команда загрузки заказа из back-офиса (1С)

https://server/1c/LoadOrder?orderNum=параметр2

Параметр2 – номер заказа, полученный в методе CreateOrder

 

Метод используется для загрузки заказа из back-офиса (1С) на кассу.

Загружаться могут только нефискальные документы (т.е. не оплаченные).

Метод должен возвращать информацию о заказе - текст в формате 1С (АРМ)

Пункты

Формат заголовка документа см. раздел 2.1.2

Формат товарных позиций документа см. раздел 2.1.3

Формат модификаторов товарных позиций см. раздел 2.1.4

 

Пример ответа от сервера:

{

"order": "Чек 00000895/000000 13.08.18 18:41:00 1      1118.00 000000 Администратор      

        00089         1.0     318.00     318.00          0 000000    0.00% 0000000000000

~        00085        2.0     130.00     130.00          0 000000    0.00% 0000000000000

~        00086        1.0      76.00      76.00          0 000000    0.00% 0000000000000

~        00087        2.0       0.00       0.00          0 000000    0.00% 0000000000000

        00130         2.0     800.00     800.00          0 000000    0.00% 0000000000000"

}

 

2.2.6        Примечание

Методы .CreateOrder, затем .CloseOrder будут вызываться и для тех заказов, где выбран способ оплаты "Оплата на кассе".

2.2.7        Команда запроса стоп-листа

https://server/1c/LoadStopList?objectId=параметр1

Параметр1 - Идентификатор удалённого подразделения (объекта) (поле REMOTEID, которое отправляется в теле заказа (см. раздел 2.1.2))

Формат получаемых данных соответствует формату стоп-листа при работе с файлами (см. раздел 1.1.7)

Пример получаемых данных:

Mode=1

00-00000485  $0

00-00000262  $0

00-00000464  $0

00-00000659  $50

00000038       $50

2.2.8        Команды для оформления возврата

Для отмены заказа Киоск вызывает команды, аналогично командам при оплате заказа (CreateOrder и CloseOrder). В параметре order согласно Формату заголовка документа (см. раздел 2.1.2) указывается признак возврата (TYPE=2), суммы документа отрицательные.

 

2.2.9        Команда модификации заказа (применение скидки или акции)

Отправка неоплаченного заказа в back-офис (1С) для получения скидок и/или акций, которые применимы к данному заказу.

https://server/ModifyOrder?order=параметр1

параметр1 - информация о заказе - текст в формате 1С (АРМ)

Пункты

Формат заголовка документа

Формат товарных позиций документа

Формат модификаторов товарных позиций

 

Пример:

https://server/ModifyOrder?order=Чек 00000895/000000 13.08.18 18:41:00 1      1118.00 000000 Администратор      

        00089         1.0     318.00     318.00          0 000000    0.00% 0000000000000

~        00085        2.0     130.00     130.00          0 000000    0.00% 0000000000000

~        00086        1.0      76.00      76.00          0 000000    0.00% 0000000000000

~        00087        2.0       0.00       0.00          0 000000    0.00% 0000000000000

        00130         2.0     800.00     800.00          0 000000    0.00% 0000000000000

 

Пример ответа от сервера:

{

"order": "Чек 00000895/000000 13.08.18 18:41:00 1      1118.00 000000 Администратор      

        00089         1.0     318.00     318.00          0 000000    0.00% 0000000000000

~        00085        2.0     130.00     130.00          0 000000    0.00% 0000000000000

~        00086        1.0      76.00      76.00          0 000000    0.00% 0000000000000

~        00087        2.0       0.00       0.00          0 000000    0.00% 0000000000000

        00130         2.0     800.00     800.00          0 000000    0.00% 0000000000000"

}

 

 

Метод используется для модификации заказа.

При любом изменении неоплаченного заказа back-офис (1С) может начислить или удалить скидку на позицию или заказ.

 

Просмотры: 475