2022

Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Multiple Price Levels of QuickBooks can be integrated with the respective Salesforce Price Books using DBSync. This section explains the steps involved in DBSync customization for multiple Price Level Integration.

Panel

Customization Steps:

  • Let's take an example of integrating two QuickBooks Price Levels PriceLevel1 & PriceLevel2 with Salesforce Price Books. To start, two Salesforce Price Books - PriceBook1 & PriceBook2 - should be created. The following process will sync the items of QuickBooks, PriceLevel1 & PriceLevel2, with Salesforce Price Books, PriceBook1 & PriceBook2, respectively.
  • Login to the DBSync account using your credentials. Click on Launch to open the Development Studio. In the next tab of your browser, go to DBSync Project SalesforceQuickBooksBidirectional.
  • Click on Connectors. Make sure that Salesforce Connector is validated and QuickBooks Web Connector is configured.
  • Go to Process SalesforceQuickBooksBidirectional. There, you will see a list of workflows.
  • Create a new workflow PriceLevelToProduct2 and move this between ItemSalesTax2Product and InvoiceToOpportunity.
  • In this new workflow, add the following query using Advanced Query Builder. Datasource should be QuickBooks. Batch size in properties will remain as 100 (default value).
Code Block
 select * from PriceLevel where Pricelevel.Maxreturned=100
  • In the Rules section, click on Add New Rule. Select Target as Salesforce, Operation as Update, Target Object as Product2 and click on Map.
  • Map the fields as shown below. Then, Save. Notice that, on the left side it has Target fields (Salesforce) and on the right side, it has source fields (QuickBooks). PriceBook1 is the name of Salesforce PriceBook and PriceLevel1 is the name of the QuickBooks Price Level.
Code Block
VALIDATEROW = IF(EQUALS(VALUE("Name"),"PriceLevel1"),"true","false")
VALIDATEROW = IF(EQUALS(VALUE("Name"),"PriceLevel1"),"true","false")
Product2 = Loop Over "PriceLevelPerItemRet"
AVSFQBQuickBooks_Idc = VALUE("ItemRef/ListId")
Name = VALUE("ItemRef/FullName")
Pricebook2Id = "PriceBook1"
UnitPrice = VALUE("CustomPrice")
  • In the Rules section, click on Add New Rule to add new Rule. Select Target as Salesforce, Operation as Update, Target Object as Product2 and click on Map.
  • Map the fields as shown below. Then, Save. Notice that, on the left side it has Target fields (Salesforce) and on the right side it has source fields (QuickBooks). PriceBook2 is the name of Salesforce PriceBook and PriceLevel2 is the name of the QuickBooks Price Level.
Code Block
VALIDATEROW = IF(EQUALS(VALUE("Name"),"PriceLevel2"),"true","false")
Product2 = Loop Over "PriceLevelPerItemRet"
AVSFQBQuickBooks_Idc = VALUE("ItemRef/ListId")
Name = VALUE("ItemRef/FullName")
Pricebook2Id = "PriceBook2"
UnitPrice = VALUE("CustomPrice")
  • To sync the new QuickBooks Price Level, repeat the above process. For every price level in QuickBooks, create a new Rule and map as discussed above.