Проверка чека продажи на валидность.
Проверяет значения обязательных полей чека на соответствие требованиям законодательства. Рекомендуется использовать данный метод перед продажей (Receipt.Sale).
Входные параметры
Название | Тип данных | Обязательность | Описание параметра |
---|---|---|---|
receipt | Receipt object | Обязательный | Объект чека продажи |
ignore_payments | bool | Необязательный | Игнорировать проверку платежей: true - не проверять, false - проверять. По умолчанию - true |
code | string | Необязательный | Номер чека в системе клиента. Происходит проверка на наличие данного кода в базе VCR. Проверка может быть отключена в настройках VCR - Контроль уникальности по коду чека из внешней системы |
Пример запроса
{
"id": 1,
"method": "Receipt.ValidateSale",
"params": {
"receipt": {
"code": "res-43534",
"positions": [
{
"amount": 9000,
"articul": "5449000000996",
"barcode": "5449000000996",
"discount": 0,
"name": "Heinz Яблоко",
"quantity": 1000,
"vat_value": 1200,
"icps": "02004001004002007",
"owner_type": "BuyingAndSelling"
}
],
"payments": [
{
"type": 1,
"value": 9000
}
]
},
"ignore_payments": false
},
"auth": "a2Fzc2E6a2FzNjU0MzIx",
"jsonrpc": "2.0"
}
Выходные параметры
Название | Тип данных | Описание параметра |
---|---|---|
validate | bool | true - чек валидный |
error | int | Код ошибки |
description | string | Описание ошибки |
Пример ответа: валидный чек
{
"id": 1,
"ok": true,
"result": {
"validate": true
},
"jsonrpc": "2.0"
}
Примеры ответов: ошибки
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (Cумма оплат меньше суммы позиций)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (Расхождение суммы позиций с оплатой больше 50 сум)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (params.Receipt.positions.amount < 0)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (params.Receipt.positions.barcode is null)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (params.Receipt.positions.discount < 0)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 705511,
"description": "Ошибка проверки ИКПУ. ИКПУ не прошедшие проверку: [13923001002000000 ];"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (params.Receipt.positions.icps is null)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (params.Receipt.positions.name is null)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 703000,
"description": "Неверный формат запроса"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (params.Receipt.positions.quantity <= 0)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (Ставка НДС не найдена)"
},
"jsonrpc": "2.0"
}
{
"id": 1,
"ok": false,
"result": {
"error": 701003,
"description": "Некорректные входные данные (Ставка НДС в 15% не действует с 01.01.2023)"
},
"jsonrpc": "2.0"
}