Class CreateInvoiceLink

java.lang.Object
io.github.natanimn.telebof.requests.AbstractBaseRequest<CreateInvoiceLink, String>
io.github.natanimn.telebof.requests.create.CreateInvoiceLink

public class CreateInvoiceLink extends AbstractBaseRequest<CreateInvoiceLink, String>
CreateInvoiceLink class. Returns the created invoice link as String on success.
Since:
March 3, 2025
See Also:
  • Constructor Details

    • CreateInvoiceLink

      public CreateInvoiceLink(String title, String description, String payload, String currency, LabeledPrice[] prices, Api api)
      Required
      Parameters:
      title - title
      description - description
      payload - payload
      currency - currency
      prices - prices
      api - api
  • Method Details

    • providerToken

      public CreateInvoiceLink providerToken(String provider_token)
      Optional
      Parameters:
      provider_token - Payment provider token, obtained via @BotFather. Pass an empty string for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • maxTipAmount

      public CreateInvoiceLink maxTipAmount(int max_tip_amount)
      Optional
      Parameters:
      max_tip_amount - 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. Not supported for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • suggestedTipAmounts

      public CreateInvoiceLink suggestedTipAmounts(int[] suggested_tip_amounts)
      Optional
      Parameters:
      suggested_tip_amounts - 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.
      Returns:
      CreateInvoiceLink
    • providerData

      public CreateInvoiceLink providerData(String provider_data)
      Optional
      Parameters:
      provider_data - 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.
      Returns:
      CreateInvoiceLink
    • photoUrl

      public CreateInvoiceLink photoUrl(String photo_url)
      Optional
      Parameters:
      photo_url - URL of the product photo for the invoice. Can be a photo of the goods or a marketing image for a service.
      Returns:
      CreateInvoiceLink
    • photoSize

      public CreateInvoiceLink photoSize(int photo_size)
      Optional
      Parameters:
      photo_size - Photo size in bytes
      Returns:
      CreateInvoiceLink
    • photoWidth

      public CreateInvoiceLink photoWidth(int photo_width)
      Optional
      Parameters:
      photo_width - Photo width
      Returns:
      CreateInvoiceLink
    • photoHeight

      public CreateInvoiceLink photoHeight(int photo_height)
      Optional
      Parameters:
      photo_height - Photo height
      Returns:
      CreateInvoiceLink
    • needName

      public CreateInvoiceLink needName(boolean need_name)
      Optional
      Parameters:
      need_name - Pass True if you require the user's full name to complete the order. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • needPhoneNumber

      public CreateInvoiceLink needPhoneNumber(boolean need_phone_number)
      Optional
      Parameters:
      need_phone_number - Pass True if you require the user's phone number to complete the order. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • needEmail

      public CreateInvoiceLink needEmail(boolean need_email)
      Optional
      Parameters:
      need_email - Pass True if you require the user's email address to complete the order. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • needShippingAddress

      public CreateInvoiceLink needShippingAddress(boolean need_shipping_address)
      Optional
      Parameters:
      need_shipping_address - Pass True if you require the user's shipping address to complete the order. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • sendPhoneNumberToProvider

      public CreateInvoiceLink sendPhoneNumberToProvider(boolean send_phone_number_to_provider)
      Optional
      Parameters:
      send_phone_number_to_provider - Pass True if the user's phone number should be sent to the provider. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • sendEmailToProvider

      public CreateInvoiceLink sendEmailToProvider(boolean send_email_to_provider)
      Optional
      Parameters:
      send_email_to_provider - Pass True if the user's email address should be sent to the provider. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • isFlexible

      public CreateInvoiceLink isFlexible(boolean is_flexible)
      Optional
      Parameters:
      is_flexible - Pass True if the final price depends on the shipping method. Ignored for payments in Telegram Stars.
      Returns:
      CreateInvoiceLink
    • subscriptionPeriod

      public CreateInvoiceLink subscriptionPeriod(Integer subscription_period)
      Parameters:
      subscription_period - 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. Subscription price must not exceed 10000 Telegram Stars.
      Returns:
      CreateInvoiceLink
    • businessConnectionId

      public CreateInvoiceLink businessConnectionId(String business_connection_id)
      Parameters:
      business_connection_id - Unique identifier of the business connection on behalf of which the link will be created. For payments in Telegram Stars only.
      Returns:
      CreateInvoiceLink