Skip to content

API reference

Disputes

Account-level dispute list (open and closed) across the caller's payments.

List disputes on the authenticated wallet's payments (open and closed)

GET /disputes

Bearer JWT (Sign-In With Ethereum)

Query parameters

  • page integer

    1-based page number.

  • per_page integer

    Items per page (capped at 100).

  • sort string

    Comma-separated sort fields; prefix with - for descending (e.g. -created_at,status). An unsupported field is rejected with 422 invalid_sort, whose detail names the allowed set — it is never silently dropped.

  • status string

    Filter by dispute status.

    One of: open, closed

Responses

  • 200 Disputes (open and closed) on the caller's payments (as payer or payee).
  • 401 Authentication failed.
Terminal window
curl "https://api.rail0.xyz/disputes" \
-H "Authorization: Bearer $RAIL0_TOKEN"
Response 200
[
{
"id": "5f0c2b1e-8d4a-4f6e-9a7b-2c3d4e5f6a7b",
"payment_id": "5f0c2b1e-8d4a-4f6e-9a7b-2c3d4e5f6a7b",
"status": "open",
"reason": "string",
"reason_code": "not_received",
"reason_description": "string",
"opened_block": null,
"opened_at": "2026-10-01T12:00:00Z",
"closed_by": "payer",
"close_reason": null,
"close_reason_code": "resolved_with_merchant",
"close_reason_description": null,
"closed_block": null,
"closed_at": null,
"payment": {
"id": "5f0c2b1e-8d4a-4f6e-9a7b-2c3d4e5f6a7b",
"contract_id": "0f1e2d3c-4b5a-4968-8776-655443322110",
"chain_id": 84532,
"rail0_id": "0x9c2f0d4e7b1a3c5e8f6d2b4a1c3e5f7d9b0a2c4e6f8d1b3a5c7e9f0d2b4a6c8e",
"status": "authorized",
"mode": "authorize",
"amount": "10500000",
"capturable_amount": "10500000",
"refundable_amount": "10500000",
"config_hash": "0x4e3a3754410177e6937ef1f84bba68ea139e8d1a2258c5f85db9f1cd715a1bdd",
"payer": "0x8ba1f109551bD432803012645Ac136ddd64DBA72",
"payee": "0x71C7656EC7ab88b098defB751B7401B5f6d8976F",
"token": "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
"decimals": 6,
"authorization_expiry": 1791633600,
"refund_expiry": 1794225600,
"escrow_stranded": false,
"escrow_returnable_at": null,
"disputed": false,
"in_flight": false,
"last_error_code": null,
"last_error_message": null,
"description": "Order #1042",
"metadata": {
"order_id": "ord_1042"
},
"signed_at": null,
"created_at": "2026-10-01T12:00:00Z",
"updated_at": "2026-10-01T12:00:00Z"
}
}
]