Fernwood Retail
A retrieval-augmented support assistant that deflected 42% of inbound tickets.

Industry
Retail & E-commerce
Timeline
8 weeks
Team
2 engineers
Category
AI Chatbot
Where things stood
Fernwood's support team was buried in repetitive order-status and return-policy tickets that didn't need a human, but their existing chatbot gave generic answers because it wasn't actually connected to their order data.
How we got there
RAG over live data
Built a retrieval layer over Fernwood's order, inventory, and policy data so answers reflect what's actually true right now, not a static FAQ.
Escalation guardrails
Defined clear conditions for handing off to a human — refunds above a threshold, anything policy-ambiguous — instead of letting the model guess.
Ticket-log evaluation
Tested against three months of real historical tickets before launch to measure deflection rate ahead of time, not after go-live.
What changed
42%
Inbound tickets deflected
<10s
Average response time, down from ~6 hours
92%
Customer satisfaction on deflected tickets
Tech stack
Claude API
Generates support responses grounded in retrieved order and policy data, not memorized training data.
RAG
Retrieves the specific order, inventory, or policy record a question is actually about before the model answers.
Node.js
Orchestrates retrieval, escalation rules, and the handoff-to-human logic.
PostgreSQL + pgvector
Stores order and policy data alongside embeddings for retrieval, without a separate vector database to keep in sync.
Next.js
Powers the support widget and the internal dashboard for reviewing flagged conversations.
Zendesk API
Hands off escalated conversations into the support team's existing Zendesk queue.
“The AI assistant they built now handles nearly half our support volume, and customers genuinely prefer it to waiting on email.”
Priya Nadar
Head of CX, Fernwood Retail


