Пример чека
<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"/>
<!-- Валюта. Доступные значения: 643|840|860|978
Другие значения игнорируются
Значение по умолчанию 860
Коды валют в ISO формате
643 - RUB
840 - USD
860 - UZS
978 - EUR -->
<input type="hidden" name="currency" value="860"/>
<!-- 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}"/>
<!-- Выбор платежного инструмента Paycom.
В Paycom доступна регистрация несколько платежных
инструментов. Если платёжный инструмент не указан,
пользователю предоставляется выбор инструмента оплаты.
Если указать id определённого платежного инструмента -
пользователь перенаправляется на указанный платежный инструмент. -->
<input type="hidden" name="payment" value="{payment_id}"/>
<!-- Описание платежа
Для описания платежа доступны 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.
Пример объекта детализации
{
"discount" : { //скидка, необязательное поле
"title" : "Скидка 5%", "price" : 10000
},
"shipping" : { //доставка, необязательное поле
"title" : "Доставка до ттз-4 28/23", "price" : 500000
},
"items" : [
{ //товарная позиция, необязательное поле
"title" : "Помидоры", "price" : 505000, "count" : 2}
]
}
Типы данных
Имя | Тип | Описание |
---|---|---|
discount | Объект | Скидка, необязательное поле. |
shipping | Объект | Доставка, необязательное поле. |
items | Массив объектов | Товарная позиция, необязательное поле. |