Quick Answer
Connect Commusoft's job data to Sage's financial reports through n8n, and you get a monthly P&L breakdown by job category without touching a spreadsheet. Reactive repairs, planned maintenance, installations, emergency callouts; each one shows its own revenue, costs and margin. The n8n workflow runs on the 1st of every month, pulls completed-job data from Commusoft, matches it against Sage invoices and expenses, then outputs a clean category-level P&L. Most businesses doing this find that 2 or 3 job types are quietly bleeding money. Fix those, and you are looking at an extra £20,000 to £50,000 a year in recovered margin.
Table of Contents
- What this integration does
- Why job-category P&L matters for trades businesses
- How the data flows: Commusoft to Sage via n8n
- Setting up Commusoft for job categorisation
- Configuring Sage for category-level reporting
- Building the n8n workflow step by step
- Using AI nodes for smart job categorisation
- Building your monthly P&L dashboard
- What to do when the numbers surprise you
- What tradespeople are saying
- Recommended videos
- Frequently asked questions
- My verdict
Commusoft
Sage
n8nWhat this integration does
This is a three-tool pipeline that turns raw job data into a monthly financial report, broken down by the type of work you do. Commusoft captures the job details: what category each job falls under, how many engineer hours went into it, what parts were used. Sage holds the financial reality: invoices raised, payments received, supplier costs, overheads. n8n sits in the middle, pulling data from both systems on a schedule, matching jobs to their financials, and producing a profit and loss statement for each job category.
The output is a spreadsheet or dashboard showing something like this: reactive repairs brought in £42,000 last month at 58% gross margin. Planned maintenance brought in £31,000 at 71% gross margin. Boiler installations brought in £28,000 at 34% gross margin. Emergency callouts brought in £9,200 at 72% gross margin.
Without this, most trades businesses know their total revenue and total costs. They have a rough sense of which jobs "feel" profitable. But they do not have the numbers to prove it, and they definitely do not have them broken down by category. That is the gap this integration fills.
Why job-category P&L matters for trades businesses

I have seen this pattern play out with dozens of businesses. A plumbing and heating company turns over £800,000 a year. The owner knows the business is profitable overall, around 8% net. But when you break it down by job type, the picture changes completely.
Emergency callouts might run at 72% gross margin. Planned maintenance at 65%. Reactive repairs at 55%. But bathroom installations? Those might be coming in at 28% gross, and the owner had no idea because the total P&L hid it.
The research backs this up. HVAC businesses see gross margins ranging from 18% on new construction work to 80% on emergency after-hours calls. Plumbing small works typically run at 60-70% gross, while larger installations drop to 45-55%. The median HVAC company nets just 5-6%, while the top quartile hits 13% or more. That gap between median and top performers is almost entirely down to one thing: knowing which work makes money and doing more of it.
Here is the statistic that should stop you in your tracks. A job estimated at 62% gross margin can arrive at the invoice stage at 48% gross, without anyone noticing, if you do not have real-time job costing in place. Labour overruns, unbilled materials, travel time that nobody tracked; it all adds up.
How the data flows: Commusoft to Sage via n8n
The data flow is straightforward once you understand what each tool contributes.
Commusoft provides: completed job records with category tags, engineer timesheets (actual hours per job), parts and materials used per job, purchase orders linked to jobs, and job-level cost summaries.
Sage provides: sales invoices matched to customers, purchase invoices from suppliers, nominal ledger entries for overheads, bank transactions and reconciliations, and the P&L report structure itself.
n8n does the work: it runs on a schedule (1st of each month), pulls completed jobs from Commusoft's API for the previous month, pulls matching invoices and expenses from Sage's API, groups everything by job category, calculates revenue minus direct costs minus allocated overheads per category, and outputs the results to a Google Sheet, email, or dashboard tool.
Setting up Commusoft for job categorisation

Commusoft's job costing features automatically track labour hours and materials against each job. But for this integration to work properly, you need consistent job categories that map to meaningful P&L lines.
Start with broad categories that reflect distinct cost structures. For a plumbing and heating business, something like this works well:
Reactive repairs (callouts, diagnostics, small fixes). Planned maintenance (service contracts, annual inspections, gas safety checks). Installations (boiler swaps, full heating system installs, bathroom refits). Emergency callouts (out-of-hours, weekend and bank holiday work). Commercial contracts (if applicable, PPM for landlords or facilities managers).
Do not create too many categories. Five to seven is the sweet spot. More than that and you will spend more time categorising than analysing. Fewer than three and you lose the insight.
In Commusoft, set up these categories as job types. Every new job should be tagged with one category at creation. Train your office team to get this right, because the entire dashboard depends on consistent tagging. Commusoft's job costing then automatically pulls in engineers' hours from digital timesheets and parts usage from purchase orders, so your cost data flows without manual input.
Configuring Sage for category-level reporting
Sage Accounting needs a structure that matches your Commusoft job categories. The key is your nominal codes.
Create separate income nominal codes for each job category: 4001 for Reactive Repairs Income, 4002 for Planned Maintenance Income, 4003 for Installations Income, 4004 for Emergency Callouts Income, 4005 for Commercial Contracts Income. Do the same for direct costs: 5001 for Reactive Repairs Materials, 5002 for Planned Maintenance Materials, and so on.
Sage's Plus plan (£59/month) gives you the P&L actual vs budget report, which is ideal for this. The Standard plan (£30/month) covers basic P&L reporting. Both work with the API, but Plus gives you richer reporting out of the box.
When Commusoft's native Sage integration syncs invoices, it sends them to Sage with a customer reference and invoice amount. The limitation is that it does not automatically split by job category. That is exactly what the n8n workflow fixes: it intercepts the data, categorises it, and pushes it to the correct nominal codes.
Building the n8n workflow step by step

Here is the workflow, node by node. If you have not used n8n before, the Zapier for Trades guide covers the basics of automation thinking, and you can apply the same logic here.
Node 1: Schedule Trigger. Set this to run at 06:00 on the 1st of every month. This gives Commusoft and Sage time to sync any end-of-month jobs overnight.
Node 2: HTTP Request (Commusoft API). Pull all completed jobs for the previous month. Use the Commusoft API's job endpoint with date filters. You will need to handle pagination if you complete more than 50 jobs a month, which most businesses of 5+ engineers will.
Node 3: Code Node (Group by Category). This is where the magic happens. A JavaScript function groups all jobs by their category tag, totalling hours, materials cost, and subcontractor spend for each category.
Node 4: HTTP Request (Sage API). Pull all sales invoices and purchase invoices for the same period. Match them to Commusoft jobs using customer reference or invoice number as the linking field.
Node 5: Code Node (Calculate P&L). For each category: sum the matched invoice values (revenue), sum the direct costs (materials + labour at your loaded hourly rate + subcontractors), calculate gross profit and gross margin percentage, and allocate a share of overheads based on revenue proportion or hours proportion.
Node 6: Google Sheets Node. Output the results to a Google Sheet with one row per category and columns for Revenue, Direct Costs, Gross Profit, Gross Margin %, Overhead Allocation, and Net Profit.
Node 7: Email Node. Send a summary email to the business owner and accountant with the key numbers and a link to the full sheet.
Using AI nodes for smart job categorisation
Here is where this gets interesting. Not every job in Commusoft will be perfectly categorised. Engineers create jobs on site, office staff sometimes skip the category dropdown, and legacy data from before you set up categories will have no tags at all.
n8n's AI nodes can fix this. Add an AI classification step after pulling jobs from Commusoft but before the grouping step. The AI node takes the job description, parts used, and time spent, and assigns a category based on patterns it has learned.
For example: a job with "boiler not firing, checked PCB, replaced fan" and 1.5 hours logged is clearly a reactive repair. A job with "annual gas safety inspection, service boiler, check radiators" is planned maintenance. A job with "remove old boiler, install Vaillant ecoTEC, new flue, 2-day job" is an installation.
Claude 4.5 Sonnet through the n8n AI node handles this classification accurately. Feed it a prompt like: "Categorise this job into one of the following categories based on the description, parts and hours. Categories: Reactive Repair, Planned Maintenance, Installation, Emergency Callout, Commercial Contract." It gets it right about 95% of the time, which is better than relying on engineers to remember to tag every job correctly.
Building your monthly P&L dashboard

The Google Sheet output from n8n becomes your dashboard. Keep it simple. One sheet per month, with a summary sheet that tracks trends over time.
Each monthly sheet should have columns for: Job Category, Number of Jobs, Total Revenue, Materials Cost, Labour Cost (hours x loaded rate), Subcontractor Cost, Total Direct Costs, Gross Profit, Gross Margin %, Overhead Allocation, and Net Profit.
The summary sheet pulls from each monthly sheet and shows margin trends by category. You want to spot patterns: is your installation margin dropping month on month? Are emergency callouts becoming a bigger share of revenue? Is planned maintenance growing or shrinking?
If you want something more visual, connect the Google Sheet to a free dashboarding tool like Looker Studio (formerly Google Data Studio). This gives you bar charts comparing category margins, trend lines over 6-12 months, and pie charts showing revenue mix. All of this updates automatically when n8n pushes new data on the 1st of the month.
What to do when the numbers surprise you
The dashboard will almost certainly show you something unexpected. Every business I have worked with has found at least one job category performing very differently from what they assumed.
Common discoveries include: installations running at half the margin of service work, emergency callouts being far more profitable than anyone realised, planned maintenance contracts being underpriced because they were set years ago and never reviewed, and commercial contracts looking profitable on paper but consuming disproportionate admin time that is not tracked.
Once you have the data, the decisions become clearer. If installations are running at 28% gross while repairs hit 58%, you have three options: raise installation prices, reduce installation costs (negotiate better supplier terms, tighten labour estimates), or do fewer installations and focus on higher-margin work. The point is you can now make that decision with numbers, not gut feel.
If you are already using Payaca for renewables payment pipelines, this dashboard complements it perfectly. You can see exactly how your heat pump and solar installation margins compare to your traditional plumbing and heating work.
What tradespeople are saying
Recommended videos
Frequently asked questions
You need the Customer Journey plan at minimum, which includes job costing features. The basic plan does not track costs against jobs in the way this workflow requires. If you are already on Customer Journey or Field Automation, you are good to go.
Sage 50 is trickier because its API access is more limited than the cloud version. Commusoft does have a native Sage 50cloud integration, so the data will sync. But pulling data via n8n requires Sage's REST API, which is only available on the cloud products. If you are on Sage 50, consider whether the £30/month for Sage Accounting Standard is worth it for the API access alone.
Allow 2-3 hours for the initial Commusoft category setup, 1-2 hours for the Sage nominal codes, and 3-4 hours to build and test the n8n workflow. Call it a weekend project. The ongoing maintenance is minimal; just check the workflow ran each month and review the output.
Start with broad categories. A boiler service that also includes a small repair can go under "Planned Maintenance" if the service was the reason for the visit. The AI categorisation node handles edge cases well. Do not overthink it. The goal is directional accuracy, not accounting precision.
Yes, and it is actually easier. Xero has a well-documented API and n8n has a native Xero node. The same workflow structure applies. If you are already on Xero, check the Tradify + Xero automation guide for the basics of connecting Xero to n8n.
The visual workflow builder is straightforward. Dragging nodes and connecting them takes minutes. The Code nodes with JavaScript are the hard part, but you can use AI assistants to write those for you. If you have used Zapier, n8n will feel familiar. The learning curve is steeper than Zapier but flatter than writing code from scratch.
My verdict
Commusoft tracks your jobs brilliantly. Sage handles your accounts. But neither of them gives you a P&L broken down by the type of work you do, and that is the number that changes how you run your business. The n8n workflow in the middle is not complicated; it is 7 nodes that run once a month and take a few hours to set up. The payoff is knowing, with actual numbers, which jobs make you money and which ones quietly eat your margin. I have seen businesses discover that 30% of their work was running below target margin, and they had no idea until they built something like this. For a business running 5 to 50 people, this is the kind of automation that pays for itself in the first month. If you are already tracking jobs in Commusoft and running your books through Sage, you are 80% of the way there. The n8n workflow is the last 20%, and it is the part that turns data into decisions.










