Salesforce to Quickbooks Integration is crucial for many businesses.

 

This gives full visibility into how the business is performing and what improvements can be made. Using CRM and accounting software, customer information and invoicing are shared between the two departments.

With Salesforce to QuickBooks integration, you can reduce duplicate data entry, increase productivity, and gain more insights for better forecasting.

 

>Function : On Creating an Account in Salesforce, we have a customer in Quickbooks.

 

In the subsequent sections, we have shared the steps to Integrate Salesforce to Quickbooks. Check them out!

Step 1: Create an Authentication Provider with your Quickbooks ‘Production or Sandbox’ Organization

I. Create a QuickBooks OAuth 2.0

>Login to Intuit’s Developer website with QuickBooks credentials.

>Then click on the keys & credential section on the left tab

>Go on Dashboard and click on your Org.

>Get ‘Client ID’ and a ‘Client Secret’.

> Return to the Keys & credentials section to obtain the ‘Client ID’ and ‘Client Secret’.

>Repeat this process to make sure that the ‘Client ID’ and ‘Client Secret’ codes are generated for both Production (under Production Key & OAuth) and Sandbox org (under Development > Key & OAuth) respectively.

II. Create an Authorization Provider

  1. Login to the Salesforce Org.
  2. Navigate to the Authorization provider page (Setup > Security Controls > Auth Provider) and create a new Auth Provider.
  3. Open the new Auth Provider page and select the provider type ‘Open ID Connect’. Enter the below details and save the record.
  • Name: Enter the Name (e.g.QuickBooks_OAuth_V2)
  • Provider Type: “Open ID Connect”
  • Consumer Key: Client ID value (Copy and Paste from QuickBooks, one you get above )
  • Consumer Secret: Client Secret value (Copy and Paste from QuickBooks, one you get above)
  • Authorize Endpoint URL: https://appcenter.intuit.com/connect/oauth2
  • Token Endpoint URL: https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer
  • Do not change the value of any other field.

Note : If Auth Provider is created on the sandbox, the Client ID and Client Secret values are copied from the ‘Keys & OAuth’ under Development. If Auth Provider is created on the production, the Client ID and Client Secret values are copied from the ‘Keys & OAuth’ under the Production tab.

Note : The Auth Provider should be created using the same name as the App that was created on QuickBooks.

After saving the ‘Auth Provider’, Make note of the generated callback URL at the bottom of the page.

Note : Space is not allowed in the callback URL which is built from the Company Name Credential created in the Quickbooks Developer App

Copy the callback URL (from the above step) and paste it into the Redirect URIs on QuickBooks App. (Key & OAuth > Redirect URIs Add URI > Paste the callback URL on the Link box).

Note : If the callback URL link is copied from production, then the link is pasted on Redirect URI under the ‘Key and OAuth’ section of the Production tab. Otherwise, the link is pasted on Redirect URI under the ‘Key and OAuth’ section of the Development tab.

III. Create Named Credentials

  1. Navigate to Named Credential Page (Setup > Security Controls > Named Credentials)
  2. Create a new Named Credential record by entering the values into the below fields and click on save.
  • Name: Enter the name (e.g. Quickbooks_REST_API)
  • URL: https://quickbooks.api.intuit.com
  • Identity Type: Named Principle
  • Authentication Protocol: OAuth 2.0
  • Authentication Provider: Name of the Authentication Provider which was created in the above section.
  • Scope: com.intuit.quickbooks.accounting
  • Start Authentication Flow on Save: Set to ‘True’

Note : Don’t change or populate any other than the above-mentioned fields.

Note : The Named Credential should be created using the same name as the App that was created on QuickBooks.

  • Now Open Developer Console and paste the following code to create a Customer on Quickbooks on Creating Account on Salesforce.

Step 2: Create a Trigger on Account and paste below code:

Create a class and paste below code :

Now we will create an Account in Salesforce

This will get reflected in the Quickbooks as Customer

Now the Customer Id gets reflected in the Account record in salesforce as Quickbooks Customer Id

Conclusion

Integrating Salesforce with Quickbooks has never been easier than this! We hope that you like this solution. Do share your experience with us, and feel free to reach out to us if you need help implementing the solution. We would be happy to help!

Related Articles

A headless Quick Action in Salesforce is a custom action executed within a Lightning Web Component (LWC). It doesn’t open the default modal window for user interaction and allows you to use custom logic and dynamic content. In this blog, we will walk you through the key steps of creating a headless Quick Actions in […]

Read More
Integrating-Salesforce-Lightning-Map-with-Lead-Object-A-Step-by-Step-Guide-to-Adding-Address-Markers

Lightning Web Components (LWC) is a modern JavaScript framework used to build responsive, dynamic applications on the Salesforce platform. LWC leverages web standards, allowing developers to utilize the latest JavaScript features and methodologies. Compared to older Salesforce frameworks like Aura and Visualforce, LWC is lightweight, fast, secure, and more efficient in terms of performance. Additionally, […]

Read More
Step-by-Step Guide to Creating a Custom Agentforce Agent

A custom Agentforce Agent is imperative to increase the efficiency and effectiveness of your business operations. Do you know why? In this blog, we will walk you through the key steps that can help you create a custom Agentforce Agent: What is Agentforce? Agentforce is an AI support service designed to assist agents in providing […]

Read More
Steps to Develop Prompt Template with Data Using Flow or Apex

In the world of Salesforce development, prompt templates are like the secret ingredient that powers some of the coolest features in Einstein 1 Studio. They’re the behind-the-scenes magicians who make things happen, from drafting personalized emails to summarizing records and beyond. But here’s the thing: to make these templates truly shine, you’ve got to ground […]

Read More
A Complete Guide to Second Generation Managed Packages

Second Generation Managed Packaging (2GP) is a must-have modern approach that helps in building and managing packages on Salesforce. It offers a myriad of tools for developing, distributing, and managing apps and metadata to AppExchange partners.   With the help of Managed 2GP packaging, you can utilize your custom Apex code, interact with your version control […]

Read More
Unlocking the Future Salesforce's Biometrics Service for Mobile Apps

Salesforce’s cutting-edge offering, Biometrics Service, is about to revolutionize mobile utility safety with its Spring ’24 release. This new carrier lets builders seamlessly integrate biometric authentication functions, including fingerprint and facial recognition, without delay into Lightning Net components (LWCs). This capability is important for defensive touchy records on mobile gadgets, ensuring unauthorized entry is thwarted […]

Read More
Our Location worldwide
Indian Flag India
3rd Floor, A-10, Pegasus Tower, Sector 68, Noida, Uttar Pradesh 201301 +91-1203117884
United States of America Flag USA
333 West Brown Deer Road Unit G – 366 Milwaukee WI, USA 53217 +1(262) 310-7818
United Kingdom Flag UK
7 Bell Yard, London, WC2A 2JR +44 20 3239 9428
Canada Canada
HIC Global Solutions INC
43 Lafferty Lane, Richmond Hill, L4C 3N8, CA +1(262) 310-7818