Skip to main content

Zuora CPQ Object Model


Zuora CPQ Object Model

This article presents the custom objects used in Zuora 360 and Zuora Quotes, and it describes how to generate an ER diagram to view the relationship among the custom objects.

Zuora CPQ object model

The diagram below summarizes the objects and their relationships in Zuora CPQ. Click the diagram to open it in a new tab for an enlarged view.

If you have the Orders feature enabled in your Zuora tenant, the available objects and their relationships are different. See Order Mappings for information about how Orders and related objects are mapped between Zuora and Zuora Quotes. See Orders Object Model for a summary of Orders objects and their relationships.


Product Catalog

The following table lists the custom objects in the Zuora Product Catalog.

Object name     API name Description
ZProduct zqu__ZProduct__c    

Represents a product in the Zuora Product Catalog.

Supported in the Zuora Quotes versions 6.x or earlier.

Product Product2 Represents a product in the Zuora Quotes version 7.0 later.
Product Rate Plan zqu__ProductRatePlan__c Represents a product rate plan. This is a child of the Product object.
Product Rate Plan Charge zqu__ProductRatePlanCharge__c Represents a product rate plan charge.  This is  a child of the Product Rate Plan object.
Product Rate Plan Charge
Price Summary
zqu__ProductRatePlanChargePriceSummary__c The price summaries associated with a product rate plan charge. There is one instance of this object for each product rate plan and each currency activated.
Product Rate Plan Charge Tier ProductRatePlanChargeTier__c Represents a product rate plan charge tier.  This is a child of the Product Rate Plan Charge object.
ZFeature zqu__ZFeature__c Represents a feature in the Zuora Product Catalog.
Product Feature zqu__ZProductFeature__c Represents a feature added to a product. This is a link between ZProduct and ZFeature.

Zuora Quotes

The following table lists the custom objects in Zuora Quotes.

Object Name     API Name Description
Communication Profile zqu__CommunicationProfile__c A set of policies that determine how to communicate with the contacts associated with a particular account. 
Hosted Page Setting zqu__Hosted_Page_Setting__c Stores the Zuora hosted page configuration settings.
Invoice Template zqu__InvoiceTemplate__c  Invoice template for generating invoice documents.
Payment Pages Setting zqu__HostedPageLiteSetting__c Stores the Zuora Payment Pages configuration settings.
Quote zqu__Quote__c     Represents a quote. The types of quote, represented in Subscription_Type__c field, include: 
  •  New Subscription
  •  Amendment
  •  Renewal
  •  Cancellation

When sent to Zuora:

  • A New Subscription quote will be created as a subscription in Zuora.
  • An Amendment Quote amendments will be created as one or more amendments of the following types in Zuora: Owner Transfer, New Product, Update Product, Delete Product, Terms and Conditions.  
  • A Renewal Quote amendment will be created as one or more amendments in Zuora.
Quote Charge zqu__QuoteCharge__c

Represents a quote charge for a New Subscription quote. It has a detail-master (many-to-one) relationship with the Quote object.

As of version 6.50 (Q2 2015), this object is deprecated. The Quote Rate Plan Charge object is used for New Subscription quotes.

Quote Charge Tier zqu__QuoteCharge_Tier__c
Represents a quote charge price tier. It has a lookup relationship with both the Quote Charge and Quote Rate Plan Charge objects.  A quote charge has at least one quote charge tier. When a quote is sent to Zuora to create a new subscription, the quote charge tiers are converted to subscription rate plan Charge tiers in Zuora.
Quote Amendment zqu__QuoteAmendment__c Represents a quote amendment.  It has a detail-master (many-to-one) relationship with the Quote object.

Each Quote Amendment object contains one or more Quote Rate Plan objects.

An Amendment quote or Renewal quote can have one or more amendments of any amendment type. When an Amendment or Renewal quote is sent to Zuora, each quote amendment is created as an amendment in Zuora.

Quote Rate Plan zqu__QuoteRatePlan__c Represents a rate plan in a New Subscription, Amendment, or Renewal quote. It has a detail-master (many-to-one) relationship with the Quote Amendment object.

Once a product rate plan and its product rate plan charges are added to a quote, a quote rate plan and one or more quote rate plan charges are created and are associated with the quote.

When the quote is sent to Zuora, the quote rate plans and quote rate plan charges are converted to subscription rate plans and subscription charges in Zuora.

Quote Rate Plan Charge zqu__QuoteRatePlanCharge__c

Represents a rate plan charge in Amendment or Renewal quote. It has a detail-master (many-to-one) relationship with the Quote Rate Plan object. 

Starting in version 6.50, this object is used for New Subscription quotes, as well.

Quote Charge Summary zqu__QuoteChargeSummary__c Used for Quote PDF generation and reporting.

The summary data in this object can be used for centralized reporting for the New subscription, Amendment, and Renewal quotes at the Quote Charge-level. 

For Amendments and Renewal quotes, only the changes from the original Subscription are stored in the Quote Charge Summary object.

Quote Charge Detail zqu__QuoteChargeDetail__c Stores the charge-level billing metrics and other information.
Quote Charge Interval Detail zqu__QuoteChargeIntervalDetail__c Stores metrics segmented per charge per interval.
Quote Product Feature zqu__QuoteProductFeature__c Represents a feature in a quote. This links ZFeature and Quote Rate Plan.
Quote Template zqu__Quote_Template__c Quote template for generating quote documents in PDF or WORD.
Unit Of Measure zqu__ZUnitOfMeasure__c A unit that you measure when determining charges. 

Zuora 360

The following table lists the custom objects in Zuora 360.

Object Name API Name Description
Billing Account Zuora__CustomerAccount__c Zuora Billing Account object. An account is a customer account that collects all of the critical information about the customer, such as contact information, payment terms, and payment methods. You can use a customer account to track subscriptions, amendments, and transactions, such as invoices and payments.
Billing Entity zqu__BillingEntity__c

Represents an entity.

This object is supported when the Multi-entity setting is enabled in you tenant.

Invoice Zuora__ZInvoice__c Invoices are bills that you send to customers.
Invoice Payment Zuora__PaymentInvoice__c An Invoice Payment is a mechanism to tie a payment to an invoice and indicate how much of the payment to apply to the invoice. PaymentInvoice has Master-Detail relationship to Payment object and Lookup relationship to Invoice.
Payment Zuora__Payment__c A payment is the money that customers send to pay for charges related to their subscriptions. 
The Payment object holds all of the information about an individual payment, including the payment amount and to which invoices the payment is applied.
Payment Gateway Zuora__PaymentGateway__c Gateway used for processing electronic payments and refunds.
Payment Method Zuora__PaymentMethod__c Payment Method contains information on how the contact pays for the account. In order to activate an account, you need to create a payment method.
Payment Term Zuora__PaymentTerm__c Indicates when payment on the invoice balance is due. 
Refund Zuora__Refund__c The Refund object is used to create and query refunds. 

Note that refunds imply that money has been returned to customers. You should use adjustments (credit memos) if you are issuing credit to customers, but are not returning funds to a customer.
Refund Invoice Payment Zuora__RefundInvoicePayment__c Refund Invoice Payment Object represents the relation table between Refund and Invoice Payment object. This object would have Master Details relation between Refund and RefundInvoicePayment and reference relation between InvoicePayment and RefundInvoicePayment.
Subscription Zuora__Subscription__c A subscription is a product or service that has recurring charges, such as a monthly flat fee or charges based on usage. Subscriptions can also include one-time charges, such as activation fees.
Subscription Product Feature Zuora__SubscriptionProductFeature__c A subscription product feature is used to query the feature under the subscription's rate plan.
Subscription Rate Plan Zuora__SubscriptionRatePlan__c A rate plan represents a price or a collection of prices for a service you sell.
Subscription Rate Plan Charge Tier Zuora__SubscriptionRatePlanChargeTier__c A product rate plan charge tier holds the prices for a product rate plan charge. Each product rate plan charge has at least one tier associated with it.
Unit Of Measure Zuora__UnitOfMeasure__c A unit that you measure when determining charges. 

Generate Zuora CPQ object relationship diagram

In Salesforce, you can automatically generate an object relationship diagram with selected objects to customize the look and feel. Complete the following steps to generate an object relationship diagram of Zuora CPQ:

  1. In Salesforce, navigate to SetupApp Setup > Schema Builder.
  2. In Schema Builder, click the Objects tab.
  3. Click the Select from field and select Custom Objects.
  4. Select the objects you want to include in the diagram from all Zuora CPQ objects or a subset of the objects by selecting the checkbox in front of the object. 
  5. Click Auto-Layout. All the objects and the relationships among them are laid out automatically.