Welcome to Zuora Product Documentation

Explore our rich library of product information

Salesforce CPQ field mappings guide

This guide provides field mappings between Salesforce CPQ and Zuora for various entities including Account, Address, Order, Subscription, Order Line Items, and Product Catalog.

This document outlines the field mappings between Salesforce CPQ and Zuora for Account, Address, Order, Subscription, Order Line Items, and Product Catalog.

Account

SALESFORCEZUORADESCRIPTION
ACCOUNTACCOUNT
Account NameAccount Name
Account NumberAuto generated in Zuora
IdCRM Account ID
Account CurrencyCurrency
Bill Cycle dayDefault: This sets the bill cycle day for the new account to the 1st day of the billing cycle.
Billing AddressBill To ContactIf 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 AddressSold To ContactIf 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.
NoteDescription
Account OwnerSales RepThe ID of the Account Owner
Auto-PayDefault: Set to False
Parent Account IDParentThe connector uses the Parent Account ID from Salesforce to find the corresponding account in Zuora by referencing the CRM ID field. If the parent account doesn't exist in Zuora, the connector will create the account without the associated orders.

Contact

SALESFORCEZUORADESCRIPTION
ADDRESSCONTACT
IDCRM IDAs part of the connector setup, you will need to create this as a custom field.
StreetAddress 1
CityCity
State/ProvinceState/Province
Zip/Postal CodePostal Code
CountryCountry
EmailWork Email
MobileMobile Phone

Order

SALESFORCEZUORADESCRIPTION
ORDERORDER
Order NumberOrder Number
Order status The order status is determined by the dates set on the orders in Salesforce and the settings in your Billing Subscription configuration.
Account NameAccountIf the Zuora account doesn't exist, the Salesforce account is synced first.
DescriptionDescription
Effective DateOrder 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.

SALESFORCEZUORA
ORDER ORDER PRODUCT SUBSCRIPTIONSUBSCRIPTIONSUBSCRIPTION RATE PLANSUBSCRIPTION RATE PLAN CHARGEDESCRIPTION
Start DateSubscription Start Date
End DateEnd DateWhen 'subscription_term_in_days' is not used, the End Date in Zuora is calculated as the Subscription Start Date + the subscription term.When 'subscription_term_in_days' is used, the End Date in Zuora is the End Date in Salesforce + 1 day.
Effective DateContract Effective DateWhen "trigger_dates_on_orders" is enabled
Customer AuthorizedDateCustomer acceptance dateWhen "trigger_dates_on_orders" is enabled
Company AuthorizedDateService activation dateWhen "trigger_dates_on_orders" is enabled
Currency ISO CodeCurrencyApplicable only when multicurrency is enabled.
Subscription TypeTerm TypeIf the Subscription Type is Evergreen, it will remain Evergreen; otherwise, it will be set to 'Renew with Specific Term.'
Initial TermThe duration between the start date and end date on the subscription object will be in months or days, depending on whether "subscription_term_in_days" is enabled.
Period typeMonths or days, depending on the enablement of 'subscription_term_in_days.
Subscription NumberSubscription NumberThe subscription linked to the Order Product.
Contract Start DateContract Effective DateThe contract linked to the order.

[Optional]

Subscription Owner Account

Subscription Owner AccountCreate a custom field in SFDC with API name SubscriptionOwner__c of type Account Lookup

[Optional]

Invoice Owner Account

Invoice Owner AccountCreate a custom field in SFDC with API name InvoiceOwner__c of type Account Lookup
Bill To Contact or Billing AddressBill To ContactUse Bill To Contact if available; otherwise, use the Billing Address; if not, default it from the account.
Ship To Contact or Shipping AddressSold To ContactUse Ship To Contact if present, otherwise, use Shipping Address; if not, default it from account.
Payment TermPayment Term
Renewal SettingIf the Subscription Type is Evergreen, it will be renewed as Evergreen; otherwise, it will be set to 'Renew with Specific Term.'
Renewal TermThe renewal term will be the same as the current term and is only applicable for non-evergreen subscriptions.
IDExternally Managed PlanId
Product2 IdExternal Catalog Plan IdThe ID of the product2 linked to the order product
Net PriceList PriceThe Net Price field on the subscription object linked to the order product
QuantityQuantity
Bill Cycle Type

Inherited from the product catalog:

When "sfdc_use_list_price_base" is set to "true" and there is a recurring charge, it is defaulted to "Charge Trigger Day."

Order Product NumberCharge Number
Quote NumberThe quote number of the Quote linked with the order
Quote Business TypeType field on the Quote object
Quote TypeType field on the Quote object
PO_Number__cInvoiceGroupNumberCreate a custom field on the subscription object in Salesforce and add this mapping in the connector configuration to sync the invoice group numbers.
Billing FrequencyBilling PeriodThe API names of the billing frequency field must match the billing period values in Zuora. Map this field explicitly in the connector configuration from SBQQ__BillingFrequency__c to billingPeriod on the subscription to subscription rate plan charge custom field mapping option.

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.

SALESFORCEZUORA

ORDER ITEM

CONSUMPTION SCHEDULE

ORDER ITEM CONSUMPTION RATESUBSCRIPTION RATE PLANSUBSCRIPTION RATE PLAN CHARGEDESCRIPTION
IDExternally Managed Plan IdIf the ID for product consumptionSchedule is managed externally, skip the syncing process.
External Catalog Plan IdThe product consumption schedule ID on the order item consumption schedule.
Tier OrderThe connector categorizes the order item consumption rates by their lower bounds.
PricePriceApplicable on each tier
Pricing MethodPrice FormatApplicable on each tier
Lower BoundStarting UnitApplicable on each tier
Upper Bound -1Ending UnitUnlike Zuora, Salesforce does not include upper bounds.
CapCapRelevant 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.

SALESFORCEZUORADESCRIPTION
ORDERORDER PRODUCTORDER LINE ITEM
Product NameItem NameThe product's name, as indicated by the Product2 object.
Zuora StatusItem State

By default, configure the value to "SentToBilling", but if you want to configure a different status, create a custom field on the Salesforce Order Product object, called Zuora_Status__c. Ensure it is a picklist type and the values align with Zuora options.

Then map Zuora_Status__c to itemState in the connector configuration on the Order Item to Order Line Item mapping configuration

QuantityQuantity
Product ID

Product Code

Product Rate Plan Charge ID

The ID of the Product2 in the Order Product.

The corresponding one-time charge from the product catalog is used.

Effective DateTransaction Start Date
Effective DateTransaction End Date
Item Type: ProductDefault value
IDPurchase Order Number
LINE CATEGORY: SalesDefault value
DescriptionDescription
Activated Date/ Effective DateBill Target DateAssign the Activated Date if it exists; otherwise, use the Effective Date.
Unit PriceList Price Per Unit
Unit PriceAmount per unit

[Optional]

Invoice Owner Account

Invoice Owner AccountCreate a custom field in SFDC with API name InvoiceOwner__c of type Account Lookup

[Optional]

OLI Owner Account

OLI Owner AccountCreate 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 AddressBill To ContactUse Bill To Contact if available, otherwise use Billing Address.
Ship To Contact or Shipping AddressSold To ContactIf 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.

SALESFORCEZUORADESCRIPTION
PRODUCT2 CONSUMPTION SCHEDULEPRODUCTPRODUCT RATE PLANPRODUCT RATE PLAN CHARGE
Product CodeSKUThe combination of product code and product ID is used to verify the existence of a product in Zuora.
Accounting CodeCreate a custom field under Product in Salesforce with the API name Z_Accounting_Code__c. If not present, it defaults to "Accounts Receivable."
Product IDExternally Managed Plan IdsThis ID serves as a determinant for product existence in Zuora. If the product exists, syncing is bypassed.
Product NameNameNameName
Effective Start Date: 01/01/2000Effective End Date:01/01/3000Effective Start Date: 01/01/2000Effective End Date:01/01/3000Effective Start Date: 01/01/2000Effective End Date:01/01/3000Default setting
CurrencyApplicable if Flexible Billing Attribute is enabled. All currencies from the product2's PriceBook entries are activated.
Pricing MethodCharge Model If the Pricing Method is List, then Per Unit Pricing. Otherwise, it defaults to Flat Fee Pricing.
Charge TypeCharge TypeSupports Recurring, One Time, and Usage charges. If empty, it defaults to a One-time charge in Zuora.
Billing FrequencyBilling PeriodIf the billing frequency is "Invoice Plan," it will be set to "Subscription Term" in Zuora. If left empty, it defaults to "Month".
Tax CodeTax Code
Tax ModeTax ModeSet the custom field API name as "TaxMode__c" to explicitly define its value. If not specified for taxable charges, it will default to "Tax Exclusive".
Deferred Revenue AccountCreate a custom field in Salesforce under Product with the API name Z_Deferred_Revenue_Account__c. If not present, it defaults to "Accounts Receivable".
Recognized Revenue AccountCreate a custom field in Salesforce under Product with API name Z_Recognized_Revenue_Account__c. If not present,it defaults to "Accounts Receivable"
TaxableTaxable
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
Quantity Unit of MeasureUOM = "Each"If not provided, it defaults to "Each."

Usage-based products

The following table describes the mapping for usage-based products. Refer to this section for detailed information about the usage support.

SALESFORCEZUORADESCRIPTION
PRODUCT2 PRODUCT CONSUMPTION SCHEDULECONSUMPTION SCHEDULEPRODUCTPRODUCT RATE PLANPRODUCT RATE PLAN CHARGE
NameName
Product CodeSKU
NameNameNameThe product's name combined with the name of the consumption schedule.
Effective Start Date: 01/01/2000Effective End Date:01/01/3000Effective Start Date: 01/01/2000Effective End Date:01/01/3000Effective Start Date: 01/01/2000Effective End Date:01/01/3000Default value
IDExternally Managed Plan Ids
DescriptionDescription
NameName
TypeCharge ModelIf the type is "Range," use the volume model. If it's "Slab," use the tiered model.
Charge Type = "Usage"Default value
Unit of MeasureUOM
Billing FrequencyBilling Period
Tax CodeTax Code
TaxableTaxable
Default Qty = 1Default value
Currency ISO Code Currency
Tier. From = 0Default value
Tier.To = 1Default value
Tier.List priceDefault value
Tier.Price formatDepending on the pricing method on the consumption rate object, the fee can be determined as either a flat rate or per unit