Поля документа
актуальнаяЧто передаётся в receipt-v4 и какие проверки проходит документ. Формат один для HTTP и TCP.
Пример
{
"id": "07b2f33c-0eaf-4353-abbf-794654654654",
"fiscal": true,
"cashless": true,
"operation": "INCOME",
"printInfo": "Спасибо за покупку",
"products": [
{
"id": "456587988",
"name": "Молоко",
"price": 100.00,
"quantity": 6.1,
"vat_value": 12.0,
"st_value": 1.0,
"calcItemAttributeCode": "0"
}
]
}Документ
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
id | String | да | GUID заказа. Защищает от дублей, по нему запрашивается статус |
operation | String | да | INCOME продажа, INCOME_RETURN возврат продажи, EXPENDITURE покупка, EXPENDITURE_RETURN возврат покупки |
products | Array | да | позиции чека, минимум одна |
fiscal | Boolean | нет | true по умолчанию: пробить чек. false: только принять оплату картой, чек не формируется |
cashless | Boolean | нет | безналичная оплата всей суммы |
cash_sum | Decimal | нет | сумма наличными при смешанной оплате |
cashless_sum | Decimal | нет | сумма безналично при смешанной оплате |
skip_bank | Boolean | нет | true: безнал уже оплачен вне кассы, банк не вызывается, см. skip_bank |
fd_number | String | для возврата | номер исходного фискального документа, это fdNumber из ответа, а не ваш id |
rrn | String | для возврата на карту | RRN исходной оплаты, см. возвраты |
printInfo | String | нет | текст в конце чека |
print | Object | нет | печатные поля: кассир, адрес, название. На фискальную часть не влияют |
needPrint | Boolean | нет | true: вернуть в ответах печатные поля чека |
Позиция
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
id | String | да | идентификатор товара в вашей базе |
name | String | да, кроме валюты | наименование |
price | Decimal | да | цена в сомах, до 4 знаков после точки. При обмене валюты это курс |
quantity | Decimal | да | количество. При обмене валюты это сумма в валюте |
vat_value | Decimal | нет | ставка НДС: 0 или 12 |
st_value | Decimal | нет | ставка НСП: 0, 1, 2, 3 или 5 |
calcItemAttributeCode | String | нет | "0" товар, "1" услуга |
currency | String | нет | буквенный код валюты. Поле превращает позицию в обмен валюты |
Ставки должны соответствовать настройкам вашей кассы и применяемой системе налогообложения.
Проверки
Документ отклоняется при приёме, если нарушено одно из правил. Текст ошибки приходит в info или message, расшифровка в разделе ошибки.
operationодно из четырёх значений выше.- При
INCOME_RETURNиEXPENDITURE_RETURNобязателенfd_number. - Возврат продажи по безналу, который касса ведёт в банк, требует
rrnилиskip_bank: true, см. возвраты. fiscal: falseвместе сcashless: falseзапрещено: не будет ни чека, ни оплаты.fiscal: falseвместе сskip_bank: trueзапрещено по той же причине.vat_valueиst_valueтолько из списка выше. Отсутствующее поле считается нулём.- Обмен валюты: валюта известна кассе, курс и сумма больше нуля,
fiscal: falseзапрещено, валютные и обычные позиции в одном чеке не смешиваются. - Смешанная оплата: см. правила сумм.
printдокумент не отклоняет: непонятное поле пропускается, чек пробивается.