Створення періодичного платежу

Повторні платежі в криптовалюті - це спосіб автоматизувати регулярні транзакції за допомогою цифрових активів. Вони можуть бути корисними для послуг на основі підписки, пожертвування, членства та інших періодичних платежів.

Щоб використовувати повторювані платежі, вам потрібно створити платіж, який визначає суму, валюту та частоту платежів, а потім ділитися нею зі своїми платниками. Платник буде перенаправлений на веб -сайт Cryptomus, де йому потрібно буде увійти, щоб підтвердити план оплати та здійснити перший платіж. Після цього виплати здійснюватимуться автоматично відповідно до плану.


post https://api.cryptomus.com/v1/recurrence/create Копія

Прохання

Параметри запиту

НазваТип параметраЗначення за замовчуваннямВизначення
amount*string-Повторювана сума платежу
currency*string-Валютний код
name*stringmin:3max:60-Повторюване ім'я платежу
period*string-Періодичний період оплатив наявності:weeklymonthlythree_month
to_currency-Код валюти для прийняття платежівПараметр використовується для визначення цільової валюти для перетворення періодичної суми платежів.Наприклад, створити періодичний платіж за 20 USD в біткойн:
amount: 20
currency: USD
to_currency : btc
API перетворить суму 20 USD в його еквівалент у BTC на основі поточного обмінного курсу, і користувач заплатить у BTC to_currency завжди має бути кодом криптовалюти, а не кодом фіатної валюти.
order_idstringmin:1max:100alpha_dashnullІдентифікатор замовлення у вашій системі
url_callbackurlnullURL, на який будуть надсилатися webhooks зі статусом платежу
discount_daysintegermin:1max:3650Дні знижки (необхідні з "discount_amount")
discount_amountstringnullСума знижки (необхідна з "discount_days"). Тут сума у ​​валюті параметра "валюта"
additional_datastringnullДодаткові реквізити оплати

Тип параметра

string

Визначення

Повторювана сума платежу

Тип параметра

string

Визначення

Валютний код

Тип параметра

stringmin:3max:60

Визначення

Повторюване ім'я платежу

Тип параметра

string

Визначення

Періодичний період оплатив наявності:weeklymonthlythree_month

Визначення

Код валюти для прийняття платежівПараметр використовується для визначення цільової валюти для перетворення періодичної суми платежів.Наприклад, створити періодичний платіж за 20 USD в біткойн:
amount: 20
currency: USD
to_currency : btc
API перетворить суму 20 USD в його еквівалент у BTC на основі поточного обмінного курсу, і користувач заплатить у BTC to_currency завжди має бути кодом криптовалюти, а не кодом фіатної валюти.

Тип параметра

stringmin:1max:100alpha_dash

Значення за замовчуванням

null

Визначення

Ідентифікатор замовлення у вашій системі

Тип параметра

url

Значення за замовчуванням

null

Визначення

URL, на який будуть надсилатися webhooks зі статусом платежу

Тип параметра

integermin:1max:365

Значення за замовчуванням

0

Визначення

Дні знижки (необхідні з "discount_amount")

Тип параметра

string

Значення за замовчуванням

null

Визначення

Сума знижки (необхідна з "discount_days"). Тут сума у ​​валюті параметра "валюта"

Тип параметра

string

Значення за замовчуванням

null

Визначення

Додаткові реквізити оплати

* - обов'язковий параметр

Знижка:

Перший період за дні (параметр discount_days ), який коштуватиме іншу суму (параметр discount_amount ). Наприклад, ви можете встановити discount_amount протягом перших 30 днів і щомісячного періоду, тоді користувач заплатить перший платіж із нижчою ціною, другий та наступний платежі будуть за повною ціною.

Сума знижок повинна бути у валюті, визначеній параметром "валюта".

Приклад запиту

Нижче наведено зразок прикладу з мінімальною необхідною кількістю параметрів у цьому випадку, рахунок -фактура буде створена з FIAT WURNCY USD. На сторінці оплати користувач зможе вибрати криптовалюту та мережу для оплати цього рахунку.


curl https://api.cryptomus.com/v1/recurrence/create \
-X POST \
-H 'merchant: 8b03432e-385b-4670-8d06-064591096795' \
-H 'sign: fe99035f86fa436181717b302b95bacff1' \
-H 'Content-Type: application/json' \
-d '{
	"amount": "15",
	"currency": "USDT",
	"name": "Recurring payment",
	"period": "monthly"
}'
Копія

Реакція

Параметри відповіді

НазваТип параметраВизначення
uuidstringПовторювана uuid
namestringПовторюване ім'я
order_idstring|nullІдентифікатор замовлення у вашій системі
amountstringПовторювана сума
currencystringВалютний код
payer_currencystring|nullВалюта, в якій замовник повинен здійснити платіж.
payer_amount_usdstringЕквівалентна сума USD в payer_currency , яку повинен платити клієнт
payer_amountstring|nullСума в payer_currency , яку повинен платити клієнт
url_callbackstring|nullURL, на який будуть надсилатися webhooks зі статусом платежу
periodstringПеріодичний період оплати
statusstringПовторюваний статусДоступні варіанти:• wait_accept• cancel_by_merchant• active• cancel_by_user
urlstringURL -адреса сторінки платежу Cryptomus, де платник здійснить платіж
last_pay_offstring|nullДата останнього платежу. Часовий пояс - UTC+3. Якщо значення нульова, платежів не здійснювалося.
additional_datastring|nullДодаткові реквізити оплати

Тип параметра

string

Визначення

Повторювана uuid

Тип параметра

string

Визначення

Повторюване ім'я

Тип параметра

string|null

Визначення

Ідентифікатор замовлення у вашій системі

Тип параметра

string

Визначення

Повторювана сума

Тип параметра

string

Визначення

Валютний код

Тип параметра

string|null

Визначення

Валюта, в якій замовник повинен здійснити платіж.

Тип параметра

string

Визначення

Еквівалентна сума USD в payer_currency , яку повинен платити клієнт

Тип параметра

string|null

Визначення

Сума в payer_currency , яку повинен платити клієнт

Тип параметра

string|null

Визначення

URL, на який будуть надсилатися webhooks зі статусом платежу

Тип параметра

string

Визначення

Періодичний період оплати

Тип параметра

string

Визначення

Повторюваний статусДоступні варіанти:- wait_accept- cancel_by_merchant- active- cancel_by_user

Тип параметра

string

Визначення

URL -адреса сторінки платежу Cryptomus, де платник здійснить платіж

Тип параметра

string|null

Визначення

Дата останнього платежу. Часовий пояс - UTC+3. Якщо значення нульова, платежів не здійснювалося.

Тип параметра

string|null

Визначення

Додаткові реквізити оплати

Приклад відповіді

Якщо запит буде успішним. Код відповіді - 200.


1{
2	"state": 0,
3	"result": {
4		"uuid": "afd050e8-35ea-4129-bbdd-73f510dce556",
5		"name": "Recurring payment",
6		"order_id": null,
7		"amount": "15",
8		"currency": "USDT",
9		"payer_currency": "USDT",
10		"payer_amount_usd": "15.00",
11		"payer_amount": "15.00000000",
12		"url_callback": null,
13		"period": "monthly",
14		"status": "wait_accept",
15		"url": "https://pay.cryptomus.com/recurring/afd050e8-35ea-4129-bbdd-73f510dce556",
16		"last_pay_off": null
17	}
18}
Копія

Більше прикладів

Попросіть приклад даних, щоб створити платіж рецидиву за 15 доларів США


1{
2	"amount": "15",
3	"currency": "USD",
4	"name": "Recurring payment",
5	"period": "monthly",
6	"url_callback": "https://your.site/callback"
7}
Копія

Приклад відповіді:


1{
2	"state": 0,
3	"result": {
4		"uuid": "1d4c1ef7-1dcd-4f98-9433-2e19d2e62820",
5		"name": "Recurring payment",
6		"order_id": null,
7		"amount": "15",
8		"currency": "USD",
9		"payer_currency": null,
10		"payer_amount_usd": "0.00",
11		"payer_amount": null,
12		"url_callback": "https://your.site/callback",
13		"period": "monthly",
14		"status": "wait_accept",
15		"url": "https://pay.cryptomus.com/recurring/1d4c1ef7-1dcd-4f98-9433-2e19d2e62820",
16		"last_pay_off": null
17	}
18}
Копія

Запит на приклад даних, щоб створити платіж рецидиву за 15 USDT (лише USDT буде дозволено для оплати)


1{
2	"amount": "15",
3	"currency": "USDT",
4	"name": "Recurring payment",
5	"period": "monthly",
6	"url_callback": "https://your.site/callback"
7}
Копія

Приклад відповіді:


1{
2	"state": 0,
3	"result": {
4		"uuid": "ec04dc64-fea4-445a-9698-59baa474317a",
5		"name": "Recurring payment",
6		"order_id": null,
7		"amount": "15",
8		"currency": "USDT",
9		"payer_currency": "USDT",
10		"payer_amount_usd": "15.00",
11		"payer_amount": "15.00000000",
12		"url_callback": "https://your.site/callback",
13		"period": "monthly",
14		"status": "wait_accept",
15		"url": "https://pay.cryptomus.com/recurring/ec04dc64-fea4-445a-9698-59baa474317a",
16		"last_pay_off": null
17	}
18}
Копія

Попросіть приклад даних, щоб створити платіж за 15 USD і дозволити лише валюту BTC для оплати


1{
2	"amount": "15",
3	"currency": "USD",
4	"to_currency": "BTC",
5	"name": "Recurring payment",
6	"period": "monthly",
7	"url_callback": "https://your.site/callback"
8}
Копія

Приклад відповіді:


1{
2	"state": 0,
3	"result": {
4		"uuid": "e7d9c265-3849-4ff8-84c1-15435368f05f",
5		"name": "Recurring payment",
6		"order_id": null,
7		"amount": "15",
8		"currency": "USD",
9		"payer_currency": "BTC",
10		"payer_amount_usd": "15.00",
11		"payer_amount": "0.00051495",
12		"url_callback": "https://your.site/callback",
13		"period": "monthly",
14		"status": "wait_accept",
15		"url": "https://pay.cryptomus.com/recurring/e7d9c265-3849-4ff8-84c1-15435368f05f",
16		"last_pay_off": null
17	}
18}
Копія

Попросіть приклад даних, щоб створити повторюваний платіж у розмірі 15 доларів. Перші 30 днів ціна становитиме 1 долар, після цього - 15 доларів:


1{
2	"amount": "15",
3	"currency": "USD",
4	"name": "Recurring payment",
5	"period": "monthly",
6	"discount_days": 30,
7  "discount_amount": "1"
8	"url_callback": "https://your.site/callback"
9}
Копія

Приклад відповіді:


1{
2	"state": 0,
3	"result": {
4		"uuid": "1ee00fbd-42e7-4653-b316-1ab12f8a447b",
5		"name": "Recurring payment",
6		"order_id": null,
7		"amount": "15",
8		"currency": "USD",
9		"payer_currency": null,
10		"payer_amount_usd": "0.00",
11		"payer_amount": null,
12		"url_callback": "https://your.site/callback",
13		"discount_days": "30",
14                "discount_amount": "1",
15		"end_of_discount": "2023-07-11T20:23:52+03:00",
16		"period": "monthly",
17		"status": "wait_accept",
18		"url": "https://pay.cryptomus.com/recurring/1ee00fbd-42e7-4653-b316-1ab12f8a447b",
19		"last_pay_off": null
20	}
21}
Копія