SyncFlo AI
Pillar 4: Nurturing Queue

Follow-up & Nurturing Queue

Configure scheduled messages, document requests, price reductions, and campaign notifications to guide prospective buyers smoothly through the purchase cycle.

The Nurturing Queue Architecture

Property sales cycles frequently span weeks or months. The Follow-up Queue provides a scheduled dispatch timeline that automates client check-ins and notifications.

Through database hooks, agents link scheduled alerts to active leads and site visits. A background worker processes the queue based on the scheduled_at timestamp, dispatching pre-approved templates or raw text messages over WhatsApp.

1. Queue Status Tracking

Operational states are tracked across four core indicators:

Total Followups

Total Queue

Sum total of all scheduled entries.

Scheduled

Pending Queue

Entries waiting for their scheduled time slot.

Sent

Dispatched

Follow-ups successfully sent to clients.

Campaigns

Bulk Broadcasts

Scheduled alerts matching marketing campaign tags.

2. Follow-up Database Schema

The queue matches records inside the property_followups Supabase table:

Queue ParameterDB Column NameTypeDescription
Linked Leadinquiry_idUUID | NullReference ID linking back to the property inquiries/leads record.
Linked Site Visitsite_visit_idUUID | NullReference ID linking back to the site visits scheduler table.
Linked Propertyproperty_idUUID | NullReference ID linking back to the properties listing database.
Client Coordinatescustomer_phonecustomer_nameTextRecipient customer phone number and optional name.
Message Typefollowup_typeEnumTypes: general, site_visit_reminder, post_visit_followup, document_request, price_update, campaign.
Message TextmessageText (Required)Actual text to send. Supports variable substitutions (e.g. {{name}}).
Timestampsscheduled_atsent_atTimestampScheduled launch target time and actual completion timestamp.
Dispatch Templatetemplate_nameText | NullApproved Meta WhatsApp template name. If set, this template is dispatched.

3. Nurturing Scenarios & Auto-Filling

Linking follow-ups to client states simplifies scheduling:

Dynamic Auto-Filling

To speed up manual scheduling, selecting a record in the dialog triggers an auto-fill helper:

  • Link Lead: Automatically copies customer phone, name, and target property ID from the inquiry record.
  • Link Site Visit: Auto-fills coordinates, sets the type to site_visit_reminder, and copies property link.

Automated Queue Worker

The dispatch worker operates in the background:

  • Polls property_followups for rows with status scheduled and scheduled_at ≤ current time.
  • If template_name is set, calls Meta cloud APIs using the template and arguments.
  • Otherwise, falls back to raw message dispatch.
  • Updates status to sent and populates sent_at.

Queue Actions

Queue rows can be manually fast-tracked or cancelled directly from the table:

  • Send Immediately: Triggers manual dispatch override, sending the WhatsApp message right away and updating status to sent.
  • Cancel: Updates row status to cancelled, preventing dispatch.

Important Operational Safeguards

Compliance and anti-spam measures

To ensure high channel health on WhatsApp and prevent spam flags, follow-up automation adheres to specific scheduling rules:

Follow-up Rules:

  • Template Approvals: WhatsApp requires pre-approval for templates used outside the standard 24-hour customer window. Raw messages can only be sent if the buyer initiated conversation within the past 24 hours.
  • Rate Limiting: The background worker includes built-in rate-limiting delay offsets (e.g. 1.5 seconds between dispatches) to prevent concurrent burst spikes.
  • Opt-Out Tracking: If a contact is set to lost or flags opt-out in their profile tags, the worker cancels pending scheduled reminders automatically.