Product Mapping allows customers to define which fields from Product (OpportunityLineItem) are sent to Oneflow when creating a contract. This feature is flexible enough to work with quantities, checkbox or single choices on Oneflow Contracts. Also is possible to define a field which will be updated once a contract is signed.

 

How to configure Product Mapping?
To configure Product Mapping, on Salesforce navigate to
Setup > Custom Settings > Oneflow Product Mapping > Manage > Product Mapping >  Edit


Here you can change the Product Mapping configuration to the use Salesforce fields which suit your company best:

  • Name (Product's Name shown on Oneflow)
  • Description (Product's Description shown on Oneflow)
  • Price1  (Product's Price1 shown on Oneflow)
  • discount1  (Product's Discount1 shown on Oneflow)
  • Price2 (Product's Price2 shown on Oneflow)
  • discount2  (Product's Discount2 shown on Oneflow)
  • quantity (Product's Quantity shown on Oneflow)
  • quantity_type (Product's Quantity Type shown on Oneflow)
  • default_quantity_type  (Product's Default Quantity Type shown on Oneflow, choose number, checkbox, single-choice)
  • Customer_selection - Field that is updated when contract is signed.


Example for Out-of-the-box Product Mapping Settings:

  • Name - PricebookEntry.Name (Product's Name is coming from OpportunityItemLine > PricebookEntry > Name)
  • Description - Product2.Description (Product's Description is coming OpportunityItemLine > Product2 > Description)
  • Price1 - UnitPrice (Product's Price1 is coming from OpportunityItemLine > UnitPrice )
  • discount1 - Discount (Product's Discount1 shown on Oneflow)
  • Price2 - Optional
  • discount2 - Optional
  • quantity - Quantity (Product's Quantity comes from OpportunityItemLine > Quantity)
  • quantity_type - Optional
  • default_quantity_type - Optional (Default option for Product's Default Quantity Type is number)
  • Customer_selection - Optional

As shown on the configuration above is possible to use fields from the OpportunityLineItem itself or fields from other objects related to the OpportunityLineItem (like the Product's Name shown on the Contract is coming from the field Name from PricebookEntry related to this OpportunityLineItem).


Advanced Configuration

Oneflow Product Table allows you to work with quantities, checkboxes or single choice selection.

Let's take a different scenarios and how configure them using Product Mapping.


  • Number
    When creating a contract, a customer would like to display the quantity for a given product.

  • Checkboxes
    When creating a contract, a customer would like to allow product selection by selecting a given checkbox for a product.
    To use checkboxes, on Product Mapping settings change Oneflow Default Quantity Type to checkbox.


  • Single choice
    When creating a contract, a customer would like to allow product selection for one and only product.
    To use single choice, on Product Mapping settings change Oneflow Default Quantity Type to exclusive.


Default Quantity Type vs Product Quantity Type


Product QuantityType takes a field from Product and shows that product on Oneflow Contract accordingly.
Product field for this purpose is required to be text/dropdown field with values "number", "checkbox" or "exclusive".


Also, keep in mind that if  Product Quantity Type is set than takes precedence over Default Quantity Type (value for Default Quantity Type is ignored). When Product Quantity Type is not mapped or it might be mapped but not set for a specific product than product type fallback to Default Quantity Type.

This mapping is specially useful for creating contracts where you would like to have both Product Selection and Product Quantity. For example,



2-Way Sync for Products

When a contract is signed is possible to sync back the product selection to Salesforce. This is useful to keep track of what did the customer signed like for example sync back the number of licenses a customer bought or what extras it might be interested in.
To enable 2-Way Sync for Products fill Product Customer Selection on Product Mapping with a field (Editable). from OpportunityLineItem.


For example, check our video where we are syncing back the quantity to Salesforce after a contract is signed.


Another example. check our video where we are syncing back the customer selection for products.


Limitations (2-Way Sync)


Oneflow Product Table

Product Reorder is not supported

Product Renaming is not supported

Adding/Removing Products is not support


Salesforce Opportunity Products

Product Reorder is not supported

Product Renaming is not supported

Adding/Removing Products is not support


Any of the above changes will require a new contract, existing contracts will not be updated.


Troubleshooting

One of the previously mapped field does not exist (might have been deleted) or is misspelled or is missing namespace.

User trying to create the contract does not have access to the field specified by the error message.

Product Mapping Custom Settings is missing.

Product Name on Product Mapping configuration is mandatory.