Company

Customer Email Reply Automation

A system that collects, classifies and answers customer appeal emails — cutting working time in half

Period | 2026.03 ~ 2026.05

  • #Python
  • #Zendesk API
  • #Slack API
  • #SQLite
  • #Rule Engine

Customer appeal emails that took 7 hours a week to handle by hand

Problem

  • Cancellation-related inquiries grew about 12x, from 15 to 180 per week on average
  • Agents repeated the same manual loop — look up the customer in EOC → check action history → pick a template → reply
  • Warning history was scattered across several systems, making every check slow

My Role

  • Designed and built an email automation pipeline flowing Zendesk → EOC → Rule Engine → Slack → Zendesk
  • Modularized complex abuse policies and customer states into a single rule-based classifier to standardize operational decisions
  • Designed a human-in-the-loop review step (approve · edit · reject) with a Slack bot
  • Stored per-customer reply history in SQLite to automate template matching by reply count

Result

  • Automated the repetitive email workflow from lookup to reply, cutting working time by about 50%
  • Improved accuracy and stability by feeding edge cases found in operation back into the rules

Technical Decisions

  • Rule-based classifier for decisions

    Modularized complex abuse policies and customer states into one classifier so the same input always yields the same decision

  • Human-in-the-loop approval in Slack

    Replies go straight to customers, so agents approve, edit or reject before anything is sent

Running in Production

  • Per-customer reply history in SQLite drives template matching and prevents duplicate sends
  • Unit and E2E tests; edge cases found in operation are fed back into the rules
Pipeline — Zendesk · EOC API · Rule-based Classifier · Template Matcher · Slack Bot · SQLite
Pipeline — Zendesk · EOC API · Rule-based Classifier · Template Matcher · Slack Bot · SQLite