This article supplements the primary Legacy Data Upload for Salesforce CPQ article, which covers base requirements and general import considerations. The guidance here focuses specifically on data requirements for Renewals and Amendments in an existing org.
Two critical behaviors must be understood before importing:
**Bundle Root ID requirement:** The Root ID field on Subscription and Asset records (`SBQQ__RootId__c`) must be populated with the 18-digit Salesforce ID of the bundle parent's Subscription or Asset record. If this field is missing or incorrect, bundle structure will not be preserved and Renewals or Amendments will fail during creation.
**Amendment pricing behavior:** Amendments pull in the current List Price at the time of amendment creation. To preserve a customer's existing discount, the Additional Discount (percentage or amount) is carried over from the Subscription record and applied to the Amendment Quote. As a result, pricing on an Amendment Quote reflects the current List Price minus the existing Additional Discount from the Subscription, if that discount was included during data load.
The following SOQL queries validate that imported records are accurate and properly formatted for Renewal and Amendment support. Replace sample IDs with the actual 18-digit Salesforce IDs from your org. All IDs in query filters must be wrapped in single quotation marks.
1. Contract
SOQL SELECT Id, AccountId, StartDate, ContractTerm, Status, SBQQ__RenewalPriceBookId__c, SBQQ__AmendmentPriceBookId__c, SBQQ__AmendmentRenewalBehavior__c FROM Contract WHERE Id = '800xxxxxxxxxxxxXXX'
Use this query to confirm the Contract record includes the correct Pricebook and Amendment/Renewal behavior settings.
2. Subscription – Bundle Parent
SOQL SELECT SBQQ__Account__c, SBQQ__Contract__c, SBQQ__RootId__c, SBQQ__Product__c, SBQQ__Number__c, SBQQ__Quantity__c, SBQQ__RenewalQuantity__c, SBQQ__PricingMethod__c, SBQQ__ListPrice__c, SBQQ__CustomerPrice__c, SBQQ__NetPrice__c, SBQQ__ProrateMultiplier__c, SBQQ__RenewalPrice__c, SBQQ__DiscountScheduleType__c, SBQQ__DiscountSchedule__c, SBQQ__TermDiscountSchedule__c, SBQQ__Bundle__c FROM SBQQ__Subscription__c WHERE SBQQ__Contract__c = '800xxxxxxxxxxxxXXX'
Use this query to verify bundle parent Subscription records and confirm that pricing, quantity, and discount fields are populated correctly.
3. Subscription – Child
soql SELECT SBQQ__Account__c, SBQQ__Contract__c, SBQQ__RootId__c, SBQQ__Product__c, SBQQ__Number__c, SBQQ__Quantity__c, SBQQ__RenewalQuantity__c, SBQQ__PricingMethod__c, SBQQ__ListPrice__c, SBQQ__CustomerPrice__c, SBQQ__NetPrice__c, SBQQ__ProrateMultiplier__c, SBQQ__RenewalPrice__c, SBQQ__DiscountScheduleType__c, SBQQ__DiscountSchedule__c, SBQQ__TermDiscountSchedule__c, SBQQ__Bundle__c, SBQQ__OptionLevel__c, SBQQ__BundledQuantity__c, SBQQ__ProductOption__c, SBQQ__OptionType__c, SBQQ__RequiredByProduct__c, SBQQ__RequiredById__c, SBQQ__ComponentSubscriptionScope__c FROM SBQQ__Subscription__c WHERE SBQQ__Contract__c = '800xxxxxxxxxxxxXXX'
Use this query to verify child Subscription records within a bundle, including option-level, required-by, and component scope fields that define bundle hierarchy.
4. Assets – Bundle Parent
000384279

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.