| Параметр | Значения и поведение |
|---|---|
usageMode | 0 — многоразовая: несколько отдельных платежей. 1 — одноразовая: одна транзакция на всю ссылку. |
paymentMode | 0 — выбор способа на форме, paymentMethod не передавать. 1 — фиксированный способ, paymentMethod обязателен. |
| Заголовок | Что передать |
|---|---|
X-MerchantId | Идентификатор магазина в формате UUID. |
X-Secret | API-ключ магазина. Хранится на сервере, покупателю не передаётся. |
Content-Type | application/json для запросов с телом. |
Idempotency-Key | Обязателен при создании. Уникальный ключ операции, до 128 символов: латинские буквы, цифры и ._:-. |
| Поле | Обязательное | Правила |
|---|---|---|
usageMode | нет | Число 0 или 1, не строка. Без поля создаётся многоразовая ссылка. |
paymentMode | да | Число 0 или 1, не строка. Указывайте оба режима явно. |
paymentMethod | зависит | Числовой идентификатор способа оплаты. Обязателен при paymentMode: 1; при paymentMode: 0 поле нужно опустить. |
currency | да | Код доступной валюты, например RUB. Совместимость проверяется по способам и настройкам магазина. |
minAmount | нет | Положительная сумма строкой, с точкой. До 2 знаков после точк и, для USDT — до 8. |
maxAmount | нет | То же правило. Должна быть не меньше minAmount. Равные значения фиксируют сумму. Без обоих полей действуют системные лимиты. |
name | нет | Название ссылки, до 128 символов. |
description | нет | Назначение платежа, до 512 символов. При пустом значении подставляется «Оплата». |
orderId | нет | Идентификатор заказа, до 128 символов. Допустим только у одноразовой ссылки. Не заменяет payload. |
payload | нет | Ваши данные, до 2048 байт UTF-8. Возвращаются в вебхуках и одинаковы для всех платежей ссылки. |
return | нет | Абсолютный HTTP(S)-адрес возврата после оплаты, до 2048 символов. |
failedUrl | нет | Абсолютный HTTP(S)-адрес возврата при неуспехе, до 2048 символов. |
expiresAt | нет | Будущая дата в формате ISO 8601 с часовым поясом, например 2027-01-31T23:59:59Z. |
minAmount и maxAmount.| Поле | Что означает |
|---|---|
id | Идентификатор ссылки. Это не идентификатор платежа. |
url | Адрес, который передаётся покупателю. Передавайте именно его. |
active | Принимает ли ссылка платежи. |
revision | Строковая версия состояния. Нужна при отключении ссылки. |
createdAt | Момент создания. |
201. Тот же Idempotency-Key с теми же параметрами возвращает уже созданную ссылку и 200. Тот же ключ с другими параметрами — 409. Для новой ссылки используйте новый ключ.INVALID_REQUEST и INVALID_AMOUNT — параметры запроса. METHOD_NOT_ALLOWED — способ недоступен. LINK_UNAVAILABLE — ссылка или функция недоступна. IDEMPOTENCY_CONFLICT — конфликт ключа. У кодов префикс PaymentLink:. Сохраняйте code и traceId — они нужны поддержке.minAmount и maxAmount.curl --location '/v2/payment-links' \
--header 'X-MerchantId: 11111111-2222-4333-8444-555555555555' \
--header 'X-Secret: <API_KEY>' \
--header 'Idempotency-Key: single-order-1001' \
--header 'Content-Type: application/json' \
--data '{
"name": "string",
"description": "string",
"usageMode": 0,
"paymentMode": 0,
"paymentMethod": 0,
"currency": "string",
"minAmount": "string",
"maxAmount": "string",
"orderId": "string",
"payload": "string",
"return": "string",
"failedUrl": "string",
"expiresAt": "string"
}'{
"id": "string",
"url": "string",
"name": "string",
"description": "string",
"usageMode": 0,
"paymentMode": 0,
"paymentMethod": 0,
"currency": "string",
"minAmount": "string",
"maxAmount": "string",
"payload": "string",
"return": "string",
"failedUrl": "string",
"orderId": "string",
"expiresAt": "string",
"createdAt": "string",
"active": true,
"canActivate": true,
"revision": "string"
}