Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from aiogram import Router, F, Bot
- from aiogram.filters import Command
- from aiogram.types import Message, PreCheckoutQuery
- router = Router()
- @router.message(Command('start'))
- async def create_invoice(msg: Message):
- await msg.answer_invoice(
- title="Title",
- description="Description",
- payload="payload",
- currency="XTR", # XTR only, don't change
- prices=[
- LabeledPrice(label="label", amount=5), # 5 telegram stars
- ],
- )
- @router.pre_checkout_query()
- async def checkout_handler(checkout_query: PreCheckoutQuery):
- await checkout_query.answer(ok=True)
- @router.message(F.successful_payment)
- async def star_payment(msg: Message, bot: Bot):
- await bot.refund_star_payment( # for testing auto-recovery of funds
- msg.chat.id,
- msg.successful_payment.telegram_payment_charge_id,
- )
- # What actions, such as:
- # - adding a transaction to the database
- # - opening access to paid functions
- await msg.answer(f"Your transaction id: {msg.successful_payment.telegram_payment_charge_id}")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement