2022

Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 39 Next »

Integration from QuickBooks to Salesforce


  • If you use Product Hierarchy in QuickBooks, then Salesforce needs to be updated to support product hierarchy.
  • Let's say DBSync is the parent item for SF2QBDesktop and SF2QBOnline items. Now if you generate an invoice in QuickBooks with DBSync and SF2QBDesktop, Item Name for DBSync remains DBSync but for SF2QBDesktop it is shown as DBSync: SF2QBDesktop. 
  • If this invoice is moved to Salesforce Opportunity, then product is migrated with the parent Name into Salesforce.
  • To make changes, go to https://login.salesforce.com . Enter you User Name and Password and click on Login. The user should have administrative privileges to make changes to Salesforce instance.
  • Go to Setup > Customize > Products > Fields and click on New in Products Custom Fields and Relationships.
  • Select Text in the Next page and click on Next button. Enter Field Label as QBName, Length as 255 and Field Name as QBName, click on Next button.
  • In the next screen select field level security for profiles and click on Next. Check Add Field check box and check Layouts you want to add it to and click on Save.
  • Go to Setup > Customize > Products > Page Layouts. Click on Edit for Product Layout.
  • Add QB Name fields on to the page Layout. And click on Save Button.
  • Go to Customer Login in www.mydbsync.com and enter your user name and password and click on Sign in. Click on Launch to Launch DBSync project page.
  • Ensure that the Salesforce and QuickBooks connectors are validated. You should have process template SalesforceQuickBooksBiDirectional
  • Click on Projects, select and open the relevant project. You will see the available processes. Select & open the relevant process. You will see list of available Workflows.
  • Open the workflow "ItemServiceToProduct", in Rules section open the map for "Sequence No. 2".
  • Add the mapping QBName__c = VALUE("FullName") and save the mapping.
  • Similarly add the above mapping in the following States to complete the product hierarchy setup.
    • ItemInventoryToProduct
    • ItemNonInventoryToProduct
    • ItemDiscountToProduct
    • ItemOtherChargesToProduct
    • ItemInventoryAssenblyToProduct
    • ItemSalesTax2Product
  • Now your Salesforce is configured to handle product hierarchy of QuickBooks.

Integration from Salesforce to QuickBooks


  • If you have Parent-Child relationship for Products in Salesforce, then the following changes needs to be made to the mappings.
  • Go to Customer Login in www.mydbsync.com and enter your user name and password and click on Sign in. Click on Launch to Launch DBSync project page.
  • Ensure that the Salesforce and QuickBooks connectors are validated. You should have process template SalesforceQuickBooksBiDirectional
  • Click on Projects, select and open the relevant project. You will see the available processes. Select & open the relevant process. You will see list of available Workflows.
  • Open the workflow "OpportunityToInvoice", *in Rules section open the map for "Sequence No.3".*
  • Find target field "ItemServiceAddRq/ItemServiceAdd/Name" and replace the source code by copy-pasting the following.
  • IF(EXACT(VALUE("PricebookEntry/Product2/AVSFQB__QuickBooks_ItemType__c"),"ItemService"),
    RSPLIT(VALUE("PricebookEntry/Product2/Name"),":"),"")
    
  • Add the mapping where target field = "ItemServiceAddRq/ItemServiceAdd/ParentRef/FullName" and source field as the following.
  • IF(EXACT(VALUE("PricebookEntry/Product2/AVSFQB__QuickBooks_ItemType__c"),"ItemService"),
    (IF(VALUE("PricebookEntry/Product2/Name").contains(":"),
    LSPLIT(VALUE("PricebookEntry/Product2/Name"),":"),"")),"")
    
  • Similarly open the Sequence No.4 mapping.
  • Find target field "ItemInventoryAddRq/ItemInventoryAdd/Name" and replace the source code by copy-pasting the following.
  • IF(EXACT(VALUE("PricebookEntry/Product2/AVSFQB__QuickBooks_ItemType__c"),"ItemInventory"),
    RSPLIT(VALUE("PricebookEntry/Product2/Name"),":"),"")
    
  • Add the mapping where target field = "ItemInventoryAddRq/ItemInventoryAdd/ParentRef/FullName" and source field as the following.
  • IF(EXACT(VALUE("PricebookEntry/Product2/AVSFQB__QuickBooks_ItemType__c"),"ItemInventory"),
    (IF(VALUE("PricebookEntry/Product2/Name").contains(":"),
    LSPLIT(VALUE("PricebookEntry/Product2/Name"),":"),"")),"")
    
  • Similarly open the Sequence No.5 mapping.
  • Find target field "ItemNonInventoryAddRq/ItemNonInventoryAdd/Name" and replace the source code by copy-pasting the following.
  • IF(EXACT(VALUE("PricebookEntry/Product2/AVSFQB__QuickBooks_ItemType__c"),"ItemNonInventory"),
    RSPLIT(VALUE("PricebookEntry/Product2/Name"),":"),"")
    
  • Add the mapping where target field = "ItemNonInventoryAddRq/ItemNonInventoryAdd/ParentRef/FullName" and source field as the following.
  • IF(EXACT(VALUE("PricebookEntry/Product2/AVSFQB__QuickBooks_ItemType__c"),"ItemNonInventory"),
    (IF(VALUE("PricebookEntry/Product2/Name").contains(":"),
    LSPLIT(VALUE("PricebookEntry/Product2/Name"),":"),"")),"")
    
  •  The above example illustrates Product Hierarchy mapping for OpportunityToInvoice state. Based on the transaction you use, a similar procedure can be followed for other transaction workflows like OpportunityToEstimate,OpportunityToSalesOrder,OpportunityToSalesReceipt,OpportunityToCreditMemo.
  • No labels