Guide4 min read

n8n + Xero: turning website enquiries into draft quotes

You can connect a website form to Xero with n8n so that every enquiry becomes a draft quote automatically. The workflow receives the form by webhook, finds or creates the contact in Xero, creates a draft quote through Xero's API, attaches the customer's photos and sends a branded confirmation email. A person still reviews and sends the quote.

For a trade business, the quote is the sale. The faster it goes out, the more often it wins. Yet in most small businesses an enquiry arrives by web form, sits in an inbox, and waits for someone to type the same details into the accounting system before a quote can be written.

For Strip It Out, a strip-out and demolition contractor, I replaced that gap with an n8n workflow. Every website enquiry now becomes a draft quote in Xero, with the customer's photos attached and a branded confirmation email sent, and nobody re-types anything.

This guide explains the shape of that workflow, so you can judge whether it fits your business.

The shape of the workflow

  1. Receive the enquiry

    The website's quote form posts to an n8n webhook: name, contact details, the job, the address and any photos the customer uploaded.

  2. Clean and check the data

    Normalise phone numbers and emails, reject obvious spam, and make sure the required fields are present before touching the accounting system.

  3. Find or create the contact in Xero

    A Xero quote must belong to a contact. The workflow searches for an existing one first, so repeat customers do not end up with duplicates.

  4. Create the draft quote

    A quote is created in Xero with the status set to draft, carrying the job details in the title, summary and line items.

  5. Attach the photos

    The customer's photos are uploaded to the quote as attachments, so whoever prices the job sees them inside Xero.

  6. Confirm to the customer

    A branded email tells the customer their enquiry arrived and what happens next.

Connecting n8n to Xero

n8n ships with a Xero node that handles contacts and invoices through an OAuth connection you authorise once. For quotes, I call Xero's Quotes API from n8n's HTTP Request node, using that same Xero credential, so there is no separate authentication to maintain.

Two details are worth knowing before you start:

  • Xero organisations. One Xero login can reach several organisations. The workflow has to send the right tenant with each request.
  • Rate limits. Xero limits how fast you can call its API. A quote form will never get near the limit on a normal day, but a backlog import can, so space out bulk runs.

Xero's Quotes API reference and n8n's Xero node documentation have the specifics.

Why the quote stays a draft

It is tempting to automate the whole thing and send the quote straight to the customer. I advise against it.

Pricing a job takes judgment. The photos might show something the form did not mention. A draft in Xero gives the business everything prepared, with one decision left for a person: check it, price it and press send.

Making it reliable

An automation that fails silently is worse than no automation, because everyone has stopped watching the inbox. Three things keep a workflow like this trustworthy:

  1. Retries. Calls to Xero and the email service retry on temporary failures.
  2. Alerts with the payload. If a step still fails, the business gets a message containing the full enquiry, so the lead is never lost.
  3. No duplicates. If the same submission arrives twice, the workflow recognises it rather than creating two quotes.

Where AI fits

This workflow does not need AI to work, and I would not add it for decoration. There are two places it earns its keep in similar projects: turning a long free-text message into clean line items, and reading documents or notices to pull out details that would otherwise be typed by hand.

Use AI where the input is messy language. Use plain rules everywhere else.

Is n8n the right tool for this?

For a clear sequence across a form, an accounting system and email, yes. The business can see every step on a canvas, a change does not need a code deploy, and the running cost stays low. If the logic grew into something with many branches and heavy volume, I would move it into code. And if the work needed judgment rather than rules, that is agent territory, which I cover in how to build an AI agent.

The result

At Strip It Out, every enquiry lands in Xero as a draft quote, ready to review and send. Alongside the automation, the new site's 240+ local service pages lifted organic clicks by 52% in under two months, so more enquiries flow into a process that can now keep up with them.

If quotes or invoices in your business wait on someone re-typing them, this is a contained project with a clear before and after. It is the kind of work I do under AI automation.

Questions people ask

Straight answers. If yours is not here, ask me.

Ask me directlyI read and answer every message.

Can n8n create quotes in Xero?

Yes. n8n's built-in Xero node covers contacts and invoices, and quotes can be created by calling Xero's Quotes API from n8n's HTTP Request node with the same Xero credential.

Should the automation send the quote to the customer automatically?

I recommend creating it as a draft. A person checks the scope and price, then sends it from Xero. You remove the re-typing without removing the judgment.

Do I need to self-host n8n for this?

No. n8n Cloud handles this workflow comfortably. Self-hosting makes sense if you want lower running costs at high volume or tighter control over where data lives.

What happens if Xero is down when an enquiry arrives?

The workflow should retry, and if it still fails, alert you with the enquiry details so nothing is lost. The customer's confirmation email can still go out.

Where this comes from

Automation

Forms, CRM, accounting, email and AI connected, so routine work happens without anyone re-typing it.

Case study

Strip It Out

Every enquiry becomes a draft quote in accounting, and 240+ local pages lifted organic clicks 52% in under two months.

More guides

Have a process eating your team’s time?

Tell me about it. I’ll tell you straight whether AI is the right answer.

You’ll talk to me directly.On the call and in every message.

Or email hello@abdurrehman.dev