# INXY payments

## Регистрация

После регистрации в сервисе [https://auth.inxy.io/ ](<https://auth.inxy.io/ >) перейдите в меню Payment gateway API и заполните следующую информацию:

1. Название и описание кошелька, иконка.
2. Ссылку на сайт можно указать по вашему желанию.

Необходимо отметить все принимаемые типы криптовалют и нажать Save Changes

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

<figure><img src="/files/78704fb776a36529402ee4de1c104002e9279227" alt=""><figcaption></figcaption></figure>

После сохранения откроется поле с данными для подключения.

Далее сгенерируйте API key, нажав Generate(1), и введите код, отправленный на вашу почту.

Полученную переменную следует сохранить в безопасном месте. Также скопируйте туда Secret Key.

{% hint style="success" %}
Ключи в случае утери можно сгенерировать заново (если это произойдет, не забудьте изменить данные в проекте).
{% endhint %}

В поле Postback Url (2) укажите url для webhooks <https://chatter.salebot.pro/inxy\\_callback/result>

<figure><img src="/files/3c0a62b9848c08e8cfb9721fc50e99c9751e80fb" alt=""><figcaption></figcaption></figure>

## Настройки подключения&#x20;

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

<figure><img src="/files/32adeacb94ffd3fe8e2a0b810b05c1a607a7c84b" alt=""><figcaption><p>раздел "Acquiring" в Mavibot </p></figcaption></figure>

<figure><img src="/files/a719eb07c27fddf5797cd15636e9d8b437b16da9" alt=""><figcaption><p>настройки INXY в разделе "Acquiring" в Mavibot</p></figcaption></figure>

## Генерация ссылки на оплату

Чтобы сгенерировать ссылку на оплату, нужно задать значение переменной payment\_sum (например, 1). После этого появится переменная inxy\_pay\_url. Эту переменную можно вывести ссылкой или разместить на кнопке "Pay".

{% hint style="warning" %} <mark style="color:красный;">**ВНИМАНИЕ!!!**</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 key. Если оставить поле пустым, плательщик сможет выбрать криптовалюту из отмеченных..&#x20;
{% endhint %}

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

<figure><img src="/files/3b11cb47c1ee55aa5c9cc613207e3220d11be504" alt=""><figcaption></figcaption></figure>

**inxy\_description** – описание платежа

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

{% hint style="warning" %} <mark style="color:красный;">**Обратите внимание**</mark>! Сначала для настроек задаются дополнительные переменные, затем payment\_sum.
{% endhint %}

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

<figure><img src="/files/14438e905c11ce726d4415c1b69c0427768a7181" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %} <mark style="color:красный;">**Обратите внимание!**</mark> В строке общей суммы содержится долларовое значение, равное payment\_sum. Ниже в общей сумме в криптовалюте — значение в выбранной криптовалюте. Оно часто меняется в зависимости от текущего курса. Именно эту сумму клиент должен заплатить вам со своего кошелька.
{% endhint %}

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

{% hint style="warning" %} <mark style="color:красный;">**Обратите внимание!!!**</mark> Адрес кошелька для оплаты в рамках одной сессии резервируется за клиентом только на 2 часа. Рекомендуйте клиенту убедиться, что время не истекло и адрес кошелька актуален на момент оплаты. Если время сессии вышло, потребуется заново начать процесс оплаты.
{% endhint %}

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

После успешной оплаты в бота будет отправлен callback, который сообщит вам, что оплата прошла успешно. Вы видите этот callback в системе как сообщение от пользователя, чтобы пользователь не мог отправлять их. Этот callback НЕ ВИДЕН самому пользователю, он отображается только оператору. У INXY есть несколько типов callback:

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

<figure><img src="/files/1b2f9c3c13a7926aa5013657fa6a08345882dc19" 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/cf930ae4c7a80b5118bfb09bf6443b213c8e2c92" alt=""><figcaption></figcaption></figure>

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

<figure><img src="/files/8f1d5fa7995a73ee89fb730a3e29c321a8acdade" alt=""><figcaption></figcaption></figure>

В этом случае вам потребуется отправить клиенту уведомление с просьбой доплатить сумму.

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

<figure><img src="/files/79d39f127ecd6e601b5e4866dcd14c324153a3f5" 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/6c53a949078898bdc1a896464d40e13d14b98245" alt=""><figcaption></figcaption></figure>

При переходе по ссылке пользователь увидит ту же страницу оплаты, но с некоторыми отличиями: во-первых, сбоку будет примечание, что платеж является частью подписки с указанной периодичностью; и во-вторых, на странице оплаты клиенту будет предложена возможность оплатить сразу две или три суммы вперед.

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

{% hint style="warning" %}
Частичной оплаты по графику быть не может. Баланс проверяется перед оплатой, и если средств недостаточно, деньги **не будут списаны** со счета клиента.
{% endhint %}

<figure><img src="/files/06db8ad0475e61047c1cb9d8c164b0a75437c3ee" alt=""><figcaption></figcaption></figure>

После успешной подписки переменная **inxy\_subscription\_id** появится в переменных клиента, указывая номер подписки, и **inxy\_subscription\_status** с ее статусом.

<figure><img src="/files/42b7300bedee624863ca19b13dd2cca65cea3022" alt="" width="385"><figcaption></figcaption></figure>

## Отмена подписки

Чтобы отменить подписку, используйте функцию **inxy\_remove\_subscription(inxy\_subscription\_id)**. Вставьте в функцию ID подписки inxy\_subscription\_id, и подписка будет отменена.

<figure><img src="/files/3fae39890184c74aafc76fb95f61f4ecb25a4789" alt=""><figcaption></figcaption></figure>

В случае успеха вы получите callback **‘Subscription status inxy\_subscription\_id - deleted’** и **inxy\_subscription\_status** переменная изменится на соответствующее значение.

<figure><img src="/files/162249c6846f05e01da6246ed5dbc93d28036d37" 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/ru/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.
