The transaction system is a critical part of Kajabi’s payment infrastructure, handling all monetary operations while maintaining detailed records for accounting, reporting, and compliance purposes.
provider (string) - The payment processor used for the paymentaction (string) - Indicate the type of transaction:
charge - One-time paymentrefund - Money returned to customersubscribe - New subscriptionsubscription_charge - Recurring subscription paymentfree_purchase - $0 transactiontest - Test transactiondispute - Disputed chargesubscription_update - Subscription modificationstate (string) - The transaction’s status:
initialized - Transaction startedsucceeded - Transaction completed successfullyfailed - Transaction failedpayment_type (string) - Indicates the payment structure (nullable)amount_in_cents (integer) - The USD price in cents (for precise decimal handling) can be negative for refundssales_tax_in_cents (integer) - The USD sales tax in cents (for precise decimal handling)payment_fee_in_cents (integer) - Payment processing fee associated with the transaction (Kajabi Payments only)currency (string) - String representing the currency code (nullable) automatically upcased
currency_symbol (string) - String representing the currency symbol (nullable)
formatted_amount (string) - String representing the amount in a human-readable format
settlement_amount_in_cents (integer) - Price of the payment in cents based on the settlement currency (Kajabi Payments only)settlement_fee_amount_in_cents (integer) - Payment processing fee associated with the transaction based on the settlement currency (Kajabi Payments only)settlement_currency (string) - Currency of the payment based on settlement, typically the currency of the attached bank account (Kajabi Payments only)created_at (string) - The creation date and time, ISO date string format (read-only)Use the fields[transactions] parameter to request only specific attributes:
GET /v1/transactions/123?fields[transactions]=amount_in_cents,sales_tax_in_centsResponse will only include requested fields
{
"data": {
"id": "123",
"type": "transactions",
"attributes": {
"amount_in_cents": 9900,
"sales_tax_in_cents": 990
}
}
}
Use the include parameter to include related resources:
GET /v1/transactions/123?include=customer,offerResponse will include related resources
{
"data": {
"id": "123",
"type": "transactions",
"attributes": {
"action": "subscription_charge",
"state": "succeeded",
"payment_type": "subscription",
"amount_in_cents": 100,
"sales_tax_in_cents": 0,
"currency": "USD",
"currency_symbol": "$",
"formatted_amount": "$1.00",
"created_at": "2025-03-14T19:17:38.000Z"
},
"relationships": {
"customer": {
"data": {
"id": "456",
"type": "customers"
}
},
"offer": {
"data": {
"id": "789",
"type": "offers"
}
}
}
},
"included": [
{
"id": "456",
"type": "customers",
"attributes": {
"name": "John Doe",
"email": "[email protected]",
"avatar": "https://example.com/avatar.jpg",
"external_user_id": "123",
"public_bio": "Public Bio",
"public_location": "Public Location",
"public_website": "https://example.com",
"socials": {
"twitter": "https://twitter.com",
"facebook": "https://facebook.com",
"linkedin": "https://linkedin.com"
},
"net_revenue": 10000,
"sign_in_count": 10,
"last_request_at": "2024-01-15T10:30:00Z",
"bounced_at": "2024-01-15T10:30:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
},
{
"id": "789",
"type": "offers",
"attributes": {
"title": "Offer Title",
"description": "Offer Description",
"internal_title": "Internal Title",
"price_in_cents": 9900,
"payment_type": "payment_method",
"token": "offer_token",
"payment_method": "payment_method",
"price_description": "Price Description",
"checkout_url": "https://example.com/checkout",
"recurring_offer": true,
"subscription": true,
"one_time": false,
"single": false,
"free": false
}
}
]
}
You can combine sparse fields and include in a single request:
GET /v1/transactions/123?include=customer&fields[transactions]=amount_in_cents,sales_tax_in_cents&fields[customers]=name,emailResponse will include transaction with only requested fields and included customer with only name and email fields
{
"data": {
"id": "123",
"type": "transactions",
"attributes": {
"amount_in_cents": 9900,
"sales_tax_in_cents": 990
},
"relationships": {}
},
"included": [
{
"id": "456",
"type": "customers",
"attributes": {
"name": "John Doe"
"email": "[email protected]"
}
}
]
}
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Partial attributes as specified, e.g. fields[transactions]=amount_in_cents,sales_tax_in_cents
Load the related resources, for example ?include=customer,offer