Initial import of zappier-customer-service from zapier monorepo

This commit is contained in:
George Lambert 2026-09-11 19:00:51 -04:00
commit 741683ff49
11 changed files with 540 additions and 0 deletions

24
README.md Normal file
View file

@ -0,0 +1,24 @@
# zappier-customer-service
Department API for **customer-service credit additions** and **review** of credits, balances, usage, and payments. Internally uses **NATS** `verae.billing.*` (account-balance). HTTP fallback to account-balance then zappier-edge.
**Forgejo:** https://git.georgelambert.org/marchon/zappier-customer-service
**Catalog:** https://zapier.georgelambert.org/packages/zappier-customer-service/README.pdf
**Plugs into:** zappier-edge admin (`x-admin-key`) at `ZAPPIER_ADMIN_URL` (default `http://127.0.0.1:3000`).
```bash
PORT=3011 ZAPPIER_ADMIN_URL=http://127.0.0.1:3000 node src/server.js
curl -X POST http://127.0.0.1:3011/credits -H 'content-type: application/json' \
-d '{"customerId":"cust_1","cents":500,"reason":"goodwill","agent":"cs-anna"}'
```
| Route | Job |
|-------|-----|
| `GET /` | Staff review UI (typeahead names). `STAFF_AUTH=1` redirects to `verae-staff-session`. |
| `GET /customers` | `{ customers }` from zappier-edge |
| `GET /health` | `{ ok, role }` |
| `POST /credits` | Add/subtract prepaid cents (NATS `balance.adjust`) |
| `GET /credits?customerId=` | Ledger |
| `GET /review/:customerId` | Full statement (balance, credits, usage, payments) |
Talks to NATS `verae.billing.*` internally. Never talks to Zapier cloud.