SDK и модули
Официальные библиотеки RollyPay для быстрой интеграции платежей в ваш проект. Создание платежей, управление кассами, статистика и курсы — всё через пару строк кода.
Готовые модули для CMS
Скачайте ZIP-архив, распакуйте и следуйте инструкции в README.md внутри архива. Каждый модуль принимает API Key и Signing secret из настроек вашей кассы.
| Платформа | Скачать | Описание |
|---|---|---|
| rollypay-wordpress.zip | Страница настроек + REST-вебхук /wp-json/rollypay/v1/webhook | |
| rollypay-woocommerce.zip | Платёжный шлюз WooCommerce, вебхук /wp-json/rollpay-wc/v1/webhook | |
| OpenCart 3.x | rollypay-opencart.zip | Распакуйте в корень OpenCart (слияние admin/, catalog/, system/) |
| WHMCS | rollypay-whmcs.zip | Скопируйте в modules/gateways/, активируйте шлюз rollpay |
| XenForo 2.2+ | rollypay-xenforo.zip | Распакуйте в корень форума, установите аддон в ACP, callback /payment_callback.php?_xfProvider=rollypay |
| BILLmanager 6 | rollypay-billmanager.zip | Файлы в /usr/local/mgr5/, регистрация модуля, callback /mancgi/rollpaynotify |
Требования: PHP 7.4+, входящий HTTPS-вебхук, кассовые ключи из раздела Настройки кассы → API.
Для Joomla готового модуля пока нет — используйте PHP SDK или REST API напрямую.
Python
Установка
pip install rollypay
Быстрый старт
from rollypay import RollyPayClient, RollyPayError
client = RollyPayClient(api_key="ваш_api_ключ")
# Создание платежа
try:
payment = client.payments.create(
amount="1500.00",
order_id="order_12345",
payment_method="sbp",
description="Оплата заказа #12345",
customer_id="user@example.com",
redirect_url="https://myshop.com/success",
)
print(f"ID платежа: {payment['payment_id']}")
print(f"Ссылка на оплату: {payment['pay_url']}")
except RollyPayError as e:
print(f"Ошибка: {e}")
Проверка статуса платежа
payment = client.payments.get("payment_uuid")
if payment["status"] == "paid":
print("Платеж успешно оплачен!")
elif payment["status"] == "created":
print("Платеж ожидает оплаты.")
else:
print(f"Статус: {payment['status']}")
Работа с кассами
# Список касс
terminals = client.terminals.list()
for t in terminals:
print(f"Касса: {t['name']} (ID: {t['id']})")
# Баланс кассы
balance = client.balance(terminal_id="terminal_uuid")
print(f"Доступно USDT: {balance['available_usdt']}")
Текущий курс
rate = client.rate(terminal_id="terminal_uuid")
print(f"Курс: {rate['rate']} RUB/USDT")
Возможности
- Управление платежами: создание, получение информации, списки
- Управление кассами (терминалами): просмотр, настройки, ротация API-ключей
- Статистика: финансовая сводка и аналитика
- Курсы валют: актуальные курсы обмена
- Баланс: проверка баланса кассы
Обработка ошибок
| Исключение | Описание |
|---|---|
RollyPayError | Базовый класс для всех ошибок SDK |
APIError | Ошибка при выполнении запроса к API |
AuthenticationError | Неверный API-ключ |
NotFoundError | Ресурс не найден (404) |
ServerError | Ошибка на стороне сервера (5xx) |
Ссылки
- PyPI — rollypay
- Лицензия: MIT
- Python >= 3.7
Node.js
SDK для Node.js доступен по запросу. Напишите в поддержку, и мы предоставим доступ и документацию.
Ссылка на npm-пакет появится в ближайшее время.
PHP
SDK для PHP доступен по запросу. Напишите в поддержку, и мы предоставим доступ и документацию.
Ссылка на Packagist появится в ближайшее время.
Нужен другой язык?
Если вам нужен SDK для языка, которого нет в списке, свяжитесь с нами — support@rollypay.io или Telegram.