Back

GENZAX AI Client Acquisition System

Self-initiated build — designed and built in-house; not commissioned by a client. The outreach and inbox steps are not connected to live mail credentials, so this system is not running in production and has not sent anything.

An end-to-end client acquisition system that automates the journey from business discovery and research through to lead qualification, personalized outreach, follow-ups and reporting — built as eleven separate n8n workflows that call each other in a fixed order.

The n8n canvas for the GENZAX Daily Controller workflow, showing the schedule and webhook triggers on the left running through campaign setup into a loop that calls research, problem detection, service matching, qualification and email generation

PROBLEM

Client acquisition is not one job, it is a chain of them: finding businesses worth approaching, reading their sites closely enough to understand them, deciding whether there is anything genuinely worth saying, and then writing something specific enough that a stranger reads past the first line. Done by hand, the last step — the only one the recipient ever sees — gets whatever attention is left over, which is why most outreach ends up as the same template with a different name at the top.

APPROACH

Split the pipeline into eleven independent workflows, one per stage, rather than building one large automation that does everything. Each stage owns a single decision, writes its result back to the lead record, and can be run on one prospect in isolation, so a stage can be inspected and fixed without touching the rest. Two rules shape the design: a lead whose evidence does not support a real problem is dropped rather than carried forward on an invented one, and no message reaches a person without a human reading it first.

SOLUTION

Built in n8n. A daily controller starts the run and calls each stage in order: discovery finds businesses matching the campaign criteria, research builds an evidence profile from publicly available information, problem detection names one real problem from that evidence, service matching maps it to a GENZAX service, and qualification scores the lead in code against a threshold held in settings. Qualified leads get a personalized draft. Sending is a separate hourly workflow that stops at a human approval step and a live-or-simulate switch. A reply watcher matches inbound mail back to the prospect and suppresses further chasing, a follow-up engine handles everyone who has not replied, and an end-of-day report aggregates the whole run.

WHAT IT DEMONSTRATES

  • Multi-workflow orchestration — one controller calling ten sub-workflows, with loops and rate limiting between calls
  • Structured AI output parsed into fixed fields that later stages can branch on
  • Deterministic scoring in code, kept out of the model so qualification stays repeatable
  • Human-in-the-loop approval and simulate-by-default send paths
  • Reply-aware suppression, duplicate prevention and stop conditions built into the flow rather than bolted on

WHERE THIS STANDS

The eleven workflows are built and wired together in n8n, and the screenshots below are the actual canvases. The send and receive steps depend on mail credentials that are not connected in this build, and both send paths sit behind a live-or-simulate switch that defaults to simulate. Nothing has been sent from it, so there are no clients, leads, replies, meetings, conversion rates or time savings to report — and none are claimed anywhere on this page. What is shown here is the system, not results from it.

// ARCHITECTURE

One pipeline, eleven stages.

Each stage is its own workflow with its own trigger, its own inputs and its own record of what it did. The controller holds the order; every other module can be run and tested on a single lead without the rest of the system.

01Find 02Research 03Problem 04Match 05Score 06Personalize 07Approve 08Send 09Follow-up 10Convert 11Report

// SYSTEM MODULES

Eleven workflows, in the order they run.

Every screenshot below is the real n8n canvas for that module. On a narrow screen each canvas scrolls sideways inside its frame rather than shrinking out of legibility, and the full-size image is one tap away.

01

GENZAX Daily Controller

Controls the daily client-acquisition campaign, target volume, settings and campaign execution parameters.

n8n canvas for the Daily Controller: a daily schedule trigger and a target webhook feed Normalize Input, Get Settings, Determine Target and a Valid Target check, which creates a campaign and then loops leads through research, rate-limit wait, problem detection, service matching, qualification and email generation before finalising the campaign
n8n canvas — module 01 Open full size

A schedule trigger at 00:00 Asia/Karachi starts the run; a webhook does the same thing on demand when a specific target is being tested. The controller normalises whichever input arrived, reads campaign settings, resolves the day's target and validates it — an invalid target creates an error campaign rather than failing quietly halfway through. It then calls Lead Discovery, splits the returned prospects and walks them one at a time through research, problem detection, service matching and qualification, with a deliberate rate-limit wait between calls. Only qualified leads reach the email generator. When the loop drains, the controller reads the leads back, computes the run's counts and closes the campaign record.

Key responsibility

Starts and configures the daily acquisition process.

02

GENZAX Lead Discovery

Discovers relevant businesses based on defined targeting criteria and campaign requirements.

n8n canvas for Lead Discovery: a Discovery group where Get Settings and Build Criteria feed a Discover Businesses agent with its model and output parser, then a Dedup and Store group that checks existing leads, tests for a new prospect, inserts it and summarises the discovery
n8n canvas — module 02 Open full size

Called by the controller rather than triggered on its own. It reads the campaign settings, builds the targeting criteria from them, and hands those to a discovery agent whose output is forced through a structured parser, so downstream nodes receive consistent fields instead of prose they would have to guess at. Everything it finds is checked against the existing lead table before a single row is written: only genuinely new prospects are inserted, and the workflow returns a summary of what it actually added rather than what it looked at.

Key responsibility

Finds potential business prospects.

03

GENZAX Business Research

Researches publicly available business information — website experience, services, contact process, lead capture and potential opportunities.

n8n canvas for Business Research: When Called feeds Get Lead and Mark Researching, then a collapsed Research group, then Store Research and Return Result
n8n canvas — module 03 Open full size

Takes a lead ID, loads the record and marks it as being researched before doing any work, so a second run cannot pick up the same prospect and duplicate the effort. The research stage gathers publicly available signals about the business — what the site is like to use, what services it lists, how it asks people to get in touch, how it captures leads — and the result is written back onto the lead itself before being returned to the controller. Every later module reads that same record, which is what lets them run independently.

Key responsibility

Turns a raw business prospect into an evidence-based research profile.

04

GENZAX Problem Detection

Identifies genuine business problems or opportunities from the available research evidence.

n8n canvas for Problem Detection: Get Lead feeds a Detect Problem agent with its model and output parser into a Has Real Problem branch, where true stores the problem and returns detected, and false rejects the lead and returns rejected
n8n canvas — module 04 Open full size

Reads the researched lead and asks for one real, evidence-backed problem, with a structured parser holding the answer to a fixed shape rather than a paragraph. A gate then decides what happens next: a lead whose evidence supports a genuine problem has it stored and continues down the pipeline, and a lead where it does not is rejected here. That branch is the point of the module — it is cheaper to drop a prospect at this stage than to write a confident email about a problem nobody has.

Key responsibility

Finds the strongest actionable business problem without fabricating information.

05

GENZAX Service Matcher

Matches the identified business problem with the most relevant GENZAX service.

n8n canvas for Service Matcher: Get Lead feeds an Is Rejected branch, where true returns unmatched and false runs a Match Service agent with its model and output parser, then Store Match and Return Matched
n8n canvas — module 05 Open full size

Loads the lead and checks first whether it was already rejected upstream — those return unmatched immediately and cost nothing further, which is why the rejection branch sits before the model call rather than after it. Everything else goes to a matching step that maps the detected problem onto the service that actually addresses it: AI Automation, AI Agents, Voice AI, Web Development, SaaS Development, SEO or Digital Marketing. The chosen service is stored on the lead, and it is what the email generator later writes from.

Key responsibility

Determines the most relevant GENZAX solution for the prospect.

06

GENZAX Lead Qualification

Evaluates and scores prospects on service fit, problem severity, business quality, buying potential, contact quality, personalization potential and evidence confidence.

n8n canvas for Lead Qualification: Get Lead and Get Settings feed a Score Lead code node into an Is Qualified branch, where true marks the lead qualified and returns it and false marks it rejected and returns it
n8n canvas — module 06 Open full size

Loads the lead together with the campaign settings, then scores it in code rather than through a model, so the same inputs always produce the same number and a score can be explained after the fact. The score combines service fit, problem severity, business quality, buying potential, contact quality, personalization potential and how much confidence the evidence supports. A threshold that lives in settings — not in the workflow — splits the result: qualified leads are marked and passed on, and the rest are marked rejected and stop here.

Key responsibility

Prioritizes strong prospects and rejects weak opportunities.

07

GENZAX Email Generator

Generates concise, personalized outreach based on the actual research and the identified business problem.

n8n canvas for the Email Generator: Get Lead feeds an Is Qualified branch, where true runs a Generate Email agent with its model and output parser into Store Email and Return Generated, and false returns skipped
n8n canvas — module 07 Open full size

Runs only for leads that passed qualification; anything else returns skipped without spending a model call. For the rest it drafts a short email from that specific lead's research and detected problem, parses the result into subject and body fields, and stores the draft on the lead record. Nothing is sent from here. Generating and sending are deliberately different workflows, which is what makes it possible to review a whole batch of drafts before any of them can go anywhere.

Key responsibility

Creates relevant, human-style outreach rather than generic agency messaging.

08

GENZAX Outreach Manager

Manages the approved outreach process, checking eligibility, duplicates, outreach status and safety conditions before sending.

n8n canvas for the Outreach Manager: an hourly trigger feeds Get Settings and Get Pending Leads into a loop where each lead passes a Human Approval step, a Resolve Decision node and a Send For Real branch, sending and marking sent on one side and marking simulated or skipped on the other
n8n canvas — module 08 Open full size

Runs hourly on its own schedule rather than inside the daily run, so approvals are not held hostage to when the pipeline happens to finish. It reads settings, pulls the leads carrying a pending draft, and loops them one at a time. Each one stops at a human approval step: the draft is read and the decision is resolved before anything else happens. A second gate then decides whether an approved message is actually sent or only simulated, and the two outcomes are marked differently on the lead — which is how the whole path can be exercised end to end without mail leaving the building.

Key responsibility

Controls the transition from approved prospect to outreach.

09

GENZAX Reply Detection

Detects incoming replies, matches them to the correct prospect, and updates outreach status.

n8n canvas for Reply Detection: an On Email Received trigger feeds Parse Reply and Find Lead By Email into a Lead Matched branch, where true records the reply and false logs it as an unmatched reply
n8n canvas — module 09 Open full size

The only module triggered by incoming mail rather than a clock. It parses each message, looks the sender up against the lead table, and branches on whether it found a match. A matched reply is recorded against that lead, and that record is precisely what stops the follow-up engine from continuing to chase somebody who has already answered. Mail that matches nothing is logged rather than discarded, so an address that changed or a forward from a colleague leaves a trace instead of vanishing.

Key responsibility

Identifies responses and prevents unnecessary follow-ups after a reply.

10

GENZAX Follow-up Engine

Manages controlled follow-ups for prospects who have not replied.

n8n canvas for the Follow-up Engine: a daily 09:00 trigger feeds Get Settings, Get Sent Leads, a Suppress Stopped filter and Compute Due Follow-ups into a loop that generates a follow-up and branches on a Live Send check, either sending and recording live or recording it as a test
n8n canvas — module 10 Open full size

Runs daily at 09:00 Asia/Karachi. It reads the leads that were sent to, then immediately filters out everyone who must not be contacted again — replied, bounced, do-not-contact, or manually stopped — before any dates are calculated, so a suppressed lead never reaches the part of the workflow that could message it. What survives goes through a due-date calculation, and only the follow-ups genuinely scheduled for today enter the loop. Each one gets a short generated follow-up and passes the same live-or-test gate the outreach manager uses, with test sends recorded separately from live ones.

Key responsibility

Schedules follow-up attempts while respecting reply, meeting, bounce, DNC and manual-stop conditions.

11

GENZAX Daily Report

Aggregates campaign activity and produces a daily operational summary.

n8n canvas for the Daily Report: a daily 23:30 trigger runs Get Today Campaign, Get All Leads, Build Report and Store Report in sequence
n8n canvas — module 11 Open full size

The last thing to run, at 23:30 Asia/Karachi, once the day's work has finished. It reads the campaign record and every lead attached to it, aggregates the run into one summary, and stores that report alongside the campaign so days can be compared rather than just observed. It is the only place in the system that looks at a run as a whole, which is what makes it the place to notice that discovery found plenty but qualification passed almost nothing.

Key responsibility

Provides visibility into discovery, research, qualification, approval, outreach, follow-ups, replies, meetings, conversions, bounces and errors.

// KEY CAPABILITIES

What the architecture actually buys you.

Modular workflow architecture

Eleven workflows rather than one. Each is triggered, tested and fixed on its own, and a fault in one stage does not take the run down with it.

Evidence-based research

Every later decision reads from a research profile built out of publicly available information, stored on the lead record rather than held in memory between nodes.

Problem detection with a reject path

A lead whose evidence does not support a real problem is dropped at that stage instead of being carried forward on an invented premise.

Service matching

The detected problem is mapped to one of the seven GENZAX services, so outreach names a specific solution rather than a menu.

Deterministic lead scoring

Qualification is scored in code across seven factors against a threshold held in settings — repeatable, adjustable without touching the workflow, and explainable afterwards.

Personalized outreach

Drafts are written from one lead's own research and problem, and generation is kept in a separate workflow from sending.

Human approval before send

Every message stops at a person. Nothing in the system can send an email that was not read and approved first.

Reply-aware follow-ups

Inbound replies are matched back to the prospect and suppress further chasing, alongside bounce, do-not-contact and manual-stop conditions checked before any follow-up is composed.

Duplicate prevention

Discovery checks every prospect against the existing lead table before inserting, and research marks a lead in progress so two runs cannot claim the same one.

Safe defaults

Both send paths sit behind a live-or-simulate switch that defaults to simulate, and simulated activity is recorded separately from real activity.

Daily reporting

One record per run covering discovery through to conversions, bounces and errors, stored so one day can be compared against the last.

// TECHNOLOGY

What it is built on.

Only what the system actually uses. There is no custom application server behind these workflows — the workflows are the application.

Platform
n8n. Every trigger, branch, loop and integration in the system is an n8n node; the eleven modules are eleven n8n workflows.
Orchestration
One controller workflow calling the others as sub-workflows, in a fixed order. Schedule triggers on Asia/Karachi time, a webhook for on-demand targeting, an inbox trigger for replies, item-by-item loops with rate-limit waits between calls, conditional branching at every decision point, and a human-approval step in the send path.
AI layer
n8n AI agent nodes backed by an OpenAI chat model, each paired with a structured output parser so discovery, problem detection, service matching, email generation and follow-up writing return fixed fields rather than free text.
Data layer
n8n Data Tables holding settings, campaigns, leads and daily reports. Every module reads and writes the same lead record, which is what allows any one of them to be run on its own.
Scoring
A code node, not a model call, so qualification is deterministic and the same lead always scores the same.
Email
Configurable send and inbox integration for outreach and reply detection. Credentials are not connected in this build, and both send paths default to simulate.