2022

Page tree

Versions Compared

Key

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

...

Table of Contents

Panel

Integration from Salesforce to

...

QuickBooks

  • If multicurrency is enabled in Salesforce and QuickBooks then, we need to make some changes in DBSync settings and mappings to achieve seamless integration with MultiCurrency.
  • Go To to www.mydbsync.com and select Customer Login. Enter your User Name Username and Password and click Login Buttonon Sign in. Click on Launch in the Console area of MyHome Page , to launch the DBSync integration console.

Image Removed

  • In DBSync console click on Edit Link from Manage Toggle Button.

Image Removed

  • Click on Edit link for Salesforce Adapter. Enter Salesforce User Name and Password and click on Save Properties button. Click on Validate button to validate the Adapter.

Image Removed

  • Click on Edit Link for QuickBooks Adapter. Enter QuickBooks File Path in file text box and click on Save Properties.  Image Removed
  • Double Click or Right Click ? Open on the BiDirectionalSync Process to open it for editing.

Image Removed

  • If you are using SalesforceQuickBooksBiDirectional profile, you will find a list of states with control flow on process Builder Screen. Double click on OpportunityToInvoice State to open it for editing.

Image Removed

  • Right Click ? Properties on Reader for Opportunity as highlighted below:

Image Removed

  • Replace the reader query in the properties window with following query and click on Save button. Both the screenshots before and after entering the query is shown below. Project page.
  • Ensure that Salesforce and QuickBooks connectors are validated. You should have process template SalesforceQuickBooksBiDirectional.
  • Click on Projects then, select and open the relevant Project. You will see the available processes. Select and open the relevant Process. You will see a list of available Workflows.
  • Open workflow OpportunityToInvoice. Replace the reader query in the Advanced Query Builder with the following query and then, click on the Save & Close button.
Code Block
SELECT Opportunity.Id,Opportunity.AVSFQB__Primary_Contact__r.FirstName,Opportunity.AVSFQB__Primary_Contact__r.LastName,Opportunity.Owner.QB_SalesRep_ID__c,
Opportunity.AVSFQB__Primary_Contact__r.Email,Opportunity.AVSFQB__

...

QuickBooks_Id__c,Opportunity.AccountId,LastModifiedDate,Opportunity.Account.Id,
Opportunity.Account.CurrencyIsoCode,Opportunity.Account.Name,Opportunity.Account.BillingStreet,Opportunity.Account.BillingCity,
Opportunity.Account.BillingState,Opportunity.Account.BillingPostalCode,Opportunity.Account.BillingCountry,Opportunity.Account.ShippingStreet,
Opportunity.Account.ShippingCity,Opportunity.Account.ShippingState,Opportunity.Account.ShippingPostalCode,Opportunity.Account.ShippingCountry,
Opportunity.Account.Fax,Opportunity.Account.Phone,Name,Description,CloseDate ,(SELECT Quantity,UnitPrice,Description,Opportunity.owner.FirstName,
Opportunity.owner.LastName,Opportunity.Id,Opportunity.CloseDate,PricebookEntry.Name,PricebookEntry.Product2.ProductCode,PricebookEntry.Product2.Name,
PricebookEntry.Product2.Description,PricebookEntry.Product2.Id,PricebookEntry.UnitPrice,PricebookEntry.Product2.AVSFQB__QuickBooks_ItemType__c FROM
OpportunityLineItems) ,Opportunity.Account.AVSFQB__

...

QuickBooks_Id__c,Opportunity.AVSFQB__Generate_Object__c FROM Opportunity where
Opportunity.AVSFQB__Generate_Object__c = 'Invoice'

Image Removed
Image Removed

  • Right Click ? Properties on Map:SFToQB with Sequence No 1 and click on "Edit" link to open the mapping window.

...

  • In the Rules section, you will see a list of 9 Rules. Open the map of the sequence no.1 Rule.
  • Add the following mapping in the mapping window and click on the Save & Close button.
Code Block
CustomerAddRq/CustomerAdd/CurrencyRef/FullName

...

 =

...

 IF(VALUE("Account/CurrencyIsoCode").equals("USD"),"US Dollar",IF(VALUE("Account/CurrencyIsoCode").equals("GBP"),"British Pound Sterling",IF(VALUE("Account/CurrencyIsoCode").equals("EUR"),"Euro",IF(VALUE("Account/CurrencyIsoCode").equals("CAD"),"Canadian Dollar",""))))

...


  • By adding the above mapping we make sure that all customers are set to right currency and thus generating the invoice and other transactions in the same currency as Salesforce.

Add the same mapping to following

...

workflows as well if,

...

you are using these

...

workflows in Integration:

  • OpportunityToSalesOrder
  • OpportunityToSalesReceipt
  • OpportunityToEstimate
  • OpportunityToCreditMemo
  • RecurringInvoices
  • RecurringEstimate
  • RecurringSalesOrder
  • RecurringSalesReceipt
  • RecurringCreditMemo

...


Panel

Integration from

...

QuickBooks to Salesforce

  • If Quickbooks QuickBooks is enabled with Multi-Currency then, then the following changes needs need to me be made to the mappings in DBSync.
  • Navigate to the Process builder page by double-clicking on the process flow, "BiDirectionalSync".
  • Open the "InvoiceToOpportunity" state by double-clicking on it.
  • Open the Go to www.mydbsync.com and select Customer Login. Enter your Username and Password and click on Sign in. Click on Launch to launch the 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 and open the relevant Process. You will see a list of available Workflows.
  • Open workflow CustomerToAccount. In Rules Section, Open the Mapping for "Sequence No 1"
  • Open workflow InvoiceToOpportunity. In the Rules section, open the mapping for "Sequence No 1 and 2" in the new window / tab as illustrated in the above section.
  • Add the mapping where target field = "CurrencyIsoCode" and add the following code under source field. :

Code Block

...

IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("US Dollar"),
"USD",IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("British Pound Sterling"),
"GBP",IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("Euro"),
"EUR",IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("Canadian Dollar"),"CAD",""))))
  • Similarly, open the mapping for "Sequence No 5" in the new window/tab.
  • Add the mapping where target field = "CurrencyIsoCode" and . Then, add the following code under source field. :
Code Block

...

IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("US Dollar"),
"USD",IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("British Pound Sterling"),
"GBP",IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("Euro"),
"EUR",IF(VALUE("CustomerRef/FullName/CustomerRet/CurrencyRef/FullName").equals("Canadian Dollar"),"CAD",""))))
  • A screenshot below illustrates the above mapping. Image Removed
  • Double-click on the process flow, "BiDirectionalSync" and . Then, open the "InvoiceToInvoice" state. Open the mapping "Sequence No 1" and add the same mapping as shown in the example above example.
  • This completes the all product-hierarchy customizations for your DBSync profileMulticurrency customizations.