Disputes

Lists the shop's payment disputes. Requires the Scale plan.

get/v1/shops/{shopId}/disputes

Request

Request body

pageinteger nullable

Page number.

perPageinteger nullable

Items per page, 1-100. Must be at least 1. Must not be greater than 100.

statusesstring[]
reasonsstring[]

Must not be greater than 40 characters.

gatewaysstring[]

Must not be greater than 50 characters.

due'24h' | '72h' | '7d' nullable

Only disputes needing a response within 24h, 72h or 7d.

searchstring nullable

Buyer email, invoice ID or dispute ID. Must not be greater than 191 characters.

opened_at_startstring nullable

Must be a valid date.

opened_at_endstring nullable

Must be a valid date. Must be a date after <code>opened_at_start</code>.

closed_at_startstring nullable

Must be a valid date.

closed_at_endstring nullable

Must be a valid date. Must be a date after <code>closed_at_start</code>.

orderColumn'id' | 'opened_at' | 'evidence_due_at' | 'amount_usd' nullable
orderDirection'asc' | 'desc' nullable
warningsboolean nullable

List Stripe early fraud warnings instead of disputes.

Example request

{
  "page": 1
}

Response

current_pageinteger
first_page_urlstring
frominteger
last_pageinteger
last_page_urlstring
next_page_urlstring nullable
pathstring
per_pageinteger
prev_page_urlstring nullable
tointeger
totalinteger

Example response

{
  "current_page": 1,
  "data": [
    {
      "id": 1,
      "shop_id": 1,
      "invoice_id": 1,
      "payment_id": null,
      "payment_method_id": null,
      "gateway": "STRIPE",
      "gateway_dispute_id": "du_1QExampleDispute",
      "gateway_payment_ref": "pi_3QExamplePaymentIntent",
      "stage": "chargeback",
      "status": "needs_response",
      "is_final": false,
      "funds_status": "withdrawn",
      "reason": "fraudulent",
      "contestable": true,
      "gateway_status": "needs_response",
      "gateway_substatus": null,
      "gateway_reason": "fraudulent",
      "network_reason_code": "10.4",
      "card_brand": "visa",
      "amount": "14.99",
      "currency": "USD",
      "amount_usd": "14.99",
      "fee": "15.00",
      "fee_currency": "USD",
      "fee_usd": "15.00",
      "is_partial": false,
      "evidence_due_at": "2026-11-03T20:00:52.000000Z",
      "opened_at": "2026-11-01T20:00:52.000000Z",
      "responded_at": null,
      "closed_at": null,
      "gateway_updated_at": "2026-11-01T20:00:52.000000Z",
      "gateway_version": null,
      "fetched": true,
      "invoice_status_before": null,
      "invoice_flipped_at": null,
      "livemode": true,
      "created_at": "2026-11-01T20:00:52.000000Z",
      "updated_at": "2026-11-01T20:00:52.000000Z",
      "invoice": {
        "id": 1,
        "salt": "667e99ffee7e5",
        "email": "customer@sellauth.test",
        "price": "14.99",
        "currency": "USD",
        "status": "completed",
        "gateway": "STRIPE",
        "unique_id": "667e99ffee7e5-0000000000001"
      }
    }
  ],
  "first_page_url": "http://api.sellauth.test/v1/shops/1/disputes?page=1",
  "from": 1,
  "last_page": 1,
  "last_page_url": "http://api.sellauth.test/v1/shops/1/disputes?page=1",
  "links": [
    {
      "url": null,
      "label": "&laquo; Previous",
      "page": null,
      "active": false
    },
    {
      "url": "http://api.sellauth.test/v1/shops/1/disputes?page=1",
      "label": "1",
      "page": 1,
      "active": true
    },
    {
      "url": null,
      "label": "Next &raquo;",
      "page": null,
      "active": false
    }
  ],
  "next_page_url": null,
  "path": "http://api.sellauth.test/v1/shops/1/disputes",
  "per_page": 20,
  "prev_page_url": null,
  "to": 1,
  "total": 1
}

Changes

    • breaking

      request property / was restricted to a list of enum values

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property became nullable for the status

    • breaking

      the response property became nullable for the status

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      the request property became nullable

    • info

      added the new accepted enum value to the request property /

    • info

      added the new canceled enum value to the request property /

    • info

      added the new closed enum value to the request property /

    • info

      added the new expired enum value to the request property /

    • info

      added the new lost enum value to the request property /

    • info

      added the new needs_response enum value to the request property /

    • info

      added the new prevented enum value to the request property /

    • info

      added the new under_review enum value to the request property /

    • info

      added the new won enum value to the request property /

    • info

      added the optional property // to the response with the status

    • info

      endpoint added