Commerce Integration Attribute Mapping
Overview
The Attribute Mapping page that allows administrators to customize their Oracle CX Sales integration without the use of XSL. This page provides a user-friendly interface to map attributes. It supports text based searches to find attributes and drag and drop functionality to add attributes. CPQ attributes are grouped by Transaction and Transaction Line levels. Transaction attributes are displayed first and have a blue sidebar. Transaction Line attributes are displayed after Transaction attributes and have a lavender sidebar.
The Attribute Mapping page displays the CPQ attributes on the left side of the page and the Oracle CX Sales attributes on the right side. The mapped attributes are displayed in the middle. Icons identify the attribute type and the attribute variable name is displayed when hovering over an attribute name. Administrators can add new attribute mappings and edit or delete existing attribute mappings.
View Attribute Mapping Page Example
Supported Attribute Mapping Data Types
Oracle CX Sales | CPQ Commerce Attribute | Notes | ||
---|---|---|---|---|
Icon | Data Type | Icon | Data Type | |
boolean | Boolean | Only supports "true" and "false" values. Values are not case sensitive. |
||
date | Date | Only supports ISO format | ||
Date Time | Only supports ISO format | |||
Text | ||||
Text Area | ||||
datetime | Date | Only supports ISO format | ||
Date Time | Only supports ISO format | |||
Text | ||||
Text Area | ||||
integer | Integer |
Only supports -2,147,483,648 to 2,147,483,647 integer value range. |
||
Text | ||||
Text Area | ||||
Group Sequence Number |
||||
Sequence Number |
||||
number | Currency | |||
Float | ||||
Integer | Only supports -2,147,483,648 to 2,147,483,647 integer value range. | |||
Text | ||||
Text Area | ||||
string |
Boolean | Only supports "true" and "false" values. Values are not case sensitive. |
||
Currency | ||||
Date | Only supports ISO format | |||
DateTime | Only supports ISO format | |||
Float | ||||
Integer |
Only supports -2,147,483,648 to 2,147,483,647 integer value range. |
|||
Rich Text | ||||
Single Select Menu | Oracle CX Sales value must match CPQ's menu variable value. | |||
Text | ||||
Text Area | ||||
Commerce Dynamic Menus | Oracle CX Sales value must match CPQ's menu variable value. |
Sort and Reorder Mapped Attribute Rows
Beginning in Oracle CPQ 22B, administrators can to sort and reorder mapped rows on the Commerce Integration Attribute Mapping page. The mapped rows can be sorted by the CPQ Attribute or the Mapped Attribute column in ascending or descending order. Sorting rows by the CPQ Attribute allows administrators to easily identify all attributes that are conditionally mapped to the same target attribute.
Sort Mapped Attribute Rows
The following image displays attribute mapping without sorting. Notice that the highlighted conditionally mapped rows are not grouped together.
When the administrator sorts the attribute mappings by the CPQ Attribute, the conditionally mapped rows are grouped together. This makes it easier to quickly identify Oracle Oracle CX Sales attributes that are mapped to the same CPQ attribute. Administrators need to click Save to retain the sorted attribute order.
Reorder Attribute Mapping Rows Using Drag and Drop
Administrators can also drag and drop attributes to reorder the mapped rows. Sorting rows by allows administrators to easily identify all attributes that are conditionally mapped to the same target attribute. Additionally, administrators can drag and drop items to reorder mapped rows in the order they prefer. Sorting rows by allows administrators to easily identify all attributes that are conditionally mapped to the same target attribute. Additionally, administrators can drag and drop items to reorder mapped rows in the order they prefer.
In the following image, the CPQ Parent Asset Key attribute was selected, and then dragged and dropped below the CPQ Instance ID attribute.
- When mapping row is in edit mode, it cannot be dragged and dropped.
- If you sort after dragging and dropping an attribute, the reordered attribute position will be lost.
- Administrators need to click Save to retain the reordered attribute position, which could have been arrived at by a combination of sort and manual resequencing.
Reorder Attribute Mapping Rows Using Drag and Drop
Administrators can also drag and drop attributes to reorder the mapped rows. In the following image, the CPQ Parent Asset Key attribute was selected, and then dragged and dropped below the CPQ Instance ID attribute.
- When mapping row is in edit mode, it cannot be dragged and dropped.
- If you sort after dragging and dropping an attribute, the reordered attribute position will be lost.
- Administrators need to click Save to retain the reordered attribute position, which could have been arrived at by a combination of sort and manual resequencing.
Conditional Mapping for REST Integrations
Beginning in Oracle CPQ 22A administrators can define conditional logic for the import of sub-document Commerce REST integration mappings. Conditional mapping allows the mapping of two source attributes to the same target attribute. When two source attributes are mapped to one target attribute, conditions must be defined to determine which of the source attributes to use. When conditions for the primary source attribute are not met, the secondary (default) mapping will be used.
The predefined response attribute mapping for the REST Import Revenue Lines Integration contains conditional mapping for several attributes. When two source attributes are mapped to the same target attribute, the conditional mapping icon is displayed for both mappings.
As shown in the following image, there are four instances where two Oracle CX Sales attributes (i.e. source attributes) are mapped to the same CPQ attribute (i.e. target attribute). The mappings with conditional mapping are outlined in blue, and the conditional mapping icon is outlined in red. Since both mapped attributes have the same condition, you can click on either conditional mapping icon to view the conditional mapping for the target attribute.
Edit Conditions Dialog for Conditional Mapping
To access the conditional logic for mapped items, click on the conditional mapping icon. The following image displays the conditional mapping for the CPQ Model Segment Variable Name attribute:
-
Select one of the two attribute mappings from the Conditional Attribute Mapping drop-down.
The selected mapping is used when the Condition is satisfied (e.g. Model Segment Variable Name = Product Group Model Family).
- Action based on: The action can be based on All Conditions, Any Conditions, or Complex Conditions.
-
A "Condition" is defined by selecting the Attribute, Operator, and Value.
(e.g. Product Type is equal to "Group")
- Attribute: Select a Oracle CX Sales attribute for the condition (e.g. Product Type)
- Operator: Available operators are based on the selected attribute type.
- Value: Enter a value for the condition
- Click Add New Condition to define additional conditions.
-
The Else – Default is automatically set to attribute mapping that isn't selected for the If Condition.
(e.g. Model Segment Variable Name = Product Model Family)
Missing CX Attributes in Imported Revenue Line Conditional Mappings
Beginning in Oracle CPQ 22B, the Attribute Mapping page will highlight missing attributes that are used in mappings as well in conditions and provide an error message when the administrator double clicks on the highlighted attribute. Informing CPQ administrators of missing Oracle CX Sales attributes prevents errors when an integration is run.
The Edit Conditions dialog will also provide an error message about which Oracle CX Sales attribute used in the condition has been deleted. For example, when a deleted CX attribute causes an invalid condition, the condition rule editor will denote which attribute has been deleted.
Administration
Edit Attribute Mapping for Oracle CX Sales Quote Line Integration
New customers will have these mappings defined as part of the provisioned reference implementation. Existing customers will have a migration package to create this standard integration. Administrators can complete the following steps to add new attribute mappings or edit the existing attribute mappings.
- Log in to Oracle CPQ and open the Admin Home page.
- Click Process Definition, in the Commerce and Documents section.
- Select Integrations from the Navigation drop-down menu for the applicable process, and then click List.
- Click on 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 CPQ attribute on the left side.
- Select the appropriate Oracle CX Sales attribute on the right side.
Click on the Apply icon or click outside the row to register the mapping.
- To delete an attribute mapping, click on the delete icon.
- To edit an existing attribute mapping, click on the edit icon.
- Click Save to save changes, or Finish to save changes and exit the page.
Predefined Attribute Mapping for Oracle CX Sales REST Integrations
CPQ provides new customers with predefined Oracle CX Sales integrations. Existing customers can import a migration package to implement the predefined integration content. The following the predefined attribute mappings are available for Oracle CX Sales REST Integrations.
Sync Quote Lines - REST Export Lines
CPQ Attribute | Oracle CX Sales Attribute | |||
---|---|---|---|---|
Name | Variable Name | Type | Name | Variable Name |
Contract End Date |
contractEndDate_l |
Date |
Line Contract End Date |
ContractEndDate |
Contract Start Date |
contractStartDate_l |
Date |
Line Contract Start Date |
ContractStartDate |
Contract Value (Net Rollup) |
contractValueRollup_l |
Currency |
Line Contract Value |
ContractValue |
Contract Value (Net Summable) |
contractValue_l |
Currency |
Contract Value Detail |
SummableContractAmount |
Contracted Periods (Rollup) |
contractedPeriodsRollup_l |
Integer |
Line Contract Periods |
ContractPeriods |
Currency |
currency_t |
Menu |
Line Currency |
CurrencyCode |
Discount Percent (Rollup) |
discountPercentRollup_l |
Float |
Line Discount |
DiscountPercentage |
Document Number |
_document_number |
Text |
External Line Number |
ExternalOrderLineNumber |
Instance ID |
itemInstanceId_l |
Text |
External Asset Key |
ExternalAssetKey |
Line Type |
lineType_l |
Menu |
Item Type |
ItemTypeCode |
List Price (Rollup) |
listPriceRollup_l |
Currency |
Unit List Price |
UnitListPrice |
MRR (Rollup) |
monthlyRecurRevRollup_l |
Currency |
Monthly Recurring Revenue |
MonthlyRecurringRevenue |
MUR (Rollup) |
monthlyUsageRevRollup_l |
Currency |
Monthly Usage Revenue |
MonthlyUsageRevenue |
Net Amount (Rollup) |
netAmountRollup_l |
Currency |
Net Amount |
Amount |
Net Price (Rollup) |
netPriceRollup_l |
Currency |
Net Price |
Price |
Non-Recurring Revenue (Rollup) |
nonRecurRevRollup_l |
Currency |
Nonrecurring Revenue |
NonRecurringRevenue |
Non-Recurring Revenue (Summable) |
nonRecurRevSummable_l |
Currency |
Nonrecurring Revenue Detail |
SummableNonRecurringRevenue |
Order Date |
orderDate_t |
Date |
Line Order Date |
OrderDate |
Order Number |
oRCL_ERP_OrderNumber_l |
Text |
Order Number |
OrderNumber |
OSC Inventory Item ID |
oRCL_OSC_InventoryItemID_l |
Text |
Inventory Item ID |
InventoryItemId |
OSC Inventory Org ID |
oRCL_OSC_InventoryOrgID_l |
Text |
Inventory Organization ID |
InventoryOrgId |
OSC Status |
oRCL_OSC_Status_l |
Text |
Line Win Loss Status |
WinLossStatusCode |
OSC Transaction ID |
oRCL_OSC_TransactionID_t |
Text |
Order Header ID |
OrderHeaderId |
Parent Asset Key |
parentAssetKey_l |
Text |
External Parent Asset Key |
ExternalParentAssetKey |
Parent Document Number |
_parent_doc_number |
Text |
Parent External Line Number |
ParentExternalOrderLineNumber |
Price Recurrence Frequency (Rollup) |
priceRecurFrequencyRollup_l |
Menu |
Line Price Period |
PricePeriodCode |
Price Type (Rollup) |
priceTypeRollup_l |
Menu |
Line Price Type |
PriceTypeCode |
Quantity |
requestedQuantity_l |
Integer |
Quantity |
Quantity |
Recurring Revenue (Rollup) |
recurRevRollup_l |
Currency |
Recurring Revenue |
RecurRevenue |
Recurring Revenue (Summable) |
recurringRevSummable_l |
Currency |
Recurring Revenue Detail |
SummableRecurringRevenue |
Request Date |
requestDate_l |
Date |
Line Request Date |
RequestDate |
Revenue Category |
_revenueCategory_l |
Menu |
Revenue Type Category |
RevenueTypeCategory |
Revenue ID |
_revenue_id |
Text |
Revenue Id |
RevnId |
Root Line |
rootLine_l |
Menu |
Root Line |
RootLine |
Root Asset Key |
rootAssetKey_l |
Text |
External Root Asset Key |
ExternalRootAssetKey |
Status |
status_l |
Menu |
Line Status |
LineStatusCode |
Subscription Id |
subscriptionId_l |
Text |
Subscription Id |
SubscriptionId |
Subscription Line Id |
subscriptionLineId_l |
Text |
Subscription Line Id |
SubscriptionLineId |
Unit of Measure |
requestedUnitOfMeasure_l |
Menu |
UOM |
UOMCode |
Usage Revenue (Rollup) |
usageRevRollup_l |
Currency |
Usage Revenue |
UsageRevenue |
Usage Revenue (Summable) |
usageRevSummable_l |
Currency |
Usage Revenue Detail |
SummableUsageRevenue |
REST Import Opportunity - REST Import
CX Sale Attribute | CPQ Attribute | |||
---|---|---|---|---|
Display Name | Variable Name | Name | Variable Name | Type |
Opportunity ID |
OptyId |
Opportunity ID |
opportunityID_t |
Text |
Name |
Name |
Opportunity Name |
opportunityName_t |
Text |
Owner |
OwnerResourcePartyId |
OSC Owner Resource Party ID |
oRCL_OSC_OwnerResourcePartyID_t |
Text |
Business Unit ID |
PrimaryOrganizationId |
OSC Primary Org ID |
oRCL_OSC_PrimaryOrgID_t |
Text |
Opportunity Type |
OpportunityTypeCode |
Revenue Category |
_revenueCategory_t |
Menu |
REST Upsert Quote - REST Export
Oracle CX Sales Attribute | CPQ Attributes | |||
---|---|---|---|---|
Display Name | Variable Name | Name | Variable Name | Type |
Contract End Date |
ContractEndDate |
Contract End Date |
contractEndDate_t |
Date |
Contract Start Date |
ContractStartDate |
Contract Start Date |
contractStartDate_t |
Date |
Currency |
CurrencyCode |
Current Document Currency Preference |
_system_current_document_currency_pref |
Text |
CPQ Process Name |
ExternalProcessName |
Current Process Name |
_system_process_name |
Text |
Reference Number |
ExternalReferenceNumber |
Current Unique Buy-Side ID |
_system_buyside_id |
Text |
Customer ID |
SoldCustomerPartyId |
Customer ID |
_customer_id, for mapping UI |
Text |
Opportunity ID |
OptyId |
Opportunity ID |
opportunityID_t |
Text |
Win Status |
WinStatusCode |
OSC Status |
oRCL_OSC_Status_t |
Text |
ID |
OrderHeaderId |
OSC Transaction ID |
oRCL_OSC_TransactionID_t |
Text |
Owner |
Owner |
Owner |
owner_t |
Text |
Valid To Date |
ExpirationDate |
Price Expiration Date |
priceExpirationDate_t |
Date |
Proposal |
ProposalExistFlag |
Proposal Exists |
proposalExists_t |
Boolean |
Renewal Process |
RenewalProcess |
Renewal Process |
renewalProcess_t |
Menu |
Quote Type Category |
QuoteTypeCategory |
Revenue Category |
_revenueCategory_t |
Menu |
Status |
Status |
Status |
status_t |
Text |
External Host Name |
ExternalHostName |
Supplier's Company Name |
_system_supplier_company_name |
Text |
Total Contract Value |
OrderTotal |
Total Contract Value (Net) |
totalContractValue_t |
Currency |
Total Monthly Recurring Revenue |
TotalMonthlyRecurringRevenue |
Total MRR (Net) |
totalMonthlyNetAmount_t |
Currency |
Total Monthly Usage Revenue |
TotalMonthlyUsageRevenue |
Total MUR (Net) |
totalMonthlyUsageRev_t |
Currency |
Total Nonrecurring Revenue |
TotalNonRecurringRevenue |
Total NRR (Net) |
totalOneTimeNetAmount_t |
Currency |
Total Recurring Revenue |
TotalRecurringRevenue |
Total Recurring Revenue (Net) |
totalRecurRevenue_t |
Currency |
Total Usage Revenue |
TotalUsageRevenue |
Total Usage Revenue (Net) |
totalUsageRevenue_t |
Currency |
Name |
Name |
Transaction Name |
transactionName_t |
Text |
Quote ID |
ExternalQuoteNumber |
Transaction Number |
transactionID_t |
Text |
Reference Code |
ExternalSystemReferenceCode |
Transaction Source System |
transactionSourceSystem_t |
Text |
Version |
VersionNumber |
Version Number |
version_number_versionTransaction_t |
Text |
Response Mapping
Oracle CX Sales Attribute | CPQ Attribute | |||
---|---|---|---|---|
Display Name | Display Name | Name | Variable Name | Type |
ID |
OrderHeaderId |
OSC Transaction ID |
oRCL_OSC_TransactionID_t |
Text |
REST Line Sync Complete - REST Export
Oracle CX Sales Attribute | CPQ Attribute | |||
---|---|---|---|---|
Display Name | Variable Name | Name | Variable Name | Type |
Last Synchronized |
LastOptySyncDate |
Current Date |
_system_date |
Date |
ID |
OrderHeaderId |
OSC Transaction ID |
oRCL_OSC_TransactionID_t |
Text |
Response Mapping
CX Sale Attribute | CPQ Attribute | |||
---|---|---|---|---|
Display Name | Variable Name | Name | Variable Name | Type |
Opportunity ID |
OptyId |
Opportunity ID |
opportunityID_t |
Text |
Name |
Name |
Opportunity Name |
opportunityName_t |
Text |
Owner |
OwnerResourcePartyId |
OSC Owner Resource Party ID |
oRCL_OSC_OwnerResourcePartyID_t |
Text |
Business Unit ID |
PrimaryOrganizationId |
OSC Primary Org ID |
oRCL_OSC_PrimaryOrgID_t |
Text |
Opportunity Type |
OpportunityTypeCode |
Revenue Category |
_revenueCategory_t |
Menu |
REST Import Revenue Lines - REST Import
Note: The model_name
attribute only retains the Oracle CX Sales mapping at the time of import. Once configuration and quoting take place it may be overwritten with the Oracle CPQ product information.
Notes
Notes
- A Commerce REST – Export Lines Integration for Oracle CX Sales must be created prior to editing attribute mapping.
-
If the Attribute Mapping UI is open when new Commerce attributes are added, the Attribute Mapping UI has to be refreshed to show the new attributes.
-
Administrators should note that Oracle CX Sales Integer attributes with long values may not work as expected when mapped to Oracle CPQ Integer attributes. The integrations may not set the Oracle CX Sales attribute value to the Oracle CPQ attribute and the Import or Export integration could potentially fail.
To be more specific, Oracle CPQ Integer attributes only accept values in the -2147483648 to 2147483647 range.
Related Topics
Refer to the following documents for more information focused on Oracle CX Sales to Oracle CPQ integration implementation.
-
How do I get started with the Revenue Transformation Solution? Oracle Sales Playbook