Чтобы абоненты-физлица могли оплачивать счета в личном кабинете с помощью ЮKassa, последовательно настройте четыре объекта.
Зарегистрируйтесь в ЮKassa. После заключения договора в ЮKassa будет создан ваш магазин.
Для интеграции вам понадобятся два параметра. Найдите их в ЮKassa.
Укажите в ЮKassa, где располагается скрипт callback-уведомлений kassa.py
. Для этого перейдите в раздел «Интеграция» — «HTTP-уведомления» и в поле «URL для уведомлений» введите путь до файла на вашем веб-сервере.
Создайте профиль для платёжной системы в LANBilling. Логин и пароль нужно будет указать в скрипте callback-уведомлений.
Скрипт нужен, чтобы фиксировать в LANBilling результаты оплат. Он обрабатывает запросы от платёжной системы — в них содержится информация об операциях. На основании этих данных скрипт создаёт платежи в биллинге.
Настройка различается для разных ОС.
Скопируйте файл kassa.py
в директорию исполняемых скриптов вашего веб-сервера:
cp /usr/local/billing/payments/yandex/kassa.py /var/www/cgi-bin/
``
Укажите в файле настройки доступа.
# Настройки логирования
YANDEX_LOG = '/var/log/billing/weblogs/yandex.kassa.log'
# Параметры подключения к LBcore
HOST = '127.0.0.1'
PORT = 34012
MANAGER = 'super_pay'
PASSWORD = '12345'
# Класс платежа (id) из таблицы pay_classses
CLASS_ID = 0
``
Сделайте скрипт исполняемым:
chmod +x /var/www/cgi-bin/kassa.py
``
Скопируйте файл kassa.py
в директорию исполняемых скриптов вашего веб-сервера:
cp /usr/local/billing/payments/yandex/kassa.py /usr/lib/cgi-bin/
``
Укажите в файле настройки доступа.
# Настройки логирования
YANDEX_LOG = '/var/log/billing/weblogs/yandex.kassa.log'
# Параметры подключения к LBcore
HOST = '127.0.0.1'
PORT = 34012
MANAGER = 'super_pay'
PASSWORD = '12345'
# Класс платежа (id) из таблицы pay_classses
CLASS_ID = 0
``
Сделайте скрипт исполняемым:
chmod +x /usr/lib/cgi-bin/kassa.py
``
Скопируйте файл kassa.py
в директорию исполняемых скриптов вашего веб-сервера:
cp /usr/local/billing/payments/yandex/kassa.py /usr/local/www/apache24/cgi-bin/
``
Укажите в файле настройки доступа.
# Настройки логирования
YANDEX_LOG = '/var/log/billing/weblogs/yandex.kassa.log'
# Параметры подключения к LBcore
HOST = '127.0.0.1'
PORT = 34012
MANAGER = 'super_pay'
PASSWORD = '12345'
# Класс платежа (id) из таблицы pay_classses
CLASS_ID = 0
``
Сделайте скрипт исполняемым:
chmod +x /usr/local/www/apache24/cgi-bin/kassa.py
``
Выполните эти шаги, если вы работате с автоплатежами.
Убедитесь, что установлен Python 3, а также дополнительные пакеты. Список различается в зависимости от ОС.
python3-requests
.
python3-requests
.
py39-requests
.
Скопируйте скрипт kassa_recurrent_payment.py
в директорию /usr/local/billing/pymodules/
:
cp /usr/local/billing/payments/yandex/kassa_recurrent_payment.py /usr/local/billing/pymodules/
``
Укажите в файле настройки доступа.
Логин и пароль от профиля платёжной системы в LANBilling.
# Логин и пароль менеджера ВПС
MANAGER = "super_pay"
PASSWORD = "12345"
ID оператора в биллинге. Если в скрипте задан ненулевой идентификатор OPER_ID, то автоплатежи будут выполняться только по договорам этого оператора:
OPER_ID = 1
ShopID и секретный ключ API:
ACCOUNT_ID = "123456"
SECRET_KEY = "test_aH-Me-ppaXhT-QarpmjvrzGxklUniJDDne73xydJIfM"
Дополнительно: валюта, ставка НДС, система налогообложения.
Перезапустите модуль LBcore. Команды различаются в разных ОС.
systemctl restart lbcore
service lbcore restart
Действия различаются для разных ОС.
Внесите изменения в файл конфигурации yooKassa.ini
:
nano /etc/lanbilling/phpclient/client/yooKassa.ini
``
Включите платёжную систему в личном кабинете абонентов LANBilling:
[yooKassa]
enabled = true
Если вы работаете с автоплатежами, укажите ID профиля платёжной системы из LANBilling:
epsManagerId = 14
Если вы не работаете с автоплатежами, отключите их:
allowAutoPayments = false
Укажите свой shopID и секретный ключ API:
shopID = 123456
apiKey = test_aH-Me-ppaXhT-QarpmjvrzGxklUniJDDne73xydJIfM
Установите минимальную сумму платежа. Чтобы убрать ограничение, введите «0».
minPaymentAmount = 10
Включите отображение кнопки оплаты через СБП.
useSbpPayment = true
При необходимости скройте кнопку «Оплата», оставив только оплату по СБП:
useCardPayment = false
Дополнительно — укажите систему налогообложения, ставку НДС, валюту.
Сохраните конфигурационный файл. Сериализуйте изменения:
/usr/local/sbin/lbwebcfg -y client /etc/lanbilling/phpclient/client/
``
Внесите изменения в файл конфигурации yooKassa.ini
:
nano /usr/local/etc/lanbilling/phpclient/client/yooKassa.ini
``
Включите платёжную систему в личном кабинете абонентов LANBilling:
[yooKassa]
enabled = true
Если вы работаете с автоплатежами, укажите ID профиля платёжной системы из LANBilling:
epsManagerId = 14
Если вы не работаете с автоплатежами, отключите их:
allowAutoPayments = false
Укажите свой shopID и секретный ключ API:
shopID = 123456
apiKey = test_aH-Me-ppaXhT-QarpmjvrzGxklUniJDDne73xydJIfM
Установите минимальную сумму платежа. Чтобы убрать ограничение, введите «0».
minPaymentAmount = 10
Включите отображение кнопки оплаты через СБП.
useSbpPayment = true
При необходимости скройте кнопку «Оплата», оставив только оплату по СБП:
useCardPayment = false
Дополнительно — укажите систему налогообложения, ставку НДС, валюту.
Сохраните конфигурационный файл. Сериализуйте изменения:
/usr/local/sbin/lbwebcfg -y client /usr/local/etc/lanbilling/phpclient/client/
``
Настройка завершена. Теперь абоненты-физлица могут пополнять баланс в личном кабинете с помощью этой платёжной системы.
Вы можете протестировать возможности оплаты. Подробнее об этом читайте на сайте ЮKassa.
Есть вопросы по документации? Пожалуйста, напишите их