Skip to content
Zapier case study

Multi-line Xero quotes from WooCommerce orders, through a monday.com production pipeline

An Australian maker of made-to-order bathroom vanities sells through a WooCommerce store with web quotes. Its Zaps put every order, with the options the customer chose, on a monday.com production pipeline, build a complete multi-line draft quote in Xero when an order reaches the quoting stage, move the pipeline on and schedule follow-ups when the quote is sent, and bring leads from five channels into the same board. All of them are now off.

An Australian made-to-order furniture manufacturerFurniture manufacturingBuilt Jun 2024 – Jul 202518 Zaps in the account
Zaps, built June 2024 to July 2025
18
lead channels into one monday.com pipeline
5
working days to the first follow-up after a quote is sent
3

The business

The business makes bathroom vanities to order: each one is configured on the website with a material and options such as LED lighting, and most sales start as a web quote. The team works the orders on a monday.com custom-order pipeline; quotes and invoices are in Xero, in Australian dollars with tax-inclusive amounts.

The hard part is the quote. A web order has several lines, and the obvious Zap (order in, quote out) produces either one quote per line or one line per quote. The build keeps one row per order line in a Google Sheet, then pulls every line for the order back out and itemises them into one Xero quote.

The Zaps were built between June 2024 and July 2025. The account has since dropped to Zapier's Free plan and every Zap is off.

Audited 21 Oct 2026. 18 Zaps, all off. The plan is Free: a Pro trial expired and Zapier disabled the multi-step Zaps. None has run in the last 60 days, so usage, run and error figures are 0 throughout.

What we built

01

Order to quote

Web and manual orders onto the pipeline, every line kept in a sheet, a multi-line draft quote in Xero at the quoting stage, and follow-ups once it is sent.

  • Instant2 steps

    Every order line stored as its own row

    • WooCommerce
    • Google Sheets
    Trigger
    WooCommerce – Line Item in an Order (order created), which fires once per line item
    What it does
    Every product line of every web order is written as its own row in the order-lines sheet (order number, item code, description, price, quantity), keyed by the order number.
    The tricky part
    The per-line-item trigger turns one multi-line order into one row per line. It is the foundation the quote Zap builds on.
    Error handling
    None.
    Usage
    0.
    Status
    Off, version 6 plus a draft, last edited 1 Jul 2025
  • Instant2 steps

    Web order onto the production pipeline

    • WooCommerce
    • monday.com
    Trigger
    WooCommerce – New Order
    What it does
    Every web order or quote request lands in the pipeline's new group as Not Started, with customer, company, address, contact details, items, the product options chosen, total price, customer note, web quote number and quantity.
    The tricky part
    Flattening WooCommerce variable-product attribute data into readable monday columns. The field mapping went through 17 versions.
    Error handling
    None.
    Usage
    0.
    Status
    Off, version 17 plus a draft, last edited 1 Jul 2025
  • Instant6 steps

    Multi-line Xero draft quote at the quoting stage

    • monday.com
    • Filter
    • Google Sheets
    • Formatter
    • Xero
    Trigger
    monday.com – Specific Column Value Changed, the stage on the pipeline
    What it does
    When the team marks an order To Be Quoted, every order-line row matching its web quote number is looked up, the Line Itemizer turns them into line items (code, description, price, quantity), the Xero contact is created or updated, and a draft quote is created in AUD, tax-inclusive, dated today, with all the lines.
    The tricky part
    Multi-line items from WooCommerce to Xero handled with a per-line-item trigger into Sheets, a multi-row lookup and the Line Itemizer, not with Looping or Code. The result is one Xero quote with N lines, not N quotes.
    Error handling
    The stage filter.
    Usage
    0.
    Status
    Off, version 7 plus a draft, last edited 14 Apr 2025
  • Instantabout 7 steps

    The same quote for phone and manual orders

    • monday.com
    • Filter
    • Google Sheets
    • Formatter
    • Xero
    Trigger
    monday.com – the pipeline stage changed to To Be Quoted, for orders with no web quote number
    What it does
    Orders entered by hand have their lines looked up by customer email instead of quote number, then itemised into the same Xero contact and draft quote.
    The tricky part
    A second path for orders that never touched the website, sharing the same line store.
    Error handling
    Filter on the missing web quote number.
    Usage
    0.
    Status
    Off, version 1, last edited 14 Apr 2025
  • 3 steps

    Manual quote lines into the same line store

    • monday.com
    • Filter
    • Google Sheets
    Trigger
    monday.com – New Item on the quotes board
    What it does
    Quote lines entered by hand, with no web quote number, are written to the order-lines sheet so the quote Zap can use them.
    The tricky part
    One line store for web and manual orders.
    Error handling
    Filter.
    Usage
    0.
    Status
    Off, version 1 plus a draft, last edited 1 Jul 2025
  • Polling5 steps

    Sent quote moves the pipeline and sets the first follow-up

    • Xero
    • monday.com
    • Filter
    Trigger
    Xero – New Quote, status Sent
    What it does
    Sending a quote in Xero finds the pipeline item by client email, checks the emails match, and sets the order stage to Quoted, the follow-up status to the first follow-up, the follow-up date to three working days from today, and the Xero quote number.
    The tricky part
    Closing the loop from the ledger back to the board, with a working-day date rather than a calendar one.
    Error handling
    Filter on matching emails.
    Usage
    0.
    Status
    Off, version 3, last edited 14 Apr 2025
  • 5 steps

    SMS follow-up on outstanding quotes

    • monday.com
    • Formatter
    • Filter
    • Delay
    • TextMagic
    Trigger
    monday.com – the follow-up column changed
    What it does
    When a follow-up is due, the customer's phone number is formatted and, after a delay, an SMS is sent.
    The tricky part
    Follow-ups driven from the same board the quote Zap updates.
    Error handling
    Filter.
    Usage
    0.
    Status
    Off, version 3, last edited 12 Sep 2024
02

Leads from five channels into the pipeline

Chat, Messenger, phone calls, lead ads and website sign-ups, each checked against the board before a new item is created.

  • 5 and 8 steps2 Zaps

    Website chat into the pipeline and the mailing list

    • Tawk.to
    • Formatter
    • monday.com
    • Mailchimp
    • Delay
    Trigger
    Tawk.to – chat ended
    What it does
    A finished chat creates a pipeline item and subscribes the visitor to the mailing list, then tags them after a delay. The newer, 8-step version first parses the visitor's details out of the chat transcript with several Formatter text, utility and number steps.
    The tricky part
    Pulling structured contact details out of free-text chat transcripts with Formatter alone.
    Error handling
    None.
    Usage
    0.
    Status
    Off, versions 1 and 10
  • 5 steps

    Facebook Messenger enquiries

    • Facebook Messenger
    • Delay
    • monday.com
    Trigger
    Facebook Messenger – new page message
    What it does
    A new page message waits in a queue, the board is searched for an existing item, and one is created only if the sender is new.
    The tricky part
    Delay After Queue processes messages one at a time, so two quick messages cannot both create an item.
    Error handling
    None beyond the lookup.
    Usage
    0.
    Status
    Off, version 7
  • 5 steps

    Phone calls

    • GoTo Connect
    • Delay
    • monday.com
    • Filter
    Trigger
    GoTo Connect – incoming call ended
    What it does
    After a call, the board is searched by phone number and an item is created for a new caller.
    The tricky part
    The same queue-and-lookup pattern, keyed on phone number.
    Error handling
    Filter.
    Usage
    0.
    Status
    Off, version 4
  • 5 steps

    Facebook lead ads

    • Facebook Lead Ads
    • monday.com
    • Mailchimp
    • Delay
    Trigger
    Facebook Lead Ads – new lead
    What it does
    A new lead creates a pipeline item, is subscribed to the mailing list, and tagged after a delay.
    The tricky part
    One lead into the board and the list in one Zap.
    Error handling
    None.
    Usage
    0.
    Status
    Off, version 2
  • 2 steps

    Website sign-ups

    • WordPress
    • monday.com
    Trigger
    WordPress – new user
    What it does
    A new website account creates an item on the board.
    The tricky part
    Simple lead capture.
    Error handling
    None.
    Usage
    0.
    Status
    Off
03

Team notices

A message to the team for each new drawing or specification uploaded to an order.

  • 5 steps

    New files on an order posted to Google Chat

    • monday.com
    • Looping
    • Filter
    • Google Chat
    Trigger
    monday.com – the file column changed
    What it does
    The order's files are read, looped over, and each new one is posted to the team's Google Chat.
    The tricky part
    One message per file rather than one per change, so a batch of drawings is not reported as one.
    Error handling
    Filter.
    Usage
    0.
    Status
    Off, version 9, last edited 7 Jul 2025

What the counters show

  • No Zap has run in the last 60 days, so there are no run, task or error counters to report.

  • What the account shows is a single pipeline from enquiry to quote: leads from five channels and web orders with their product options on one monday board, a multi-line draft quote built in Xero at the quoting stage, and the board moved on with a follow-up date when the quote is sent.

What we would change

  • Every Zap is off and the account is on the Free plan, which does not run multi-step Zaps. Orders and quotes are not moving automatically today.

  • Manual orders find their lines by customer email, so every line stored under a repeat customer's email, earlier orders included, would be pulled into the new quote. We would give manual orders a quote number of their own.

  • The sent-quote Zap finds the pipeline item by client email for the same reason, and would need the Xero quote number as its key to be reliable for repeat customers.

  • The Sheets line store is the single point the quotes depend on. We would protect it from hand edits, or move the line store to a monday subitem board, so nobody can break a quote by tidying a spreadsheet.

Four Zaps are not described: two earlier versions of the web-order Zap and an older copy of the Google Chat notifier (superseded), and a quote-upload Zap that was never published and uses an app that has since been deleted.

Built with

  • Zapier
  • WooCommerce
  • WordPress
  • monday.com
  • Xero
  • Google Sheets
  • Formatter
  • TextMagic
  • Mailchimp
  • Tawk.to
  • GoTo Connect
  • Google Chat

Page copy drafted with AI assistance. Skofi is accountable for it. Editorial policy

Start here

Have a Zapier account like this one?

We start by reading what is already there: every Zap, its counters and its failures. A short call is the fastest way to find out what yours needs.

Book a 15-minute callsaveez@skofi.tech

What happens on the call

  • 15 minutes, no deck
  • We map the process on the call
  • A written scope, or an honest no
Book a call