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.
The following table lists the custom objects in the Zuora Product Catalog.
|Object name||API name||Description|
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
|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.|
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:
When sent to Zuora:
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 is 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 quotea. It has a detail-master (many-to-one) relationship with the Quote Rate Plan object.
Starting in the 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.|
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.|
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:
- In Salesforce, navigate to Setup > App Setup > Schema Builder.
- In Schema Builder, click the Objects tab.
- Click the Select from field and select Custom Objects.
- 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.
- Click Auto-Layout. All the objects and the relationships among them are laid out automatically.