Skip to main content
ATOM

Guides

Build, approve, and send a quote

Build a quote from a work order, check approval rules, send through Gmail or Xero, and verify the timeline.

This guide shows you how to build a quote from a work order, check approval rules, send it through Gmail or Xero, and verify the quote timeline.

ATOM docs guide page explaining how to build, approve, send, and verify a quote from a work order.
Quote build, approve, and send overview from the docs-demo tenant.

Use it when an admin needs to quote property maintenance work before booking or invoicing. The examples use the docs-demo tenant for H&R Maintenance Docs Demo.

#Open the work order quote path

Start from the work order so the quote keeps its work order, property, agency, and inbox context.

  • Sign in to the docs-demo tenant with the seeded admin account.
  • Open Work Orders and select WO-DOC-1001, Kitchen sink leak assessment.
  • In Service Lifecycle, use the Quote card.
  • If the card is empty, select Add Quote.
  • If a draft already exists, open the Quote card and select Edit Line Items.

The New Quote drawer uses the work order as the quote owner. Do not create a quote from Quotes first if you need Gmail inbox delivery, because Gmail sending needs a linked work order inbox thread.

#Build the quote

Fill the quote fields before you send it.

  • Enter Quote Title *, such as Kitchen sink leak assessment quote.
  • Add notes for the customer in Customer Notes.
  • Keep private notes in Internal Notes.
  • Set Valid Until (Days) to the number of days the quote should remain valid.
  • Use Booking Status only when the quote is linked to a booking.

Add line items with Add Line Item. For WO-DOC-1001, the draft quote starts with Call-out and labour and Standard materials allowance. Add any extra work as separate rows, such as Cabinet base replacement.

Each line item must have these fields before saving:

  • Line item name with a description the customer can recognise.
  • Line item type: Labor, Material, or Fee.
  • Line item quantity greater than zero.
  • Line item unit price greater than zero.
  • Line item GST, usually 10% GST or No GST.

Check Subtotal, GST, and Total before you select Create Quote or Save Changes. ATOM blocks saving when a row is missing a name, quantity, unit price, or total.

#Check approval rules before sending

Use the approval preview on the quote form and the current Settings screen. Do not create a separate approval workflow for this step.

The quote form shows one of these messages after it can calculate a total:

  • Quote approval is required before the work can progress.
  • Customer signature is required by workspace approval policy.
  • No extra customer approval or signature step is required before work can progress.

Approval thresholds come from SettingsApprovals:

  • Approval threshold is inclusive. A total at or above the value requires human approval before auto-mode can continue.
  • Leave Approval threshold blank to disable the amount threshold.
  • Use 0.00 to require approval for every quote.
  • Always require approval applies to every future quote send.
  • Require approval for these job categories applies when the work order category matches a selected category, such as Plumbing.
  • Require approval after hours uses the property's state timezone and treats outside Monday-Friday, 8am-6pm as after hours.
  • Require customer signature by default adds the signature step to future sends.

You can also tick Require customer approval before work can progress or Require customer signature before work can progress on one quote. The quote still sends immediately. The customer completes the approval or signature from the email link.

The customer-facing approval page lives outside the authenticated app and is shared with booking confirmation and technician dispatch under the same public action-link shell. For the badge states (Pending, Approved, Rejected, Expired, Revoked, Unavailable, Invalid), the side effects on the work order and quote timeline, and the support steps when a recipient cannot complete a link, see docs/operations/external-action-link-flows.md in the repo.

#Choose the send path

Open the quote detail page while the quote is still Draft. Choose the provider that matches the customer communication path.

Use Send via Gmail when the work order has a linked Gmail inbox thread and the outbound quote should appear in that conversation. ATOM sends from the connected Gmail inbox and links the outbound email to the related work order.

Use Send via Xero when the agency's Xero integration should email the quote. ATOM queues Xero delivery and locks quote edits while the Xero send is pending.

If either provider is missing, disconnected, or showing a setup error, pause the send and use Connect and troubleshoot integrations before retrying.

Before sending:

  • Confirm the quote status is Draft.
  • Confirm the Total matches the amount you intend to send.
  • Confirm the quote has not expired in Valid Until.
  • Enter the customer email address in Recipient email.

The Gmail button can be blocked with Gmail: Link a Gmail inbox thread to this work order before sending.. Return to the work order inbox thread and link the thread before trying again.

The Xero button can be blocked while another Xero send is in progress. Wait until the quote no longer shows Queued in Xero before sending again.

#Verify the sent quote

After a successful send, the quote detail page changes from Draft to Sent. Check the toast, the status badges, and Timeline before moving on.

For Gmail sends, look for these visible states:

  • Quote sent via Gmail toast after the send completes.
  • Quote status badge changes to Sent.
  • Timeline shows Sent <date> at <time>.

For Xero sends, look for these visible states:

  • Quote queued in Xero toast after ATOM creates the Xero send job.
  • Queued in Xero badge next to the status while the Xero job is still pending or processing.
  • Timeline shows Xero send queued <date> at <time> while the job is pending.
  • Xero send failed badge and Xero send queued <date> at <time> (delivery failed) in Timeline if Xero delivery fails.
  • Once Xero delivery completes, the Queued in Xero badge clears and Timeline shows Sent <date> at <time>.

If a Xero send fails, the quote stays at Sent and the Xero send failed badge stays visible. The quote hub does not show the send buttons again on a Sent quote, so resolve the failure in Xero (recipient address, Xero integration, or the original Xero quote) instead of resending from ATOM. Create a new quote on the work order if Xero cannot deliver the original.

#Handoff checklist

Before you leave the quote:

  • The quote is linked to the correct work order, such as WO-DOC-1001.
  • Line Items contains the final scope and the Total matches the amount to send.
  • Approval or signature requirements match SettingsApprovals and any quote-level checkboxes.
  • The send path is correct: Send via Gmail for the linked inbox conversation, or Send via Xero for Xero-managed delivery.
  • Timeline shows the expected Sent, Xero send queued, or Xero send queued ... (delivery failed) state.
Last updated 28 May 2026