POST /sendInvoice

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

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
description String Yes

Product description, 1-255 characters

need_phone_number Boolean No

Pass True, if you require the user's phone number to complete the order

allow_sending_without_reply Boolean No

Pass True, if the message should be sent even if the specified replied-to message is not found

send_email_to_provider Boolean No

Pass True, if user's email address should be sent to provider

need_shipping_address Boolean No

Pass True, if you require the user's shipping address to complete the order

photo_width Integer No

Photo width

prices[] Array Yes

Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)

prices[].label String Yes

Portion label

prices[].amount Integer Yes

Price of the product in the smallest units of the currency (integer, not float/double). For example, for a price of US$ 1.45 pass 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).

currency String Yes

Three-letter ISO 4217 currency code, see more on currencies

provider_data String No

A 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 String No

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.

need_name Boolean No

Pass True, if you require the user's full name to complete the order

photo_height Integer No

Photo height

send_phone_number_to_provider Boolean No

Pass True, if user's phone number should be sent to provider

start_parameter String Yes

Unique deep-linking parameter that can be used to generate this invoice when used as a start parameter

reply_markup Object No

This object represents an inline keyboard that appears right next to the message it belongs to.

reply_markup.inline_keyboard[] Array Yes

Array of button rows, each represented by an Array of InlineKeyboardButton objects

disable_notification Boolean No

Sends the message silently. Users will receive a notification with no sound.

payload String Yes

Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.

chat_id Integer Yes

Unique identifier for the target private chat

title String Yes

Product name, 1-32 characters

need_email Boolean No

Pass True, if you require the user's email address to complete the order

is_flexible Boolean No

Pass True, if the final price depends on the shipping method

photo_size Integer No

Photo size

provider_token String Yes

Payments provider token, obtained via Botfather

reply_to_message_id Integer No

If the message is a reply, ID of the original message

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.