ChargebeeAPI
Using AI coding agents like Claude Code or Cursor? Try the official Chargebee Agent Skills to speed up your development.Try now

Transactions

This resource represents the transaction event that has happened in your account.

Sample TransactionJSON

API Index URL

https://[site].chargebee.com/api/v1/transactions

Transactions attributes

id
required, string, max chars=40

Uniquely identifies the transaction.

customer_id
optional, string, max chars=50

Identifier of the customer for which this transaction is made

subscription_id
optional, string, max chars=50

Identifier of the subscription for which this transaction is made.

payment_method
required, enumerated string, default=card

The payment method of this transaction

Possible Enum Values
card

Card

cash

Cash

check

Check

chargeback

Only applicable for a transaction of type = refund. This value is set by Chargebee when an automated chargeback occurs. You can also set this explicitly when recording a refund .

bank_transfer

Bank Transfer

amazon_payments

Amazon Payments

paypal_express_checkout

Paypal Express Checkout

direct_debit

Direct Debit

other

Payment Methods other than the above types

reference_number
optional, string, max chars=100

The reference number for this transaction. For example, the check number when payment_method = check .

gateway
required, enumerated string

Gateway through which this transaction was done. Applicable only for 'Card' Payment Method

Possible Enum Values
chargebee

Chargebee test gateway.

stripe

Stripe is a payment gateway.

braintree

Braintree is a payment gateway.

authorize_net

Authorize.net is a payment gateway

paypal_pro

PayPal Pro Account is a payment gateway.

type
required, enumerated string

Type of the transaction.

Possible Enum Values
authorization

The transaction represents an authorization for capturing the amount from the customer's payment_source .

payment

The transaction represents capture of amount from the customer's payment_source .

refund

The transaction represents a refund of amount to the customer's payment_source .

payment_reversal

Indicates a reversal transaction.

date
optional, timestamp(UTC) in seconds

Indicates when this transaction occurred.

currency_code
required, string, max chars=3

The currency code (ISO 4217 format) for the transaction.

amount
optional, in cents, min=0

Amount for this transaction.

id_at_gateway
optional, string, max chars=100

The id with which this transaction is referred in gateway.

status
optional, enumerated string

The status of this transaction.

Possible Enum Values
in_progress

Transaction is being processed by the gateway. This typically happens for direct debit transactions or, in case of cards, refund transactions. Such transactions can take 2-7 days to complete, depending on the gateway and payment method.

success

The transaction is successful.

voided

The transaction got voided or authorization expired at gateway.

failure

Transaction failed. Refer the 'error_code' and 'error_text' fields to know the reason for failure

timeout

Transaction failed because of Gateway not accepting the connection.

needs_attention

Connection with Gateway got terminated abruptly. So, status of this transaction needs to be resolved manually

late_failure

Indicates that a successful payment transaction has failed now due to a late failure notification from the payment gateway, typically caused by issues like insufficient funds or a closed bank account.

initiator_type
optional, enumerated string

Marker for on-session payments (3DS). null indicates 'merchant'.

Possible Enum Values
customer

Customer initiated 3DS payment

merchant

Payment initiated on stored payment method by the merchant

three_d_secure
optional, boolean

Indicates whether this transaction has gone through 3DS. Applicable only for 'on-session' payments & verifications.If 3DS is not enforced by the gateway/bank or if the customers' card is not enrolled, this will be false.

error_code
optional, string, max chars=100

Error code received from the payment gateway on failure.

error_text
optional, string, max chars=65k

Error message received from the payment gateway on failure.

voided_at
optional, timestamp(UTC) in seconds

Timestamp indicating when the payment was voided or authorization expired at gateway.

amount_unused
optional, in cents, min=0

This is the part of the amount which has not been invoiced yet and is therefore added to excess_payments for the customer. Applicable only for a transaction of type = payment .

masked_card_number
optional, string, max chars=20

The masked card number used for this transaction. Applicable only for 'Card' Payment Method

reference_transaction_id
optional, string, max chars=40

This is the id of the offline transaction that is being refunded or reversed. Applicable only for transaction of type = refund or payment_reversal .

refunded_txn_id
optional, string, max chars=40

This is the id of the transaction (always of type = payment ) being refunded. Applicable only for transaction of type = refund .

reversal_transaction_id
optional, string, max chars=40

Reversal transaction id. Applicable only for payment transactions.

payment_method_details
optional, string

Payment method details of the corresponding transaction

linked_invoices

Applicable only for 'Payment' transactions. The list of invoices this 'payment' transaction is applied to.

linked_refunds

Applicable only for Payment transactions. It only returns values when the transaction is not associated with an invoice, and that there is a refund for the transaction.