# INXY payments

## Реєстрація

Після реєстрації в сервісі [https://auth.inxy.io/ ](<https://auth.inxy.io/ >) перейдіть у меню API платіжного шлюзу та заповніть таку інформацію:

1. Назва та опис гаманця, іконка.
2. Посилання на сайт розміщується на ваш запит.

Потрібно відмітити всі прийнятні типи криптовалют і натиснути Зберегти зміни

<figure><img src="/files/cf72284af1278afa7ba11d2c7d782c834c7bdd0f" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/bb2070619448883e983f4ef5e520d00dda0e01e7" alt=""><figcaption></figcaption></figure>

Після збереження відкриється поле даних для зв’язку.

Далі згенеруйте API-ключ, натиснувши Generate(1), і введіть код, надісланий на вашу електронну пошту.

Отриману змінну слід зберігати в безпечному місці. Також скопіюйте туди Secret Key.

{% hint style="success" %}
У разі втрати ключі можна згенерувати повторно (якщо це станеться, не забудьте змінити дані в проєкті).
{% endhint %}

У полі Postback Url (2) вкажіть url для вебхуків <https://chatter.salebot.pro/inxy\\_callback/result>

<figure><img src="/files/465201c65a0fe08c3bd473331b13c1b5f2f589d0" alt=""><figcaption></figcaption></figure>

## Налаштування підключення&#x20;

Потім перейдіть у Mavibot → розділ "Acquiring" → INXY і натисніть <mark style="color:за замовчуванням;background-color:blue;">**connect**</mark>. Введіть отримані API та Secret keys у відповідні поля.

<figure><img src="/files/64b11e6021e8a4f40836db3b33e814128b9223e3" alt=""><figcaption><p>розділ "Acquiring" у Mavibot </p></figcaption></figure>

<figure><img src="/files/897a5a0f4e0c615a34ec0c01341aa7b9e07eb886" alt=""><figcaption><p>налаштування INXY у розділі "Acquiring" у Mavibot</p></figcaption></figure>

## Генерування платіжного посилання

Щоб згенерувати платіжне посилання, потрібно встановити значення змінної payment\_sum (наприклад, 1). Після цього з’явиться змінна inxy\_pay\_url. Цю змінну можна відобразити як посилання або розмістити в кнопці "Pay".

{% hint style="warning" %} <mark style="color:red;">**УВАГА!!!**</mark> Система працює з доларами! Вказана сума в payment\_sum буде прийнята платіжною системою INXY як долари.
{% endhint %}

Посилання має вигляд: [https://pay.inxy.io/sessions/umLf9cJWBRiaNwowGCE1 ](https://pay.inxy.io/sessions/umLf9cJWBRiaNwowGCE1)

Також, **перед встановленням значення змінної payment\_sum**, ви можете задати такі **додаткові змінні** для налаштування платежу:\
**inxy\_currency** — криптовалюта, в якій буде здійснено платіж.

{% hint style="info" %}
Ви можете вказати одну з доступних криптовалют, які ви відмітили під час створення API-ключа. Якщо залишити поле порожнім, платник сам обере криптовалюту з-поміж позначених..&#x20;
{% endhint %}

Доступні значення: 'BTC', 'ETH', 'LTC', 'DOGE', 'USDT', 'USDC', 'DAI'

<figure><img src="/files/dccf10b4bed116efe4527283256d09519fbfceef" alt=""><figcaption></figcaption></figure>

**inxy\_description** — опис платежу

<figure><img src="/files/ae9b634398f00b1997dc423566bb2630e3d2b794" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:red;">**Зверніть увагу**</mark>! Спочатку для налаштувань задаються додаткові змінні, потім payment\_sum.
{% endhint %}

Змінні можна задавати раніше в ланцюжку, а не всі в одному блоці. А змінну inxy\_pay\_url, яка містить посилання, слід відобразити в потрібному місці. Після натискання на неї відкриється форма оплати.

<figure><img src="/files/750eb2738f7b4966265b7ace1438b383175474f1" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:red;">**Зверніть увагу!**</mark> Рядок із загальною сумою містить значення в доларах, яке дорівнює payment\_sum. Нижче в рядку загальної суми в криптовалюті — це значення у вибраній криптовалюті. Воно часто змінюється залежно від поточного курсу. Саме цю суму клієнт має сплатити вам зі свого гаманця.
{% endhint %}

<figure><img src="/files/dbbfcd53823dde9923945d630feb90f191d696b1" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:red;">**Увага!!!**</mark> Адреса гаманця для оплати в межах однієї сесії резервується для клієнта лише на 2 години. Рекомендуйте клієнту переконатися, що час не минув і адреса гаманця є актуальною на момент оплати. Якщо час сесії сплив, потрібно буде розпочати процес оплати заново.
{% endhint %}

## Обробка результату платежу (payment callback)

Після успішної оплати в бота буде надіслано callback, який повідомить, що платіж успішно виконано. Ви бачите цей callback у системі як повідомлення від користувача, щоб користувач не міг їх надсилати. Сам користувач ЦЕЙ callback НЕ БАЧИТЬ, він відображається лише оператору. INXY має кілька типів callback:

1. Успішні callback складаються з перших 10 символів токена та постфікса success, наприклад: uc8zsjNN1x\_success

<figure><img src="/files/b1c4e1d7d3bf4d18049f580f2e367acdd3e1833a" alt=""><figcaption><p>Успішний callback платежу в діалозі з клієнтом</p></figcaption></figure>

Цей callback надходить, якщо клієнт повністю оплатив суму і з оплатою немає проблем. Разом із цим callback, **inxy\_payment\_completed** змінна буде додана до змінних проєкту, і для неї буде встановлено значення True. А також **inxy\_payment\_status** змінна набуде значення paid.

{% hint style="warning" %}
Змінна inxy\_payment\_status може змінювати своє значення протягом усього періоду обробки платежу. Після відкриття форми користувачем вона набуде статусу waiting\_payment, потім під час обробки його платежу — значення waiting\_confirmation, а після успішної обробки матиме значення paid або partially\_paid.
{% endhint %}

Під час обробки callback тип порівняння має бути "Exact Match".

Наприклад, ви можете обробити успішний платіж у умовному блоці та відобразити відповідне повідомлення користувачеві:

<figure><img src="/files/ac8994cbd54d95a786c0500ab4b08cb98ffb663f" alt=""><figcaption></figcaption></figure>

2\. Бувають випадки, коли курс криптовалюти змінився або гаманець утримав комісію за операцію, внаслідок чого на ваш рахунок зараховується неповна сума. У такому разі змінна inxy\_payment\_status набуде значення partially\_paid, і в систему буде надіслано callback.

<figure><img src="/files/56ed38aef5ed941287915328e70a03676ef3aa57" alt=""><figcaption></figcaption></figure>

У такому разі вам потрібно буде надіслати клієнту сповіщення з вимогою доплати.

Наприклад, ви можете встановити умову для старту callback і, отримавши його, надіслати клієнту вже згенероване url із платіжним посиланням ще раз, або встановити умову, що блок спрацьовує, коли змінна inxy\_payment\_status дорівнює partially\_paid.

<figure><img src="/files/0f68e88d4247564912765b0dbd8c1200f0fdc064" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Зверніть увагу, що платіжне посилання **лише** дійсне **протягом 2 годин!** Якщо клієнт не встигне оплатити решту суми, він/вона більше не зможе його відкрити. Оскільки INXY на цьому етапі вже обробить перший неповний платіж, гроші не будуть повернуті клієнту. Щоб повернути їх, вам потрібно зайти в свій особистий кабінет INXY і виконати операцію повернення коштів.
{% endhint %}

## Створення підписки

Підписки можна створювати в системі INXY. Для цього присвойте будь-яке значення змінній **inxy\_subscription\_payment** і тоді буде створено щомісячну підписку.

Якщо ви хочете вказати інший період, використовуйте такі змінні: **inxy\_subscription\_interval** дорівнює ‘day' — встановлює інтервал у днях (за замовчуванням це місяць)\
**inxy\_subscription\_period** — вкажіть значення від 1 до 30, щоб задати частоту.

Наприклад, щоб створити списання за підпискою раз на 15 днів, потрібно встановити inxy\_subscription\_interval =’day’ і inxy\_subscription\_period=15, а щоб платіж списувався кожні шість місяців, достатньо вказати inxy\_subscription\_period=6 (оскільки за замовчуванням inxy\_subscription\_interval — місяць)

<figure><img src="/files/2327e175f1c1e293c757b01e437b6a66461ada82" alt=""><figcaption></figcaption></figure>

Переходячи за посиланням, користувач побачить ту саму платіжну сторінку, але з кількома відмінностями: по-перше, збоку буде примітка, що платіж є частиною підписки із зазначеною періодичністю; і по-друге, платіжна сторінка запропонує клієнту можливість сплатити дві або три суми наперед.

{% hint style="warning" %}
О**собливості платіжної системи INXY:** Якщо клієнт сплачує x2 або x3 від суми, Mavibot отримає повідомлення про оплату лише однієї з них. Решта суми буде зарахована на баланс клієнта, звідки вона буде списуватися під час наступних дебетів. Оскільки курс криптовалюти постійно змінюється, у результаті цієї суми може не вистачити для наступного списання, що призведе до ситуації з неповністю оплаченою підпискою. У такому разі ви отримаєте callback “fail” і зможете налаштувати нагадування для клієнта.
{% endhint %}

{% hint style="warning" %}
Часткова оплата за графіком неможлива. Баланс перевіряється перед оплатою, і якщо балансу недостатньо, кошти **не будуть списані** з рахунку клієнта.
{% endhint %}

<figure><img src="/files/a326959fb4e98bf17bed936e17369f41e7ef8302" alt=""><figcaption></figcaption></figure>

Після успішної підписки, **inxy\_subscription\_id** з’явиться у змінних клієнта, вказуючи номер підписки, а **inxy\_subscription\_status** — її статус.

<figure><img src="/files/6374905fd94d3ae8fc7e897a099fa1c16f19dcbf" alt="" width="385"><figcaption></figcaption></figure>

## Скасування підписки

Щоб скасувати підписку, використайте функцію **inxy\_remove\_subscription(inxy\_subscription\_id)**. Вставте в функцію ID підписки inxy\_subscription\_id, і підписка буде скасована.

<figure><img src="/files/389e3062b4f384b3cfcf166ca4c1f0d17060b441" alt=""><figcaption></figcaption></figure>

У разі успіху ви отримаєте callback **«Статус підписки inxy\_subscription\_id — видалено»** та **inxy\_subscription\_status** змінна зміниться на відповідне значення.

<figure><img src="/files/6f3613fd85d4d3c16a21ab73dde5d13ab9d46283" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/uk/oplata/inxy-payments.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
