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

Введите ваш аккаунт Paynow. Перейдите в настройки, нажав на шестеренку.

Далее переходим в Sklepy i punkty płatności

Ниже в настройках строки магазина Adres powiadomień — укажите URL-адрес для получения callback-уведомления об оплате:

https://chatter.salebot.pro/paynow\\_callback/result

Ниже необходимо скопировать API-ключ (Klucz dostępu do API) и секретный ключ (Klucz obliczania podpisu)

Перейдите в ваш проект на mavibot.pro и в разделе Платежные системы — Paynow запишите найденные ключи.

Как сформировать ссылку для оплаты

Обязательные настройки

Перед указанием переменной с суммой платежа у клиента должна быть переменная email с его адресом электронной почты

Пример того, как можно запросить и сохранить адрес электронной почты, приведен ниже.

email — email покупателя (если не указан, используется фиктивный)

payment_description — описание платежа отображается в веб-интерфейсе (Внимание! Кириллица будет автоматически заменена на латиницу, не более 255 символов). Если не указано, заполняется автоматически: Оплата счета номер "здесь номер"

Для генерации ссылки на оплату необходимо задать значение переменной payment_sum (например, 150 или 100.55 (через точку!)), сразу после этого появится переменная paynow_pay_url. Эту переменную можно отобразить в виде ссылки или разместить на кнопке с текстом «Оплатить».

Ссылка имеет вид: https://paywall.paynow.pl/NOH0-0LT-SEY-XOI?token=eyJraWQiOiJhMDAyNjJjYS02NTU3LTRjOTktOGU0NC1kMTFlMTAxYjhhNTIiLCJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJOT0gwLTBMVC1TRVktWE9JIiwiYXVkIjoicGF5d2FsbC5zYW5kYm94LnBheW5vdy5wbCIsImlzcyI6InNhbmRib3gucGF5bm93LnBsIiwiZXhwIjoxNjE5NTkyOTc4LCJpYXQiOjE2MTk1MDY1Nzh9.dnCfjADHiTynvXk41TVxsQEVfDAnHFDC\\_9sdzWF4G2s

Необязательные параметры

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

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

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

language — язык страницы оплаты в формате BCP47/RFC5646 (например, pl-PL, en-US)

currency — код валюты платежа по ISO 4217. Если не указано, используется значение по умолчанию (PLN).

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

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

Пример ссылки для оплаты

Сначала мы запросим и сохраним email клиента. Создадим блок с запросом на ввод email и сохраним ввод в стрелке:

В следующем блоке сообщение не будет отображаться, мы укажем описание платежа и сразу после этого зададим переменную с суммой платежа 10 злотых (по умолчанию злотые)

Далее в нужном месте выведите переменную paynow_pay_url, содержащую ссылку. В примере это следующий блок.

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

После успешной оплаты в бот придут колбэки, по которым можно понять, что оплата прошла успешно.

Эти колбэки в системе отображаются как сообщения от пользователя, чтобы их не мог отправить сам пользователь, они состоят из первых 10 символов секретного ключа и слова success, например: omc79l97u4_success

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

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

Также после успешной оплаты переменная paynow_payment_completed устанавливается в значение True.

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

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

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

Уведомление об оплате сравнивает значение переменной paynow_payment_id с идентификатором платежа из уведомления; если они не совпадают, это означает, что оплата была произведена по старой ссылке. В вашей переписке с пользователем вы увидите уведомление об этом.

Мы настоятельно рекомендуем не перенаправлять ссылку на оплату, если предыдущая не была завершена или отменена!