Отправка чека по методу POST
Пример чека
<form method="POST" action="https://test.paycom.uz">
<!-- Идентификатор WEB Кассы -->
<input type="hidden" name="merchant" value="{Merchant ID}"/>
<!-- Сумма платежа в тийинах -->
<input type="hidden" name="amount" value="{сумма чека в ТИИНАХ}"/>
<!-- Поля Объекта Account -->
<input type="hidden" name="account[{field_name}]" value="{field_value}"/>
<!-- ==================== НЕОБЯЗАТЕЛЬНЫЕ ПОЛЯ ====================== -->
<!-- Язык. Доступные значения: ru|uz|en
Другие значения игнорируются
Значение по умолчанию ru -->
<input type="hidden" name="lang" value="ru"/>
<!-- URL возврата после оплаты или отмены платежа.
Если URL возврата не указан, он берется из заголовка запроса Referer.
URL возврата может содержать параметры, которые заменяются Paycom при запросе.
Доступные параметры для callback:
:transaction - id транзакции или "null" если транзакцию не удалось создать
:account.{field} - поля объекта Account
Пример: https://your-service.uz/paycom/:transaction -->
<input type="hidden" name="callback" value="{url возврата после платежа}"/>
<!-- Таймаут после успешного платежа в миллисекундах.
Значение по умолчанию 15
После успешной оплаты, по истечении времени callback_timeout
производится перенаправление пользователя по url возврата после платежа -->
<input type="hidden" name="callback_timeout" value="{miliseconds}"/>
<!-- Описание платежа
Для описания платежа доступны 3 языка: узбекский, русский, английский.
Для описания платежа на нескольких языках следует использовать
несколько полей с атрибутом name="description[{lang}]"
lang может принимать значения ru|en|uz -->
<input type="hidden" name="description" value="{Описание платежа}"/>
<!-- Объект детализации платежа
Поле для детального описания платежа, например, перечисления
купленных товаров, стоимости доставки, скидки.
Значение поля (value) — JSON-строка закодированная в BASE64 -->
<input type="hidden" name="detail" value="{JSON объект детализации в BASE64}"/>
<!-- ================================================================== -->
<button type="submit">Оплатить с помощью <b>Payme</b></button>
</form>
Объект детализации
Поле детального описания платежа.
В детальном описании платежа:
перечисляются товарные позиции;
указывается стоимость доставки;
указывается размер скидки.
Значение поля (value) — JSON-строка закодированная в BASE64.
Пример объекта детализации
"detail": {
"receipt_type": 0, //тип фискального чека
"shipping": { //доставка, необязательное поле
"title": "Доставка до ттз-4 28/23",
"price": 500000
},
"items": [ //товарная позиция, обязательное поле дл фискализации
{
"discount":10000, //Скидка с учетом количества товаров или услуг в тийинах
"title": "Помидоры", //нааименование товара или услуги
"price": 505000, //цена за единицу товара или услуги, сумма указана в тийинах
"count": 2, //кол-во товаров или услуг
"code": "00702001001000001", // код *ИКПУ обязательное поле
"units": 241092, //значение изменится в зависимости от вида товара
"vat_percent": 15, //обязательное поле, процент уплачиваемого НДС для данного товара или услуги
"package_code": "123456" //Код упаковки для конкретного товара или услуги, содержится на сайте в деталях найденного ИКПУ.
}
]
}
*ИКПУ - это идентификационный код продукции и услуг.
Типы данных
Имя | Тип | Описание |
---|---|---|
receipt_type | Number | Продажа/Возврат = 0 |
shipping | Объект | Доставка, необязательное поле. |
items | Массив объектов | Товарная позиция, необязательное поле. |
Параметры массива items
Имя | Тип | Описание | Обязательное поле |
---|---|---|---|
discount | Number | Скидка с учетом количество товаров или услуг в тийинах | нет |
title | String | Название продукта | да |
price | Number | Цена за единицу товара или услугу в тийинах | да |
count | Number | Количество товаров или услуг | да |
code | String | ИКПУ (идентификационный код продукции и услуг) | да |
units | Number | Код единицы измерения | нет |
package_code | String | Код упаковки продукта | да |
vat_percent | Number | Процент уплачиваемого НДС для данного товара | да |