X
Меню сайта
GreenB
Войдите с помощью одной из соцсетей
Или с помощью нашего сайта
Зарегистрироваться Войти
Обратная связь

Обратная связь

Как подключить платежную систему ЮKassa к вашему Telegram-боту

как подключить юкасса к телеграмм ботуЕсли у вас есть Telegram-бот и вы хотите принимать через него оплату, например, за товары или услуги, вам может пригодиться платежная система ЮKassa. Не переживайте, настройка не такая сложная, как может показаться на первый взгляд. В этой статье я расскажу, как это сделать по шагам.

 Создание учетной записи на ЮKassa

Первое, что нужно сделать, это зарегистрироваться на платформе ЮKassa (бывшая Яндекс.Касса). 

  1. Перейдите на сайт ЮKassa и зарегистрируйтесь.
  2. Заполните все необходимые поля и подтвердите вашу учетную запись.

Получение API ключей

После того, как вы создали аккаунт, вам нужно получить API ключи. Это специальные "ключи", которые позволяют вашему боту "общаться" с сервисом ЮKassa.

  1. Зайдите в личный кабинет ЮKassa.
  2. Перейдите в раздел "Настройки" и найдите вкладку "API".
  3. Сгенерируйте новый ключ и сохраните его. Он будет вам нужен позже.

Создаем Telegram-бота

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

Вот подробная инструкция как это сделать 

greenballoon.ru/veb-razrabotka/kak-sdelat-telegramm-bota

Если в кратце то :

  1. Откройте Telegram и найдите бота BotFather.
  2. Следуйте инструкциям, чтобы создать нового бота.
  3. Получите API токен вашего нового бота.

 Написание кода для бота

Теперь самое интересное – программирование. Не бойтесь, если вы новичок, я постараюсь объяснить все максимально просто. Для примера, будем использовать Python и библиотеку aiogram для работы с Telegram API.

  1. Установите необходимые библиотеки:

     pip install aiogram requests
  2. Создайте файл bot.py и начните с основ:

     from aiogram import Bot, Dispatcher, types
     from aiogram.utils import executor
     import requests
    
     API_TOKEN = 'ТОКЕН_ВАШЕГО_Бота'
     YOOKASSA_API_KEY = 'ВАШ_ЮКасса_КЛЮЧ'
    
     bot = Bot(token=API_TOKEN)
     dp = Dispatcher(bot)
    
     @dp.message_handler(commands=['start'])
     async def send_welcome(message: types.Message):
         await message.reply("Привет! Нажмите на кнопку ниже, чтобы оплатить.")
    
  3. Создаем функцию для обработки платежей:

    import json
    
     @dp.message_handler(commands=['pay'])
     async def process_payment(message: types.Message):
         payment_url = create_payment(100, 'Тестовый платёж')  # Здесь 100 - это сумма, а 'Тестовый платёж' - описание
         await message.reply(f"Перейдите по ссылке для оплаты: {payment_url}")
    
     def create_payment(amount, description):
         url = 'https://api.yookassa.ru/v3/payments'
         headers = {
             'Content-Type': 'application/json',
             'Authorization': f'Bearer {YOOKASSA_API_KEY}'
         }
         data = {
             "amount": {
                 "value": str(amount),
                 "currency": "RUB"
             },
             "confirmation": {
                 "type": "redirect",
                 "return_url": "https://t.me/ваш_бот"
             },
             "capture": True,
             "description": description
         }
         response = requests.post(url, headers=headers, data=json.dumps(data))
         response_data = response.json()
         return response_data['confirmation']['confirmation_url']
    
  4. Запускаем нашего бота:

    if __name__ == '__main__':
         executor.start_polling(dp, skip_updates=True)

 Тестируем

Теперь запустите ваш бот командой:

python bot.py

Зайдите в свой Telegram, найдите вашего бота и введите команду /pay. Бот должен ответить ссылкой на оплату. Перейдите по ней и завершите платеж.

Поздравляем! Вы успешно интегрировали ЮKassa в вашего Telegram-бота. Теперь ваши пользователи могут совершать платежи напрямую через ваш бот.

Надеюсь, эта статья помогла вам разобраться, как всё работает. Если у вас возникли вопросы, не стесняйтесь задавать их в комментариях. Удачи!

Нам важна ваша реакция

🔥
0
🚀
0
0
👎
0
Новое на сайте