Workflow Flow
Stripe Webhook: invoice.payment_failed
↓
n8n Webhook Trigger
↓
Fetch Customer Data (Stripe API)
↓
Check Retry Count (KV or Sheets)
↓
┌─────────┼──────────┐
Day 1 Day 3 Day 7
↓ ↓ ↓
Polite Firm Escalate
Email Email → Slack Alert
→ CRM Flag Nodes Required
| Node | Purpose |
|---|---|
| Webhook | Receives Stripe events |
| HTTP Request | Stripe API — fetch invoice + customer |
| Code | Determine retry count and message tone |
| HTTP Request (Resend) | Send follow-up email |
| Wait | Delay between attempts |
| Slack | Escalation alert after day 3 |
| Google Sheets | Log all payment events |
ROI Calculation
| Before | After |
|---|---|
| 30 min/invoice chasing manually | 0 min human time |
| 40% of overdue invoices forgotten | 100% automatically followed up |
| Revenue leakage from forgotten invoices | Fully captured |
Configuration Variables
STRIPE_SECRET_KEY Your Stripe secret key
STRIPE_WEBHOOK_SECRET Webhook signature verification
RESEND_API_KEY Email delivery
OVERDUE_SLACK_CHANNEL e.g. #finance-alerts