CASHDESK API:Создание онлайн заказа
Версия от 12:24, 10 февраля 2022; Merkulov (обсуждение | вклад)
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 },
- При создании заказа, есть несколько видов доставки. Ознакомьтесь с типами доставки:
- "COURIER" - в случае, если используется курьерская доставка
- "SELF" - самовывоз, в этом случае адрес доставки не требуется, место расчетов в чеке берется из ККТ/ТО
- "SERVICE" - не используется
- Каждому созданному заказу присваивается определенный статус. Ознакомьтесь со статусами заказов:
- "ACCEPTED" - статус “Подтвержден”, заказы в данном статусе доступны для отображения всем сотрудникам на МКТ. Используем при создании заказа.
- "DISTRIBUTED" - статус “Распределен”, заказы в данном статусе доступны для отображения на МКТ только тем сотрудникам, на которых эти заказы назначены.
- "REFUSED" - статус “Отменен”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, либо перевести заказ в данный статус из клиентского ПО, отменить заказ можно только в статусах "DISTRIBUTED","ACCEPTED". Статус REFUSED необходимо использовать при отмене заказа в статусах DISTRIBUTED и ACCEPTED.
- "DELETED" - статус “Удален”, заказ с таким статусом невозможно создать, можно добавить статус с помощью PUT запроса, заказ, в статусе “Удален” не будет доступен для работы, удалить можно только заказ в статусе "currentStatusType": "NEW". Статус DELETED необходимо использовать при отмене заказа только в статусе NEW.