Commerce & ops ↗
Collections sequence
An overdue invoice → a ready-to-send collection sequence, escalating at the right pace and tone for how late it is.
POST /v1/dunning$0.08/sequence · 8 credits, charged only on success
Send this
{
"invoice": {
"number": "INV-10428",
"amount": 1255.5,
"dueDate": "2026-06-15",
"daysOverdue": 23
},
"customer": {
"name": "Northwind Coffee",
"history": "Usually pays on time; second late invoice this year."
},
"steps": 3
}Every response carries usage — the credits burned and your remaining balance. A failed call never burns credits.
Try it live against your own key in the interactive reference; every account gets 500 free credits a month, no card.
Get this back
{
"sequence": [
{
"day": 0,
"channel": "email",
"subject": "Invoice INV-10428 — friendly nudge",
"message": "Hi Northwind team…"
},
{
"day": 7,
"channel": "email",
"subject": "Invoice INV-10428 is 30 days past due",
"message": "…"
}
],
"escalationAdvice": "If unpaid after step 3, move to a payment plan offer before collections — history suggests goodwill.",
"usage": {
"credits": 8,
"balanceRemaining": 347
}
}Four ways in. Same $0.08/sequence.
curl
curl https://api.kynth.studio/v1/dunning \
-H "Authorization: Bearer ksk_live_…" \
-H "Content-Type: application/json" \
-d '{"invoice":{"number":"INV-10428","amount":1255.5,"dueDate":"2026-06-15","daysOverdue":23},"customer":{"name":"Northwind Coffee","history":"Usually pays on time; second late invoice this year."},"steps":3}'TypeScript
import { KynthCore } from "@kynth/api";
const kynth = new KynthCore({ apiKey: process.env.KYNTH_API_KEY! });
const result = await kynth.dunning({
"invoice": {
"number": "INV-10428",
"amount": 1255.5,
"dueDate": "2026-06-15",
"daysOverdue": 23
},
"customer": {
"name": "Northwind Coffee",
"history": "Usually pays on time; second late invoice this year."
},
"steps": 3
});Python
from kynth import Kynth
client = Kynth(api_key=os.environ["KYNTH_API_KEY"])
result = client.dunning(
invoice={
"number": "INV-10428",
"amount": 1255.5,
"dueDate": "2026-06-15",
"daysOverdue": 23
},
customer={
"name": "Northwind Coffee",
"history": "Usually pays on time; second late invoice this year."
},
steps=3,
)MCP
// One-time setup in your MCP client (Claude, Cursor, …):
{ "mcpServers": { "kynth-core": {
"command": "npx", "args": ["@kynth/api-mcp"],
"env": { "KYNTH_API_KEY": "ksk_live_…" } } } }
// Then the agent just calls the kynth_dunning tool.More from commerce & ops
Chargeback representment
$0.15/dispute
Dispute details → a representment narrative, an evidence checklist, the right reason code, and a win-likelihood.
3-way match
$0.10/match
Invoice vs purchase order vs receipt → matched, partial, or mismatched, with every discrepancy flagged and sized.
Quote builder
$0.08/quote
A job description plus your rates → an itemized, professional quote with assumptions and scope notes spelled out.