Skip to content
Back to top
View this page

# SuccessfulPayment

class telegram.SuccessfulPayment(currency, total_amount, invoice_payload, telegram_payment_charge_id, provider_payment_charge_id, shipping_option_id=None, order_info=None, subscription_expiration_date=None, is_recurring=None, is_first_recurring=None, *, api_kwargs=None)

  Bases: `telegram.TelegramObject`

  This object contains basic information about a successful payment. Note that if the buyer initiates a chargeback with the relevant payment provider following this transaction, the funds may be debited from your balance. This is outside of Telegram’s control.

  Objects of this class are comparable in terms of equality. Two objects of this class are considered equal, if their `telegram_payment_charge_id` and `provider_payment_charge_id` are equal.

  Available In

  - `telegram.Message.effective_attachment`

  - `telegram.Message.successful_payment`

  Parameters:

    - currency (`str`) – Three-letter ISO 4217 currency code, or `XTR` for payments in Telegram Stars.

    - total_amount (`int`) – Total price 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).

    - invoice_payload (`str`) – Bot-specified invoice payload.

    - subscription_expiration_date (`datetime.datetime`, optional) –

      Expiration date of the subscription; for recurring payments only.

      Added in version 21.8.

    - is_recurring (`bool`, optional) –

      True, if the payment is for a subscription.

      Added in version 21.8.

    - is_first_recurring (`bool`, optional) –

      True, if the payment is the first payment of a subscription.

      Added in version 21.8.

    - shipping_option_id (`str`, optional) – Identifier of the shipping option chosen by the user.

    - order_info (`telegram.OrderInfo`, optional) – Order info provided by the user.

    - telegram_payment_charge_id (`str`) – Telegram payment identifier.

    - provider_payment_charge_id (`str`) – Provider payment identifier.

  currency

    Three-letter ISO 4217 currency code, or `XTR` for payments in Telegram Stars.

    Type:

      `str`

  total_amount

    Total price 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).

    Type:

      `int`

  invoice_payload

    Bot-specified invoice payload.

    Type:

      `str`

  subscription_expiration_date

    Optional. Expiration date of the subscription; for recurring payments only.

    Added in version 21.8.

    Type:

      `datetime.datetime`

  is_recurring

    Optional. True, if the payment is for a subscription.

    Added in version 21.8.

    Type:

      `bool`

  is_first_recurring

    Optional. True, if the payment is the first payment of a subscription.

    Added in version 21.8.

    Type:

      `bool`

  shipping_option_id

    Optional. Identifier of the shipping option chosen by the user.

    Type:

      `str`

  order_info

    Optional. Order info provided by the user.

    Type:

      `telegram.OrderInfo`

  telegram_payment_charge_id

    Telegram payment identifier.

    Type:

      `str`

  provider_payment_charge_id

    Provider payment identifier.

    Type:

      `str`

  classmethod de_json(data, bot=None)

    See `telegram.TelegramObject.de_json()`.