# Coinpayments

* [Як підключити](#podklyuchenie) посилання How to connect
* [Як сформувати посилання на оплату](#kak-sformirovat-ssylku-na-oplatu) посилання How to generate a payment link
* [Як обробити результат](#obrabotka-rezultata) посилання How to process the result
* [Як перевірити статус платежу](#proverka-statusa-platezha) посилання How to check the payment status

## Як підключити

Щоб підключити платіжну систему Coinpayments, вам знадобляться чотири значення: ID продавця, секрет IPN (для вебхуків), приватний ключ API та публічний ключ API. Також потрібно буде вказати URL вебхука.

Перейдіть до особистого кабінету Coinpayments -> Налаштування облікового запису <https://www.coinpayments.net/index.php?cmd=acct_settings>

![](https://lh3.googleusercontent.com/xACTDovKtHxhj7vrWkS0u2TpAy_mK1VU7fR7k2KAD_6lL9OHyKsn4Np54iD4jb7Gjackry858WfaABz37i6tkfn5HZW94n4SKqDq3ooRToxaeXQPRbhvgnKG-KrAssSlHy2lrSSQ)

На першій вкладці скопіюйте ID продавця. (**ID продавця**)

![](/files/4fb3cccb9e0c2fd7efdbb7e06d88f9bf445962d8)

Далі перейдіть на вкладку "Налаштування продавця" та створіть і введіть секретний ключ IPN - **секрет IPN** ( Це використовується для перевірки, що вебхук надходить від нас). Використовуйте надійний, складний рядок, який важко вгадати

IPN-посилання - це URL для вебхуків, додайте наступне: **<https://chatter.salebot.pro/coinpayments\\_callback/result>**

![](https://lh6.googleusercontent.com/K939LTpXmntuJKU1tTN6NTBgl2ziiQTG7okWMRAdOMMQa0K7LbH0X3l7FWmd74FPqY9NOOGl89tbK99fgCpFLva4NJ8VVZVwwGfaE9YYKQ5EOkkb72Qz3FO5jPisxWxrAX8Ac94p)

Далі перейдіть до розділу API Keys і згенеруйте пару ключів для доступу до API.

![](https://lh6.googleusercontent.com/4Y9V4YRgYAvMJNelxlO5bhynVt1er0a5F-QNnOitbBrWFfOLPwJpOM8BHKgMcXxlKzwE9rc32Coxo-iVB_kvGRrgf0XXEjSsop5Uic8CP-8ey8Ll7a_CkvB7D3tcpcEgUo0Dbz7N)

Збережіть усі налаштування, скопіюйте дані та перейдіть до налаштувань у Mavibot. Відкрийте розділ "Acquiring", виберіть Coinpayments.

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

Вам потрібно ввести отримані дані.

<figure><img src="/files/5ab61b33be740285ace93c01d558c57b862d3253" alt="" width="563"><figcaption></figcaption></figure>

Щоб згенерувати посилання на оплату, потрібно встановити значення потрібних змінних:

<table><thead><tr><th width="201">Змінні</th><th width="228">Значення змінної</th><th>Примітка</th></tr></thead><tbody><tr><td> <strong>original_currency</strong> </td><td>Початкова валюта транзакції.</td><td></td></tr><tr><td><strong>sending_currency</strong></td><td>Валюта, яку надішле клієнт.</td><td>Наприклад, якщо ваші товари мають ціну в USD, але ви отримуєте BTC, слід використовувати original_currency = USD і sending_currency = BTC. original_currency та sending_currency можуть мати одне значення, якщо конвертація валюти не потрібна.</td></tr><tr><td><strong>buyer_email</strong> </td><td>Електронна адреса клієнта.</td><td>Для надсилання сповіщень, якщо платіж на меншу суму і потрібно доплатити, або для повернень коштів. Якщо ця змінна не встановлена, пошта буде взята автоматично зі змінної email, якщо вона є у користувача в Mavibot.</td></tr></tbody></table>

Після цього потрібно встановити значення **payment\_sum** змінної (наприклад, 10 або 0.0055 **(через крапку!)),** а **coinpayments\_pay\_url** змінна з'явиться одразу після цього. Цю змінну можна відображати як посилання або розмістити на кнопці з текстом "Pay". Посилання виглядає так: **<https://www.coinpayments.net/index.php?cmd=checkout\\&id=CPFK5QZ3FKSNWHI75CO8M4BRVD\\&key=e7782d2ce24f7d03815606a5c4a882eb>**

Також перед встановленням значення змінної payment\_sum можна задати такі необов'язкові змінні для налаштування платежу.

**payment\_description** - назва товару буде на сторінці з інформацією про платіж і в IPN для транзакції.

**buyer\_name** - ім'я клієнта

Ось як виглядає сторінка оплати.

![](https://lh3.googleusercontent.com/Yn1a6_JOW4wkj2SqNwkkJYMBZoh4JcR1HEinzP67O6WmYBcCV3IdRw_JCEQI0L7OV-8IuH_JdMEdOaduymc0vs5QAmpfcgrU0tFD9ZrT6V_B8vvQqe-sQcUDMsd9PJRa_uUsJAsX)

## Як сформувати посилання на оплату

Створити посилання на оплату на суму 0.0256

<figure><img src="/files/81f37eadd72260eecb8b2a937c4262b0fa313707" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="info" %}
**Зверніть увагу:** \
\- Спочатку вкажіть адресу електронної пошти\
\- Далі необов'язкові параметри  **first\_name, payment\_description** тощо.\
\- Нарешті, присвойте значення **payment\_sum** змінну.
{% endhint %}

Зверніть увагу, що спочатку ми встановлюємо змінні для налаштувань, потім **payment\_sum.** Змінні можна встановлювати раніше в ланцюжку, а не в одному блоці, це приклад.

Далі виводимо **coinpayments\_pay\_url** змінну в потрібному місці, яка містить посилання

<figure><img src="/files/3a25ebf40b9bf576cfa9d40eb74ce4880d3f545e" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="warning" %}
Щоб здійснити повторний платіж, потрібно скинути payment\_sum, раніше згенероване посилання, а потім знову присвоїти змінній payment\_sum, щоб отримати нове посилання.
{% endhint %}

## Як обробити результат

Після успішної оплати до бота будуть надіслані колбеки, які повідомлять вам, що платіж було успішно виконано. Ви бачите ці колбеки в системі як повідомлення від користувача. Щоб користувач не міг їх надіслати, вони складаються з перших 10 символів секретного ключа та постфікса \_success, наприклад: **16831CF4b5\_success**

{% hint style="success" %}
Ці колбеки НЕ ВИДИМІ для користувача, вони відображаються лише оператору.
{% endhint %}

{% hint style="danger" %}
Тип порівняння має бути "Complete Match"
{% endhint %}

Також після успішної оплати змінна coinpayments\_payment\_completed встановлюється в True.

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

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

Після завершення платежу **coinpayments\_payment\_callback** змінна буде додана до клієнта, міститиме дані відповіді платіжної системи щодо завершеної транзакції. Ви можете витягти потрібні дані з отриманого словника за допомогою **get** методу.

## Як перевірити статус платежу

Щоб перевірити статус платежу, використовуйте **coinpayments\_get\_payment\_status()** метод у полі Calculator.

Приклад:

<figure><img src="/files/aa658758a94f440449deb441a78e60575798eb73" alt="" width="563"><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/coinpayments.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.
