work / FIG. 01

← all systems

AI Sales Ecosystem — chatbot qualifier + sales analytics

live demodemo build

Coffee e-commerce. An "AI barista" on the storefront qualifies visitors with BANT, quotes live WooCommerce prices, and answers from a pgvector knowledge base — with daily AI dialog analysis, a weekly CEO report in Telegram, and a voice channel on the same backend.

STORE CHATweb + voiceAI BARISTABANT · score 1–10ZOHO CRMscored leadWOO PRICES · LIVERAG · PGVECTOR~5–10 s24/7
FIG. 01 — sales ecosystemshop.mahinko.com
4-min demo: chat with the bot → live prices → BANT qualification with an objection → scored lead in Zoho → daily dialog analysis → CEO report in Telegram
Voice channel on the same backend: the assistant recognizes a caller by phone number, quotes live prices, confirms an order (the deal stage changes in CRM from the call) and hands over to a manager — with a Telegram alert and a CRM task

The scenario

Smakava Roasters is a specialty-coffee e-commerce store (WordPress + WooCommerce) with a retail side and a wholesale line for cafés and offices. Before the system: visitors left the site without a trace, pricing questions waited for a manager, nobody qualified wholesale inquiries — the most valuable segment — and nobody measured how well customer conversations actually went.

Pain Consequence
Nobody to talk to 24/7 Lost leads — especially wholesale
No qualification of inquiries Managers burn time on cold leads while hot ones wait
Prices answered by hand A bot with static knowledge starts lying the day prices change
Dialog quality never analyzed The bot’s mistakes repeat; the prompt never improves
No funnel picture for the owner Decisions made blind

What I built

Three n8n workflows tied together by a shared session ID:

WF1 — a BANT-qualifying “AI barista” on the storefront. A chat widget embedded in the shop qualifies wholesale leads through natural conversation — including objection handling (“budget isn’t approved yet” triggers clarifying questions, not an instant demand for contacts). The agent has a two-level brain: prices and stock come from a live WooCommerce REST tool (zero drift from the real catalog), while product knowledge — tasting profiles, brewing, FAQ — lives in a pgvector RAG base (Neon Postgres + OpenAI embeddings). Volatile data is deliberately never embedded. Qualified leads land in Zoho CRM with a BANT résumé, an AI score of 1–10 and the session ID. Anti-abuse guards — message limits per session and per day, input trimming, spend caps — run before the LLM is ever called.

WF2 — daily dialog analysis. Every morning the workflow reads yesterday’s conversations by session ID and writes to a spreadsheet: the bot’s mistakes, the customer’s actual problem, and patterns that worked. An AI_Analyzed_At marker guarantees no dialog is analyzed (or paid for) twice.

WF3 — a weekly CEO report. Every Friday, funnel metrics are computed by code — totals, new leads, stage breakdown, average score — and the LLM only interprets them: bottlenecks, per-manager tasks, recommendations of the week. Delivered to Telegram.

The loop closes: WF2’s analysis fed a prompt revision that raised the average score of leads with objections from 4 to 7 — the system collects the data for its own improvement.

Architecture

The diagram above matches the running workflows — storefront chat (web + voice) → AI agent with three tools (live prices, RAG knowledge, CRM lead creation) → Zoho, with the nightly analysis loop feeding prompt updates back.

Hard lessons that shaped it

  • A rule in the prompt does not guarantee a tool call. In testing, the model once answered product questions from memory — inventing items with fake URLs — despite a direct ban. The fix was threefold: a model chosen specifically for reliable tool calling, a rule that nothing can be named that isn’t in the tool’s response, and a self-check pass on the answer.
  • “I’ve passed this to a manager” is only allowed after the tool was actually called. Anti-hallucination rules like this came from tests, not theory.
  • Analytics agents never do arithmetic. Code counts; the LLM interprets. Every number in the CEO report is computed deterministically.

Results

Metrics are measured in test runs on the live stand — this is a demo build, not a client testimonial.

Metric Before After
Response to a visitor none (form / email) ~5–10 s, 24/7
Wholesale lead qualification manual, no criteria automatic BANT + score 1–10 in CRM
Price accuracy in the bot static text, goes stale live from the store on every question
Score of leads with objections 4 (“empty” lead) 7 (BANT completed through follow-ups) — +75%
Leads without a phone number lost email fallback → lead still lands in CRM
Dialog quality analysis none daily, in Sheets, no repeat spend
Executive reporting none weekly Telegram report: metrics + recommendations

Try it yourself

The stand is live at shop.mahinko.com — the chat runs in demo mode behind a temporary access code (so crawlers don’t burn the LLM budget; the code is checked server-side with brute-force protection). Ping me on Telegram and I’ll send you a fresh code.

contact

Have a process that eats your team's hours?

Describe it in a couple of sentences — I'll reply with an automation plan: what to build, what it touches, and what it will save.

telegram@shuriken_86mailtomahinko86@gmail.com

responseusually within one working day

// this form runs on my own n8n — a person replies, not an autoresponder