Setup guide

Installing and using XSync for QuickBooks Desktop

Around twenty minutes, provided the six things in the next section are already true. Often one of them isn't, which is why they come first rather than as a footnote.

Read this first

This is not a two-click integration, and we'd rather say so now

QuickBooks Desktop has no API in the cloud. There is nothing for us to sign into on your behalf, because your company file sits on a Windows computer in your office and never leaves it. So the connection runs the other way round: a small Intuit program called the QuickBooks Web Connector runs on that computer, and it calls us on a schedule.

That means part of this setup happens inside monday.com, and part of it happens at the Windows machine where QuickBooks lives. They are usually not the same computer. Nearly every setup that goes wrong goes wrong because somebody got to step three on a laptop in a different building.

Nothing is ever written back into QuickBooks.

Every message this app sends to QuickBooks is a query. There is no code in it capable of adding, changing or deleting anything in your books — that isn't a setting you could switch on by accident, the capability doesn't exist. Data moves one way: QuickBooks to monday.com.

Before you start

Six things to check

Every item here has broken a real setup. Checking them now takes a minute. Diagnosing them later, from a Web Connector error code, takes considerably longer.

Setting it up

The five steps

Step 1

Install the app, and open it

If you have not installed it yet:

  1. In monday.com, open the Marketplace from the left-hand sidebar, or follow the install link we sent you.
  2. Search for XSync for QuickBooks Desktop and open its listing.
  3. Click Install, and choose the monday.com account you want it installed into. If you belong to more than one account, check this carefully — the app's data belongs to the account you pick, and moving it later means setting it up again.
  4. Review the permissions monday shows you and approve them. Step 2 below explains what each one is for.

Or install it straight from here:

Add to monday.com

Then open the app from your account's apps area. The first screen explains the three stages of setup before asking you for anything, and it names the one that surprises people: step four happens on the QuickBooks computer, not this one.

The app settings screen showing the three setup stages
The first screen. The three stages are shown before you are asked for anything, and stage two is the one that happens on your QuickBooks computer.

Give your company file a name if you like — Company name is optional, and exists so that a second company file added later is distinguishable from the first.

Step 2

Connect monday

Click Connect monday. A new tab opens with monday's own consent screen, listing what the app is asking for: read your account and the user connecting, list workspaces, read boards and their columns, and create and update items.

It opens in a new tab because monday refuses to render its own consent screen inside another app's frame. When you've approved it, come back to the first tab and click I have finished — refresh. There's no signal that tells the app you're done, so it asks rather than spinning forever.

monday's consent screen listing the five permissions
monday's own consent screen. Four of the five permissions are read-only; the one that modifies board data is the product doing its job.
Why it asks to write to your boards.

Creating and updating board items is the product — that's the permission doing the work. It reads boards and columns so you can map QuickBooks fields onto columns that already exist, and so that an invoice that's already on a board gets updated instead of added a second time.

Step 3

Get the setup file and password

Click Get the setup file and password. You'll see a generated user name and password, and a Download the setup file button that gives you a file named quickbooks-monday-….qwc — a small configuration file telling the Web Connector where to call and who you are.

The generated user name and password, with the four Web Connector steps
The setup file and its password, with the four steps to follow on the QuickBooks computer. The password is shown once.
Two things about this screen that will cost you time if you miss them.

The password is shown exactly once. Copy it somewhere before you close the panel. If you lose it, come back and generate a new one — that's normal and costs nothing except retyping it in the Web Connector.

The download link is valid for two minutes. If you're doing this on a different computer from the QuickBooks machine, get to that machine first, then click download.

Step 4

Add it in QuickBooks

This is the step setups actually fail on, so take it slowly. Everything here happens on the Windows computer where the company file lives.

  1. Open QuickBooks Desktop and the company file you want to sync, signed in as Admin.
  2. Go to File → App Management → Update Web Services. On older versions this lives at File → Utilities → Add/Remove…
  3. In the Web Connector, choose Add an Application and pick the .qwc file you downloaded.
  4. When prompted, enter the password from step 3.
The Authorize New Web Service dialog in QuickBooks
QuickBooks confirms who is asking. Check the service host reads qbmonday.agoracrew.com before clicking OK.
The QuickBooks Application permission dialog
The single most important click in the setup: "Yes, always allow access, even when my QuickBooks isn't running." Any other answer works until somebody closes QuickBooks.
The authorisation prompt, and the answer that matters

QuickBooks will ask how this application may access the company file. Choose "Yes, always allow access even if QuickBooks is not running."

This is the single most important click in the whole setup. Any other answer works fine for as long as QuickBooks stays open, and then fails with QBWC1013 the moment somebody closes it at six o'clock. Your boards quietly stop updating overnight, and the numbers on screen still look like today's. Nothing warns you.

QuickBooks will also ask about access to personal data — customer names, addresses, invoice detail. Accept it, or customers and invoices arrive with the identifying fields empty.

"This application requests read and write access." Here's the honest explanation.

The connector file declares itself as not read-only, because the Web Connector writes a small tracking marker into your company file whenever any application registers. That write is Intuit's, not ours, and it happens for every integration. We tried declaring strictly read-only; QuickBooks rejected the registration outright with error QBWC1080.

So the declaration widens what QuickBooks would permit. It does not widen what the software does. Every message this app sends is a query, and there is no code in it that writes to your books.

Step 5

The first sync

In the Web Connector, tick the box beside XSync for QuickBooks Desktop and click Update Selected.

The first run reads your history and is by far the heaviest one you'll do. On a large Enterprise file it can take a while, and the Web Connector's progress bar is the honest picture of where it is. Start it outside business hours if your file is big. After that it keeps everything current on its own.

The Web Connector showing a completed run
A finished run: Last result: Sync complete, both bars at 100%, and the next run already scheduled. This is what a healthy connector looks like.
Tick Auto-Run, or this only ever happens once.

Set Auto-Run in the Web Connector with an interval of 15 minutes. Without it the sync runs only when somebody clicks Update Selected, which means it stops silently the moment that window closes and your boards quietly go stale.

Back in monday

Choosing your boards

Once QuickBooks has sent its first batch, the app's screen shows What goes onto your boards — a row for each kind of record: customers and jobs, invoices, estimates, sales orders and items.

The app showing each record type waiting for a board
After the first sync, everything QuickBooks sent is waiting: 115 ready, waiting for a board. Nothing appears anywhere until you say where it goes.

For each one you can point it at a board you already have, or let the app build the board for you with columns that already match. Building it for you is the faster path and the one to take unless you have an existing board the rest of your team already works in.

Mappings are checked before they're saved. A column that doesn't exist, or one of the wrong type for the field you've pointed at it, is rejected then and there — rather than silently failing on every sync for the next three weeks.

You can pause a record type without losing which columns it fills. Useful if you want invoices flowing today and estimates later.

The five record types switched on, with boards up to date
Switched on and running. Each row says where its records went, and the app confirms when the boards match QuickBooks.
Your customer:job hierarchy comes across.

QuickBooks structures jobs underneath customers — Prentice, Adelaide:Guest Villa. That structure is carried onto the board, so you can see not just who owes you but which job the money is against. For construction and manufacturing teams this is usually the reason for installing it at all.

Using it

What you do with it once it is running

After setup there is nothing to operate. QuickBooks checks in on its own every fifteen minutes and the boards keep themselves current. What follows is what the app is actually for.

Your QuickBooks records, as monday boards

The app builds a board per record type and fills it. They are ordinary monday boards: filter them, group them, add columns of your own, build dashboards and automations on them. Anything you add is yours and is left alone by the sync.

The monday workspace listing the QuickBooks boards
Customers, invoices, estimates, sales orders and items, each on its own board in your workspace.

Invoices arrive with their totals, dates, balance still due and whether they are open or paid — so the question "what has actually been paid" is answerable without opening QuickBooks.

The invoices board showing totals, balances and paid or open status
Balances update themselves as payments land in QuickBooks. Nobody re-keys anything.

What a customer owes, on their row

Open any customer or invoice row and choose the QuickBooks receivables tab. It shows what that customer owes, aged into the standard buckets, with their credit status, how old the oldest unpaid invoice is, and when they last paid.

The receivables panel open on a customer row
The same figures your aged debtors report would give you, on the row you were already looking at. Every panel says when the data was last read from QuickBooks.
Add the panel once per board.

Open any row, click the + beside the Updates and Files tabs, and pick QuickBooks receivables. It then stays on every row of that board. This is monday's design for item views, not a step we invented.

Asking about your numbers in plain English

The app adds skills to monday Sidekick, so you can ask questions instead of reading a board: what a customer owes, who is overdue, what stock is left, what the inventory is worth, or whether the sync is healthy. The answers come from your own synced QuickBooks figures, and each one says when it was last read.

Nothing of yours is sent to a language model by us.

The app returns numbers; monday's assistant turns them into a sentence. There is no third-party AI in the path between your company file and your boards.

When you want it now rather than in fifteen minutes

Sync now in the app's settings pushes whatever is waiting immediately. If nothing has changed in QuickBooks since the last run it will tell you so, rather than pretending to work.

Nothing is ever written back to QuickBooks.

Editing a row on a monday board changes the board, not your company file. Every message the app sends to QuickBooks is a query. Your accounting file stays exactly as your bookkeeper left it.

Troubleshooting

What the error codes actually mean

The Web Connector's codes aren't self-explanatory, and two of them are actively misleading. Here's what each one usually is in practice.

CodeWhat it usually meansWhat to do
QBWC1013 "Could not start QuickBooks." Either the company file is closed and the application was never granted unattended access, or the file has moved, or the machine went to sleep. If this appears every evening and clears every morning, it is the authorisation answer from step 4. Remove the application from the Web Connector, add the .qwc again, and this time choose "Yes, always allow access even if QuickBooks is not running."
QBWC1080
QBWC1039
QuickBooks refused the registration. Nearly always because the company file wasn't open as Admin, or it was in multi-user mode when the application was first added. Close the file, reopen it in single-user mode signed in as Admin, and add the .qwc again.
QBWC1048
QBWC1051
Reported as a certificate error, though it almost never is one. Before registering, the Web Connector runs a plain reachability check against our address and reports anything it can't load this way. Check that that computer can open our address in a browser. A corporate firewall or proxy is the usual culprit.
QBWC1073 "The host names for the service and support URLs do not match." A configuration problem on our side, not yours. Send us the error. Please don't edit the .qwc file by hand.
Auth failed Wrong Web Connector password, or a password that was regenerated in monday after this application was added. Generate a new password in the app and retype it in the Web Connector. The two only have to match each other.

Nothing is arriving on a board

Work down this list, in order — it's roughly the order of how often each turns out to be the answer.

  1. Has QuickBooks run at all? On the QuickBooks computer, the Web Connector's last result should say the sync completed. If it doesn't, the problem is on that machine and the table above covers it.
  2. Is that record type pointed at a board? A row with no board has nowhere to put anything.
  3. Is it paused? The row says so.
  4. Is it included in your plan? The row says that too, with a link to change plan. Nothing is lost while a record type is outside your plan — it stays staged, and it goes out on the next sync after you upgrade.
  5. Try Sync now. It isn't rate-limited, so it's a safe thing to press when you're unsure.

If you run QuickBooks in a hosted environment

Hosted QuickBooks — Rightworks and similar — runs your company file on somebody else's Windows server that you reach over Remote Desktop. The Web Connector runs there too, which means it only runs while that Remote Desktop session is alive. Close the session and syncing stops until you sign back in.

It works, but it isn't unattended in the way a local install is. Tell us if this is your setup and we'll go through the options with you.

Multi-user mode

Add the application in single-user mode. Once it's registered, multi-user mode is fine for ordinary use — it's the first registration that QuickBooks refuses.

Stopping

Pausing or removing the app

Three levels, and they do different things.

Pause a record type. In the app, on that row. Everything else carries on. Nothing is forgotten — the board and the column mapping are still there when you resume.

Stop reading from QuickBooks. In the Web Connector, untick Auto-Run or remove the application. Nothing further is read from your company file.

Uninstall the app from monday.com. This stops the sync completely and starts a deletion clock. If you don't reconnect, everything we hold for that connection — the staged QuickBooks records, your encrypted Web Connector credentials, your monday tokens, the board mappings and the sync history — is permanently erased within ten days.

Deletion is deferred on purpose, not out of reluctance.

Uninstalling and reinstalling is a normal way to try to fix something. If we erased everything the instant you uninstalled, that troubleshooting step would destroy your entire setup, with no way back. So the clock starts, and reconnecting stops it.

Items already created on your boards stay exactly where they are. That data lives in your monday account and it's yours — deleting it, if you want it gone, is done from the boards themselves.

Stuck on a step, or seeing something this page doesn't cover? Email karim@agoracrew.com and tell us which step and what the Web Connector said. The Web Connector keeps its own log, and its location is shown in the Web Connector window — sending us the last few lines of it usually answers the question in one reply rather than four.