P1
● Live Demo
Project 1 of 5
AI Automation
Conversational AI

AI Customer Support Agent — End-to-End Pipeline

A Claude-powered support bot for NovaMart (fictional e-commerce) that handles 24/7 Tier-1 queries and automatically routes escalations — refunds, complaints, damaged items, missing orders, and human requests — to Slack, Google Sheets, and Gmail in under 5 seconds via n8n.

Built with
Claude API
n8n
Netlify Functions
Vanilla JS
Slack
Google Sheets
Gmail

What this solves

The real business problem

E-commerce support teams waste agent time on Tier-1 queries, miss escalations, and have no audit trail. This project automates the entire first-response layer.

The problem

Manual support is slow, inconsistent, and expensive — especially after hours.

  • Repetitive “where’s my order” queries consuming agent time
  • Zero after-hours coverage without expensive overnight staffing
  • No consistent escalation triage — things fall through the cracks
  • Support conversations never logged to a central system
  • Customers asking for a human left waiting without acknowledgment

The solution

Three automation layers — chat widget, Netlify proxy with escalation parser, and an n8n routing workflow.

  • Claude handles Tier-1 queries 24/7 with a custom persona and knowledge base
  • Structured JSON escalation signals parsed server-side — invisible to the customer
  • n8n routes each signal to the right tool in under 5 seconds
  • Every escalation logged to Google Sheets for audit and follow-up
  • Reusable architecture — swap the knowledge base for any business

How it works

Three-layer architecture

Every layer has a single responsibility. The customer never sees the automation — only the clean reply from Nova.

Customer
Chat widget
Types a message → POST to Netlify with conversation history
AI layer
Netlify Function

Claude API
System prompt + knowledge base → reply + JSON signal
Parsing
Netlify strips signal

Clean reply → widget
escalate: true → n8n
Automation
n8n Switch

Slack #support
Google Sheets
Gmail confirm

Escalation signal format — Claude appends this to its reply

// Customer-facing reply (what Nova says)
I'm sorry to hear your order hasn't arrived. Let me help you sort this out...

// Hidden signal — Netlify strips this before it reaches the widget
{
  "escalate": true,
  "reason": "MISSING_ORDER",
  "summary": "Customer reports order #4821 not arrived after 8 days"
}

Escalation routing

5 triggers, 3 tools, zero manual triage

Claude detects intent, appends a typed escalation signal, and n8n routes it to the right tool automatically.

Customer says Claude detects n8n fires Outcome
“I want to speak to a human” HUMAN_REQUEST Slack #support — immediately Support team pinged in real time with session ID
“This is unacceptable” / angry COMPLAINT Slack alert + Sheets log (parallel) Team notified, conversation logged for follow-up
“I want a refund” REFUND_REQUEST Google Sheets ticket + Gmail confirm Ticket created, customer acknowledged via email
“This arrived broken / damaged” DAMAGED_ITEM Google Sheets ticket + Gmail confirm Damage claim logged, customer gets email receipt
“My order never arrived” MISSING_ORDER Google Sheets ticket + Gmail confirm Missing order ticket created, customer acknowledged

n8n workflow

NovaMart Support — Escalation Pipeline

7-node workflow. Webhook trigger → Switch routing → parallel execution → 200 OK response.

Webhook

POST /novamart-support

Switch

Route on reason

HUMAN_REQUEST
Slack #support
COMPLAINT
Slack
Sheets log
REFUND_REQUEST
Sheets log
Gmail
DAMAGED_ITEM
Sheets log
Gmail
MISSING_ORDER
Sheets log
Gmail

Respond

200 OK

* COMPLAINT branch fires Slack and Sheets in parallel — keeps execution under 5 seconds

Skills demonstrated

What this project proves

Two distinct high-value skills in one project — conversational AI integration and business process automation. The combination is what businesses actually pay for.

PE

Prompt Engineering

Persona definition, knowledge base injection, structured output as an inline signal, and five named escalation conditions — all in a single system prompt.

n8n

n8n Workflow Automation

Webhook trigger, Switch routing across 5 branches, parallel execution, and three downstream integrations — all in one exportable workflow.

λ

Serverless Architecture

Netlify function as a secure API proxy — CORS handling, API key protection, escalation signal parsing, and conditional n8n dispatch in one file.

JS

Embeddable Widget

Self-contained vanilla JS widget deployable via a single script tag. Conversation history maintained across turns. Preset chips for immediate testing.

Full-Stack Integration

Frontend → Claude API → n8n → Slack/Sheets/Gmail. Each layer has one responsibility. The live demo panel proves it fires in real time.

Results

Measured against real success criteria.

90%+
Query accuracy across all 5 NovaMart product categories
<5s
Slack alert and Sheets log fire after escalation triggers
5
Escalation types detected and routed — zero false positives in testing
<2s
Widget load time on portfolio page
0
API key exposure — key never appears in client-side code
3
Business tools integrated via a single n8n workflow

Reusability

Built as a replicable template

Replace the NovaMart knowledge base with any business’s policies and products — the escalation signal format, n8n routing, and deployment pattern stay the same.

E-commerce stores

24/7 first-response without overnight staffing. Escalate refunds and complaints to the right channel automatically.

SaaS companies

Deflect Tier-1 tickets so engineers only see genuine escalations — billing issues and cancellation intent routed to CS.

Clinics & services

Answer appointment and pricing questions after hours. Escalate sensitive matters to the right team member.

HR & people ops

Answer policy and benefits questions. Route sensitive HR matters away from the general inbox automatically.

● Live now

See the automation fire in real time

Open Nova in the demo, trigger an escalation, and watch the live panel update — Slack alert, Sheets log, and Gmail confirmation within 5 seconds.

↗ Open live demo