Skip to content

The Invoice Payment object ​

Attributes ​

  • id (string) Unique identifier for the object.

  • object (string) String representing the object’s type. Objects of the same type share the same value.

  • amount_paid (integer, nullable) Amount that was actually paid for this invoice, in the smallest currency unit. This field is null until the payment is paid. This amount can be less than the amount_requested if the PaymentIntent’s amount_received is not sufficient to pay all of the invoices that it is attached to.

  • amount_requested (integer) Amount intended to be paid toward this invoice, in the smallest currency unit

  • created (timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.

  • currency (string) Three-letter ISO currency code, in lowercase. Must be a supported currency.

  • invoice (string, expandable (can be expanded into an object with the expand request parameter)) The invoice that was paid.

  • is_default (boolean) Stripe automatically creates a default InvoicePayment when the invoice is finalized, and keeps it synchronized with the invoice’s amount_remaining. The PaymentIntent associated with the default payment can’t be edited or canceled directly.

  • livemode (boolean) If the object exists in live mode, the value is true. If the object exists in test mode, the value is false.

  • payment (object) The details on the payment.

    • payment.charge (string, nullable, expandable (can be expanded into an object with the expand request parameter)) ID of the successful charge for this payment when type is charge.Note: charge is only surfaced if the charge object is not associated with a payment intent. If the charge object does have a payment intent, the Invoice Payment surfaces the payment intent instead.

    • payment.payment_intent (string, nullable, expandable (can be expanded into an object with the expand request parameter)) ID of the PaymentIntent associated with this payment when type is payment_intent. Note: This property is only populated for invoices finalized on or after March 15th, 2019.

    • payment.payment_record (string, nullable, expandable (can be expanded into an object with the expand request parameter)) ID of the PaymentRecord associated with this payment when type is payment_record.

    • payment.type (enum) Type of payment object associated with this invoice payment. Possible enum values:

      • charge
      • payment_intent
      • payment_record
  • status (string) The status of the payment, one of open, paid, or canceled.

  • status_transitions (object) The timestamps when the payment’s status was updated.

    • status_transitions.canceled_at (timestamp, nullable) The time that the payment was canceled.

    • status_transitions.paid_at (timestamp, nullable) The time that the payment succeeded.

The Invoice Payment object ​

json
{
  "id": "inpay_1M3USa2eZvKYlo2CBjuwbq0N",
  "object": "invoice_payment",
  "amount_paid": 2000,
  "amount_requested": 2000,
  "created": 1391288554,
  "currency": "usd",
  "invoice": "in_103Q0w2eZvKYlo2C5PYwf6Wf",
  "is_default": true,
  "livemode": false,
  "payment": {
    "type": "payment_intent",
    "payment_intent": "pi_103Q0w2eZvKYlo2C364X582Z"
  },
  "status": "paid",
  "status_transitions": {
    "canceled_at": null,
    "paid_at": 1391288554
  }
}

Stripe API Reference - Self-contained docs reference, refreshed 2026-05-18