Как подключить

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

Перейдите в аккаунт Coinpayments -> Настройки

https://ww.coinpayments.net/index.php?cmd=acct_settings

На первой вкладке скопируйте ID продавца (seller ID)

Затем перейдите на вкладку настроек продавца, придумайте и введите секретный ключ IPN — IPN secret (он используется для подтверждения того, что вебхук приходит от нас; используйте надежную сложную строку, которую будет трудно угадать).

Ссылка IPN — URL-адрес для вебхуков, добавьте следующий: https://chatter.salebot.pro/coinpayments_callback/result

Затем перейдите в раздел API Keys и сгенерируйте пару ключей для доступа к API.

Сохраните все настройки, скопируйте данные и перейдите в настройки в Mavibot. Откройте раздел платежных систем, выберите Coinpayments.

Нам нужно ввести данные.

Чтобы сгенерировать ссылку на оплату, необходимо задать значения обязательных переменных: original_currency — исходная валюта транзакции. sending_currency — валюта, отправляемая покупателем. Например, если ваши товары оценены в USD, но вы получаете BTC, следует использовать original_currency = USD и sending_currency = BTC. original_currency и sending_currency могут иметь одинаковое значение, если конвертация валюты не требуется.

buyer_email — адрес электронной почты покупателя. Используется для отправки уведомлений, если платеж меньше необходимой суммы и требуется доплата, или для возвратов. Если эта переменная не указана, почта будет автоматически взята из переменной email, если она есть у пользователя в mavibot.

После этого необходимо задать значение переменной payment_sum (например, 10 или 0.0055 (через точку!)), сразу после этого появится переменная paycoinments_pay_url. Эту переменную можно отобразить в виде ссылки или разместить на кнопке с текстом «Оплатить». Ссылка выглядит так: https://www.coinpayments.net/index.php?cmd=checkout\\&id=CPFK5QZ3FKSNWHI75CO8M4BRVkey\\&e7782d2ce24f7d03815606a5c4a882eb

Также перед заданием значения payment_sum можно указать следующие необязательные переменные для настройки платежа:

payment_description — название товара, будет отображаться на странице информации о платеже и в IPN для транзакции.

buyer_name — имя покупателя

Как создать ссылку на оплату

Создайте ссылку на оплату 0.44444

Обратите внимание:

  • Сначала укажите email
  • Затем необязательные параметры first_name, payment_description и т.д.
  • И в последнюю очередь присвойте значение переменной payment_sum

Обратите внимание: сначала мы задаем переменные для настроек, затем payment_sum. Вы можете определять переменные раньше в цепочке, а не в одном блоке — это пример.

Затем в нужном месте выведите переменную coinpayments_pay_url, содержащую ссылку.

Для повторного платежа необходимо сбросить payment_sum, ранее сгенерированную ссылку, и после сброса переменной payment_sum получить новую ссылку.

Как обработать результат

После успешного платежа в бот придут колбэки, по которым можно понять, что платеж прошел успешно. Эти колбэки в системе отображаются как сообщения от пользователя, поэтому они не могут быть отправлены пользователем; они состоят из первых 10 символов секретного ключа и обозначения _success, например: 16831CF4b5_success

Эти колбэки НЕ ВИДИТ пользователь, они отображаются только оператору.

Тип сравнения должен быть «Полное совпадение»

Также после успешного платежа переменная coinpayments_payment_completed устанавливается в true.

Например, вы можете создать блок обработки успешного платежа с условием и вывести соответствующее сообщение пользователю:

По завершении платежа к клиенту будет добавлена переменная coinpayments_payment_callback, содержащая данные ответа платежной системы о выполненной транзакции. Вы можете извлечь необходимые данные из словаря с помощью метода get.

Как проверить статус платежа

Чтобы проверить статус платежа, необходимо вызвать coinpayments_get_payment_status() в поле Калькулятор.

Пример:

Примеры статусов:

Ожидание средств покупателя...

Средства получены и подтверждены, скоро будут отправлены вам...

Завершено