Chargeback Agent
Merchants lose billions to chargebacks every year — not because the transactions were fraudulent, but because building a winning dispute response is slow, manual, and easy to deprioritize.
Core trick
A webhook triggers a CrewAI pipeline that pulls transaction and IP data and drafts a chargeback evidence package.
Description
Merchants lose billions to chargebacks every year — not because the transactions were fraudulent, but because building a winning dispute response is slow, manual, and easy to deprioritize. Most merchants never respond at all.
Chargeback Agent automates the entire dispute process. When a chargeback arrives, it immediately pulls transaction data, customer history, and IP intelligence from your database, writes a professional dispute narrative with AI, and delivers a complete evidence package to your payment processor — no human required.
README excerpt
# Chargeback Agent
Merchants lose billions to chargebacks every year — not because the transactions were fraudulent, but because building a winning dispute response is slow, manual, and easy to deprioritize. Most merchants never respond at all.
**Chargeback Agent** automates the entire dispute process. When a chargeback arrives, it immediately pulls transaction data, customer history, and IP intelligence from your database, writes a professional dispute narrative with AI, and delivers a complete evidence package to your payment processor — no human required.
---
## How it works
```
Chargeback webhook ──or── Dashboard "Run Dispute" button
↓
CrewAI pipeline
┌─────────────────────────────────────────────────────┐
│ 1. Data Agent → TiDB Serverless │ purchase history, IP logs, billing details
│ 2. Enrichment Agent → Skyfire → ipinfo.io │ geolocation, ISP, IP transaction cross-ref
│ 3. Analyst Agent → Groq (gpt-oss-120b) │ dispute narrative tailored to reason code
│ 4. Coordinator → compiles all │ structured evidence package
└─────────────────────────────────────────────────────┘
↓
PDF evidence package (ReportLab)
↓
Composio → Gmail / Stripe Disputes API
↓
TiDB record updated (status, PDF path, timestamp)
```
The whole pipeline runs as a background task. Your webhook endpoint returns 202 immediately.
---
## Dashboard
Open `http://localhost:8000` after star