Layer 227
constructor
inputMediaInvoice#405fef0d flags:# title:string description:string photo:flags.0?InputWebDocument invoice:Invoice payload:bytes provider:flags.3?string provider_data:DataJSON start_param:flags.1?string extended_media:flags.2?InputMedia = InputMedia;

Parameters

Name Type Description
Title string Product name, 1-32 characters
Description string Product description, 1-255 characters
Photo flags .0? InputWebDocument 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.
Invoice Invoice The actual invoice
Payload bytes Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.
Provider flags .3? string Payments provider token, obtained via Botfather
ProviderData DataJSON JSON-encoded 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.
StartParam flags .1? string Unique bot deep links start parameter. If present, 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. If absent, 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.
ExtendedMedia flags .2? InputMedia Deprecated

Returns

InputMedia

Gogram Example

// Creating InputMediaInvoice constructor
obj := &tg.InputMediaInvoice{
    Title: "Hello, World!",
    Description: "Hello, World!",
    Photo: nil,
    Invoice: &tg.Invoice{},
    Payload: []byte{0x01, 0x02, 0x03},
    Provider: "Hello, World!",
    // ... more required fields
}