Checkout Management App Objects
The CMA pulls in data from AppExchange Checkout’s payment partner, Stripe, to populate the subscription plan, subscription, invoice, invoice item, and transaction objects. Here’s a high-level overview of these objects and how they fit together.

Object | Purpose | Relationships |
---|---|---|
Subscription plan (1) | Contains information about the pricing model of an offering. For example, site-wide or per user, billed monthly. | Parent object of:
|
Subscription (2) | Contains information about the customer’s history and usage of an offering. For example, when the subscription started. | Child object of:
Parent object of:
|
Invoice (3) | Contains billing and payment information for a subscription for a specific time period. For example, the total amount owed by the customer. | Child object of:
Sibling object of:
|
Invoice item (4) | Contains information about a particular billing and payment event for a specific time period. For example, a one-time credit. Multiple invoice items can be associated with an invoice. | Child object of:
|
Transaction (5) | Contains information about a customer payment attempt. For example, method of payment and whether it was successful. | Child object of:
Sibling object of:
|
We haven’t listed it in the table, but there’s one more object to be aware of: customer. The customer object contains information about the subscriber and draws from the other objects in the CMA, including subscription, invoice, and transaction.
The CMA automatically syncs new data from Stripe, updating object records as necessary. Remember : syncing is one way and read only, so changes that you make to object records aren’t reflected in Stripe. To update subscription plan, subscription, invoice, invoice item, or transaction data, use the Stripe dashboard or API.