Users can create Orders directly from a Quote, and create Contracts directly from an Order.
Quote-level Order creation is guided by the Allow Multiple Orders package-level setting. When enabled, users can break a Quote into multiple Orders by manually choosing the quantity of each quote line to be included on the Order. When unchecked, creating and saving a new Order will automatically populate that Order with Order Products copied from Quote Lines associated with the primary Quote on the Opportunity.
The following article provides walkthroughs for creating an Order from a Quote/Opportunity and for generating a Contract from an Order, followed by reviews of new Order/Order Product features and fields.
Quote Line Groups
Orders do not have equivalent grouping structures to Quote Line Groups. When you create an Order from a Quote with Quote Line Groups, Salesforce CPQ copies Quote Line Group values to that group's Quote Lines, then copies the Quote Line values into Order Products as default values. However, Salesforce CPQ will not copy grouping structures to contain a list of Order Products.
As an alternative, you could split the quote lines in a quote line group into multiple Orders.
Order Management requires a Salesforce CPQ Summer 16 package or higher running the Advanced Calculator.
Users will have access to different Order Management features based on their Salesforce CPQ package:
Users with SalesForce Premium edition may review Create Multiple Orders from Quote.
This feature relates to the following new package-level settings in the Order tab:
Field-level permissions should be enabled for the following fields on Standard Objects:
CPQ Admin User and CPQ User permissions should be enabled for the following fields on Standard Objects:
Fields & Page Layouts
A detailed description of new fields and page layout changes may be found in Summer 16 Release Feature Setup.
Follow these steps when Allow Multiple Orders is left unchecked:
Create an Order from Quote / Opportunity Validation Rules:
Note: If you deactivate an activated Order, all Order Products will have their own Activated fields unchecked. However, if you uncheck Contracted on a previously-contracted Order, the Order Products will not have their own Contracted fields unchecked.
All features below are available in Salesforce CPQ Summer 16 and newer unless otherwise indicated.
Order Product Start Date / End Date Logic
Users can now adjust an Order Product's Start Date & End Date during or after Order creation. The Order Product Start Date will automatically meet the Order Start Date, then the Order Product End Date will be set so it is proportional to the amount of time between the Quote Line Start Date and End Date. For example,
After all Order Products have been added to the Order, the Order End Date will default to the latest End Date among all Order Products - in the case above, the Order End Date would be 07/30/2017.
You can move the Order Start Date forward or backward after Order creation. If changed, the Order Product Start and End Dates will be automatically changed according to the logic above. However, an error message will occur if the Order End Date is changed (either manually or automatically due to Order Start Date changes) to a date earlier than the latest End Date among all Order Products.
During Contract generation, the Order Start and End Dates will be used as the Contract Start and End Dates, while the Order Product's Start and End Dates will be used as the Subscription Start and End Dates. If the Order Product End Dates are null, the Subscription Start and End Dates will draw from the Order Start and End Dates instead.
For MDQ lines, if a previous segment has been ordered in a separate Order, the Order Product Start Date of a later segment will be set to Max(Order Start Date of the new Order, Previous Segment Order Product End Date).
Order Product Dates
You can edit Order Product Start/End Dates as follows:
When the Order (or other Orders in the same Opportunity) contains segmented Products, segment validation rules will still apply - the later segments must have a later Start Date than the End Dates of earlier segments.
Orders and Order Products now have lookups to Discount Schedule records. This allows users to automatically populate existing Quote Line Discount Schedules into the Order's Discount Schedule related list. If the Quote Line has custom Discount Schedules, the Order Products will also have the custom Discount Schedules snapshotted on the Order.
The Price currency field has also been added to the Discount Tier object. This field will be populated whenever a set of new Discount Schedules are created for a new Order record. This field must be populated for all Discount Unit values: Percent, Amount and Price.
The Order Product field Unprorated Net Price displays the full term price for the Order Product's specific quote line. For example, if the Order has a Subscription term of 36 months, and the Product Subscription term is 12 months, the Unprorated Net Price will display the Order Product Net Price for 12 months.
This value is calculated using the following logic:
Thus, a Subscription Product with a Unit Price of $120, Subscription Term of 12 months and Product Subscription Term of 6 would calculate the Unprorated Net Price as follows:
$120 / 12 = 10 * 6 = $60 Unprorated Net Price.
This field should be added to the CPQ Admin User and CPQ User permission sets. However, it will not be added to any page layout since it is primarily used for billing calculation.
The Order Product and Object field Billing Frequency looks up to the Quote Line field Billing Frequency. If the Quote Line Billing Frequency is blank, the value here will default to the value of the Quote header.
Lock Orders with Activate
Selecting Activate on an Order locks it so users cannot edit it; Orders must be Activated to be contracted. After activation, Active changes to Deactivate, which you can select to unlock the order and re-enable editing. The Order's Status field will display "Draft" by default / while deactivated and "Activated" while activated.
Note: Users can only activate/deactivate an Order if they have specific app permissions. Admins wanting to grant activation permission should navigate to that User's profile, select App Permissions, then Enable Activate Orders.
Inherited Quote Fields (Spring 17)
As of Spring 17, ordering from a Quote will automatically populate any new Order and Contract records with the values of shared Quote fields:
Order Splitting (Spring 17)
Use the Quote fields Order By and Order by Quote Line Group to generate Orders by field values or Quote Line Groups respectively:
You may only have one of these fields populated at a time.
Syncing Subscriptions and Order Products (26.1 / Winter 17)
Contracting an Order creates lookups between Order Products and their corresponding Subscriptions.
Subscriptions created this way will now populate their Start Date and End Date values based on the following logic:
Any further Order/Order Product date changes will be synchronized to Start Dates and End Dates on the corresponding Contract/Subscription. However, Contract/Subscription date changes cannot synchronize back to the Order/Order Product. Order dates cannot be changed once the Order is activated.