Datagio Finance API — Платёжные ссылки
Создание и чтение платёжных ссылок.
Авторизация:
- Сессия кабинета:
- Кассовый ключ:
- API-ключи:
Ошибки:
Авторизация:
- Сессия кабинета:
Authorization: Bearer <token> (роуты /api/v1/...)- Кассовый ключ:
Authorization: Bearer dg_live_... (POST /api/v1/merchant/payments)- API-ключи:
X-API-Key и X-API-Secret (роуты /merchant/v1/...)Ошибки:
{ "error": { "code": "...", "message": "..." } }. Даты — RFC3339, Europe/Moscow (+03:00).Base URL:
https://api.datagio.financeСоздать платёжную ссылку (сессия)
POST
/api/v1/payment-linksСоздаёт ссылку на оплату. Нужны подтверждённый email и магазин
approved. В теле обязателен shop_id. Покупателю отдаётся checkout_url (pay_url / paymentUrl).Тело запроса (Request Body)
shop_idintegerrequired
Магазин (должен быть approved)
amountnumber | stringrequired
Цена товара в рублях (>0, не более 2 знаков после точки). Число или строка.
Пример:
1000order_idstring
Ваш внешний ID заказа (вернётся в вебхуке)
descriptionstring
Описание — видит покупатель
expires_in_minutesinteger
Срок жизни ссылки в минутах
Ответы (Responses)
201Ссылка создана
400Некорректный запрос (нет shop_id, amount ≤ 0 или дробнее копейки)
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
403Ресурс принадлежит другому мерчанту
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
404Не найдено
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
422Магазин не в статусе approved — платежи недоступны
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X POST https://api.datagio.finance/api/v1/payment-links \
-H "Authorization: Bearer <session_or_dg_live_token>" \
-H "Content-Type: application/json" \
-d '{
"shop_id": 1,
"amount": 1000,
"order_id": "ORDER-1",
"description": "Товар",
"expires_in_minutes": 60
}'Список платёжных ссылок (сессия)
GET
/api/v1/payment-linksСписок ссылок. В JSON массив
payment_links или алиас payments.Ответы (Responses)
200Список ссылок. Массив `payment_links` или алиас `payments`.
payment_linksarray
Элементы массива:
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
paymentsarray
Элементы массива:
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X GET https://api.datagio.finance/api/v1/payment-links \
-H "Authorization: Bearer <session_or_dg_live_token>" \Одна платёжная ссылка по id (сессия)
GET
/api/v1/payment-links/{id}Параметры (Parameters)
idstringrequired
Ответы (Responses)
200Платёжная ссылка
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
403Ресурс принадлежит другому мерчанту
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
404Не найдено
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X GET https://api.datagio.finance/api/v1/payment-links/{id} \
-H "Authorization: Bearer <session_or_dg_live_token>" \Отменить платёжную ссылку (сессия)
POST
/api/v1/payment-links/{id}/cancelТолько статус
pending.Параметры (Parameters)
idstringrequired
Ответы (Responses)
200Ссылка отменена
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
404Не найдено
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X POST https://api.datagio.finance/api/v1/payment-links/{id}/cancel \
-H "Authorization: Bearer <session_or_dg_live_token>" \
-H "Content-Type: application/json" \
-d '{}'Создать платёжную ссылку (кассовый ключ)
POST
/api/v1/merchant/paymentsМагазин берётся из
dg_live_.... shop_id в теле не нужен.Тело запроса (Request Body)
amountnumber | stringrequired
Цена товара в рублях (>0, не более 2 знаков после точки).
Пример:
1000order_idstring
descriptionstring
expires_in_minutesinteger
Ответы (Responses)
201Ссылка создана
400Некорректный запрос (нет shop_id, amount ≤ 0 или дробнее копейки)
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
422Магазин не в статусе approved — платежи недоступны
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X POST https://api.datagio.finance/api/v1/merchant/payments \
-H "Authorization: Bearer <session_or_dg_live_token>" \
-H "Content-Type: application/json" \
-d '{
"amount": 1000,
"order_id": "ORDER-1",
"description": "Товар",
"expires_in_minutes": 60
}'Создать платёжную ссылку (аккаунтный ключ)
POST
/merchant/v1/payment-linksНужен
shop_id, если не используете кассовый Bearer.Тело запроса (Request Body)
shop_idintegerrequired
Магазин (должен быть approved)
amountnumber | stringrequired
Цена товара в рублях (>0, не более 2 знаков после точки). Число или строка.
Пример:
1000order_idstring
Ваш внешний ID заказа (вернётся в вебхуке)
descriptionstring
Описание — видит покупатель
expires_in_minutesinteger
Срок жизни ссылки в минутах
Ответы (Responses)
201Ссылка создана
400Некорректный запрос (нет shop_id, amount ≤ 0 или дробнее копейки)
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
403Ресурс принадлежит другому мерчанту
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
404Не найдено
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
422Магазин не в статусе approved — платежи недоступны
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X POST https://api.datagio.finance/merchant/v1/payment-links \
-H "X-API-Key: pk_live_your_key" \
-H "X-API-Secret: sk_live_your_secret" \
-H "Content-Type: application/json" \
-d '{
"shop_id": 1,
"amount": 1000,
"order_id": "ORDER-1",
"description": "Товар",
"expires_in_minutes": 60
}'Список платёжных ссылок (аккаунтный ключ)
GET
/merchant/v1/payment-linksОтветы (Responses)
200Список ссылок. Массив `payment_links` или алиас `payments`.
payment_linksarray
Элементы массива:
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
paymentsarray
Элементы массива:
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X GET https://api.datagio.finance/merchant/v1/payment-links \
-H "X-API-Key: pk_live_your_key" \
-H "X-API-Secret: sk_live_your_secret" \Одна платёжная ссылка по id (аккаунтный ключ)
GET
/merchant/v1/payment-links/{id}Параметры (Parameters)
idstringrequired
Ответы (Responses)
200Платёжная ссылка
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
403Ресурс принадлежит другому мерчанту
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
404Не найдено
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X GET https://api.datagio.finance/merchant/v1/payment-links/{id} \
-H "X-API-Key: pk_live_your_key" \
-H "X-API-Secret: sk_live_your_secret" \Отменить платёжную ссылку (аккаунтный ключ)
POST
/merchant/v1/payment-links/{id}/cancelТолько статус
pending.Параметры (Parameters)
idstringrequired
Ответы (Responses)
200Ссылка отменена
Платёжная ссылка. Все суммы — строки в рублях. Даты — RFC3339 +03:00.
idstring
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
descriptionstring | null
currencystring
amountstring
Цена товара, ₽
Пример:
"1000.00"fee_bpsinteger
Ставка выбранного метода в basis points (100 = 1%). До выбора сети — крипта.
fee_percent_bpinteger
Совместимость: крипто-ставка магазина
fee_payerstring
payer_amountstring
Сколько платит покупатель, ₽
Пример:
"1000.00"merchant_creditstring
Сколько зачислится мерчанту, ₽
Пример:
"950.00"platform_revenuestring
Комиссия платформы, ₽
Пример:
"50.00"statusstring
gateway_providerstring | null
Провайдер после POST /p/{id}/select (2328)
gateway_payment_idstring | null
to_currencystring | null
Крипта (USDT/…) или RUB для СБП
networkstring | null
Сеть крипты (например TRX-TRC20) или СБП
deposit_addressstring | null
Крипто-адрес или реквизиты СБП
payer_currencystring | null
payer_crypto_amountstring | null
Сумма к отправке (строка)
qrstring | null
QR из ответа 2328
checkout_urlstring
expires_atstring | null
Пример:
"2026-09-17T18:50:00+03:00"paid_atstring | null
created_atstring
Пример:
"2026-09-17T17:50:00+03:00"updated_atstring
401Нет/неверная авторизация
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
404Не найдено
errorobject
codestring
Машиночитаемый код (domain.err.reason)
Пример:
"common.err.validation_failed"messagestring
Человекочитаемый английский текст
cURL
curl -X POST https://api.datagio.finance/merchant/v1/payment-links/{id}/cancel \
-H "X-API-Key: pk_live_your_key" \
-H "X-API-Secret: sk_live_your_secret" \
-H "Content-Type: application/json" \
-d '{}'Уведомление об успешной оплате
Webhook
payment.succeededОтправляется на
Заголовки:
Доставка: до 8 попыток, экспоненциальный backoff. Успех — любой 2xx. Идемпотентность по
webhook_url / callback_url магазина после зачисления.Заголовки:
X-Webhook-Event и Datagio-Event; при заданном webhook_secret — X-Webhook-Signature / Datagio-Signature = hex(HMAC-SHA256(raw_body, webhook_secret)).Доставка: до 8 попыток, экспоненциальный backoff. Успех — любой 2xx. Идемпотентность по
payment_link_id / id.Содержимое (Payload)
Пример:
{"event":"payment.succeeded","data":{"payment_link_id":"9c0526fe-0e45-423d-91ca-368e98b8ea96","id":"9c0526fe-0e45-423d-91ca-368e98b8ea96","shop_id":1,"order_id":"ORDER-1","amount":"1000.00","merchant_credit":"950.00","status":"paid","paid_at":"2026-09-17T18:00:00+03:00"}}eventstring
dataobject
payment_link_idstring
idstring
То же, что payment_link_id
shop_idinteger
order_idstring | null
Ваш внешний ID заказа
amountstring
Цена товара, ₽
Пример:
"1000.00"merchant_creditstring
Зачислено мерчанту, ₽
Пример:
"950.00"statusstring
paid_atstring
Пример:
"2026-09-17T18:00:00+03:00"Ожидаемый ответ (Response)
200Подтверждение приёма (любой 2xx). Иначе — повторная доставка.
Пример Payload
{
"event": "payment.succeeded",
"data": {
"payment_link_id": "9c0526fe-0e45-423d-91ca-368e98b8ea96",
"id": "9c0526fe-0e45-423d-91ca-368e98b8ea96",
"shop_id": 1,
"order_id": "ORDER-1",
"amount": "1000.00",
"merchant_credit": "950.00",
"status": "paid",
"paid_at": "2026-09-17T18:00:00+03:00"
}
}