Создание маршрутного листа
Версия от 14:54, 26 апреля 2022; Merkulov (обсуждение | вклад)
CASHDESK API
API (Application Programming Interface или интерфейс программирования приложений) — это совокупность инструментов и функций в виде интерфейса для создания новых приложений, благодаря которому одна программа будет взаимодействовать с другой.
Для работы с API сервиса БИФИТ Касса, пользователю необходимо получить токен доступа. Генерация токена происходит по правилам авторизации OAuth2. С инструкцией авторизации по API можно ознакомиться здесь.
Создание маршрутного листа
| Запрос | POST | 
URL: https://kassa.bifit.com/cashdesk-api/v1/protected/route_sheet_document  | 
      https://kassa.bifit.com/cashdesk-api/v1/protected/route_sheet_document | 
   
 Примечание
В HEADERS укажите значение access_token согласно:authorization: Bearer <значение acces_token> .
| Request Body | type: raw (JSON) | 
 
 nomenclatureFeatures: Характеристика товара 
 tradeObjectRelations: Данные номенклатуры в торговом объекте 
  | 
       
 {
  "document": {
    "amount": 0,
    "cashierName": null,
    "courierUserId": null,
    "courierUserName": null,
    "description": null,
    "documentDate": 1646143440371 ,               
    "documentNumber": "114477",              
    "firstDeliveryTime": 1646143440371,     
    "lastDeliveryTime": 1646143440371,   
    "ordersCount": 1,                  
    "organizationId": "<organization_id>",   
    "priority": "LOW",    
    "responsiblePerson": null,
    "responsibleUserId": 93727,     
    "status": "NEW",                 
    "tradeObjectId": "<trade_object_id>"   
  },
  "items": [
    {
      "organizationId": "<organization_id>",                 
      "tradeObjectId": "<trade_object_id>",              
      "taxSystem": "COMMON",             
      "externalId": "11223344",            
      "deliveryType": "COURIER",            
      "deliveryAmount": null,                            
      "deliveryTime": 1646143684830, 
      "paid": false,     
      "orderTime": 1646137566448,  
      "clientId": 195363,    
      "address": "Адрес",     
      "responsiblePersonLogin": "7хххххххххх",          
      "location": null,             
      "totalAmount": 57.00,           
      "comment": null,              
      "currentStatusType": "NEW",           
      "currentStatusTime": 1646135475820,       
      "substatusId": null,           
      "shopId": null,                 
      "endLockTime": null,          
      "size": 1,                    
      "actualDeliveryTime": null,    
      "routeSheetDocumentPosition": 1     
      "cashierName": null,   
      "clientName": null, 
     }
   ]
 }
 | 
   
{
 "document": {
   "amount": 0,
   "cashierName": null,
   "courierUserId": null,                                    //ID курьера
   "courierUserName": null,                                  //Логин (номер телефона) курьера
   "description": null,
   "documentDate": 1646143440371 ,                           //Дата создания маршрутного листа *
   "documentNumber": "114477",                               //Номер маршрутного листа *
   "firstDeliveryTime": 1646143440371,                       //Время первой доставки *
   "lastDeliveryTime": 1646143440371,                        //Время последней доставки *
   "ordersCount": 1,                                         //Количество заказов *
   "organizationId": "<organization_id>",                    //ID организации *
   "priority": "LOW",                                        //Приоритетность маршрутного листа в системе *
   "responsiblePerson": null,
   "responsibleUserId": 93727,                               //ID Ответственного сотрудника *
   "status": "NEW",                                          //Статус маршрутного листа *
   "tradeObjectId": "<trade_object_id>"                      //ID торгового объекта *
 },
 "items": [
   {
     "organizationId": "<organization_id>",                  //ID организации *
     "tradeObjectId": "<trade_object_id>",                   //ID торгового обекта *
     "taxSystem": "COMMON",                                  //Система налогообложения COMMON - ОСН (см. Таблица систем налогообложения) *
     "externalId": "11223344",                               //Номер онлайн-заказа *
     "deliveryType": "COURIER",                              //Тип доставки *
     "deliveryAmount": null,                                 //Стоимость доставки
     "deliveryTime": 1646143684830,                          //Время доставки в формате UNIX TIME *
     "paid": false,                                          //Признак оплаты заказа *
     "orderTime": 1646137566448,                             //Время заказа *
     "clientId": 195363,                                     //ID клиента *
     "address": "Адрес",                                     //Адрес доставки *
     "responsiblePersonLogin": "7хххххххххх",                //Логин (номер телефона) ответственного сотрудника. После создания заказа логин будет равен логину создателя заказа *
     "location": null,                                       //GPS координаты курьера
     "totalAmount": 57.00,                                   //Итоговая стоимость заказа *
     "comment": null,                                        //Комментарий к заказу
     "currentStatusType": "NEW",                             //Текущий статус заказа NEW - новый, только что созданный заказ (см. Таблица статусов заказов) *
     "currentStatusTime": 1646135475820,                     //Время изменения статуса заказа в формате UNIX TIME *
     "substatusId": null,                                    //ID пользовательского статуса
     "shopId": null,                                         //ID интернет витрины
     "endLockTime": null,                                    //Время окончания блокировки онлайн-заказа курьером
     "size": 1,                                              //Количество позиций в заказе
     "actualDeliveryTime": null,                             //Фактическое время доставки
     "routeSheetDocumentPosition": 1                         //Позиция заказа в маршрутном листе *
     "cashierName": null,                                    //Имя кассира
     "clientName": null,                                     //Имя клиента
    }
  ]
}
- Поля обязательные для заполнения помечены *.
 - При создании маршрутного листа, статус онлайн заказа должен быть: "NEW", "ACCEPTED" или "DISTRIBUTED".
 
Систем налогообложения
| Значение нумератора | Описание | 
|---|---|
| COMMON | (ОСН - Общая система налогообложения) | 
| SIMPLIFIED | (УСН 6% с дохода) | 
| SIMPLIFIED_WITH_EXPENSE | (УСН 15% доход - расход) | 
| ENVD | (ЕНВД не используется с 01.01.2020) | 
| COMMON_AGRICULTURAL | (ЕСН или ЕСХН) | 
| PATENT | (ПАТЕНТНАЯ система налогообложения) | 
Статусы заказов
| Значение нумератора | Описание | 
|---|---|
| NEW | НОВЫЙ | 
| ACCEPTED | ПОДТВЕРЖДЕН | 
| DISTRIBUTED | РАСПРЕДЕЛЕН | 
| ISSUED | ВЫДАННЫЙ | 
| REFUSED | ОТКАЗ | 
| DELETED | УДАЛЕН | 
| FINISHED | ЗАВЕРШЕН | 
- При создании заказа, есть несколько видов доставки. Ознакомьтесь с типами доставки:
- "COURIER" - в случае, если используется курьерская доставка
 - "SELF" - самовывоз, в этом случае адрес доставки не требуется, место расчетов в чеке берется из ККТ/ТО
 - "SERVICE" - не используется
 
 - Каждому созданному заказу присваивается определенный статус. Ознакомьтесь со статусами заказов:
- "ACCEPTED" - статус “Подтвержден”, заказы в данном статусе доступны для отображения всем сотрудникам на МКТ. Используем при создании заказа.
 - "DISTRIBUTED" - статус “Распределен”, заказы в данном статусе доступны для отображения на МКТ только тем сотрудникам, на которых эти заказы назначены.
 - "REFUSED" - статус “Отменен”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, либо перевести заказ в данный статус из клиентского ПО, отменить заказ можно только в статусах "DISTRIBUTED","ACCEPTED". Статус REFUSED необходимо использовать при отмене заказа в статусах DISTRIBUTED и ACCEPTED.
 - "DELETED" - статус “Удален”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, заказ, в статусе “Удален” не будет доступен для работы, удалить можно только заказ в статусе "currentStatusType": "NEW". Статус DELETED необходимо использовать при отмене заказа только в статусе NEW.