Функция работы с заказами

Заказ может быть как обычной покупкой в магазине с немедленным полным расчетом, так и покупка с предоплатой, с ожиданием отгрузки, и полной оплатой в момент получения. На этапах, где необходимо формировать чек, сервис будет делать это автоматически. Использование функционала заказов описано в разделе «Инструкция по использованию сервиса».

ПолеОписаниеТип, возм. значения
idСистемный идентификатор заказаЦелое число
org_idСистемный идентификатор организацииЦелое число
salepoint_idСистемный идентификатор торговой точки (кассы)Целое число
ext_idУникальный внешний идентификатор заказастрока
order_statusСтатус заказаЦелое число (список значений статусов заказа)
created_atДата создания заказаДата в формате YYYY-MM-DD HH:II:SS
client_contactE-Mail или телефон клиентастрока
client_nameИмя клиентастрока
order_sumПолная стоимость заказаЦелое или вещественное положительное число, до 2 десятичных разрядов, разделитель разрядов точка
order_paidСумма принятых оплат по заказуЦелое или вещественное положительное число, до 2 десятичных разрядов, разделитель разрядов точка
advance_paidСумма аванса по заказуЦелое или вещественное положительное число, до 2 десятичных разрядов, разделитель разрядов точка
shippedФлаг отгрузки заказа0 -не отгружен, 1 - отгружен
order_status_nameНаименование статуса заказастрока
productsСписок продуктов в заказемассив объектов продукт в заказе
journalЖурнал событий по заказумассив объектов событие заказа
paymentsОплаты по заказумассив объектов оплата заказа
наименованиезначение
Создан1
Получен аванс5
Оплачен частично2
Оплачен полностью3
Возврат оплаты4
GET https://vsevkassu.ru/api/v1/store/order?param1=value1&param2=value2

Команда возвращает массив объектов заказа в упрощенном виде, выбранных по заданным параметрам.

Таблица параметров фильтра:

ПараметрОписаниеТип, возможные значенияОбяз.
ext_idУникальный внешний идентификатор заказа (точное совпадение)СтрокаНет
order_statusСтатус заказа (можно указать несколько статусов)Целое числоНет
client_contactE-Mail или телефон клиента (точное совпадение)строкаНет
client_nameИмя клиента (точное совпадение)строкаНет
created_at_fromСоздан позже чемДата в формате YYYY-MM-DD HH:II:SSНет
created_at_toСоздан ранее чемДата в формате YYYY-MM-DD HH:II:SSНет
shippedПризнак отгрузки заказа0 - не отгружен, 1 - отгруженНет
offsetСменещениеЦелое числоНет

По умолчанию возвращается не более 50 объектов. Для получения большего количества, используйте смещение.

Пример: Получим заказы в статусе «Оплачен частично» и «Оплачен полностью»

GET https://vsevkassu.ru/api/v1/store/order?order_status[]=2&order_status[]=3
[
    {
        "id": 1,
        "org_id": 1,
        "salepoint_id": 1,
        "ext_id": "1",
        "order_status": 2,
        "created_at": "2021-03-15 15:54:52",
        "client_contact": "[email protected]",
        "client_name": "",
        "order_sum": "547.02",
        "order_paid": "100.00",
        "advance_paid": "0.00",
        "prepaid": "0.00",
        "credit": "0.00",
        "shipped": 0
    },
    {
        "id": 2,
        "org_id": 1,
        "salepoint_id": 1,
        "ext_id": "2",
        "order_status": 3,
        "created_at": "2021-03-17 17:08:06",
        "client_contact": "[email protected]",
        "client_name": "",
        "order_sum": "192.26",
        "order_paid": "192.26",
        "advance_paid": "0.00",
        "prepaid": "0.00",
        "credit": "0.00",
        "shipped": 0
    }
]
GET https://vsevkassu.ru/api/v1/store/order/{id}

Возвращает полный объект заказа по его системному идентификатору

Пример:

GET https://vsevkassu.ru/api/v1/store/order/20
{
    "id": 20,
    "org_id": 1,
    "salepoint_id": 1,
    "ext_id": "20",
    "order_status": 3,
    "created_at": "2021-05-07 15:21:43",
    "client_contact": "[email protected]",
    "client_name": "Вася",
    "order_sum": "2990.00",
    "order_paid": "2990.00",
    "advance_paid": "0.00",
    "shipped": 1,
    "order_status_name": "Оплачен полностью",
    "products": [
        {
            "id": 24,
            "product_id": 10,
            "vat_type": 6,
            "payed": "2990.00",
            "returned": "0.00",
            "price": "2990.00",
            "quantity": "1.000",
            "sum": "2990.00",
            "product_name": "Брючки",
            "product_ext_id": "10"
        }
    ],
    "journal": [
        {
            "action_date": "2021-05-07 15:21:43",
            "description": "Создан новый заказ",
            "action_name": "Создан заказ"
        },
        {
            "action_date": "2021-05-07 17:39:50",
            "description": "Добавлен товар: Брючки",
            "action_name": "Добавлен товар"
        },
        {
            "action_date": "2021-05-07 17:39:50",
            "description": "Сумма заказа изменена с 0.00 на 2990.00",
            "action_name": "Изменен заказ"
        },
        {
            "action_date": "2021-05-10 17:21:57",
            "description": "Добавлена оплата в сумме 2990.00",
            "action_name": "Добавлена оплата"
        },
        {
            "action_date": "2021-05-10 17:21:57",
            "description": "Произведена выдача заказа",
            "action_name": "Заказ отгружен"
        }
    ],
    "payments": [
        {
            "id": 19,
            "order_id": 20,
            "pay_accepted": 1,
            "sum_nal": "0.00",
            "sum_bn": "2990.00",
            "full_sum": "2990.00",
            "shipped": 1,
            "receipt": {
                "id": 187,
                "salepoint_id": 1,
                "external_id": "vvk_609941858417d",
                "created_at": "2021-05-10 17:21:57",
                "status": "wait",
                "organization_id": 1,
                "is_print": 1,
                "type": "1",
                "type_name": "ПРИХОД",
                "organization_name": "ИП Иванов",
                "organization_inn": "7777777777",
                "cashier_name": "",
                "cashier_inn": "",
                "salepoint_place": "",
                "salepoint_address": "",
                "kkt_serial": "000000000000000",
                "kkt_regnum": "0000000000000000",
                "kkt_fs": "9999999999999999",
                "kkt_sender_email": "",
                "fns_site": "nalog.ru",
                "fiscal_date": "",
                "shift": "",
                "doc_number": "",
                "fd_number": "",
                "sign": "",
                "buyer": {
                    "contact": "[email protected]",
                    "name": "Вася",
                    "inn": ""
                },
                "items": [
                    {
                        "item_type": 1,
                        "item_type_name": "ТОВАР",
                        "name": "Брючки",
                        "quantity": 1,
                        "quant": "штука",
                        "pay_type": 4,
                        "pay_type_name": "ПОЛНЫЙ РАСЧЕТ",
                        "price": 2990,
                        "sum": 2990,
                        "price_nds": 0,
                        "nds_type": 6,
                        "nds_type_name": "БЕЗ НДС",
                        "nds_sum": 0
                    }
                ],
                "payment": {
                    "full_sum": 2990,
                    "sum_nal": 0,
                    "sum_bn": 2990,
                    "sum_prepaid": 0,
                    "sum_postpaid": 0,
                    "sum_credit": 0,
                    "wonds": 2990,
                    "nds20": 0,
                    "nds10": 0,
                    "nds120": 0,
                    "nds110": 0,
                    "nds0": 0
                },
                "tax_name": "УСН ДОХОДЫ",
                "tax": "1"
            }
        }
    ]
}
PUT https://vsevkassu.ru/api/v1/store/order

Метод создает новый заказ по указанным параметрам. В качестве параметров в теле запроса передается JSON-объект заказа.

Пример:

PUT https://vsevkassu.ru/api/v1/store/order
{
    "salepoint_id" : 1,
     "ext_id": "1",
     "client_contact": "[email protected]",
     "client_name": "Вася",
}

В ответ отдается объект созданного заказа при успешном создании с присвоенным системным id, либо ошибка создания. Для добавления товаров и оплаты к заказу используется функция работы с товарами в заказе.

POST https://vsevkassu.ru/api/v1/store/order/{id}

Функция изменяет поля заказа с идентификатором id, переданные в объекте в теле запроса. Список полей, которые можно изменить:

{
     "ext_id": "1",
     "client_contact": "[email protected]",
     "client_name": "Вася",
}
DELETE https://vsevkassu.ru/api/v1/store/order/{id}

Удаление возможно только для заказов в статусе «Создан». При прохождении любой оплаты удаление заказа невозможно.