sendInvoice#
Returns: Message
- class aiogram.methods.send_invoice.SendInvoice(*, chat_id: int | str, title: str, description: str, payload: str, provider_token: str, currency: str, prices: List[LabeledPrice], message_thread_id: int | None = None, max_tip_amount: int | None = None, suggested_tip_amounts: List[int] | None = None, start_parameter: str | None = None, provider_data: str | None = None, photo_url: str | None = None, photo_size: int | None = None, photo_width: int | None = None, photo_height: int | None = None, need_name: bool | None = None, need_phone_number: bool | None = None, need_email: bool | None = None, need_shipping_address: bool | None = None, send_phone_number_to_provider: bool | None = None, send_email_to_provider: bool | None = None, is_flexible: bool | None = None, disable_notification: bool | None = None, protect_content: bool | None = sentinel.UNSET_PROTECT_CONTENT, reply_to_message_id: int | None = None, allow_sending_without_reply: bool | None = None, reply_markup: InlineKeyboardMarkup | None = None, **extra_data: Any)[source]#
Use this method to send invoices. On success, the sent
aiogram.types.message.Message
is returned.Source: https://core.telegram.org/bots/api#sendinvoice
- chat_id: int | str#
Unique identifier for the target chat or username of the target channel (in the format
@channelusername
)
- title: str#
Product name, 1-32 characters
- description: str#
Product description, 1-255 characters
- payload: str#
Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.
- provider_token: str#
Payment provider token, obtained via @BotFather
- currency: str#
Three-letter ISO 4217 currency code, see more on currencies
- prices: List[LabeledPrice]#
Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)
- message_thread_id: int | None#
Unique identifier for the target message thread (topic) of the forum; for forum supergroups only
- max_tip_amount: int | None#
The maximum accepted amount for tips in the smallest units of the currency (integer, not float/double). For example, for a maximum tip of
US$ 1.45
passmax_tip_amount = 145
. See the exp parameter in currencies.json, it shows the number of digits past the decimal point for each currency (2 for the majority of currencies). Defaults to 0
- suggested_tip_amounts: List[int] | None#
A JSON-serialized array of suggested amounts of tips in the smallest units of the currency (integer, not float/double). At most 4 suggested tip amounts can be specified. The suggested tip amounts must be positive, passed in a strictly increased order and must not exceed max_tip_amount.
- start_parameter: str | None#
Unique deep-linking parameter. If left empty, forwarded copies of the sent message will have a Pay button, allowing multiple users to pay directly from the forwarded message, using the same invoice. If non-empty, forwarded copies of the sent message will have a URL button with a deep link to the bot (instead of a Pay button), with the value used as the start parameter
- provider_data: str | None#
JSON-serialized data about the invoice, which will be shared with the payment provider. A detailed description of required fields should be provided by the payment provider.
- photo_url: str | None#
URL of the product photo for the invoice. Can be a photo of the goods or a marketing image for a service. People like it better when they see what they are paying for.
- photo_size: int | None#
Photo size in bytes
- photo_width: int | None#
Photo width
- photo_height: int | None#
Photo height
- need_name: bool | None#
Pass
True
if you require the user’s full name to complete the order
- need_phone_number: bool | None#
Pass
True
if you require the user’s phone number to complete the order
- need_email: bool | None#
Pass
True
if you require the user’s email address to complete the order
- need_shipping_address: bool | None#
Pass
True
if you require the user’s shipping address to complete the order
- send_phone_number_to_provider: bool | None#
Pass
True
if the user’s phone number should be sent to provider
- send_email_to_provider: bool | None#
Pass
True
if the user’s email address should be sent to provider
- is_flexible: bool | None#
Pass
True
if the final price depends on the shipping method
- disable_notification: bool | None#
Sends the message silently. Users will receive a notification with no sound.
- protect_content: bool | None#
Protects the contents of the sent message from forwarding and saving
- reply_to_message_id: int | None#
If the message is a reply, ID of the original message
- allow_sending_without_reply: bool | None#
Pass
True
if the message should be sent even if the specified replied-to message is not found
- reply_markup: InlineKeyboardMarkup | None#
A JSON-serialized object for an inline keyboard. If empty, one ‘Pay
total price
’ button will be shown. If not empty, the first button must be a Pay button.
Usage#
As bot method#
result: Message = await bot.send_invoice(...)
Method as object#
Imports:
from aiogram.methods.send_invoice import SendInvoice
alias:
from aiogram.methods import SendInvoice
With specific bot#
result: Message = await bot(SendInvoice(...))
As reply into Webhook in handler#
return SendInvoice(...)