Comment on page
Параметры для формирования чека
Параметр | Тип | Описание |
customerEmail | строка | Email плательщика |
customerPhone | число | Телефон плательщика в международном формате без "+" |
cashItems | строка | Позиции заказа
Получается путем кодирования base64 значения в формате json. Например: base64_encode(json_encode([["name" => "Хостинг на 1 месяц", "count" => 1, "price" => 10.00, "type" => "commodity"]])); |
Для формирования чека возврата достаточно передать cashItems. CustomerEmail или customerPhone не требуются
С 1.02.2021 года в кассовом чеке нужно обязательно указывать корректно номенклатуру (наименование, количество, цену) за товары/услуги в cashItems.
Параметр cashItems формируется из:
Параметр | Тип | Описание |
name | string | Название позиции (обязательный параметр): не более 128 символов для одной позиции |
count | number | Количество (обязательный параметр): суммарно в чеке не может быть более 100 позиций |
price | number | Цена за единицу товара (обязательный параметр) |
currency | string | По умолчанию всегда RUB (если ваши товары/услуги в рублях, то currency отдельно можно не передавать). Валюта заказа по стандарту ISO 4217 (UAH, BYN, EUR, USD итд. Полный список валют).
В чеке у пользователя всегда будут рубли, даже если вы передали валюту, отличную от RUB (конвертация происходит на стороне Unitpay). |
nds | string | Размер ставки НДС: none vat0 vat10 vat20
vat110 (ставка 10/110, применяется только для чеков с признаками способа расчета "Предоплата, Предоплата 100% и Аванс)
vat120 (ставка 20/120, применяется только для чеков с признаками способа расчета "Предоплата, Предоплата 100% и Аванс) |
type | string | |
paymentMethod | string | Признак способа расчета: full_payment - полный расчет (Используется по умолчанию) full_prepayment - предоплата 100% prepayment - предоплата advance - аванс |
sum | number | Сумма (необязательный параметр): обязателен только при испол ьзовании промокодов, купонов и скидочных сертификатов
(в sum передается значение после применения скидки на товары, sum всегда должен быть меньше или равен произведению price*count). |
Если в ссылку/запрос передается информация о нескольких товарах, то их нужно передать через запятую в виде массива: [{...},{...},{...}].
При продаже маркированного товара с 1 марта 2020 года должен отображаться признак маркировки: markCode. При формировании чека на маркированные товары должны быть переданы дополнительные параметры:
Параметр paymentMethod необязательный и может быть так же задан в настройках кассы в личном кабинете Unitpay. При этом приоритет выбора будет такой:
1) Данные из запроса cashItems на создание платежа
2) Данные из настройки кассы
3) Если не заданы пункты 1 и 2, то по умолчанию - full_payment
Параметр | Тип | Описание |
markCode | string | Код маркировки товара в формате, соответствующем требованиям ФНС России (ссылка на http://www.consultant.ru/document/cons_doc_LAW_362322/a25979352fed3ee44244249284fb21451e8118c5/) |
quantity | number | Количество товара. Суммарно в чеке не может быть более 100 позиций. |
measure | number | Единицы измерения количества предмета расчета/ Может принимать одно из значений: 0 - применяется для предметов расчета, которые могут быть реализованы поштучно или единицами, 10 - грамм, 11 - килограмм, 12 - тонна, 20 - сантиметр Если продается штучный товар, то measure всегда = 0. Если на одну конкретную единицу товара одна маркировка, то указывается quantity = 1, а mark_quantity не включается в запрос. |
markQuantity | array | Объем товаров в маркированной партии. Если в упаковке с единой маркировкой, например, 10 штук товара и вы продаете из коробки 2 штуки, то указывается quantity = 1, а в mark_quantity в числителе numerator = 2, в знаменателе denominator = 10. Пример: "mark_quantity":{"numerator":2,"denominator":10} |
Важное замечание:
Сумма заказа (sum) должна быть больше или равна price*count (из cashItems).
Если сумма заказа больше, то в чек добавится дополнительное наименование "Корректировка итога".
Если сумма заказа меньше price*count, то при переходе на оплату по сформированной ссылке / при инициации такого запроса к API, ответ от сервера будет выглядеть так:
"Сумма позиций больше стоимости заказа".
Last modified 27d ago