{ "meta": { "deprecated": false }, "group": { "title": "Payments", "anchor": "payments" }, "object": { "anchor": "sendinvoice", "name": "sendInvoice", "description": "Use this method to send invoices. On success, the sent Message is returned.", "html_description": "

Use this method to send invoices. On success, the sent Message is returned.

", "rst_description": "Use this method to send invoices. On success, the sent :class:`aiogram.types.message.Message` is returned.", "annotations": [ { "type": "Integer or String", "required": true, "description": "Unique identifier for the target chat or username of the target channel (in the format @channelusername)", "html_description": "Unique identifier for the target chat or username of the target channel (in the format @channelusername)", "rst_description": "Unique identifier for the target chat or username of the target channel (in the format :code:`@channelusername`)\n", "name": "chat_id" }, { "type": "Integer", "required": false, "description": "Unique identifier for the target message thread (topic) of the forum; for forum supergroups only", "html_description": "Unique identifier for the target message thread (topic) of the forum; for forum supergroups only", "rst_description": "Unique identifier for the target message thread (topic) of the forum; for forum supergroups only\n", "name": "message_thread_id" }, { "type": "String", "required": true, "description": "Product name, 1-32 characters", "html_description": "Product name, 1-32 characters", "rst_description": "Product name, 1-32 characters\n", "name": "title" }, { "type": "String", "required": true, "description": "Product description, 1-255 characters", "html_description": "Product description, 1-255 characters", "rst_description": "Product description, 1-255 characters\n", "name": "description" }, { "type": "String", "required": true, "description": "Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.", "html_description": "Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.", "rst_description": "Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.\n", "name": "payload" }, { "type": "String", "required": true, "description": "Payment provider token, obtained via @BotFather", "html_description": "Payment provider token, obtained via @BotFather", "rst_description": "Payment provider token, obtained via `@BotFather `_\n", "name": "provider_token" }, { "type": "String", "required": true, "description": "Three-letter ISO 4217 currency code, see more on currencies", "html_description": "Three-letter ISO 4217 currency code, see more on currencies", "rst_description": "Three-letter ISO 4217 currency code, see `more on currencies `_\n", "name": "currency" }, { "type": "Array of LabeledPrice", "required": true, "description": "Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)", "html_description": "Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)", "rst_description": "Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)\n", "name": "prices" }, { "type": "Integer", "required": false, "description": "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 pass max_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", "html_description": "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 pass max_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", "rst_description": "The maximum accepted amount for tips in the *smallest units* of the currency (integer, **not** float/double). For example, for a maximum tip of :code:`US$ 1.45` pass :code:`max_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\n", "name": "max_tip_amount" }, { "type": "Array of Integer", "required": false, "description": "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.", "html_description": "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.", "rst_description": "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*.\n", "name": "suggested_tip_amounts" }, { "type": "String", "required": false, "description": "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", "html_description": "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", "rst_description": "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\n", "name": "start_parameter" }, { "type": "String", "required": false, "description": "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.", "html_description": "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.", "rst_description": "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.\n", "name": "provider_data" }, { "type": "String", "required": false, "description": "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.", "html_description": "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.", "rst_description": "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.\n", "name": "photo_url" }, { "type": "Integer", "required": false, "description": "Photo size in bytes", "html_description": "Photo size in bytes", "rst_description": "Photo size in bytes\n", "name": "photo_size" }, { "type": "Integer", "required": false, "description": "Photo width", "html_description": "Photo width", "rst_description": "Photo width\n", "name": "photo_width" }, { "type": "Integer", "required": false, "description": "Photo height", "html_description": "Photo height", "rst_description": "Photo height\n", "name": "photo_height" }, { "type": "Boolean", "required": false, "description": "Pass True if you require the user's full name to complete the order", "html_description": "Pass True if you require the user's full name to complete the order", "rst_description": "Pass :code:`True` if you require the user's full name to complete the order\n", "name": "need_name" }, { "type": "Boolean", "required": false, "description": "Pass True if you require the user's phone number to complete the order", "html_description": "Pass True if you require the user's phone number to complete the order", "rst_description": "Pass :code:`True` if you require the user's phone number to complete the order\n", "name": "need_phone_number" }, { "type": "Boolean", "required": false, "description": "Pass True if you require the user's email address to complete the order", "html_description": "Pass True if you require the user's email address to complete the order", "rst_description": "Pass :code:`True` if you require the user's email address to complete the order\n", "name": "need_email" }, { "type": "Boolean", "required": false, "description": "Pass True if you require the user's shipping address to complete the order", "html_description": "Pass True if you require the user's shipping address to complete the order", "rst_description": "Pass :code:`True` if you require the user's shipping address to complete the order\n", "name": "need_shipping_address" }, { "type": "Boolean", "required": false, "description": "Pass True if the user's phone number should be sent to provider", "html_description": "Pass True if the user's phone number should be sent to provider", "rst_description": "Pass :code:`True` if the user's phone number should be sent to provider\n", "name": "send_phone_number_to_provider" }, { "type": "Boolean", "required": false, "description": "Pass True if the user's email address should be sent to provider", "html_description": "Pass True if the user's email address should be sent to provider", "rst_description": "Pass :code:`True` if the user's email address should be sent to provider\n", "name": "send_email_to_provider" }, { "type": "Boolean", "required": false, "description": "Pass True if the final price depends on the shipping method", "html_description": "Pass True if the final price depends on the shipping method", "rst_description": "Pass :code:`True` if the final price depends on the shipping method\n", "name": "is_flexible" }, { "type": "Boolean", "required": false, "description": "Sends the message silently. Users will receive a notification with no sound.", "html_description": "Sends the message silently. Users will receive a notification with no sound.", "rst_description": "Sends the message `silently `_. Users will receive a notification with no sound.\n", "name": "disable_notification" }, { "type": "Boolean", "required": false, "description": "Protects the contents of the sent message from forwarding and saving", "html_description": "Protects the contents of the sent message from forwarding and saving", "rst_description": "Protects the contents of the sent message from forwarding and saving\n", "name": "protect_content" }, { "type": "Integer", "required": false, "description": "If the message is a reply, ID of the original message", "html_description": "If the message is a reply, ID of the original message", "rst_description": "If the message is a reply, ID of the original message\n", "name": "reply_to_message_id" }, { "type": "Boolean", "required": false, "description": "Pass True if the message should be sent even if the specified replied-to message is not found", "html_description": "Pass True if the message should be sent even if the specified replied-to message is not found", "rst_description": "Pass :code:`True` if the message should be sent even if the specified replied-to message is not found\n", "name": "allow_sending_without_reply" }, { "type": "InlineKeyboardMarkup", "required": false, "description": "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.", "html_description": "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.", "rst_description": "A JSON-serialized object for an `inline keyboard `_. If empty, one 'Pay :code:`total price`' button will be shown. If not empty, the first button must be a Pay button.\n", "name": "reply_markup" } ], "category": "methods" } }