Browse documentation

Endpoint

Supplier discounts you are probably leaving on the table

Sums early-pay discounts already in your AP file and translates them into recoverable dollars plus AP clerk time to capture them.

Quantify supplier early-pay discounts you can still capture—and the AP effort to go get them.

POST /api/v1/early-payment-discount-leak

Try in playground

What it returns

Discounts suppliers already offered that finance rarely captures — dollars and AP clerk hours to reclaim them.

Structured fields: invoices_with_discount_terms, discounts_on_table_minor, estimated_recoverable_minor, assumed_capture_rate_pct, ap_clerk_hours_to_capture_estimate, methodology_note

Extra envelope blocks: payables.items[].discount_minor recommended

Responses always include a template-generated narrative string alongside structured — safe to show to non-technical stakeholders when you need a spoken summary.

Response shape

Every successful response includes the same top-level keys: endpoint, account_id, processing (ephemeral mode + note), structured, and narrative.

Structured subfields for this route: invoices_with_discount_terms, discounts_on_table_minor, estimated_recoverable_minor, assumed_capture_rate_pct, ap_clerk_hours_to_capture_estimate, methodology_note

Minimal example

{
  "endpoint": "early-payment-discount-leak",
  "account_id": "acct_demo_001",
  "processing": {
    "mode": "ephemeral",
    "note": "Cashytics processes this request in memory only. Your payload is not stored as a ledger of record after the response is sent."
  },
  "structured": {
    "invoices_with_discount_terms": 3,
    "discounts_on_table_minor": 12000,
    "estimated_recoverable_minor": 8640,
    "assumed_capture_rate_pct": 72,
    "ap_clerk_hours_to_capture_estimate": 2,
    "methodology_note": "Assumes most posted discounts are still collectible with tighter pay scheduling — validate against supplier terms."
  },
  "narrative": "Early-pay discount capture\nInvoices with discount terms: 3\nDiscounts on table (minor units): 12000\nEstimated recoverable (minor units): 8640\n\nThis narrative is generated from structured signals using fixed templates."
}

Minimal curl

curl -sS -X POST "https://api.cashytics.com/api/v1/early-payment-discount-leak" \
  -H "Authorization: Bearer cyt_live_YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d @envelope.json

Use the same envelope.json for every endpoint — add optional blocks when this route requires them.

← All endpoints