New Chargeflow docs. Everything for merchants, platforms, and the API in one place.
Log in
Current (2025-04-01)Merchants API

Disputes

Disputes management endpoints

POST
/public/2025-04-01/disputes/{disputeId}/evidence
x-api-key<token>

Your Chargeflow API key, sent on every request. Generate one in the Chargeflow App, or see API keys.

In: header

Path Parameters

disputeId*string

The unique Chargeflow object identifier of the dispute.

Match^[0-9a-fA-F]{24}$

Request Body

multipart/form-data

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/public/2025-04-01/disputes/66e6ea9ecd94925a9f8060d9/evidence" \  -F file="string" \  -F evidenceUploadCategory="invoice"
{  "requestId": "string",  "evidenceId": "string"}
GET
/public/2025-04-01/disputes/{disputeId}
x-api-key<token>

Your Chargeflow API key, sent on every request. Generate one in the Chargeflow App, or see API keys.

In: header

Path Parameters

disputeId*string

The unique Chargeflow object identifier of the dispute.

Match^[0-9a-fA-F]{24}$

Query Parameters

expand?array<>

Available Expansions

Use the expand parameter to include additional resource details in the response.

Available options:

ParameterDescription
transactionFull payment transaction details including amount, currency, payment method and more
orderComplete order details including products, shipping, and fulfillment and more
subscriptionComplete subscription details including plan, frequency, cancellation reason and more
customer_communicationComplete customer communication details including messages, sender, and more

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/public/2025-04-01/disputes/66e6ea9ecd94925a9f8060d9"
{  "id": "66e6ea9ecd94925a9f8060d9",  "source": "stripe",  "source_id": "du_123456789",  "account_id": "66e6ea9ecd94925a9f8060d9",  "ext_account_id": "acc_123456",  "created_at": "2024-02-10T12:00:00Z",  "reason": "fraud",  "due_by": "2024-02-20T12:00:00Z",  "amount": 100,  "currency": "USD",  "status": "needs_response",  "stage": "Chargeback",  "closed_at": "2025-01-27T10:00:00Z",  "transaction": "66e6ea9ecd94925a9f8060d9",  "subscription": "66e6ea9ecd94925a9f8060d9",  "order": "ord_1234567890"}
PATCH
/public/2025-04-01/disputes/{disputeId}
x-api-key<token>

Your Chargeflow API key, sent on every request. Generate one in the Chargeflow App, or see API keys.

In: header

Path Parameters

disputeId*string

The unique Chargeflow object identifier of the dispute.

Match^[0-9a-fA-F]{24}$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/public/2025-04-01/disputes/66e6ea9ecd94925a9f8060d9" \  -H "Content-Type: application/json" \  -d '{    "transaction": {      "source_id": "tx_1234567890",      "created_at": "2024-02-10T12:00:00Z",      "type": "paid",      "amount": 100,      "currency": "USD",      "payment_method": {        "type": "card",        "name": "John Doe",        "last4": "1234",        "expiry_month": 1,        "expiry_year": 2025,        "brand": "visa"      }    }  }'
{  "id": "66e6ea9ecd94925a9f8060d9",  "source": "stripe",  "source_id": "du_123456789",  "account_id": "66e6ea9ecd94925a9f8060d9",  "ext_account_id": "acc_123456",  "created_at": "2024-02-10T12:00:00Z",  "reason": "fraud",  "due_by": "2024-02-20T12:00:00Z",  "amount": 100,  "currency": "USD",  "status": "needs_response",  "stage": "Chargeback",  "closed_at": "2025-01-27T10:00:00Z",  "transaction": "66e6ea9ecd94925a9f8060d9",  "subscription": "66e6ea9ecd94925a9f8060d9",  "order": "ord_1234567890"}
POST
/public/2025-04-01/disputes/{disputeId}/subscription
x-api-key<token>

Your Chargeflow API key, sent on every request. Generate one in the Chargeflow App, or see API keys.

In: header

Path Parameters

disputeId*string

The unique Chargeflow object identifier of the dispute.

Match^[0-9a-fA-F]{24}$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Creates a new Chargeflow subscription.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/public/2025-04-01/disputes/66e6ea9ecd94925a9f8060d9/subscription" \  -H "Content-Type: application/json" \  -d '{    "source_id": "source_sub_1234567890",    "created_at": "2024-02-10T12:00:00Z",    "start_date": "2024-02-10T12:00:00Z",    "frequency": "month",    "frequency_count": 1  }'
{  "id": "66e6ea9ecd94925a9f8060d9",  "source_id": "source_sub_1234567890",  "account_id": "66e6ea9ecd94925a9f8060d9",  "ext_account_id": "acc_123456",  "created_at": "2024-02-10T12:00:00Z",  "updated_at": "2024-02-15T12:00:00Z",  "start_date": "2024-02-10T12:00:00Z",  "end_date": "2024-08-10T12:00:00Z",  "cancellation_date": "2024-07-10T12:00:00Z",  "frequency": "month",  "frequency_count": 1,  "cancellation_reason": "too_expensive",  "collection_method": "automatically",  "trial_start": "2024-02-10T12:00:00Z",  "trial_end": "2024-03-10T12:00:00Z",  "renews_at": "2024-03-10T12:00:00Z",  "plan_name": "Pro Plan",  "pricing_model": "fixed_price",  "status": "active"}
GET
/public/2025-04-01/disputes
x-api-key<token>

Your Chargeflow API key, sent on every request. Generate one in the Chargeflow App, or see API keys.

In: header

Query Parameters

offset?integer

The page number of the current response

Range0 <= value
Default0
limit?integer

The number of disputes per page

Range1 <= value <= 100
Default25

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/public/2025-04-01/disputes?offset=0&limit=10"
{  "disputes": [],  "pagination": {    "totalCount": 0,    "offset": 0,    "limit": 25,    "totalPages": 0  }}
Was this page helpful?