Endpoints

Commerce & ops

Disputes, collections, quotes, and fraud — handled.

Chargeback representment

POST /v1/chargeback$0.15/dispute

Dispute details → a representment narrative, an evidence checklist, the right reason code, and a win-likelihood.

curl https://api.kynth.studio/v1/chargeback \
  -H "Authorization: Bearer $KYNTH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"reason":"Cardholder claims product never arrived","transaction":{"amount":129,"currency":"USD","date":"2026-06-12","descriptor":"ACME STORE"},"evidence":["Tracking shows delivered 2026-06-15","Signed at door"],"network":"visa"}'
Example response
200 OK
{
  "reasonCategory": "product_not_received",
  "recommendedAction": "fight",
  "narrative": "The cardholder disputes non-receipt; however carrier tracking…",
  "evidenceChecklist": [
    {
      "item": "Carrier tracking with delivery confirmation",
      "have": true
    }
  ],
  "winLikelihood": 0.82,
  "rationale": "Delivery confirmation directly rebuts non-receipt.",
  "usage": {
    "credits": 15,
    "balanceRemaining": 449
  }
}

Full parameters in the reference → · Product page

Collections sequence

POST /v1/dunning$0.08/sequence

An overdue invoice → a ready-to-send collection sequence, escalating at the right pace and tone for how late it is.

curl https://api.kynth.studio/v1/dunning \
  -H "Authorization: Bearer $KYNTH_API_KEY" \
  -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}'
Example response
200 OK
{
  "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
  }
}

Full parameters in the reference → · Product page

3-way match

POST /v1/po-match$0.10/match

Invoice vs purchase order vs receipt → matched, partial, or mismatched, with every discrepancy flagged and sized.

curl https://api.kynth.studio/v1/po-match \
  -H "Authorization: Bearer $KYNTH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"invoice":"{…/v1/invoice output…}","purchaseOrder":"PO-88: 12x Widget A @ $95, ship to Columbus","receipt":"GRN: 12 Widget A received 2026-06-28"}'
Example response
200 OK
{
  "status": "partial",
  "discrepancies": [
    {
      "field": "unitPrice",
      "invoice": "$100.00",
      "purchaseOrder": "$95.00",
      "receipt": null,
      "severity": "high",
      "note": "5.3% over PO price — beyond 2% tolerance."
    }
  ],
  "recommendation": "hold — quantities match but unit price exceeds the PO; request a corrected invoice.",
  "usage": {
    "credits": 10,
    "balanceRemaining": 337
  }
}

Full parameters in the reference → · Product page

Quote builder

POST /v1/quote$0.08/quote

A job description plus your rates → an itemized, professional quote with assumptions and scope notes spelled out.

curl https://api.kynth.studio/v1/quote \
  -H "Authorization: Bearer $KYNTH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"job":"Repaint a 2-bedroom apartment, walls + trim, tenant moves in Aug 1","rates":"$65/hr labor, materials at cost +10%"}'
Example response
200 OK
{
  "lineItems": [
    {
      "description": "Prep + painting labor (2BR walls & trim)",
      "quantity": 26,
      "unitPrice": 65,
      "amount": 1690
    },
    {
      "description": "Paint & materials (est.)",
      "quantity": null,
      "unitPrice": null,
      "amount": 420
    }
  ],
  "subtotal": 2110,
  "tax": null,
  "total": 2110,
  "currency": "USD",
  "assumptions": [
    "Standard 8-ft ceilings",
    "Two coats",
    "Unit empty during work"
  ],
  "scopeNotes": "Ceilings and cabinet interiors excluded.",
  "usage": {
    "credits": 8,
    "balanceRemaining": 329
  }
}

Full parameters in the reference → · Product page

Fraud triage

POST /v1/fraud-flag$0.06/check

An order or transaction in context → a risk score, the signals driving it, and the checks worth running before you ship.

curl https://api.kynth.studio/v1/fraud-flag \
  -H "Authorization: Bearer $KYNTH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"order":{"amount":950,"email":"qq1998x@tempmail.dev","shippingCity":"Miami","billingCity":"Portland","ip":"203.0.113.9","accountAgeDays":0,"expedited":true}}'
Example response
200 OK
{
  "riskScore": 0.82,
  "riskLevel": "high",
  "signals": [
    {
      "signal": "Disposable email domain",
      "weight": "high",
      "note": "tempmail.dev is a throwaway provider."
    },
    {
      "signal": "Billing/shipping mismatch + rush shipping",
      "weight": "medium",
      "note": "Classic resale pattern on a new account."
    }
  ],
  "recommendedChecks": [
    "3DS challenge",
    "Verify phone",
    "Match IP geolocation to billing"
  ],
  "recommendation": "review",
  "usage": {
    "credits": 6,
    "balanceRemaining": 323
  }
}

Full parameters in the reference → · Product page