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

Материал из Касса
Перейти к навигации Перейти к поиску
Строка 54: Строка 54:
  "organizationName": "Жилищник",
  "organizationName": "Жилищник",
  "email": "string@string.ru" }
  "email": "string@string.ru" }
При добавлении в заказ Оплаты, необходимо в запрос добавить следующую конструкцию:


  "onlineOrderPayments": [],
  "onlineOrderPayments": [],
  "properties": {
  "properties": {
  "fullSettlement": true,
  "fullSettlement": true,
  "prepayment": false,
  "prepayment": false, \\ Предоплата
  "credit": false },
  "credit": false \\ Кредит
},


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

Версия 12:31, 10 февраля 2022

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

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

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

Подготовьте POST запрос следующего вида:

base URL: https://kassa.bifit.com/cashdesk-api/v1/protected/online_orders

В рамках согласованного процесса, заказы создаются в статусе “Подтвержден” или “Новый”.

  • Для заказов, передаваемых курьерам необходимо использовать статус NEW при создании заказа
  • Для заказов самовывоза необходимо использовать статус ACCEPTED при создании заказа


Для самовывоза или доставки необходимо передавать "employeeAccess": null


В массив onlineOrder передаются следующие обязательные значения:

"visible": "true",  \\ Видимость онлайн-заказа
!"organizationId": "16286094820321052850480", \\ В какую организацию создаем заказ
!"tradeObjectId": "1628609482057-1613612358", \\ В какой торговый объект создаем заказ
!"taxSystem": "COMMON", \\ СНО заказа
"externalId": "VQ12345678", \\ Номер заказа во внешней системе
!"deliveryType": "COURIER", \\ Тип доставки 				
!"paid": "false", \\ Флаг оплачен ли заказ, если значение true, привязать оплату более нельзя
"employeeAccess": "NULL", \\ Поле, указывающее какому сотруднику принадлежит заказ, поле необязательное
"orderTime": "1631094730812", \\ Время заказа - указываем фактическое время создания заказа, т.к в МКТ по данному времени будут сортироваться заказы
"address": "Адрес", \\ Адрес доставки, для заказа вида "COURIER"
"responsiblePersonLogin": "79295444301", \\ Логин Сотрудника, на кого назначается заказ. Ответственный за заказ.
!"currentStatusType": "NEW", \\ Поле статуса заказа
!"currentStatusTime": "1630936599865" \\ Время изменения статуса заказа, обязательное к передачи, при создании онлайн-заказа можно передавать то-же время что и в order_time
"comment": "Комментарий",
!"totalAmount": "95", \\ Итоговая сумма заказа со всеми скидками, заказ будет считаться завершенным, после погашения данной суммы, данная сумма должна быть равна сумме цены всех позиций с учетом их кол-ва, скидок и НДС	

"onlineOrderItems": [
{"description": "бананы", \\ Наименование товара
"price": 1, \\ Цена продажи
"vatValue": null, \\ НДС
"quantity": 2, \\ Количество
"calculationMethod": "PREPAY_FULL", \\ Метод рассчета
"paymentSubject": "PRODUCT" }],
"client": 
{
"organizationId": "1581081291940921668559",
"address": "adress",
"phone": "79999999977",
"lastName": "Фамилия",
"firstName": "Имя",
"organizationInn": "7735598855",
"organizationName": "Жилищник",
"email": "string@string.ru" }

При добавлении в заказ Оплаты, необходимо в запрос добавить следующую конструкцию:

"onlineOrderPayments": [],
"properties": {
"fullSettlement": true,
"prepayment": false, \\ Предоплата
"credit": false  \\ Кредит
},

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

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