Monday and QuickBooks Integration: A Practical How-To
Connect monday.com and QuickBooks Online - native QuickBooks integration, iPaaS, or custom. Sync customers, invoices, time tracking, and project costs.
Jump to a section
You can connect monday.com and QuickBooks Online three ways: monday’s native QuickBooks integration (built into monday’s integrations marketplace), an iPaaS platform like Make, Zapier, or n8n, or a custom build against both APIs. For most service businesses, the native integration covers the standard “create QuickBooks customer/invoice from a monday item” flow. For anything beyond that - time-tracking → invoice line items, project cost rollups, or two-way payment status - you’ll need iPaaS or custom.
Here’s how each path actually works.
The 60-second answer
If you’re sending invoices based on completed work in monday and you want clients/invoices to live in QuickBooks Online, start with monday’s native QuickBooks integration (under Integrations on any board). It handles customer creation, invoice creation from items, and basic status sync.
If you’re rolling up monday time tracking into QuickBooks invoices, syncing payment status both directions, or connecting Premier/Enterprise QuickBooks Desktop, you’ll need an iPaaS workflow (Make and Zapier both have solid connectors) or a custom build.
The three integration paths
Path 1: monday.com’s native QuickBooks integration
monday has an integration marketplace (the “Integrations” button on each board). The QuickBooks Online integration provides one-way and limited two-way recipes.
What you get out of the box:
- “When status changes to X, create a QuickBooks customer”
- “When an item is moved to a specific group, create a QuickBooks invoice”
- “When an item is created, create a QuickBooks customer”
- “When a QuickBooks invoice status changes, update monday item”
The integration uses recipes (pre-built templates with placeholders you fill in).
Pros: Free to install (you pay only for monday and QuickBooks seats). No-code setup. Maintained by monday.
Cons: Recipe library is limited - you get the use cases monday has built, not arbitrary flows. Field mapping is mostly fixed. Only works with QuickBooks Online (not Desktop). Some recipes are gated to higher monday tiers.
Pricing: Recipes are included in monday’s automation budget. Each automation run counts against the monthly automation cap on your plan (Standard: 250/month, Pro: 25,000/month, Enterprise: 250,000/month).
Path 2: iPaaS (Make, Zapier, n8n, Workato)
External platforms with both monday and QuickBooks Online connectors.
Common workflow shapes:
- “When a monday project is marked Complete, aggregate all time-tracked entries on that project, and create a QuickBooks invoice with one line item per team member with their hours and rates”
- “When a QuickBooks invoice is marked Paid, update the corresponding monday item status to Paid and trigger a notification”
- “When a new monday item is created in ‘New Clients’ board, create a QuickBooks customer AND a Stripe customer AND a Slack channel”
- “Daily, sync all monday-tracked expenses to QuickBooks as bills/expenses”
Pros: Full flexibility, cross-system fan-out, custom field mapping, transformation logic, scheduled aggregations.
Cons: Per-task/execution pricing. You build and maintain the workflow yourself.
Pricing: Make starts at ~$10/month for low-volume; Zapier $30/month; n8n self-hosted $30-100/month flat.
Path 3: Custom integration
Build against the monday GraphQL API and the QuickBooks Online REST API directly.
When this makes sense:
- You’re doing complex line-item calculations (multi-tier hourly rates, retainer-vs-overage logic, custom tax rules)
- You’re integrating with QuickBooks Desktop (which has a different API and constraints - usually requires the Web Connector)
- You’re handling thousands of invoices/month and want full reliability control
- You have engineering capacity and want zero ongoing per-task costs
Pros: Full control. No vendor pricing dependencies on volume.
Cons: Engineering build and maintain time. QuickBooks API quirks (sandbox vs production differences, OAuth refresh, rate limits) are real.
What data flows in each direction
monday → QuickBooks
| Data | Native | iPaaS | Custom |
|---|---|---|---|
| Create Customer | Yes | Yes | Yes |
| Create Invoice | Yes (limited fields) | Yes (full fields, multi-line) | Yes |
| Create Item (product/service) | Limited | Yes | Yes |
| Create Bill/Expense | No | Yes | Yes |
| Time entries → invoice lines | No | Yes | Yes |
| Custom field mapping | Limited | Yes | Yes |
| Attachments to invoices | No | Yes (varies) | Yes |
QuickBooks → monday
| Data | Native | iPaaS | Custom |
|---|---|---|---|
| Invoice paid status → update item | Yes | Yes | Yes |
| New customer → create item | Limited | Yes | Yes |
| Payment received → update item | Yes | Yes | Yes |
| Invoice voided/deleted | No | Yes | Yes |
| Receivables aging → board column | No | Yes (scheduled) | Yes |
Step-by-step: native monday → QuickBooks setup
1. Install the QuickBooks integration
On your monday board, click Integrate (top right). Find QuickBooks in the marketplace. Click Add to board.
2. Authorize QuickBooks Online
OAuth flow - sign in with your QuickBooks Online admin account, authorize monday to access your company file. You’re picking one QuickBooks company file per integration.
3. Pick a recipe
Browse the available recipes. Common starting points:
- When status changes to X, create a QuickBooks customer
- When an item is created in group X, create a QuickBooks invoice
Pick one and click “Add to board.”
4. Configure field mapping
The recipe will ask you to map monday columns to QuickBooks fields:
- monday “Item name” → QuickBooks “Customer name”
- monday “Email” → QuickBooks “Customer email”
- monday “Address” → QuickBooks “Billing address”
- For invoices: monday “Item name” → invoice description; monday “Amount” column → invoice total
Save the recipe.
5. Test with a sample item
Create a test item that matches the trigger. Verify it shows up in QuickBooks correctly (right fields, right values, no missing required fields). Common issues at this stage:
- QuickBooks requires a customer to exist before an invoice can reference it - make sure your customer-creation recipe runs first
- Tax codes need to be valid in your QuickBooks company file
- Item references (Products/Services in QuickBooks) need to exist before invoice line items can reference them
6. Enable and monitor
Toggle the recipe on. Watch the first week for failures. The Integration log on each board shows successes and errors per run.
Step-by-step: time-tracking → invoice via iPaaS
This is the most-requested non-native workflow. Setup using Make or n8n.
1. Pick the trigger
“When a monday item moves to status ‘Ready to Invoice’” - typically triggered by the project manager.
2. Pull related time entries
Query monday for all time-tracking entries on that item (or on the project if your time lives at the project level). monday’s API supports filtering by item_id.
3. Aggregate by team member and rate
For each unique team member, sum their hours. Multiply by their hourly rate (stored either in monday as a person-mapping or in a separate rates table). Build line items with: description, hours, rate, line total.
4. Create or look up the QuickBooks customer
Use the item’s “Client” column. Query QuickBooks for an existing customer with that name. If exists, use that customer ID. If not, create a new customer.
5. Create the QuickBooks invoice
POST to QuickBooks Invoice API with:
- CustomerRef (from step 4)
- Line items (from step 3) - each as a SalesItemLine with the relevant Item reference
- Optional: due date, payment terms, custom fields
6. Update the monday item
Write the QuickBooks invoice number back to a monday column on the original item. Change status to “Invoiced.”
7. Handle errors
Common failures: customer creation rejected (missing required field), tax calculation issues (invalid TaxCodeRef), API rate limit hit. Route failures to a “Sync errors” board or Slack channel so a human can triage.
Common pitfalls
QuickBooks Online vs. Desktop
monday’s native integration is QuickBooks Online only. If you’re on QuickBooks Desktop (Pro, Premier, Enterprise), you need a different approach - typically QuickBooks Web Connector + a middleware service, or specialized iPaaS connectors that wrap the Desktop API. Plan accordingly.
Customer matching
If you create a customer in QuickBooks named “Acme Corp” via monday, and there’s already an “Acme Corp.” (with a period) in QuickBooks, you’ll get a duplicate. QuickBooks Online enforces unique display names but is case-insensitive - yet small typo variants slip through.
Mitigation: store the QuickBooks customer ID back in monday on first sync. Future invoices reference by ID, not by name.
Tax handling
QuickBooks Online has automated sales tax (in supported regions). When you create an invoice via API, you can let QuickBooks calculate tax automatically by setting TxnTaxDetail.TxnTaxCodeRef correctly. Or you can pre-calculate tax yourself and pass it through. The “right” answer depends on your jurisdiction and how you’ve set up QuickBooks.
Worst case: you create invoices with no tax when there should be tax, or with double tax. Test thoroughly with a sandbox QuickBooks account before going live.
Item references (Products and Services)
QuickBooks invoice line items must reference an existing Product/Service. You can’t create a free-text line. Either pre-create generic “Consulting Hours” / “Project Fee” items in QuickBooks and reference them, or have your workflow auto-create the Item before referencing it.
Sandbox vs production
QuickBooks has separate sandbox and production OAuth flows. Tokens are not interchangeable. When you go live, you re-authorize against production. Test in sandbox first.
Rate limits
QuickBooks API: 500 requests/minute per realm (company). A high-volume batch invoice run can hit this. Use bulk endpoints where available and add exponential backoff to your workflow.
Automation run caps on monday
monday’s automation budget is shared across all integrations and recipes. If you have 50 active automations across boards, they all count against the same monthly cap. Audit usage if you trip the limit.
Pricing
| Component | Cost |
|---|---|
| monday Standard / Pro / Enterprise | $12 / $20 / custom per user/month |
| QuickBooks Online (Simple Start to Advanced) | $30-$200/month |
| monday native QuickBooks integration | Free (within automation budget) |
| Make | $10-$300+/month |
| Zapier | $30-$500+/month |
| n8n Cloud / self-hosted | $25-500+ / $30-100/month |
| Custom build | Engineering time + maintenance |
When to use which path
| Need | Recommended path |
|---|---|
| Create QuickBooks customer when monday item created | Native |
| Create invoice when status changes to “Ready to invoice” | Native |
| Time-tracking entries → multi-line invoice | iPaaS |
| Two-way payment status sync | Native (basic) or iPaaS (advanced) |
| QuickBooks Desktop integration | iPaaS or custom |
| Complex tax / multi-currency / multi-entity | Custom |
| Project cost rollup from multiple monday boards | iPaaS |
| 1000+ invoices/month | iPaaS or custom |
Related reading
- Finance automation services
- Operations automation
- Stripe and Xero integration - companion if Stripe is your payment processor
- Shopify and Klaviyo integration
- How to integrate SimPro with your CRM - similar pattern for trades
- How to automate purchase orders
- n8n automation guide
- Workflow cost calculator
- Automation Discovery Week
If you’re invoicing through monday and QuickBooks and the manual reconciliation is eating someone’s Monday morning every week, the Automation Discovery Week maps where to start automating - usually it’s the time-to-invoice step, where the most hours leak.