Case study / Trades and field services

From email enquiry to an owned CRM opportunity

How an Auckland property services business used n8n, AI classification and Brevo CRM controls to turn direct emails into actionable sales opportunities.

Client
Auckland property services business
Business area
Sales and enquiry management
Engagement
Email-to-CRM workflow design and production repair
21automated tests across the parser and open-deal filter
1 of 4genuine enquiries retained in a saved batch the old parser dropped
3contact results correctly paired in a mixed routing test

01 / Context

The operating problem

Direct customer enquiries arrived in a shared mailbox alongside internal messages, form notifications, newsletters and reply threads. Genuine requests had to be recognised, copied into Brevo CRM, assigned to the Quote Requested stage and acknowledged. Manual handling made that process dependent on someone monitoring and interpreting every message.

The production n8n workflow already classified emails and created CRM records, but two batch-handling defects could hide or misroute valid enquiries. Rejecting one non-enquiry could stop processing the entire batch. In a later branch, only the first contact's open-deal result could control routing for several contacts. The happy path worked; the risk sat in mixed batches and duplicate prevention.

02 / Process

What the work looked like

The workflow begins with an IMAP mailbox trigger. Explicit filters remove known system messages, form notifications, replies and forwards before an AI classification step decides whether the remaining message is a genuine customer enquiry and extracts useful contact and service details.

For accepted enquiries, the workflow creates or locates the Brevo contact and checks for an existing open opportunity. An existing deal receives the new context; otherwise the workflow creates a deal in Quote Requested with Direct Email as its source. The customer then receives a branded acknowledgement, while the sales team retains responsibility for qualification and response.

03 / Change

What was redesigned

We repaired the parser so a rejected item skips only that email instead of returning an empty result for the whole batch. Accepted and error items preserve their original input position, and fallback data is read from the matching source email. Malformed AI output remains visible as an error rather than being mistaken for a valid enquiry.

We also changed the open-deal filter to emit one independently paired result for every contact lookup. Won and lost deals remain excluded, while the first open deal in each contact's own response determines whether the workflow adds a note or creates a new opportunity.

The deployment was kept narrow: parser and routing logic changed while credentials, prompts, filters, contact and deal rules, outbound messages and the IMAP cursor were preserved. The published workflow version was read back to confirm the intended source was active.

04 / Outcome

What changed and how it was measured

A controlled replay of a saved four-message batch reproduced the original failure: the old parser returned no results even though the third message was a genuine enquiry. The repaired parser retained that enquiry and preserved its original source position.

A second mixed test combined an empty contact response, an existing open deal and a contact requiring a new deal. The previous first-result behaviour was reproduced, then the repaired filter produced three separately paired outcomes with the correct note or create route for each contact. All 21 automated tests across both controls passed.

The repaired workflow is active, but a new live multi-contact execution has not yet provided end-to-end confirmation. No time-saving, response-time or revenue claim is made from the offline replay and routing tests.