Receive and parse the CHARGEBACK or CHARGEBACK_REVERSED webhook notification from Adyen; extract the disputePspReference from the notification body — this is the only source of the dispute reference
POST to /retrieveApplicableDefenseReasons with the disputePspReference and merchantAccountCode to obtain the list of valid defenseReasonCodes for this dispute type
For each required document, POST to /supplyDefenseDocument with the disputePspReference, defenseReasonCode, and the base64-encoded document content plus MIME type
Once all evidence is uploaded, POST to /defendDispute with the disputePspReference and the chosen defenseReasonCode to formally submit the defense to the scheme
Monitor subsequent webhook notifications (DEFENSE_SUBMITTED, WON, LOST) to track the outcome of the dispute
Known gotchas
The Disputes API is an RPC dispatcher — all operations are POST requests to named operation endpoints; there is NO REST sub-resource path and NO endpoint to list or filter disputes by status
disputePspReference is provided exclusively in the inbound webhook notification payload; you cannot retrieve it by querying a list endpoint
Defense deadlines are tight (often 7-18 days depending on scheme); call /retrieveApplicableDefenseReasons immediately on receiving the webhook to check the deadline field and avoid missing the window
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp