Salesforce CPQ field mappings guide
This document outlines the field mappings between Salesforce CPQ and Zuora for Account, Address, Order, Subscription, Order Line Items, and Product Catalog.
Account
SALESFORCE |
ZUORA |
DESCRIPTION |
---|---|---|
ACCOUNT |
ACCOUNT |
|
Account Name |
Account Name |
|
Account Number |
Auto generated in Zuora |
|
Id |
CRM Account ID |
|
Account Currency |
Currency |
|
Bill Cycle day |
Default: This sets the bill cycle day for the new account to the 1st day of the billing cycle. |
|
Billing Address |
Bill To Contact |
If the Billing Address is provided, a Bill To contact with the first name and last name as <account name>_billTo is created. It is mandatory to have a Billing Address in SFDC CPQ, else sync will error out. |
Shipping Address |
Ship To Contact |
If a Shipping Address is provided, then a Sold To Contact with the first name and last name as <account name>_soldTo is created. If empty in SFDC, then Bill To contact will be used as Sold To contact. |
Note |
Description |
|
Account Owner |
Sales Rep |
The ID of the Account Owner |
Auto-Pay |
Default: Set to False |
Contact
SALESFORCE |
ZUORA |
DESCRIPTION |
---|---|---|
ADDRESS |
CONTACT |
|
ID |
CRM ID |
As part of the connector setup, you will need to create this as a custom field. |
Street |
Address 1 |
|
City |
City |
|
State/Province |
State/Province |
|
Zip/Postal Code |
Postal Code |
|
Country |
Country |
|
|
Work Email |
|
Mobile |
Mobile Phone |
Order
SALESFORCE |
ZUORA |
DESCRIPTION |
---|---|---|
ORDER |
ORDER |
|
Order Number |
Order Number |
|
Order status |
The default status is set as pending. |
|
Account Name |
Account |
If the Zuora account doesn't exist, the Salesforce account is synced first. |
Description |
Description |
|
Effective Date |
Order Date |
Subscription
If the Salesforce order product has an associated Subscription object), a subscription will be generated in Zuora.
Non-usage charge-based subscriptions
Non-usage charge-based subscriptions are subscription plans that don't require payments based on usage metrics. Typically, they involve flat fees or recurring charges with no added expenses based on usage. Refer to this section for detailed information about the usage support.
The following table outlines the mapping of non-usage-based subscription charges.
SALESFORCE |
ZUORA |
||||
---|---|---|---|---|---|
ORDER |
ORDER PRODUCT |
SUBSCRIPTION |
SUBSCRIPTION RATE PLAN |
SUBSCRIPTION RATE PLAN CHARGE |
DESCRIPTION |
Subscription Number |
Subscription Number |
The subscription linked to the Order Product. |
|||
Contract Start Date |
Contract Effective Date |
The contract linked to the order. |
|||
[Optional] Subscription Owner Account |
Subscription Owner Account |
Create a custom field in SFDC with API name SubscriptionOwner__c of type Account Lookup |
|||
[Optional] Invoice Owner Account |
Invoice Owner Account |
Create a custom field in SFDC with API name InvoiceOwner__c of type Account Lookup |
|||
Bill To Contact or Billing Address |
Bill To Contact |
Use Bill To Contact if available; otherwise, use the Billing Address; if not, default it from the account. |
|||
Ship To Contact or Shipping Address |
Sold To Contact |
Use Ship To Contact if present, otherwise, use Shipping Address; if not, default it from account. |
|||
Payment Term |
Payment Term |
||||
Term Type |
If the Subscription Type on the subscription object is set to' Evergreen, ' the subscription will be created as 'Evergreen.' Otherwise, it will default to 'Termed.' |
||||
Renewal Setting |
If the Subscription Type is Evergreen, it will be renewed as Evergreen; otherwise, it will be set to 'Renew with Specific Term.' |
||||
Renewal Term |
The renewal term will be the same as the current term and is only applicable for non-evergreen subscriptions. |
||||
Period |
Months in between the start date and end date on the subscription object |
||||
Period Type: Month |
Default Value |
||||
ID |
Externally Managed PlanId |
||||
Product2 Id |
External Catalog Plan Id |
The ID of the product2 linked to the order product |
|||
Net Price |
List Price |
The Net Price field on the subscription object linked to the order product |
|||
Quantity |
Quantity |
||||
Bill Cycle Type = “Charge Trigger Day” | Default value for recurring charges | ||||
Order Product Number |
Charge Number |
||||
Quote Number |
The quote number of the Quote linked with the order |
||||
Quote Business Type |
Type field on the Quote object |
||||
Quote Type |
Type field on the Quote object |
Usage-based charge subscription
Usage-based charges are fees that depend on how much a product or service is used. The charges can change based on how much or how often you use it, giving you flexible and scalable pricing options.
This table shows the mappings between the order item consumption schedules, rates, and the subscription object. All the other mappings for the subscription and order remain consistent with the ones mentioned previously.
SALESFORCE |
ZUORA |
|||
---|---|---|---|---|
ORDER ITEM CONSUMPTION SCHEDULE |
ORDER ITEM CONSUMPTION RATE |
SUBSCRIPTION RATE PLAN |
SUBSCRIPTION RATE PLAN CHARGE |
DESCRIPTION |
ID |
Externally Managed Plan Id |
If the ID for product consumptionSchedule is managed externally, skip the syncing process. |
||
External Catalog Plan Id |
The product consumption schedule ID on the order item consumption schedule. |
|||
Tier Order |
The connector categorizes the order item consumption rates by their lower bounds. |
|||
Price |
Price |
Applicable on each tier |
||
Pricing Method |
Price Format |
Applicable on each tier |
||
Lower Bound |
Starting Unit |
Applicable on each tier |
||
Upper Bound -1 |
Ending Unit |
Unlike Zuora, Salesforce does not include upper bounds. |
||
Cap |
Cap |
Relevant if Zuora allows for capping. |
Order Line Items
When the order product in Salesforce does not have an associated Subscription object, an Order Line Item will be created.
SALESFORCE |
ZUORA |
DESCRIPTION |
|
---|---|---|---|
ORDER |
ORDER PRODUCT |
ORDER LINE ITEM |
|
Product Name |
Item Name |
The product's name, as indicated by the Product2 object. |
|
Zuora Status |
Item State |
If you want to create a custom field on the Salesforce Order Product object, name it Zuora_Status__c. Make sure it is a picklist type and the values align with Zuora options. By default, set the value to “SentToBilling”. |
|
Quantity |
Quantity |
||
Product ID |
Product Code |
The ID of the Product2 in the Order Product |
|
Effective Date |
Transaction Start Date |
||
Effective Date |
Transaction End Date |
||
Item Type: Product |
Default value |
||
ID |
Purchase Order Number |
||
LINE CATEGORY: Sales |
Default value |
||
Description |
Description |
||
Activated Date/ Effective Date |
Bill Target Date |
Assign the Activated Date if it exists; otherwise, use the Effective Date. |
|
Unit Price |
List Price Per Unit |
||
Unit Price |
Amount per unit |
||
[Optional] Invoice Owner Account |
Invoice Owner Account |
Create a custom field in SFDC with API name InvoiceOwner__c of type Account Lookup |
|
[Optional] OLI Owner Account |
OLI Owner Account |
Create a custom field in SFDC with API name SubscriptionOwner__c of type Account Lookup. The OLI Owner account must already exist in Zuora. |
|
Bill To Contact or Billing Address |
Bill To Contact |
Use Bill To Contact if available, otherwise use Billing Address. |
|
Ship To Contact or Shipping Address |
Sold To Contact |
If Ship To Contact is available, use it; otherwise, use the Shipping Address or default it. |
Product Catalog
The product catalog doesn't synchronize on its own. Orders override the product catalog at the subscription rate plan charge level during syncing.
Non-usage-based products
The following table outlines the mapping of non-usage-based products.
SALESFORCE |
ZUORA |
DESCRIPTION |
|||
---|---|---|---|---|---|
PRODUCT2 |
CONSUMPTION SCHEDULE |
PRODUCT |
PRODUCT RATE PLAN |
PRODUCT RATE PLAN CHARGE |
|
Product Code |
SKU |
||||
Product ID |
Externally Managed Plan Ids |
This ID serves as a determinant for product existence in Zuora. If the product exists, syncing is bypassed. |
|||
Product Name |
Name |
Name |
Name |
||
Effective Start Date: 01/01/2000 |
Effective Start Date: 01/01/2000 |
Effective Start Date: 01/01/2000 |
Default setting |
||
Currency |
Applicable if Flexible Billing Attribute is enabled. All currencies from the product2’s PriceBook entries are activated. |
||||
Pricing Method |
Charge Model |
If the Pricing Method is List, then Per Unit Pricing. Otherwise, it defaults to Flat Fee Pricing. |
|||
Charge Type |
Charge Type |
Supports Recurring, One Time, and Usage charges. If empty, it defaults to a One-time charge in Zuora. |
|||
Billing Frequency |
Billing Period |
If the billing frequency is “Invoice Plan,” it will be set to “Subscription Term” in Zuora. If left empty, it defaults to “Month”. |
|||
Tax Code |
Tax Code |
||||
Taxable |
Taxable |
||||
Accounting Code = “Accounts Receivable” |
Default value |
||||
Deferred Revenue Account = “Accounts Receivable” |
Default value |
||||
Bill Cycle Type = "Default from customer" |
Default value |
||||
Trigger Event = “Contract Effective” |
Default value |
||||
UOM = “Each” |
Default value |
Usage-based products
The following table describes the mapping for usage-based products. Refer to this section for detailed information about the usage support.
SALESFORCE |
ZUORA |
DESCRIPTION |
||||
PRODUCT2 |
PRODUCT CONSUMPTION SCHEDULE |
CONSUMPTION SCHEDULE |
PRODUCT |
PRODUCT RATE PLAN |
PRODUCT RATE PLAN CHARGE |
|
Name |
Name |
|||||
Product Code |
SKU |
|||||
Name |
Name |
Name |
The product's name combined with the name of the consumption schedule. |
|||
Effective Start Date: 01/01/2000 |
Effective Start Date: 01/01/2000 |
Effective Start Date: 01/01/2000 |
Default value |
|||
ID |
Externally Managed Plan Ids |
|||||
Description |
Description |
|||||
Name |
Name |
|||||
Type |
Charge Model |
If the type is "Range," use the volume model. If it's "Slab," use the tiered model. |
||||
Charge Type = “Usage” |
Default value |
|||||
Unit of Measure |
UOM |
|||||
Billing Frequency |
Billing Period |
|||||
Tax Code |
Tax Code |
|||||
Taxable |
Taxable |
|||||
Default Qty = 1 |
Default value |
|||||
Currency ISO Code |
Currency |
|||||
Tier. From = 0 |
Default value |
|||||
Tier.To = 1 |
Default value |
|||||
Tier.List price |
Default value |
|||||
Tier.Price format |
Depending on the pricing method on the consumption rate object, the fee can be determined as either a flat rate or per unit. |