Cart.Cancel
Отменяет сохранённую корзину своей интеграции.
Для авторизации передайте Bearer-токен интеграции в HTTP-заголовке. Подробнее — авторизация API.
Входные параметры
| Название | Тип данных | Обязательность | Описание |
|---|---|---|---|
| id | string | Вместо external_id | Локальный ID корзины, непустая строка до 100 символов |
| external_id | string | Вместо id | Внешний идентификатор из Cart.Add, непустая строка до 100 символов |
Передайте ровно один параметр: id или external_id. Внешний идентификатор ищется только среди корзин текущей интеграции. Если указаны оба параметра либо ни одного, возвращается 701003. Неизвестная или чужая корзина — 701001.
Пример запроса
Authorization: Bearer <integration-token>
Content-Type: application/json;charset=utf-8
{
"jsonrpc": "2.0",
"method": "Cart.Cancel",
"params": {
"id": "0123456789abcdef0123456789abcdef"
},
"id": 2
}
{
"jsonrpc": "2.0",
"method": "Cart.Cancel",
"params": {
"external_id": "ORDER-2026-001"
},
"id": 2
}
Выходные параметры
| Название | Тип данных | Описание |
|---|---|---|
| cart_id | string | Локальный ID корзины из Cart.Add |
| status | string | Состояние корзины: open, process, finished или canceled |
| receipt_id | string или null | ID завершённого чека; до завершения null |
| created_at | string | Время создания, местное время кассы, YYYY-MM-DD HH:mm:ss |
| updated_at | string | Время обновления, местное время кассы, YYYY-MM-DD HH:mm:ss |
| total | int64 | Сумма корзины после скидок в тийинах |
| items | array | Позиции корзины |
| items[].item_id | int64 | Локальный ID товара для Cart.Add |
| items[].name | string | Наименование товара |
| items[].barcode | string | Штрихкод; пустой при отсутствии |
| items[].icps | string | Код ИКПУ |
| items[].price | int64 | Цена единицы в тийинах |
| items[].quantity | int64 | Количество в тысячных долях единицы; 1000 — одна единица |
| items[].discount | int64 | Скидка на всю позицию в тийинах |
| items[].amount | int64 | Сумма после скидки в тийинах |
| items[].vat_value | int64 | Ставка НДС в сотых долях процента; -1 — без НДС |
| items[].package_code | string или null | Код упаковки; null при отсутствии |
| items[].label | string | Маркировка единицы; пустая при отсутствии |
Отмена разрешена только для open. Результат имеет ту же структуру, что Cart.Get, со статусом canceled. Состав корзины сохраняется. Повторная отмена возвращает canceled; добавления в отменённую корзину запрещены. Для продолжения создайте новую корзину. Метод не отменяет оплату или фискальный чек. Для process и finished возвращается 703102; отменить ещё не оплаченный чек в process может кассир в окне продаж.
Пример ответа
{
"jsonrpc": "2.0",
"result": {
"cart_id": "0123456789abcdef0123456789abcdef",
"status": "canceled",
"receipt_id": null,
"created_at": "2026-11-12 10:00:00",
"updated_at": "2026-11-12 10:05:00",
"total": 10000,
"items": [
{
"item_id": 101,
"name": "Тестовый товар",
"barcode": "4780000000000",
"icps": "00000000000000000",
"price": 10000,
"quantity": 1000,
"discount": 0,
"amount": 10000,
"vat_value": 0,
"package_code": null,
"label": ""
}
]
},
"ok": true,
"id": 2
}
Ошибки: общие ошибки; 701003 — некорректный id/external_id либо указаны оба; 701001 — корзина не найдена либо принадлежит другой интеграции.