pub struct CreateInvoiceLink {Show 22 fields
pub title: String,
pub description: String,
pub payload: String,
pub currency: String,
pub prices: Vec<LabeledPrice>,
pub provider_token: Option<String>,
pub business_connection_id: Option<BusinessConnectionId>,
pub subscription_period: Option<Seconds>,
pub max_tip_amount: Option<u32>,
pub suggested_tip_amounts: Option<Vec<u32>>,
pub provider_data: Option<String>,
pub photo_url: Option<String>,
pub photo_size: Option<String>,
pub photo_width: Option<String>,
pub photo_height: Option<String>,
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>,
}Expand description
Use this method to create a link for an invoice. Returns the created invoice link as String on success.
Fields§
§title: StringProduct name, 1-32 characters
description: StringProduct description, 1-255 characters
payload: StringBot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.
currency: StringThree-letter ISO 4217 currency code, see more on currencies. Pass XTR for payments in Telegram Stars.
prices: Vec<LabeledPrice>Price breakdown, a JSON-serialized list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)
provider_token: Option<String>Payments provider token, obtained via Botfather. Pass None for payments in Telegram Stars.
business_connection_id: Option<BusinessConnectionId>Unique identifier of the business connection on behalf of which the link will be created. For payments in Telegram Stars only.
subscription_period: Option<Seconds>The number of seconds the subscription will be active for before the next payment. The currency must be set to “XTR” (Telegram Stars) if the parameter is used. Currently, it must always be 2592000 (30 days) if specified. Any number of subscriptions can be active for a given bot at the same time, including multiple concurrent subscriptions from the same user.
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.
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<String>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<String>Photo size in bytes
photo_width: Option<String>Photo width
photo_height: Option<String>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
Implementations§
Trait Implementations§
Source§impl Clone for CreateInvoiceLink
impl Clone for CreateInvoiceLink
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CreateInvoiceLink
impl Debug for CreateInvoiceLink
Source§impl Hash for CreateInvoiceLink
impl Hash for CreateInvoiceLink
Source§impl PartialEq for CreateInvoiceLink
impl PartialEq for CreateInvoiceLink
Source§impl Payload for CreateInvoiceLink
impl Payload for CreateInvoiceLink
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 CreateInvoiceLink
impl Serialize for CreateInvoiceLink
impl Eq for CreateInvoiceLink
impl StructuralPartialEq for CreateInvoiceLink
Auto Trait Implementations§
impl Freeze for CreateInvoiceLink
impl RefUnwindSafe for CreateInvoiceLink
impl Send for CreateInvoiceLink
impl Sync for CreateInvoiceLink
impl Unpin for CreateInvoiceLink
impl UnwindSafe for CreateInvoiceLink
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§impl<P> CreateInvoiceLinkSetters for Pwhere
P: HasPayload<Payload = CreateInvoiceLink>,
impl<P> CreateInvoiceLinkSetters for Pwhere
P: HasPayload<Payload = CreateInvoiceLink>,
Source§fn description<T>(self, value: T) -> Self
fn description<T>(self, value: T) -> Self
description 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 provider_token<T>(self, value: T) -> Self
fn provider_token<T>(self, value: T) -> Self
provider_token field.Source§fn business_connection_id(self, value: BusinessConnectionId) -> Self
fn business_connection_id(self, value: BusinessConnectionId) -> Self
business_connection_id field.Source§fn subscription_period(self, value: Seconds) -> Self
fn subscription_period(self, value: Seconds) -> Self
subscription_period 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 provider_data<T>(self, value: T) -> Self
fn provider_data<T>(self, value: T) -> Self
provider_data field.Source§fn photo_size<T>(self, value: T) -> Self
fn photo_size<T>(self, value: T) -> Self
photo_size field.Source§fn photo_width<T>(self, value: T) -> Self
fn photo_width<T>(self, value: T) -> Self
photo_width field.Source§fn photo_height<T>(self, value: T) -> Self
fn photo_height<T>(self, value: T) -> 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§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 more