Struct teloxide_core::payloads::SendInvoice
source · pub struct SendInvoice {Show 27 fields
pub chat_id: Recipient,
pub title: String,
pub description: String,
pub payload: String,
pub provider_token: String,
pub currency: String,
pub prices: Vec<LabeledPrice>,
pub message_thread_id: Option<ThreadId>,
pub max_tip_amount: Option<u32>,
pub suggested_tip_amounts: Option<Vec<u32>>,
pub start_parameter: Option<String>,
pub provider_data: Option<String>,
pub photo_url: Option<Url>,
pub photo_size: Option<u32>,
pub photo_width: Option<u32>,
pub photo_height: Option<u32>,
pub need_name: Option<bool>,
pub need_phone_number: Option<bool>,
pub need_email: Option<bool>,
pub need_shipping_address: Option<bool>,
pub send_phone_number_to_provider: Option<bool>,
pub send_email_to_provider: Option<bool>,
pub is_flexible: Option<bool>,
pub disable_notification: Option<bool>,
pub protect_content: Option<bool>,
pub reply_parameters: Option<ReplyParameters>,
pub reply_markup: Option<InlineKeyboardMarkup>,
}
Expand description
Use this method to send invoices. On success, the sent Message
is returned.
Fields§
§chat_id: Recipient
Unique identifier for the target private chat
title: String
Product name, 1-32 characters
description: String
Product description, 1-255 characters
payload: String
Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.
provider_token: String
Payments provider token, obtained via Botfather
currency: String
Three-letter ISO 4217 currency code, see more on currencies
prices: Vec<LabeledPrice>
Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)
message_thread_id: Option<ThreadId>
Unique identifier for the target message thread (topic) of the forum; for forum supergroups only
max_tip_amount: Option<u32>
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
suggested_tip_amounts: Option<Vec<u32>>
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: Option<String>
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: Option<String>
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: Option<Url>
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: Option<u32>
Photo size in bytes
photo_width: Option<u32>
Photo width
photo_height: Option<u32>
Photo height
need_name: Option<bool>
Pass True, if you require the user’s full name to complete the order
need_phone_number: Option<bool>
Pass True, if you require the user’s phone number to complete the order
need_email: Option<bool>
Pass True, if you require the user’s email address to complete the order
need_shipping_address: Option<bool>
Pass True, if you require the user’s shipping address to complete the order
send_phone_number_to_provider: Option<bool>
Pass True, if user’s phone number should be sent to provider
send_email_to_provider: Option<bool>
Pass True, if user’s email address should be sent to provider
is_flexible: Option<bool>
Pass True, if the final price depends on the shipping method
disable_notification: Option<bool>
Sends the message silently. Users will receive a notification with no sound.
protect_content: Option<bool>
Protects the contents of sent messages from forwarding and saving
reply_parameters: Option<ReplyParameters>
Description of the message to reply to
reply_markup: Option<InlineKeyboardMarkup>
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.
Implementations§
Trait Implementations§
source§impl Clone for SendInvoice
impl Clone for SendInvoice
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for SendInvoice
impl Debug for SendInvoice
source§impl Hash for SendInvoice
impl Hash for SendInvoice
source§impl PartialEq for SendInvoice
impl PartialEq for SendInvoice
source§impl Payload for SendInvoice
impl Payload for SendInvoice
source§fn timeout_hint(&self) -> Option<Duration>
fn timeout_hint(&self) -> Option<Duration>
GetUpdates
with
big timeout
), the minimum timeout that should be used.source§impl Serialize for SendInvoice
impl Serialize for SendInvoice
impl Eq for SendInvoice
impl StructuralPartialEq for SendInvoice
Auto Trait Implementations§
impl Freeze for SendInvoice
impl RefUnwindSafe for SendInvoice
impl Send for SendInvoice
impl Sync for SendInvoice
impl Unpin for SendInvoice
impl UnwindSafe for SendInvoice
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<T> Erasable for T
impl<T> Erasable for T
source§impl<P> HasPayload for Pwhere
P: Payload,
impl<P> HasPayload for Pwhere
P: Payload,
source§fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload
fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload
source§fn payload_ref(&self) -> &<P as HasPayload>::Payload
fn payload_ref(&self) -> &<P as HasPayload>::Payload
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<P> SendInvoiceSetters for Pwhere
P: HasPayload<Payload = SendInvoice>,
impl<P> SendInvoiceSetters for Pwhere
P: HasPayload<Payload = SendInvoice>,
source§fn description<T>(self, value: T) -> Self
fn description<T>(self, value: T) -> Self
description
field.source§fn provider_token<T>(self, value: T) -> Self
fn provider_token<T>(self, value: T) -> Self
provider_token
field.source§fn prices<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = LabeledPrice>,
fn prices<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = LabeledPrice>,
prices
field.source§fn message_thread_id(self, value: ThreadId) -> Self
fn message_thread_id(self, value: ThreadId) -> Self
message_thread_id
field.source§fn max_tip_amount(self, value: u32) -> Self
fn max_tip_amount(self, value: u32) -> Self
max_tip_amount
field.source§fn suggested_tip_amounts<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = u32>,
fn suggested_tip_amounts<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = u32>,
suggested_tip_amounts
field.source§fn start_parameter<T>(self, value: T) -> Self
fn start_parameter<T>(self, value: T) -> Self
start_parameter
field.source§fn provider_data<T>(self, value: T) -> Self
fn provider_data<T>(self, value: T) -> Self
provider_data
field.source§fn photo_size(self, value: u32) -> Self
fn photo_size(self, value: u32) -> Self
photo_size
field.source§fn photo_width(self, value: u32) -> Self
fn photo_width(self, value: u32) -> Self
photo_width
field.source§fn photo_height(self, value: u32) -> Self
fn photo_height(self, value: u32) -> Self
photo_height
field.source§fn need_phone_number(self, value: bool) -> Self
fn need_phone_number(self, value: bool) -> Self
need_phone_number
field.source§fn need_email(self, value: bool) -> Self
fn need_email(self, value: bool) -> Self
need_email
field.source§fn need_shipping_address(self, value: bool) -> Self
fn need_shipping_address(self, value: bool) -> Self
need_shipping_address
field.source§fn send_phone_number_to_provider(self, value: bool) -> Self
fn send_phone_number_to_provider(self, value: bool) -> Self
send_phone_number_to_provider
field.source§fn send_email_to_provider(self, value: bool) -> Self
fn send_email_to_provider(self, value: bool) -> Self
send_email_to_provider
field.source§fn is_flexible(self, value: bool) -> Self
fn is_flexible(self, value: bool) -> Self
is_flexible
field.source§fn disable_notification(self, value: bool) -> Self
fn disable_notification(self, value: bool) -> Self
disable_notification
field.source§fn protect_content(self, value: bool) -> Self
fn protect_content(self, value: bool) -> Self
protect_content
field.source§fn reply_parameters(self, value: ReplyParameters) -> Self
fn reply_parameters(self, value: ReplyParameters) -> Self
reply_parameters
field.source§fn reply_markup(self, value: InlineKeyboardMarkup) -> Self
fn reply_markup(self, value: InlineKeyboardMarkup) -> Self
reply_markup
field.