Создание онлайн заказа по API: различия между версиями

Материал из Касса
Перейти к навигации Перейти к поиску
Строка 266: Строка 266:
</syntaxhighlight>
</syntaxhighlight>
|}}<br>
|}}<br>


{{ Note |'''''Примечание'''''<br>  
{{ Note |'''''Примечание'''''<br>  

Версия 13:35, 26 апреля 2022

CASHDESK API

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

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

Создание заказа

Запрос POST
  base URL: https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders
https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders


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


Request Body type: raw (JSON)
 

onlineOrder:

  • visible: Признак видимости заказа
  • created: Время создания в формате UNIX TIME
  • changed: Время создания в формате UNIX TIME
  • organizationId: ID организации
  • tradeObjectId: ID торгового объекта
  • taxSystem: Система налогообложения
  • externalId: Номер заказа в информационной системе интегратора
  • deliveryType: Тип доставки COURIER - Курьером (либо SELF - Самовывоз)
  • deliveryAmount: Стоимость услуги доставки
  • deliveryTime: Время доставки в формате UNIX TIME
  • paid: Признак оплаты заказа
  • orderTime:
  • clientId: ID клиента
  • address: Адрес доставки
  • responsiblePersonLogin: Логин (номер телефона) ответственного сотрудника. После создания заказа логин будет равен логину создателя заказа
  • discount: Величина скидки на заказ
  • discountType: Тип скидки на заказ
  • location: GPS координаты курьера
  • totalAmount: Итоговая стоимость заказа
  • comment: Комментарий к заказу
  • currentStatusType: Текущий статус заказа
  • currentStatusTime: Время изменения статуса заказа в формате UNIX TIME
  • substatusId: ID пользовательского статуса
  • shopId: ID интернет витрины
  • endLockTime:
  • routeSheetDocumentId: ID Маршрутного листа
  • routeSheetDocumentPosition:Номер позиции заказа в маршрутном листе
  • routeSheetDocumentNumber:
  • size:
  • actualDeliveryTime:
  • cashierName: Имя кассира
  • clientName: Имя клиента

onlineOrderItems:

  • nomenclatureId: ID номенклатурной позиции из справочника номенклатур
  • description: Наименование товарной позиции
  • price: Цена товарной позиции
  • vatValue: Величина ставки НДС
  • quantity: Кол-во
  • discount: % скидки
  • calculationMethod: Признак способа расчёта
  • paymentSubject: Признак предмета расчёта
  • contractorAddress: Адрес поставщика (при реализации агентских товаров и услуг)
  • contractorInn: ИНН поставщика (при реализации агентских товаров и услуг)
  • contractorName: Наименование организации поставщика (при реализации агентских товаров и услуг)
  • contractorPhone: Телефон поставщика (при реализации агентских товаров и услуг)
  • organizationPhone: Телефон
  • contractorActivityType: Вид деятельности поставщика
  • markType: Тип маркировки
  • codeForOfd: Код маркировки (КМ)
  • barcode: Штрих код позиции (EAN-8, EAN-13)
  • vendorCode: Артикул производителя
  • unitCode: Код единицы измерения по ОКЕИ
  • editable: Признак редактируемости позиции в приложении
  • total:
  • nomenclatureId:
  • description:
  • price:
  • vatValue:
  • quantity:
  • discount:
  • calculationMethod:
  • paymentSubject:
  • contractorAddress:
  • contractorInn:
  • contractorName:
  • contractorPhone:
  • organizationPhone:
  • contractorActivityType:
  • markType:
  • codeForOfd:
  • barcode:
  • vendorCode:
  • unitCode:
  • editable:
  • total:
  • nomenclatureId:
  • description:
  • price:
  • vatValue:
  • quantity:
  • discount:
  • calculationMethod:
  • paymentSubject:
  • contractorAddress:
  • contractorInn:
  • contractorName:
  • contractorPhone:
  • organizationPhone:
  • contractorActivityType:
  • markType:
  • codeForOfd:
  • barcode:
  • vendorCode:
  • unitCode:
  • editable:
  • total:

properties: Свойства

  • fullSettlement: Курьеру разрешено принимать полную оплату
  • prepayment: Курьеру запрещено принимать предоплату
  • credit: Курьеру запрещено передавать заказ в кредит

client:

  • organizationId: ID организации
  • address: Адрес доставки
  • phone: Номер телефона клиента
  • lastName: Фамилия клиента
  • firstName: Имя клиента клиента
  • patronymic: Отчество клиента клиента
  • email: Электронная почта клиента, сюда будет отправлен чек
  • comment: Комментарий
  • organizationId:
  • cashierInfos:
 {
    "onlineOrder": {
        "visible": true,                          
        "created": 1644828163053,         
        "changed": 1644828163053,          
        "organizationId": "<''organization_id''>",    
        "tradeObjectId": "<''trade_object_id''>",       
        "taxSystem": "COMMON",                      
        "externalId": "BFt-002",                     
        "deliveryType": "COURIER",       
        "deliveryAmount": null,           
        "deliveryTime": null,       
        "paid": false,           
        "orderTime": 1644828134297,
        "clientId": 124329,                  
        "address": "Адрес",               
        "responsiblePersonLogin": "7xxxxxxxxxx",  
        "discount": 0.00,     
        "discountType": 0,                           
        "location": null,                       
        "totalAmount": 14500.00,                     
        "comment": null,                              
        "currentStatusType": "NEW",                     
        "currentStatusTime": 1644828159791,            
        "substatusId": null,             
        "shopId": null,                        
        "endLockTime": null,
        "routeSheetDocumentId": null,           
        "routeSheetDocumentPosition": null,          
        "routeSheetDocumentNumber": null,
        "size": null,
        "actualDeliveryTime": null,
        "cashierName": null,      
        "clientName": null   
    },
    "onlineOrderItems": [
        {
            "nomenclatureId": 22090265,               
            "description": "Букет белых роз",      
            "price": 3000,                    
            "vatValue": 20,                        
            "quantity": 1,                 
            "discount": 0,                
            "calculationMethod": null,                  
            "paymentSubject": "PRODUCT",            
            "contractorAddress": null,                 
            "contractorInn": null,                    
            "contractorName": null,                     
            "contractorPhone": null,                 
            "organizationPhone": null,             
            "contractorActivityType": null,     
            "markType": "UNKNOWN",             
            "codeForOfd": null,         
            "barcode": null,           
            "vendorCode": null,      
            "unitCode": 796,                       
            "editable": true,                     
            "total": null                                
        },
        {
            "nomenclatureId": 22090204,
            "description": "Букет роз, 40 шт",
            "price": 7000,
            "vatValue": 20,
            "quantity": 1,
            "discount": 0,
            "calculationMethod": null,
            "paymentSubject": "PRODUCT",
            "contractorAddress": null,
            "contractorInn": null,
            "contractorName": null,
            "contractorPhone": null,
            "organizationPhone": null,
            "contractorActivityType": null,
            "markType": "UNKNOWN",
            "codeForOfd": null,
            "barcode": null,
            "vendorCode": null,
            "unitCode": 796,
            "editable": true,
            "total": null
        },
        {
            "nomenclatureId": 22090243,
            "description": "Букет розовых и белых роз, 15 штук",
            "price": 4500,
            "vatValue": 20,
            "quantity": 1,
            "discount": 0,
            "calculationMethod": null,
            "paymentSubject": "PRODUCT",
            "contractorAddress": null,
            "contractorInn": null,
            "contractorName": null,
            "contractorPhone": null,
            "organizationPhone": null,
            "contractorActivityType": null,
            "markType": "UNKNOWN",
            "codeForOfd": null,
            "barcode": null,
            "vendorCode": null,
            "unitCode": 796,
            "editable": true,
            "total": null
        }
    ],  
    "properties": {         
        "fullSettlement": true,     
        "prepayment": false, 
        "credit": false      
    },
    "client": {
        "organizationId": "<''organization_id''>", 
        "address": "Адрес",       
        "phone": "79999999999",  
        "lastName": "Иванов",    
        "firstName": "Иван", 
        "patronymic": "Иванович",          
        "email": "",                           
        "comment": null,                           
    },
    "organizationId": null,
    "cashierInfos": null
 }


Note.svg Примечание

  • При создании заказа, есть несколько видов доставки. Ознакомьтесь с типами доставки:
    • "COURIER" - в случае, если используется курьерская доставка
    • "SELF" - самовывоз, в этом случае адрес доставки не требуется, место расчетов в чеке берется из ККТ/ТО
    • "SERVICE" - не используется
  • Каждому созданному заказу присваивается определенный статус. Ознакомьтесь со статусами заказов:
    • "ACCEPTED" - статус “Подтвержден”, заказы в данном статусе доступны для отображения всем сотрудникам на МКТ. Используем при создании заказа.
    • "DISTRIBUTED" - статус “Распределен”, заказы в данном статусе доступны для отображения на МКТ только тем сотрудникам, на которых эти заказы назначены.
    • "REFUSED" - статус “Отменен”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, либо перевести заказ в данный статус из клиентского ПО, отменить заказ можно только в статусах "DISTRIBUTED","ACCEPTED". Статус REFUSED необходимо использовать при отмене заказа в статусах DISTRIBUTED и ACCEPTED.
    • "DELETED" - статус “Удален”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, заказ, в статусе “Удален” не будет доступен для работы, удалить можно только заказ в статусе "currentStatusType": "NEW". Статус DELETED необходимо использовать при отмене заказа только в статусе NEW.


Response
 
ID созданного онлайн заказа

406707


Note.svg Примечание
После получения ID созданного онлайн заказа, укажите его в поисковом запросе.