Skip to main content

End-to-end
dispute management

Built for card issuers. Embed our hosted intake and get back an evaluated dispute with a confidence score, proposed reason code, and the specific gaps weakening the case before you submit to the scheme.

terminal
$curl -X POST https://api.disputes.sandbox.tripledev.app/api/intake/sessions/ \
-H "Authorization: Bearer $API_KEY"
Response200 OK
{
"id": "is_a1b2c3",
"url": "https://intake.triple.app/s/is_a1b2c3",
"expires_at": "2026-04-23T16:30:00Z"
}
// embed the returned url in your app
<iframe src="https://intake.triple.app/s/is_a1b2c3" />
// Triple classifies, gathers evidence,
// and returns an evaluation.
$

Why Triple?

Purpose-built for card issuers who want to maximize dispute success rates

Hosted intake

Embed our smart form or chatbot in an iframe. Triple collects the cardholder statement and supporting evidence and hands you back a case ID.

Automatic classification

Triple classifies every dispute internally. Issuers do not pick a category and do not map their own reason codes to ours. The right category appears on the evaluation result.

Evaluation with reason codes

Confidence score, proposed card-network reason code, and the specific gaps weakening the case. Returned before you submit to the scheme.

Simple integration

One iframe for intake. One REST endpoint if you already have structured data. Webhooks for everything that happens after.

One result, whichever path you take

Whether the dispute came in through our hosted intake or a direct call to /evaluations/, the same evaluation result is waiting for you.

  • Embeddable intake (iframe)
  • Automatic dispute classification
  • Proposed card-network reason codes
  • Webhook notifications
View API Reference
Evaluation resultjson
{
  "id": "eval_a1b2c3d4",
  "category": "fraud",
  "confidence": "high",
  "reason_code": "4837",
  "failed_checks": []
}

Ready to get started?

Explore our documentation and start integrating Triple today.