Open source yandex money donation service
Прием платежей на Яндекс.Деньги физ. лица
- онлайн платежи с карты, яндекса, телефона
- добавление метки к платежу
- получение и проверка оповещений на свой сервер
- пример автоматизации подписки на Telegram бота
Реализация и описание под катом
Проект на python: github.com/mediatube/open-ymds
Модули:
- money.yandex.ru — именной кошелек на который получаем деньги
- httpsserver — python сервер генерирующий страницы оплаты и принимающий оповещения от яндекса
- billingservice — remote процедура, вызываемая после получения оповещения о платеже, работает с базой
- redis-server — используется как сервер очередей для удаленного вызова процедур
- example/telegrambot — пример генерации ссылок для оплаты Telegram ботом
Кнопки для сбора денег
В Яндекс.деньгах есть возможность создавать кнопки и формы для сбора денег, в которые вы можете встроить свои комментарии и метки платежей.
Уведомления о платежах
Кроме того — есть возможность настроить прием уведомлений о платежах на ваш сервер.
Добавляем прием платежей
- Регистрируемся, повышаем статус кошелька до именного
- НАСТРОЙКИ->ВСЕ ОСТАЛЬНОЕ->HTTP УВЕДОМЛЕНИЯ
- Добавляем свой домен и секрет
- Включаем уведомления
- Поднимаем redis-server, вносим параметры доступа в rq_access.py
- Получаем SSL сертификат на домен, например через letsencrypt
- Поднимаем https сервер со своими параметрами, не забываем про фаервол если сервер не доступен
- Прописываем в httpsserver/.secret/ymsecret.py id кошелька и секрет для уведомлений из настроек
- Правим httpserver-ympayment.service, запускаем сервер под супервизором
- На машине с базой правим billing.service и запускаем systemd для этого сервиса запустится RQ worker
- Проверяем удаленный запуск процедур через очередь Redis
- Опираясь на example добавляем генерацию ссылки оплаты в вашу функцию бота
Пример работы в README: github.com/mediatube/open-ymds
python-rq python-rq.org
Автор: Вячеслав