Skip to content

Case 03 · Marketing · Automation · CRM

A mass email about money needs a person to validate it before it goes out.

My email work sits closer to sales operations than to newsletters: follow-up segments for people who didn't buy, collections campaigns with human validation, operational notices and a single template measured by delivery events. Here I separate what is built from what has been sent.

Project
Email: follow-up, segmented sends and operations
Context
Car dealership, ZoDesk, auto repair shop and educational store
By Antonio Duque
Reviewed against the code and documentation on

01

Context and need

People who request a quote and don't buy, who offer their car and aren't closed, and customers with outstanding balances get lost if someone has to remember to write.

At the same time, a badly run mass send damages the domain's reputation and can say wrong things about money. It needed precise segments and brakes.

02

My responsibility

  • I defined the segments, the business rules (who receives what, when, with which validation) and the measurement, and directed the build in each system.
  • For the educational store I prepared subscriber capture; I did not run commercial sends from it.

03

Strategy and decisions

  1. Distinguish three families: commercial campaigns, operational emails and reports. Each has its own risk and measurement.
  2. Segment by real CRM and website behavior, not purchased lists or volume.
  3. Brakes by design: dry run by default, one email per source record and never two emails to the same address within 30 days.
  4. Protect the domain: a bounce or spam complaint flags the address and turns the case into a phone call.

04

What I built

  • Dealership sales follow-up with three segments approved in July 2026: people who requested a quote 3 to 10 days ago and didn't buy (and whose car is still available), people who offered their car and weren't bought from, and pre-approved people who didn't buy.
  • Tracked WhatsApp buttons in those emails, carrying the car reference to keep the trail.
  • A ZoDesk collections campaign: audience from receivables, grouped by customer, with to-review, validated or excluded status; segments by debt age, broken promise and email availability.
  • A single Resend sending gateway with an HTML template that works in Gmail and Outlook, and a signed webhook that records deliveries, opens, clicks, bounces and complaints.
  • Operational emails: appointment reminders, credit application packages to banks, internal overdue-task notices and payment reminders in the workshop system.
  • Native subscriber capture for the educational store, without duplicates, with source page and export.

Real screenshots

Screens from the real system. ZoDesk ones come from its demo mode, with an invented dealership; those marked “Live” are public pages captured on November 14, 2026.

Email collections campaign: only cases someone validated first get a reminder.

Email collections campaign: only cases someone validated first get a reminder.

ZoDesk automatic collections screen: email reminder turned off, counters by status and a table of fictitious customers to review.

05

How it works

  • System
  • Team
  1. System

    Source

    CRM, website forms or receivables, depending on the send.

  2. System

    Segment

    Behavior rules and a time window; anyone recently contacted is excluded.

  3. Team

    Validation

    Dry run or human review before sending; in collections, only validated cases.

  4. System

    Send

    One template through one sending channel, logged per recipient.

  5. System

    Measurement

    Delivery events and WhatsApp clicks tracked with their reference.

  6. Team

    Action

    Bounced addresses move to the team's call list.

Demo

Segments and brakes

Segments and brakes defined in code

Diagram

Sales follow-up

  • Requested a quote 3–10 days ago, didn't buy, car still available.
  • Offered their car 5–14 days ago and wasn't bought from.
  • Pre-approved in the last 60 days and didn't buy.

Segmented collections

  • Only cases validated by a person.
  • Debt age: 0–30, 31–90 or 90+ days.
  • Broken payment promise or no email (moves to a call).

Safety brakes

  • Dry run by default and test samples.
  • Never two emails to the same address within 30 days.
  • Bounce or complaint: never written to again.

06

Tools and what they do

Resend
Transactional and bulk sending with signed delivery events.
Brevo and a Google relay
Sending transports with automatic fallback on the dealership site.
Laravel and FastAPI
Segments, rules, scheduling and send logs.
Google Sheets
Receivables source for the collections campaign.
WordPress
Subscriber capture for the educational store.

Available evidence

  • Segment code with dry run by default, per-address limits and send logs.
  • A webhook with signature verification, time tolerance and once-only event processing, with automated tests.
  • An email template with its own tests.

07

Current status

  • Dealership segmented sales follow-up

    Built with dry run and test samples; not scheduled, and I don't publish sends or results.

    Built
  • ZoDesk segmented collections campaign

    Built and tested; no document confirms real rounds in production.

    Built and tested
  • Sending channel and delivery events

    Resend connected in ZoDesk with a signed webhook.

    Connected
  • Operational emails (appointments, credit, internal notices)

    Built inside their modules.

    Built
  • ZoDesk welcome and nurture sequences

    Documented in a site audit; not implemented.

    Proposal
  • Educational store subscriber capture

    Ready; the link to the external list is optional and not confirmed.

    Built

“In production” is only used when the project’s documentation confirms it. “Built and tested” means automated tests exist, not that it is in use. “Proposal” is a documented idea, not something built.

Next steps

  • Schedule the sales follow-up as a small pilot and measure WhatsApp replies, not just opens.
  • Implement welcome sequences on the same channel and webhook.
  • Verify own sending domains where the test sender is still used.

08

Lessons learned

Useful segmentation comes from the CRM: what the person did and what didn't happen next.
No bulk send should be repeatable by accident; the per-recipient log matters as much as the template.
Email must never take down operations: if it fails, it is logged and retried.

Related services

Connected cases