Set Up the Export Lines Integration
The Export Lines Commerce integration helps replicate and synchronize all quote lines, part lines, and root lines on an associated Commerce action in the Oracle CPQ to Oracle Sales integration.
Sales users can search across multiple quotes to quickly retrieve quote line data. Quote line integration enables extensive search and reporting capabilities in Sales. The searches provide data-driven information to support multiple company roles.
- Salespeople can use this information to identify sales opportunities, direct a sales approach, and aid in discount decisions. They can also use this information to prompt customer follow-ups for status, product issues, availability issues, and renewals.
- Managers can evaluate appropriate discounts, measure product promotion marketing campaign results, focus sales team efforts, understand pricing sensitivity, and prepare sales reports.
- Customer service representatives can view order summaries and status when responding to customer inquiries.
- Site administrators can verify that integrations are working correctly.
- Integration administrators can use the attribute mapping UI to drag and drop attributes to define integration mappings.
Here's how you set up the Export Lines integration:
- Go to .
- In the Navigation list for the applicable process, select Integrations, and click List.
- If your Oracle CPQ site is provisioned with the Oracle Sales Reference Application, you should find an Export Lines integration already defined. Click the link for OSC - REST Export Lines or a similar link.
- Review or update the fields in the Integration Information region:
- Name: Enter a name for the integration.
- Variable Name: Enter a unique identifier. Caution: You can't change the Variable Name after you have created this integration.
- Description: Relevant details related about this integration.
- Timeout: If you don't enter a value, the application
defaults it to
5000
milliseconds. - ID Field: Enter the documentVarName.attributeVarName that
stores the ID field for the corresponding Sales
salesOrderHeaders
object. For standard quote line integration with Sales, the value is:transaction.oRCL_OSC_TransactionID_t
. - Line Type Filter: Select an option from these, based on
your requirements:
- Part Lines: Include only part items.
- Root Line: Include only root model lines and standalone part lines.
- All Lines: Include all root models, child models, and parts.
- Complete the fields in the End Points section:
-
MetaData URL: Enter the endpoint to retrieve the metadata
about the Sales attributes available for mapping in this integration. For the
standard quote line integration with Sales, the value is:
/crmRestApi/resources/11.13.18.05/salesOrderLines/describe
. -
Integration URL: Enter the endpoint that gets the upsert
quote lines operation. For example:
/crmRestApi/resources/11.13.18.05/salesOrders
. -
Integration Request Headers: Enter the headers to be passed
in the request to the above integration endpoint. For the standard quote lines
integration with Sales, the value is:
Upsert-Mode:true
. -
Batch Size: Batch Size is set by default to a maximum of
500
quote lines that can be integrated in a single invocation of the API endpoint. Oracle CPQ automatically handles the multiple invocations needed for larger quotes.
-
MetaData URL: Enter the endpoint to retrieve the metadata
about the Sales attributes available for mapping in this integration. For the
standard quote line integration with Sales, the value is:
- Review the Request Mapping for the REST integration by clicking the
Edit button. These mappings show the Quote Line attributes to
be pushed to Sales. In preconfigured sites, a set of standard fields are mapped. See
Export Lines
Attribute Mappings. If you want to include custom fields, you must modify the
attribute map accordingly. See Edit
Attribute Mappings.Note: When you save your edits, the Attribute Mapping page validates your mappings to ensure that there are compatible data types.
- Click Update.
- Deploy the changes. See: Deploy your changes.
Sales Quote Line Integration Attributes Mapping
The Attribute Mapping page has predefined attribute mappings for new customers and lets Sales customers modify their integration without the use of XSL. This page supports text-based searches to find attributes and then drag and drop them.
The Attribute Mapping page displays the Oracle CPQ attributes on one side of the page and the Sales attributes on the other side. Mapped attributes are displayed in the middle. Icons identify the attribute types. The attribute variable name is displayed when hovering over an attribute name. You can add new attribute mappings and edit or delete existing attribute mappings.
Here are the steps to add new attribute mappings or edit the existing attribute mappings:
- Go to .
- In the Navigation list for the applicable process, select Integrations, and click List.
- Click the REST-Export Lines integration name.
- Click Edit, next to Request Mapping.
- Click the Add Row icon or drag and drop an attribute to
create a new attribute mapping row.
- Select the appropriate Oracle CPQ attribute.
- Select the appropriate Sales attribute.
- Click the Apply icon or click outside the row to
register the mapping.Note: You can edit an existing attribute mapping using the edit icon. Similarly, if you want to delete an attribute mapping, use the delete icon.
- Click Save to save changes, or Finish to save changes and exit the page.
Export Lines Attribute Request Mapping
This table shows the standard mapping as part of the Oracle CPQ and Sales integration for the export lines integration flow. Sales attributes are the target attributes, and Oracle CPQ attributes are the source attributes when the Export Lines integration runs.
Sales Attribute Display Name |
Sales Attribute Variable Name |
Oracle CPQ Attribute Name |
Oracle CPQ Attribute Variable Name (Type) |
---|---|---|---|
Order Header ID | OrderHeaderId | OSC Transaction ID | oRCL_OSC_TransactionID_t (text) |
External Line Number | ExternalOrderLineNumber | Document Number | _document_number (text) |
Inventory Organization ID | InventoryOrgId | OSC Inventory Org ID | oRCL_OSC_InventoryOrgID_I (text) |
Inventory Item ID | InventoryItemId | OSC Inventory Item ID | oRCL_OSC_InventoryItemID_I (text) |
Revenue ID | RevnId | Opportunity Revenue Line ID | oRCL_OSC_RevnId_I (text) |
Line Status | LineStatusCode | Status | status_I (menu) |
Item Type | ItemTypeCode | Line Type | lineType_I (menu) |
Quantity | Quantity | Quantity | requestedQuantity_I (integer) |
UOM | UOMCode | Unit of Measure | requestedUnitOfMeasure_I (menu) |
Line Price Period | PricePeriodCode | Price Recurrence Frequency | priceRecurFrequency_I (menu) |
Line Currency | CurrencyCode | Currency | currency_t (menu) |
Net Price | Price | Price (Net) | netPrice_I (currency) |
Net Amount | Amount | Amount (Net) | netAmount_I (currency) |
Line Discount | DiscountPercentage | Discount % | discountPercent_I (float) |
Line Contract Periods | ContractPeriods | Contracted Periods | contractedPeriods_I (integer) |
Line Contract Start Date | ContractStartDate | Contract Start Date | contractStartDate_I (date) |
Line Contract End Date | ContractEndDate | Contract End Date | contractEndDate_I (date) |
Line Request Date | RequestDate | Request Date | requestDate_I (date) |
Line Win Loss Status | WinLossStatusCode | OSC Status | oRCL_OSC_Status_I (text) |
Line Order Date | OrderDate | Order Date | orderDate_t (date) |
Order Number | OrderNumber | Order Number | oRCL_ERP_OrderNumber_I (text) |
Root Line | RootLine | Root Line | rootLine_I (menu) |
Line Price Type | PriceTypeCode | Price Type (Rollup) | priceTypeRollup_I (menu) |
Line Price Period | PricePeriodCode | Price Recurrence Frequency (Rollup) | priceRecurFrequencyRollup_I (menu) |
Line Contract Periods | ContractPeriods | Contracted Periods (Rollup) | contractedPeriodsRollup_I (integer) |
Line Discount | DiscountPercentage | Discount Percent (Rollup) | discountPercentRollup_I (float) |
Net Price | Price | Net Price (Rollup) | netPriceRollup_I (currency) |
Net Amount | Amount | Net Amount (Rollup) | netAmountRollup_I (currency) |
Unit List Price | UnitListPrice | List Price (Rollup) | listPriceRollup_I (currency) |
Nonrecurring Revenue Detail | SummableNonRecurringRevenue | Non-Recurring Revenue (Summable) | nonRecurRevSummable_I (currency) |
Recurring Revenue Detail | SummableRecurringRevenue | Recurring Revenue (Summable) | recurringRevSummable_I (currency) |
Usage Revenue Detail | SummableUsageRevenue | Usage Revenue (Summable) | usageRevSummable_I (currency) |
Contract Value Detail | SummableContractAmount | Contract Value (Net Summable) | contractValue_I (currency) |
Nonrecurring Revenue | NonRecurringRevenue | Non-Recurring Revenue (Rollup) | nonRecurRevRollup_I (currency) |
Recurring Revenue | RecurringRevenue | Recurring Revenue (Rollup) | recurRevRollup_I (currency) |
Usage Revenue | UsageRevenue | Usage Revenue (Rollup) | usageRevRollup_I (currency) |
Line Contract Value | ContractValue | Contract Value (Rollup) | contractValueRollup_I (currency) |
Monthly Recurring Revenue | MonthlyRecurringRevenue | MRR (Rollup) | monthlyRecurRevRollup_I (currency) |
Monthly Usage Revenue | MonthlyUsageRevenue | MUR (Rollup) | monthlyUsageRevRollup_I (currency) |
Predefined Sales Quote Line Integration Items
You can import a migration package to implement the predefined integration content.
The table here shows the predefined Sales attribute mappings. An asterisk (*) precedes Sales Reference Application attributes.
See the Oracle CPQ Administration Online Help for more information on attributes. With limited implementation setup, you can create quotes, and the two sites can exchange information about quote lines created or updated in Oracle CPQ.
Sales Attribute Name | Sales Variable Name | CPQ Attribute Name | CPQ Variable Name (Type) | Description |
---|---|---|---|---|
Order Header ID | Order Header ID | OSC Transaction ID | oRCL_OSC_TransactionID_t (text) | The ID generated by Sales to identify this transaction. |
External Line Number | ExternalOrderLineNumber | Document Number | _document_number (text) | Unique subdocument number to be used as an identifier in a Commerce Process. |
Inventory Organization ID | InventoryOrgId | OSC Inventory Org ID | oRCL_OSC_InventoryOrgID_I (text) | The inventory organization in Sales used for sales products. |
Revenue ID | RevnId | *Opportunity Line ID | oRCL_OSC_RevnId_I (text) | The ID generated by Sales to identify the revenue line. |
Line Status | LineStatusCode | Status | status_I (menu) | The status of this line. |
Item Type | ItemTypeCode | *Line Type | lineType_I (menu) | The type of a transaction line, whether it represents a model or a part. |
Quantity | Quantity | Quantity | requestedQuantity_I (integer) | Quantity of associated line being requested; can be user-entered or set logically. |
UOM | UOMCode | Unit of Measure | requestedUnitofMeasure_I (menu) | The unit of measure of the item requested by the customer (for example, "case"). |
Line Price Type | PriceTypeCode | Price Type | priceTypeRollup_I (menu) | Indicates whether the amount on this line is charged once or periodically. |
Line Price Period | PricePeriodCode | Period | pricePeriod_I (menu) | The period of service purchased at this price. |
Line Currency | CurrencyCode | Currency | Currency_t (menu) | The Currency used to price and invoice this transaction. |
Price | Price | Price (Net) | netPrice_I (currency) | The price paid by the customer for the item. |
Line Amount | Amount | Amount (Net) | netAmount_I (currency) | The extended list amount minus any discounts for this line. |
Line Contract Value | ContractValue | Contract Value (Net) | ContractValue_I (currency) | The total contract value of this line, including all one time and recurring charges. |
Line Discount | DiscountPercentage | *Discount % | discountPercent_I (float) | The percentage of the Contract Value (List) that is discounted off of the transaction line. |
Line Contract Periods | ContractPeriods | Contracted Periods | contractedPeriods_I (integer) | Number of periods the customer has contracted to receive the item. |
Line Contract Start Date | ContractStartDate | Contract Start Date | contractStartDate_I (date) | Date that the customer starts to receive the service. |
Line Contract End Date | ContractEndDate | Contract End Date | contractEndDate_I (date) | Date that the customer stops receiving the service. |
Line Request Date | RequestDate | Request Date | requestDate_I (date) | The date on which the user requests that fulfillment occur for this transaction line. |
Line Win Loss Status | WinLossStatusCode | OSC Status | oRCL_OSC_Status_I (text) | The determining status of whether the line represents a won or a lost sale. This can be used in Deal Management analysis. |
Line Order Date | OrderDate | Order Date | orderDate_I (date) | The date and time the order was placed for fulfillment. |
Order Number | OrderNumber | *Order Number | oRCL_OSC_OrderNumber_I (text) | The order number assigned by the external order management and ERP application. |