Получение информации об онлайн-заказе: различия между версиями

Материал из Касса
Перейти к навигации Перейти к поиску
 
(не показано 19 промежуточных версий этого же участника)
Строка 1: Строка 1:
== CASHDESK API==
= CASHDESK API=


'''API''' (Application Programming Interface или интерфейс программирования приложений) — это совокупность инструментов и функций в виде интерфейса для создания новых приложений, благодаря которому одна программа будет взаимодействовать с другой.
'''API''' (Application Programming Interface или интерфейс программирования приложений) — это совокупность инструментов и функций в виде интерфейса для создания новых приложений, благодаря которому одна программа будет взаимодействовать с другой.
Строка 5: Строка 5:
Для работы с API сервиса БИФИТ Касса, пользователю необходимо получить токен доступа. Генерация токена происходит по правилам авторизации OAuth2. С инструкцией авторизации по API можно ознакомиться <b>[https://kassa.bifit.com/wiki/index.php?title=ИНСТРУКЦИИ:Авторизация_при_интеграции_по_API здесь]</b>.
Для работы с API сервиса БИФИТ Касса, пользователю необходимо получить токен доступа. Генерация токена происходит по правилам авторизации OAuth2. С инструкцией авторизации по API можно ознакомиться <b>[https://kassa.bifit.com/wiki/index.php?title=ИНСТРУКЦИИ:Авторизация_при_интеграции_по_API здесь]</b>.


= Получение онлайн заказа =
= Нумераторы =


Подготовьте GET запрос следующего вида:
{{ProductTable-2
base URL: https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders/id?
|title-left='''TaxSystem''' - cистема налогообложения (тэг 1055). Если при регистрации устройства в ФНС было выбрано более одного режима налогообложения, то в '''TaxSystem''' необходимо указать, к какой системе налогообложения относится данный чек.
|title-right=
|content-left=
&nbsp;
* '''COMMON'''
* '''SIMPLIFIED'''
* '''SIMPLIFIED_WITH_EXPENSE'''
* '''COMMON_AGRICULTURAL'''
* '''PATENT'''
|content-right=
&nbsp;
* ОСН
* УСН доход
* УСН доход - расход
* ЕСХН
* ПАТЕНТ
|}}<br>


{{ProductTable-2
|title-left='''СurrentStatusType''' - Статусы онлайн-заказов
|title-right=
|content-left=
&nbsp;
* '''NEW'''
* '''ACCEPTED'''
* '''DISTRIBUTED'''
* '''ISSUED'''
* '''REFUSED'''
* '''DELETED'''
* '''FINISHED'''


В '''HEADERS''' укажите значение access_token согласно:
|content-right=
'''authorization''': Bearer <значение '''acces_token'''>
&nbsp;
* НОВЫЙ
* ПОДТВЕРЖДЕН
* РАСПРЕДЕЛЕН
* ВЫДАННЫЙ
* ОТКАЗ
* УДАЛЕН
* ЗАВЕРШЕН
|}}<br>


В '''PARAMS''' запроса укажите данные, согласно структуре описанной в [https://kassa.bifit.com/cashdesk-api/v1/swagger-ui.html#/online_orders/createOnlineOrderUsingPOST SWAGGER].
= Получение онлайн заказа =


''Пример ответа на запрос.''
{{ProductTable-2
|title-left='''Запрос'''
|title-right='''GET'''
|content-left= <br>URL: https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders/"id онлайн заказа"
|content-right=
<syntaxhighlight>
https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders/"id онлайн заказа"
</syntaxhighlight>
|}}<br>


{{Note|'''''Важно!'''''<br>
В '''HEADERS''' укажите значение '''access_token''' согласно:'''authorization''': Bearer <значение '''acces_token'''> .|800}}


{{ProductTable-2
|title-left='''Response'''
|title-right=
|content-left= <br>
* '''id''': ID онлайн заказа
* '''visible''': Признак видимости заказа
* '''created''': Время создания в формате '''UNIX TIME'''
* '''changed''': Время создания в формате '''UNIX TIME'''
* '''organizationId''': ID организации
* '''tradeObjectId''': ID торгового объекта
* '''taxSystem''': Система налогообложения
* '''externalId''': Номер заказа в информационной системе интегратора
* '''deliveryType''': Тип доставки '''COURIER''' - Курьером (либо '''SELF''' - Самовывоз)
* '''deliveryAmount''': Стоимость услуги доставки
* '''deliveryTime''': Время доставки в формате '''UNIX TIME'''
* '''paid''': Признак оплаты заказа
* '''orderTime''': Время заказа в формате '''UNIX TIME'''
* '''clientId''': ID клиента
* '''address''': Адрес доставки
* '''responsiblePersonLogin''': Логин (номер телефона) ответственного сотрудника. После создания заказа логин будет равен логину создателя заказа
* '''discount''': Величина скидки на заказ
* '''discountType''': Тип скидки на заказ
* '''location''': GPS координаты курьера
* '''totalAmount''': Итоговая стоимость заказа
* '''comment''': Комментарий к заказу
* '''currentStatusType''': Текущий статус заказа NEW - новый, только что созданный заказ
* '''currentStatusTime''': Время изменения статуса заказа в формате '''UNIX TIME'''
* '''substatusId''': ID пользовательского статуса
* '''shopId''': ID интернет витрины
* '''endLockTime''': Время окончания блокировки заказа (при работе в OFF-line режиме)
* '''routeSheetDocumentId''': ID Маршрутного листа
* '''routeSheetDocumentPosition''': Номер позиции заказа в маршрутном листе
* '''routeSheetDocumentNumber''': Номер маршрутного листа
* '''size''': Размер заказа
* '''actualDeliveryTime''': Актуальное время доставки
* '''cashierName''': Имя кассира
* '''clientName''': Имя клиента
|content-right=
<syntaxhighlight lang="JSON">
<syntaxhighlight lang="JSON">
  {
  { "id": 320528,  
    "id": 320528,                                           ''//id онлайн заказа''
     "visible": true,    
     "visible": true,                                         ''//Признак видимости заказа''
     "created": 1645690408369,      
     "created": 1645690408369,                               ''//Время создания в формате UNIX TIME''
     "changed": 1645691489120,    
     "changed": 1645691489120,                               ''//Время создания в формате UNIX TIME''
     "organizationId": "<organization_id>",  
     "organizationId": "<''organization_id''>",             ''//ID организации''
     "tradeObjectId": "<trade_object_id>",      
     "tradeObjectId": "<''trade_object_id''>",               ''//ID торгового объекта''
     "taxSystem": "COMMON",      
     "taxSystem": "COMMON",                                 ''//Система налогообложения '''COMMON''' - ОСН (см. [[#Систем налогообложения|Таблица систем налогообложения]])''
     "externalId": "112345",      
     "externalId": "112345",                                 ''//Номер заказа в информационной системе интегратора''
     "deliveryType": "COURIER",  
     "deliveryType": "COURIER",                             ''//Тип доставки '''COURIER''' - Курьером (либо '''SELF''' - Самовывоз)''
     "deliveryAmount": null,  
     "deliveryAmount": null,                                 ''//''
     "deliveryTime": 1645690416000,      
     "deliveryTime": 1645690416000,                         ''//Время доставки в формате UNIX TIME''
     "paid": false,            
     "paid": false,                                         ''//Признак оплаты заказа''
     "orderTime": 1645690388467,
     "orderTime": 1645690388467,
     "clientId": 195363,                                     ''//ID клиента''
     "clientId": 195363,        
     "address": "Адрес",                                     ''//Адрес доставки''
     "address": "Адрес",      
     "responsiblePersonLogin": "79775553322",               ''//Логин (номер телефона) ответственного сотрудника. После создания заказа логин будет равен логину создателя заказа''
     "responsiblePersonLogin": "79775553322",  
     "discount": 0.00,                                       ''//Величина скидки на заказ ('''не используется''')''
     "discount": 0.00,      
     "discountType": 0,                                     ''//Тип скидки на заказ ('''не используется''')''
     "discountType": 0,    
     "location": null,                                       ''//GPS координаты курьера''
     "location": null,    
     "totalAmount": 3000.00,                                 ''//Итоговая стоимость заказа''
     "totalAmount": 3000.00,
     "comment": null,                                       ''//Комментарий к заказу''
     "comment": null,        
     "currentStatusType": "DISTRIBUTED",                     ''//Текущий статус заказа NEW - новый, только что созданный заказ (см. [[#Статусы заказов|Таблица статусов заказов]])''
     "currentStatusType": "DISTRIBUTED",      
     "currentStatusTime": 1645691012245,                     ''//Время изменения статуса заказа в формате UNIX TIME''
     "currentStatusTime": 1645691012245,  
     "substatusId": null,                                   ''//ID пользовательского статуса''
     "substatusId": null,      
     "shopId": null,                                         ''//ID интернет витрины''
     "shopId": null,        
     "endLockTime": 1645691458615,
     "endLockTime": 1645691458615,
     "routeSheetDocumentId": null,                           ''//ID Маршрутного листа''
     "routeSheetDocumentId": null,    
     "routeSheetDocumentPosition": null,                     ''//Номер позиции заказа в маршрутном листе''
     "routeSheetDocumentPosition": null,    
     "routeSheetDocumentNumber": null,
     "routeSheetDocumentNumber": null,
     "size": null,
     "size": null,
     "actualDeliveryTime": 1645691458616,
     "actualDeliveryTime": 1645691458616,
     "cashierName": null,                                   ''//Имя кассира''
     "cashierName": null,  
     "clientName": null                                     ''//Имя клиента''
     "clientName": null
  }
  }
</syntaxhighlight>
</syntaxhighlight>
 
|}}<br>
=== Системы налогообложения ===
{| class="wikitable"
|+ Таблица систем налогообложения
|-
! Значение нумератора !! Описание
|-
| '''COMMON''' || (ОСН - Общая система налогообложения)
|-
| '''SIMPLIFIED''' || (УСН 6% с дохода)
|-
| '''SIMPLIFIED_WITH_EXPENSE'''  || (УСН 15% доход - расход)
|-
|'''ENVD''' || ('''ЕНВД не используется с 01.01.2020''')
|-
| '''COMMON_AGRICULTURAL''' || (ЕСН или ЕСХН)
|-
| '''PATENT''' || (ПАТЕНТНАЯ система налогообложения)
|}
 
=== Статусы заказов ===
 
{| class="wikitable"
|+ Таблица статусов заказов
|-
! Значение нумератора !! Описание
|-
| '''NEW''' || НОВЫЙ
|-
| '''ACCEPTED''' || ПОДТВЕРЖДЕН
|-
| '''DISTRIBUTED'''  || РАСПРЕДЕЛЕН
|-
|'''ISSUED''' || ВЫДАННЫЙ
|-
| '''REFUSED''' || ОТКАЗ
|-
| '''DELETED''' || УДАЛЕН
|-
| '''FINISHED''' || ЗАВЕРШЕН
|}
 
{{ Note |'''''Примечание'''''<br>  
* При создании заказа, есть несколько видов доставки. Ознакомьтесь с типами доставки:
** "COURIER" - в случае, если используется курьерская доставка
** "SELF" - самовывоз, в этом случае адрес доставки не требуется, место расчетов в чеке берется из ККТ/ТО
** "SERVICE" - не используется
* Каждому созданному заказу присваивается определенный статус. Ознакомьтесь со статусами заказов:
** "ACCEPTED" -  статус “Подтвержден”, заказы в данном статусе доступны для отображения всем сотрудникам на МКТ. Используем при создании заказа.
** "DISTRIBUTED" - статус “Распределен”, заказы в данном статусе доступны для отображения на МКТ только тем сотрудникам, на которых эти заказы назначены.
** "REFUSED" - статус “Отменен”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, либо перевести заказ в данный статус из клиентского ПО, отменить заказ можно только в статусах "DISTRIBUTED","ACCEPTED".  Статус REFUSED необходимо использовать при отмене заказа в статусах DISTRIBUTED и ACCEPTED.
**"DELETED" - статус “Удален”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, заказ, в статусе “Удален” не будет доступен для работы, удалить можно только заказ в статусе "currentStatusType": "NEW". Статус DELETED необходимо использовать при отмене заказа только в статусе NEW.
|800}}

Текущая версия на 10:59, 8 ноября 2022

CASHDESK API

API (Application Programming Interface или интерфейс программирования приложений) — это совокупность инструментов и функций в виде интерфейса для создания новых приложений, благодаря которому одна программа будет взаимодействовать с другой.

Для работы с API сервиса БИФИТ Касса, пользователю необходимо получить токен доступа. Генерация токена происходит по правилам авторизации OAuth2. С инструкцией авторизации по API можно ознакомиться здесь.

Нумераторы

TaxSystem - cистема налогообложения (тэг 1055). Если при регистрации устройства в ФНС было выбрано более одного режима налогообложения, то в TaxSystem необходимо указать, к какой системе налогообложения относится данный чек.
 
  • COMMON
  • SIMPLIFIED
  • SIMPLIFIED_WITH_EXPENSE
  • COMMON_AGRICULTURAL
  • PATENT
 
  • ОСН
  • УСН доход
  • УСН доход - расход
  • ЕСХН
  • ПАТЕНТ


СurrentStatusType - Статусы онлайн-заказов
 
  • NEW
  • ACCEPTED
  • DISTRIBUTED
  • ISSUED
  • REFUSED
  • DELETED
  • FINISHED
 
  • НОВЫЙ
  • ПОДТВЕРЖДЕН
  • РАСПРЕДЕЛЕН
  • ВЫДАННЫЙ
  • ОТКАЗ
  • УДАЛЕН
  • ЗАВЕРШЕН


Получение онлайн заказа

Запрос GET

URL: https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders/"id онлайн заказа"
https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders/"id онлайн заказа"


Note.svg Важно!
В HEADERS укажите значение access_token согласно:authorization: Bearer <значение acces_token> .


Response

  • id: ID онлайн заказа
  • visible: Признак видимости заказа
  • created: Время создания в формате UNIX TIME
  • changed: Время создания в формате UNIX TIME
  • organizationId: ID организации
  • tradeObjectId: ID торгового объекта
  • taxSystem: Система налогообложения
  • externalId: Номер заказа в информационной системе интегратора
  • deliveryType: Тип доставки COURIER - Курьером (либо SELF - Самовывоз)
  • deliveryAmount: Стоимость услуги доставки
  • deliveryTime: Время доставки в формате UNIX TIME
  • paid: Признак оплаты заказа
  • orderTime: Время заказа в формате UNIX TIME
  • clientId: ID клиента
  • address: Адрес доставки
  • responsiblePersonLogin: Логин (номер телефона) ответственного сотрудника. После создания заказа логин будет равен логину создателя заказа
  • discount: Величина скидки на заказ
  • discountType: Тип скидки на заказ
  • location: GPS координаты курьера
  • totalAmount: Итоговая стоимость заказа
  • comment: Комментарий к заказу
  • currentStatusType: Текущий статус заказа NEW - новый, только что созданный заказ
  • currentStatusTime: Время изменения статуса заказа в формате UNIX TIME
  • substatusId: ID пользовательского статуса
  • shopId: ID интернет витрины
  • endLockTime: Время окончания блокировки заказа (при работе в OFF-line режиме)
  • routeSheetDocumentId: ID Маршрутного листа
  • routeSheetDocumentPosition: Номер позиции заказа в маршрутном листе
  • routeSheetDocumentNumber: Номер маршрутного листа
  • size: Размер заказа
  • actualDeliveryTime: Актуальное время доставки
  • cashierName: Имя кассира
  • clientName: Имя клиента
 {  "id": 320528,   
    "visible": true,     
    "created": 1645690408369,       
    "changed": 1645691489120,     
    "organizationId": "<organization_id>", 
    "tradeObjectId": "<trade_object_id>",       
    "taxSystem": "COMMON",        
    "externalId": "112345",       
    "deliveryType": "COURIER",   
    "deliveryAmount": null,   
    "deliveryTime": 1645690416000,       
    "paid": false,             
    "orderTime": 1645690388467,
    "clientId": 195363,          
    "address": "Адрес",        
    "responsiblePersonLogin": "79775553322",   
    "discount": 0.00,        
    "discountType": 0,     
    "location": null,      
    "totalAmount": 3000.00,  
    "comment": null,         
    "currentStatusType": "DISTRIBUTED",       
    "currentStatusTime": 1645691012245,    
    "substatusId": null,        
    "shopId": null,          
    "endLockTime": 1645691458615,
    "routeSheetDocumentId": null,     
    "routeSheetDocumentPosition": null,     
    "routeSheetDocumentNumber": null,
    "size": null,
    "actualDeliveryTime": 1645691458616,
    "cashierName": null,   
    "clientName": null  
 }