Integration: Salesforce & Quickbooks

I’ve worked with and implemented DBSync and Autofy.  Both integrators offer connectors to Quickbooks Online and Quickbooks Desktop.

Both follow a similar path: Salesforce opportunities, once closed-won synchronize to Quickbooks as Invoices (the usual case, you could also select Sales Items).  In addition to the Quickbooks invoice number, Autofy also copies the open/unpaid amount back to the Salesforce invoice.

DBSync has a more robust architecture and is also more expensive than Autofy… but also has some customer service issues (they’re not the best at responding in a timely manner).

Autofy is much more cost-effective if you can go with the out-of-the-box offering.  If you need additional mappings, that extra customization work can push the price up to being close to what DBSync charges.

Autofy’s customer service is better, though you can’t reach anyone by phone.  It’s all about submitting tickets.

When you set out to pick your integrator, know exactly what you’re looking for – write down use cases, make pretty pictures/Powerpoint slides, document every single requirement.  Get input from sales people and accounting on what Quickbooks information they want to see in Salesforce.

Think about what business rules you want to see in place, e.g.:
1. When an opportunity is closed-won, create an invoice
2. When a partial payment is received, do you want to change the stage to “Deposit received”?
3. When the invoice is paid off, what should happen to the opportunity?

Though it’s not directly related to Quickbooks, you might also want to think about what sort of Salesforce business processes/automations to implement, such as:
1. Notifications to Accounting when the invoice is paid off
2. Notifications to Sales when an open/unpaid amount remains unpaid for x days, so that they can follow up
3. Blacklist customers whose unpaid balance is above x

Knowing what you want the end state to be will help you pick the right integrator.  Shop around, share your vision.  No tool will have the perfect fit out of the box, but you will get an idea about the cost and time lines from the vendors, which should help you make a decision.

Total Cost of Ownership (TCO):

Understanding the true cost of a technology initiative can help you determine when (or whether) you should take on a new system initiative, usually in combination with some sense of the potential benefits to be realized from the implementation.  We’ll discuss different ways to evaluate the Return from a project in a future post. What contributes to the purchase cost of technology?

  • Acquisition cost
  • Implementation cost
  • Support/maintenance cost

Acquisition Cost

  • Internal labor: time required to evaluate different platforms and solution providers
  • Solicitation and proposal writing process.  Specialized knowledge might be required, so members of the technology team or outside implementation partners may be included in the process. This results in potential consulting costs.
  • Purchase costs of upgrades to existing hardware (laptops/PCs) and software (e.g. Microsoft Office), and/or operating system
  • Licensing/subscription fees

Implementation Cost

  • Hardware deployed to users
  • Software/operating system upgrades to users
  • Installation costs of a more robust broadband internet connection (for web-based platforms)
  • Time/cost to configure and deploy connectivity changes to users
  • Change management
    • User training
    • Temporary drop in user productivity/efficiency due to early adoption challenges
  • CRM system build (assuming with the help of an implementation partner)

Maintenance/Support Cost

  • (Optional) Hiring full-time support staff to keep the new system up and running
  • Support staff or implementation partner cost to deploy new features / add-ons
  • Scaling to additional users / business groups / business units
  • Warranties
  • (Optional) Support contracts with external implementation/support partners
  • On-going license costs
  • Upgrade costs (based on current vs. forecast future state)

How much can I expect to spend on customizations to a CRM system after initial costs?

Business case: a client engages a consultant/implementation partner to customize a CRM system.  Customizations should be kept to a minimum, but should include some new fields, page layout changes, a few basic business process automations (workflows / emails / tasks) and configuration of complex sales quotes for custom-manufactured products.

This project I would break out into 5 mini projects (I’m focusing on Salesforce as the CRM of choice, I haven’t worked with MS Dynamics, and I assume you don’t want to implement Siebel CRM):

  1. Getting the base CRM system up and running (no fancy customizations or integrations)
  2. Cleaning/deduplicating the legacy data before
  3. Importing the data and building the proper relationships (e.g. positions first, then users, accounts, contacts, opportunities,..)
  4. Dealing with fancy customizations / integrations
  5. Training

I’ll go through these with hour estimates.  The budget will result from these hours times the hourly rate  agreed upon between the consultant / implementation partner and the client.

Mini project 1 – base CRM set-up:

15-20 hours

  • adding fields
  • editing/creating new page layouts
  • some simple (email) communication templates
  • a few simple workflow rules/tasks/field updates
  • pricebook and products set-up


Mini project 2 – legacy data clean-up / deduplication:

30-60+ hours

Sorry, I was joking about this being a mini-project.  This is more of monster project depending on how much data there is and how poorly it was maintained previously.  Do not at any cost underestimate the power of horrible data.  Most legacy data is horrible.

The instinctive reaction might be to think it’s just a bunch of Excel files that need to be imported.  Wrong!  Say this is a migration from ACT! to Salesforce, this might as well just be an excellent reason to shoot yourself in the knee.  ACT! doesn’t have the concept of companies/accounts being required, so there will be a lot of junk data with missing or bogus company information.

In Salesforce the account name is required for every contact (unless you convert the Salesforce system to use Person Accounts [not recommended!]).

I did an ACT! data migration after the data set (some 20,000 records) supposedly had been cleaned up by a third-party vendor (at a cost of $12k) who specialized in this type of data clean-up. 

Unfortunately I spent an additional 60 hours cranking through Excel files with VLOOKUPs to get the data into the right format and exclude all the garbage in it.

If 30-60 hours of data clean-up sounds too unreasonable (from an implementation partner’s perspective on billing or the client’s perspective on paying), a way of saving on the budget is to place the responsibility on the client.  Provide the client with your data templates and invite the client to help do the work.

It’s likely the client will come back on the verge of the knee shot and ask the implementation partner to please take this horribleness off their plate.

Mini project 3 – importing the clean data in a structured manner:

12 hours

Once project 2 is out of the way several weeks later, this part isn’t actually too bad.

Mini project 4 – customizations / integrations:

15-80 hours

Assuming the standard Salesforce quote editor isn’t going to do it for the client (which is understandable), you will need to look at 3rd-party vendors/solutions to handle this.

If you’re looking for a CPQ solutions (advanced configurator/custom price builder), you could use CPQ Software | SteelBrick.

  • It’s licensed software –> monthly licensing fees
  • Set up products/pricing/price books
  • Set up advanced configurator logic and business rules.

Set aside 40-80 hours.

Another option is to use Conga Composer to build fancy-looking Word or Excel templates based on the existing Salesforce data.  Pricing here is $15/user/month with a 5-user minimum.

You will need to build reports that feed into those templates.  Give that another 15-20 hours.

Integrations with other system will take additional hours based on:

  • the target system
  • the integration software
  • whether tweaks need to be made or the entire interface needs to be custom-built from scratch.

This effort could span anything from twenty to hundreds of hours.

Mini project 5 – training:

35 hours

For example’s sake let’s go with:

  • 20 users that need to be trained
  • across 4 different job responsibilities ==> 5 training groups.  
  • training materials need to be prepared for and customized towards these different groups of users and their different day-in-the-life scenarios.  

15-20 hours for the materials preparation

15 hours for the actual training (2-3 hours per training group). 


This is a sample layout of a project and associated hour estimates based on a sample fictitious project. The actual estimates could be vastly different, but without detailed requirements this should be used only as a high-level guideline.