как исправить ошибку с invoice? pyTelegramBotAPI

Рейтинг: 0Ответов: 1Опубликовано: 10.05.2023

Я решил сделать оплату через telegram, но у меня вылазит ошибка: telebot.apihelper.ApiTelegramException: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: CURRENCY_INVALID

как это решить? вот мой код:

import telebot
from telebot.types import LabeledPrice, ShippingOption

token = 'token'
provider_token = 'provider_token'
bot = telebot.TeleBot(token)

@bot.message_handler(commands=['pay'])
def command_pay(message):
    bot.send_invoice(
        chat_id = message.chat.id,
        title='DISCORD NITRO',
        description='дискорд нитро',
        provider_token=provider_token,
        currency='RUB',
        photo_url=None,
        need_shipping_address=False,
        need_name=False,
        need_phone_number=False,
        is_flexible=False,
        start_parameter='time-machine-example',
        prices=[types.LabeledPrice(label='title',amount=int(150)*100)],
        invoice_payload='')


bot.polling(none_stop=True, skip_pending = True)

Я полностью копировал код отсюда https://github.com/eternnoir/pyTelegramBotAPI/blob/master/examples/payments_example.py но это не помогло

Ответы

▲ 1Принят

Провайдер, которого вы используете, не поддерживают валюту "RUB", нужно или поменять провайдера, или поменять валюту