assess.one – AI-powered business operations platform

Workflow Template

Quote follow-up and expiry Workflow

Sends a quote to a customer, follows up with reminders and a phone call if there is no response, and tracks the quote through Accepted, Declined or Expired outcomes with matching notifications and office tasks.

Every trades and services business knows the drill: you send a quote, then spend days wondering if the customer ever opened it, and someone has to remember to chase them up. This workflow sends the quote automatically, waits a few days, checks for a reply, and if there's silence it sends a friendly email and text reminder before creating an office task to call the customer directly. Whatever happens next — accepted, declined, or no answer — the record is updated with a matching status, the customer gets the right notification, and the office gets a task to book the job or log why it was lost.

Business Outcomes

  • Fewer quotes falling through the cracks without any follow-up
  • Less time spent manually tracking who has replied and who hasn't
  • Faster response to customers thanks to automatic reminders by email and SMS
  • Clearer visibility of quote status across the team through record timelines and dashboards
  • More consistent capture of reasons quotes are declined, to help spot patterns over time

Workflow Steps

Steps

  1. 1
    Create Quote Recordcreate record

    Registers the submitted quote as a record.

  2. 2
    Set Status: Quote Sentupdate record

    Marks the quote as Quote Sent.

  3. 3
    Email Quote to Customersend email

    Sends the customer the quote details and instructions to accept.

  4. 4
    Wait 3 Days

    Waits 3 days before checking whether the customer has replied.

  5. 5
    Office: Check for Replycreate task

    Creates a task for the office to check whether the customer has replied to the quote.

  6. 6
    Route on Reply Response

    Routes the workflow based on the recorded reply check response.

    reply_response: "Accepted"→Set Status: Quote Accepted
    reply_response: "Declined"→Office: Record Reason Lost (Reply Check)
    reply_response: "No response"→Set Status: Following Up
    Default→End
  7. 7
    Set Status: Following Upupdate record

    Marks the quote as Following Up since there has been no response.

  8. 8
    Email Friendly Remindersend email

    Sends the customer a friendly email reminder of the quote amount and valid-until date.

  9. 9
    Text Friendly Remindersend sms

    Sends the customer a short SMS reminder about the quote.

  10. 10
    Wait 4 Days

    Waits 4 days before the office calls the customer.

  11. 11
    Office: Call Customercreate task

    Creates a task for the office to call the customer and record the outcome.

  12. 12
    Route on Call Outcome

    Routes the workflow based on the outcome of the follow-up call.

    call_outcome: "Accepted"→Set Status: Quote Accepted
    call_outcome: "Declined"→Office: Record Reason Lost (Call)
    call_outcome: "No answer"→Set Status: Quote Expired
    Default→End
  13. 13
    Set Status: Quote Expiredupdate record

    Marks the quote as Quote Expired after no answer on the follow-up call.

  14. 14
    Email Quote Expired Noticesend email

    Notifies the customer that the quote has lapsed and invites them to request a new one.

  15. 15
    Set Status: Quote Acceptedupdate record

    Marks the quote as Quote Accepted.

  16. 16
    Email Acceptance Confirmationsend email

    Sends the customer a confirmation that their quote has been accepted.

  17. 17
    Office: Book the Jobcreate task

    Creates a fire-and-forget task for the office to book in the accepted job.

  18. 18
    Office: Record Reason Lost (Reply Check)create task

    Creates a task for the office to record why the quote was declined during the reply check.

  19. 19
    Save Reason Lost (Reply Check)update record

    Persists the recorded reason lost to the quote record.

  20. 20
    Office: Record Reason Lost (Call)create task

    Creates a task for the office to record why the quote was declined during the follow-up call.

  21. 21
    Save Reason Lost (Call)update record

    Persists the recorded reason lost to the quote record.

  22. 22
    Set Status: Quote Declinedupdate record

    Marks the quote as Quote Declined.

  23. 23
    Email Thank Yousend email

    Sends the customer a thank-you email acknowledging the declined quote.

Fields

  • Customer Name*
  • Customer Email*
  • Customer Mobile*
  • Site Address*
  • Job Description*
  • Quote Reference*
  • +7 more fields

Forms

New Quote

8 fields

Data Views

Quotes Overview

customer_name, quote_reference, quote_amount, valid_until_date +2 more

Dashboard Widgets

Quotes by Status

Recommended integrations

Setup the following integrations to extend workflow capability.

  • Send SMS in the workflow

    Twilio logoTwilioAWS SNS logoAWS SNS
  • Send email in the workflow

    AWS SES logoAWS SES
quote follow-up and expirytradetrades

Similar Workflows

Similar Categories

FAQs

Do I need to set up anything before this workflow can run?

No installation or development work is needed — once your workspace publishes this template, it's ready to run live quotes straight away. You just need to start submitting quotes through the request form so the workflow can take over from there.

Can my team customise the reminder emails and wait times?

Yes. You can describe the change you want in plain English, or open the workflow editor and adjust the steps directly, including the wording of emails, the number of days waited before follow-up, or the SMS reminder text. Earlier versions of the workflow are kept, so you can always see what changed.

Who is responsible for checking replies and making the follow-up call?

Office tasks are created for team members to check for a reply and, later, to call the customer and record the outcome. Both of these are tasks the workflow waits for, so the record only moves forward once someone completes them and enters the result.

What happens if the customer doesn't respond at all?

If there's no reply after the initial wait, the status changes to Following Up and the customer receives an email and SMS reminder. If a follow-up call still gets no answer, the status changes to Quote Expired and the customer is emailed a notice inviting them to request a new quote.

How does the workflow handle a declined quote?

Whether the quote is declined during the reply check or during the follow-up call, an office task asks the team member to record the reason lost, which is saved to the record. The status then updates to Quote Declined and the customer receives a thank-you email acknowledging the outcome.

What happens once a customer accepts the quote?

The status updates to Quote Accepted, the customer receives a confirmation email, and a task is created for the office to book the job in. That booking task doesn't hold up the workflow, so the confirmation and booking can happen in parallel.

Do customers need an account to respond to the quote?

No. Customers interact entirely through the quote email and any forms sent to them — there's no account or login required at any point. This keeps the process simple for customers while your team manages everything from the workspace.

Is this workflow suitable for businesses that send a high volume of quotes?

Yes, it's designed to handle repeated, similar quote processes without extra manual effort per quote. Each quote becomes its own record with a reference number, status and timeline, so your team can track many quotes at once through table views and dashboards.

Can we track why quotes are lost over time?

Each time a quote is declined, the reason lost is recorded on the quote's record, whether that happens during the initial reply check or the follow-up call. This gives your team a record to review, though each business should confirm what reporting or record-keeping their own obligations require.

Ready to use this workflow?

Create a free account and customise this workflow for your business.

Quote follow-up and expiry Workflow | assess.one