{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/stripe/main/json-schema/stripe-dispute-list-schema.json", "title": "DisputeList", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/stripe-disputes-api-openapi.yml#/components/schemas/DisputeList", "type": "object", "required": [ "data", "has_more", "object", "url" ], "properties": { "data": { "items": { "$ref": "#/$defs/dispute" }, "type": "array" }, "has_more": { "description": "True if this list has another page of items after this one that can be fetched.", "type": "boolean" }, "object": { "description": "String representing the object's type. Objects of the same type share the same value. Always has the value `list`.", "enum": [ "list" ], "type": "string" }, "url": { "description": "The URL where this list can be accessed.", "maxLength": 5000, "pattern": "^/v1/disputes", "type": "string" } }, "$defs": { "dispute": { "description": "A dispute occurs when a customer questions your charge with their card issuer.\nWhen this happens, you have the opportunity to respond to the dispute with\nevidence that shows that the charge is legitimate.\n\nRelated guide: [Disputes and fraud](https://stripe.com/docs/disputes)", "properties": { "amount": { "description": "Disputed amount. Usually the amount of the charge, but it can differ (usually because of currency fluctuation or because only part of the order is disputed).", "type": "integer" }, "balance_transactions": { "description": "List of zero, one, or two balance transactions that show funds withdrawn and reinstated to your Stripe account as a result of this dispute.", "items": { "$ref": "#/$defs/balance_transaction" }, "type": "array" }, "charge": { "anyOf": [ { "maxLength": 5000, "type": "string" }, { "$ref": "#/$defs/charge" } ], "description": "ID of the charge that's disputed.", "x-expansionResources": { "oneOf": [ { "$ref": "#/$defs/charge" } ] } }, "created": { "description": "Time at which the object was created. Measured in seconds since the Unix epoch.", "format": "unix-time", "type": "integer" }, "currency": { "description": "Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).", "type": "string" }, "evidence": { "$ref": "#/$defs/dispute_evidence" }, "evidence_details": { "$ref": "#/$defs/dispute_evidence_details" }, "id": { "description": "Unique identifier for the object.", "maxLength": 5000, "type": "string" }, "is_charge_refundable": { "description": "If true, it's still possible to refund the disputed payment. After the payment has been fully refunded, no further funds are withdrawn from your Stripe account as a result of this dispute.", "type": "boolean" }, "livemode": { "description": "Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.", "type": "boolean" }, "metadata": { "additionalProperties": { "maxLength": 500, "type": "string" }, "description": "Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.", "type": "object" }, "object": { "description": "String representing the object's type. Objects of the same type share the same value.", "enum": [ "dispute" ], "type": "string" }, "payment_intent": { "anyOf": [ { "maxLength": 5000, "type": "string" }, { "$ref": "#/$defs/payment_intent" } ], "description": "ID of the PaymentIntent that's disputed.", "x-expansionResources": { "oneOf": [ { "$ref": "#/$defs/payment_intent" } ] } }, "payment_method_details": { "$ref": "#/$defs/dispute_payment_method_details" }, "reason": { "description": "Reason given by cardholder for dispute. Possible values are `bank_cannot_process`, `check_returned`, `credit_not_processed`, `customer_initiated`, `debit_not_authorized`, `duplicate`, `fraudulent`, `general`, `incorrect_account_details`, `insufficient_funds`, `product_not_received`, `product_unacceptable`, `subscription_canceled`, or `unrecognized`. Learn more about [dispute reasons](https://stripe.com/docs/disputes/categories).", "maxLength": 5000, "type": "string" }, "status": { "description": "Current status of dispute. Possible values are `warning_needs_response`, `warning_under_review`, `warning_closed`, `needs_response`, `under_review`, `won`, or `lost`.", "enum": [ "lost", "needs_response", "under_review", "warning_closed", "warning_needs_response", "warning_under_review", "won" ], "type": "string" } }, "required": [ "amount", "balance_transactions", "charge", "created", "currency", "evidence", "evidence_details", "id", "is_charge_refundable", "livemode", "metadata", "object", "reason", "status" ], "title": "Dispute", "type": "object", "x-expandableFields": [ "balance_transactions", "charge", "evidence", "evidence_details", "payment_intent", "payment_method_details" ], "x-resourceId": "dispute" } } }