Quotes

Prev Next

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.

Note

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.

C4C Internal Quote

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).

External Quote Import Export.png

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.

Important

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.

quote_lifecycle_diagram.png

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.

cpqquotestatusdiagram.png

Note

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:

  1. Go to Administration and select SettingBoolean.
  2. Search for SettingSyncPartnerQuoteEnabled.
  3. 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