- 22 Oct 2024
- 7 Minutes to read
- Print
- DarkLight
Quotes
- Updated on 22 Oct 2024
- 7 Minutes to read
- Print
- DarkLight
Import quotes from C4C
Zilliant CPQ enables the import of internal and external quotes. These include sales quotes created in CPQ from an account or opportunity that has been imported from C4C.
CPQ must have a company assigned when creating or synchronizing a quote. The company is assigned to the employee automatically when creating a quote from C4C.
Manage internal quotes
An internal quote is created in C4C and then imported to CPQ. You can edit the quote data in C4C and CPQ. However, you must add or delete line items in the quote in CPQ to prevent inconsistencies in the line-item table between CPQ and C4C. This is required because CPQ is used primarily for the configuration and pricing modules.
You can update line-item data, such as quantity and list price, in C4C. CPQ updates line-item data on subsequent imports when it finds changes or inconsistent last change state IDs.
Manage external quotes
External quotes are created outside C4C. Create an external quote the following two ways:
- Create an account from C4C, create a quote from that account, then export the quote to C4C.
- Import an opportunity from C4C, create a quote from that opportunity, then export the quote to C4C.
The following image refers to exporting a quote to C4C as an external quote (account to quote integration).
Use the product object external ID to search for a product
For every quote import, you must have a product with the correct objectERPId assigned. Only those products with an assigned objectERPId can be searched using the internal ID of a product in C4C. Products assigned invalid objectERPId values will fail to import.
Manage sales document status mapping
You can manage the lifecycle of the quote in C4C or CPQ. However, there are limitations to each due to differences in the technical architectures between the two systems.
While importing an account from C4C, CPQ also synchronizes the account if the account from C4C already exists in CPQ. The following processes are performed during synchronization.
Approval process in C4C
For details about CPQ's approval engine and workflow, read Approval process.
In the scenario discussed in this section, a quote has been submitted in C4C, and CPQ's approval engine has been configured as disabled. In this situation, the sales document status of the quote in CPQ is mapped to one of three status values for a quote in C4C. Therefore, if the quote has been submitted in C4C, the quote must be set to PENDING to allow the quote to be editable in CPQ.
Following are the three C4C codes:
- Status Code
- Progress Code
- Approval Code
The following table shows how CPQ changes the sales document status depending on the three C4C codes.
CPQ SALES DOCUMENT STATUS | Status Code | Progress Code | Approval Code |
---|---|---|---|
Open | Open | Not relevant | Not started |
Open | Open | Not relevant | In revision |
Completed | Open | Not relevant | In revision |
Completed | Open | Not relevant | In approval |
Completed | Open | Pending | Not Started |
Completed | |||
Approved | Open | Not Relevant | Approved |
Approved | Open | Pending | Approved |
Approved | Completed | Pending | Approved |
PENDING | cell | Pending | cell |
ACCEPTED | Completed | Won | Approved |
ACCEPTED | Completed | Won | Not Started |
ACCEPTED | Completed | Won | Approval Not Necessary |
ACCEPTED | Completed | Won | Not Found |
ACCEPTED | Completed | Won | In Approval |
ACCEPTED | Completed | Won | In Revision |
ACCEPTED | Completed | Won | Withdrawn |
REJECTED | Completed | Lost | Not Started |
REJECTED | Completed | Lost | Not Started |
When a quote is in Pending status in C4C, when that quote is imported into CPQ the sales item status changes to Pending status as well.
There is limited functionality in Pending status. When a quote in CPQ is in Pending status, you cannot:
- Delete or add sub items under a sales item.
- Make changes to a configurable product.
- Change the quantity of a sales item to get a new price.
When a quote in CPQ is in Pending status, you can:
- Add a configurable, classified, or raw product.
- Configure a newly added product.
- Remove a product added in Pending status if the sales item status is not in Pending status.
- Reprice by adding a product, changing the quote header information (such as currency or pricing date), and changing the quantity of the sales item.
The following diagram shows the recommended process that has to be done if the quote lifecycle is controlled in C4C.
You must select the CPQ tab especially if the following relevant pricing changes were made before submitting the quote in C4C. This is necessary in order to synchronize the pricing related changes to do reconfiguration or pricing when the Quote in DSP is still in Open status.
Approval process in CPQ
For details on CPQ's approval engine and workflow, read Approval process.
This section discusses the case in which the approval engine is configured in CPQ. In this scenario, the complete lifecycle of the quote is submitted and managed by CPQ. In this case, the submission trigger in C4C must be disabled.
However, CPQQuoteStatus must be configured in C4C to show the latest status of the quote in CPQ. Zilliant recommends that you enable or disable the line item table based on the value of CPQQuoteStatus.
For example, if CPQQuoteStatus is not in an OPEN state, the line item table should be disabled to align with the behavior that is allowed in CPQ.
If you make changes while** CPQQuoteStatus** is not OPEN, it could trigger the pricing in CPQ on import of those changes. CPQ will ignore the changes as the quote in CPQ is not OPEN.
Because the complete quote lifecycle is managed in CPQ, you should perform the CRUD operations on line item data in CPQ to reduce inconsistencies between the two systems.
Import partners of quote from C4C
C4C partner | CPQ equivalent | Quote C4C Import | Notes |
---|---|---|---|
BILL_TO_PARTY | Account | Supported | |
SHIP_TO_PARTY | Account | Supported | |
BUYER_PARTY | Account | Supported | |
PAYER_PARTY | Account | Supported | |
SELLER_PARTY | Account | Supported | |
SALES_EMPLOYEE_PARTY | Employee | Supported | You must assign the External ID of the user in CPQ to the Internal ID of the employee in C4C. |
EMPLOYEE_RESPONSIBLE_PARTY | Employee | Supported | You must assign the External ID of user in CPQ to the Internal ID of employee in C4C. |
PRODUCT_RECIPIENT_PARTY | Not supported | Not supported | Not supported |
SALES_PARTNER_PARTY | Account | Not supported | Could be a Business Partner in C4C |
COMPETITOR_PARTY | Account | Not supported | Could be a Business Partner in C4C |
OTHER_PARTY | Account | Not supported | Could be a Business Partner in C4C |
SALES_UNIT_PARTY | Company | Not supported | |
SALES_TEAM_PARTY | Not supported | Not supported |
By default, the partners are not synchronized. If you want to synchronize the partners by default, configure the following setting in CPQ:
- Go to Administration and select SettingBoolean.
- Search for SettingSyncPartnerQuoteEnabled.
- Set Setting Value Boolean to YES.
Import a quote with custom field from C4C
CPQ supports the import of custom fields to the following SUBJECT TYPE within the quote dataset.
- Quote
- SalesItem
- PartnerFunctionRecord
Import a quote header custom field from C4C
For quote header custom field mapping, the following properties must be set where MX_GRAPH_TYPE_URI, MX_SUBJECT_TYPE_URI and CFC_XPATH are fixed.
FIELD NAME | FIELD VALUE or EXPLANATION | FIXED |
---|---|---|
MX_GRAPH_TYPE_URI | http://www.inmindcloud.com/application/schema.owl#Quote | Yes |
MX_SUBJECT_TYPE_URI | http://www.inmindcloud.com/application/schema.owl#Quote | Yes |
MX_FIELD_URI | The CPQ field URI was customized inside the application-schema-ext.owl with the domain as Quote. Example: http://www.inmindcloud.com/application/application-schema-ext.owl#zQuoteXxxXxxXxx | No |
CFC_FIELD_NAME | The C4C field name was created in C4C. It must start with the prefix: a00:zQuoteXxxXxxXxx | No |
CFC_FIELD_NAME_SPACE | Name space of the custom field. For example, the namespace used for a custom field: http://sap.com/xi/AP/CustomerExtension/BYD/A0014 | No |
CFC_XPATH | //CustomerQuote | Yes |
Import a Quote Line Item Custom Field from C4C
For Quote Line Item custom field mapping, you must set the following properties where MX_GRAPH_TYPE_URI, MX_SUBJECT_TYPE_URI and CFC_XPATH are fixed.
FIELD NAME | FIELD VALUE or EXPLANATION | FIXED |
---|---|---|
MX_GRAPH_TYPE_URI | http://www.inmindcloud.com/application/schema.owl#Quote | Yes |
MX_SUBJECT_TYPE_URI | http://www.inmindcloud.com/application/schema.owl#SalesItem | Yes |
MX_FIELD_URI | The CPQ field URI is the one that was customized inside the application-schema-ext.owl having the domain as SalesItem. For example, http://www.inmindcloud.com/application/application-schema-ext.owl#zQuoteSalesItemXxxXxxXxx | No |
CFC_FIELD_NAME | The C4C field name is the one that was created in C4C. It must start with the prefix: a00:zQuoteSalesItemXxxXxxXxx | No |
CFC_FIELD_NAME_SPACE | The name space of the custom field. For example, the namespace used for a custom field: http://sap.com/xi/AP/CustomerExtension/BYD/A0014 | No |
CFC_XPATH | //CustomerQuote/Item[ID='SalesItem.objectExternalId'] | Yes |
Import quote partner with a custom field from C4C
For quote partner custom field mapping, you must set the following properties where MX_GRAPH_TYPE_URI, MX_SUBJECT_TYPE_URI and CFC_XPATH are fixed.
FIELD NAME | FIELD VALUE or EXPLANATION | FIXED |
---|---|---|
MX_GRAPH_TYPE_URI | http://www.inmindcloud.com/application/schema.owl#Quote | Yes |
MX_SUBJECT_TYPE_URI | http://www.inmindcloud.com/application/schema.owl#PartnerFunctionRecord | Yes |
MX_FIELD_URI | The CPQ field URI was customized inside the application-schema-ext.owl with the domain as PartnerFunctionRecord. For example: http://www.inmindcloud.com/application/application-schema-ext.owl#zQuotePartnerXxxXxxXxx | No |
CFC_FIELD_NAME | The C4C field name is the one that was created in C4C. It must start the prefix: a00:zQuotePartnerXxxXxxXxx | No |
CFC_FIELD_NAME_SPACE | Name space of the custom field. For example, the namespace used for a custom field: http://sap.com/xi/AP/CustomerExtension/BYD/A0014 | No |
CFC_XPATH | The following are supported XPath for Quote Partners: //CustomerQuote/PayerParty, //CustomerQuote/BillToParty, //CustomerQuote/BuyerParty, //CustomerQuote/ProductRecipientParty | Yes |