<< Previous | Next >>

Daily Learnings: Tue, Feb 27, 2024

Mountains cannot be surmounted except by winding paths. — Johann Wolfgang von Goethe

Integrating with QuickBooks Desktop

Today I met with a client that wants to develop an integration between Salesforce and QuickBooks Desktop (QBD). In preparation for this meeting, I had to do some research, as I’ve integrated these two. I’ve built many integrations during my time at SOLVD, including several between Salesforce and QBO (QuickBooks Online), but given that QBD runs on a given computer on-prem, there are some things to consider.

High-level Steps - Custom

These are the really high-level steps to approach this integration:

  1. Understand where their QBD instance is hosted, the OS, hardware specs, etc…
    • In a cloud-based desktop environment?
    • Locally on one person’s computer?
  2. Create a desktop application that your customer can install on their machine, bundled with the QBD SDK
  3. Generate and send an XML integration object to the QBD’s XML processor or SDK
  4. Create an API to/from which your custom-built desktop application can push/pull data
    • In the case of a Salesforce<>QBD integration, this part could be essentially completed for us by leveraging one of the many SFDC APIs

Alternative Services/Design - Informatica

After talking with the client, we discovered that they already had an Informatica agent running locally on their on-prem server. This local agent connects to the Informatica cloud service, and allows for pushing / pulling data to/from on-prem servers or databases. Informatica functions similar to other iPaaS solutions, but it appears to be more limited in scope with regards to the OOTB connectors (though it does have a Salesforce connector). That said, the addition of a local, on-prem agent does make it quite an interesting solution.

Final Design

So, after discussing it further with the client and weighing our options, the high-level design we came up with was the following:

There’s still a lot of work to do, as the devil is ALWAYS in the details, especially in integration projects involving ERP systems. However, it should turn out to be a fun project.

Resources

LangChain Agents

Some quick learnings based on a product that we’re building for SOLVD in the AI space.

References