Eden Mill Software Book your free audit

Guide · QuickBooks

What a QuickBooks Desktop integration actually costs.

Quotes for this work vary more than almost anything else we get asked about. The same job comes back at $1,500 from one developer and $15,000 from another, and the owner has no way to tell which one understood the problem. Here is what actually drives the number.

Desktop and Online are not the same job

The single most useful thing to understand is that QuickBooks Online and QuickBooks Desktop are different products with different plumbing, and connecting to them is different work.

QuickBooks Online is a web application. It has a documented interface that a program can talk to over the internet, with a standard login handshake. A developer connects to it the way they would connect to any modern web service. It is well-trodden ground.

QuickBooks Desktop is a file on a computer. Your data lives in a company file sitting on a machine in your office, or on a server in a closet. There is no address on the internet to send a request to. Something has to run on or near that machine, reach into the file, and pass data back out.

That one structural fact explains most of the price difference, and most of the ways these projects go wrong.

What that means in practice

A few consequences follow from the file living on your premises, and every one of them is a thing somebody has to handle.

Something must run where the file is. A small piece of software sits on that machine and does the talking. It has to be installed, kept running, and restarted when the machine reboots at two in the morning after a Windows update.

Sync happens on a schedule, not instantly. Desktop hands data over when asked, on an interval. An order created in another system might appear in QuickBooks in five minutes, or fifteen. For most businesses that is fine. If somebody expects it to be instant, they will be disappointed, and it is better to know that before the build than after.

The file has to be reachable. If the machine is off, or somebody has the file open in a way that blocks access, the sync waits. A good build handles that quietly and catches up. A bad one silently stops and nobody notices for a month.

Getting to it remotely takes deliberate work. Reaching a machine inside your building from outside it is solvable and routine, but it is a thing that has to be set up properly rather than assumed.

What actually drives the price

Once you understand the shape of the work, the estimate stops being mysterious. Five things move the number more than anything else.

How many kinds of record. Pushing invoices in one direction is a small job. Invoices, customers, items, purchase orders and inventory, each with their own rules about what counts as a match, is a much bigger one. Every record type is its own small project.

One direction or two. Reading out of QuickBooks is far easier than writing into it. Writing means handling conflicts, duplicates, and what happens when somebody edits the same record by hand while the sync is running.

How clean your data is. This is the one that surprises people. If the same customer exists three times with slightly different names, no integration can reliably match anything. Deciding what counts as a match is a business decision, not a technical one, and it often takes longer than the code.

Enterprise or not. Enterprise has capabilities the smaller editions do not, particularly around inventory and custom fields. That can make a job simpler or considerably more involved depending on what you use.

What happens when it breaks. A build that flags a failed sync and tells somebody is worth more than one that fails quietly. It also costs more, because somebody had to think about every way it could fail.

Rough ranges, and why nobody should quote you without looking

For the work we do, a straightforward one-direction connection between QuickBooks and one other system generally starts around $2,000. Something two-directional, or touching several record types, generally starts around $4,000. Anything involving inventory across multiple locations, field devices or several systems at once starts around $8,000.

Those are ranges rather than quotes, and anybody who gives you a firm number before looking at your company file and your actual process is guessing. The variance is not in the code. It is in your data and your rules, and neither can be seen from the outside.

What you should expect is a fixed number in writing before work begins. Hourly billing on integration work puts the entire risk of a messy data set on you, and you are the one person in the room who cannot judge how messy it is.

Questions worth asking before you hire anyone

Have you connected to Desktop specifically, or only Online? Plenty of capable developers have only done Online and will discover the difference on your budget.

What happens when the sync fails? If the answer is not immediate and specific, they have not thought about it.

Who owns the piece running on our machine? Know before you start whether you can keep it if you part ways.

What do you need from us before quoting? Anyone who does not want to see a sample of your data is quoting a fantasy.

Is this fixed price? If it is hourly, ask what happens if the data turns out to be a mess, because it usually is.

Not sure whether it is worth doing at all

That is a fair question and the honest answer is sometimes no. If somebody retypes four invoices a week, an integration will never pay for itself and we will tell you so in writing. The audit exists to work out which side of that line you are on before anybody spends money.

See what the audit involves

More guides: ERP reporting · Quoting off spreadsheets · Replace or build around

Tell us what you’re still doing by hand.

Write to us. Two or three sentences is plenty: what the task is, who does it, and how often.

We read and answer every message ourselves.

chris@edenmillsoftware.com

410-375-4340