---
title: "Create Dispute"
method: POST
path: "/cards/disputes"
---

# Create Dispute

`POST /cards/disputes`

Creates a dispute for a specific transaction.

## Request body

- object
  - `transactionId` string, required — The `_id` of the transaction the dispute is for.
  - `reason` 'not_received' | 'fraudulent' | 'duplicate' | 'product_not_as_described' | 'service_not_as_described' | 'canceled' | 'other', required — The reason for the dispute.
  - `explanation` string, required — More details on the dispute.
  - `metadata` string, json — The key-value pair you wish to attach to the dispute object.

## Response `201`

Dispute created successfully.

- object
  - `statusCode` integer — Status code of the response. `200` indicates a successful request.
  - `message` string — Human-readable description of the result.
  - `data` object — Response payload.
    - `_id` string — Unique identifier of the object.
    - `business` string — Identifier of the business that owns this object.
    - `transaction` string — Identifier of the transaction.
    - `reason` string — Reason for the dispute.
    - `explanation` string — Additional explanation supplied with the dispute.
    - `status` string — Current status of the object.
    - `metadata` object — Arbitrary key-value pairs attached to the object.
    - `createdAt` string, date-time — ISO 8601 timestamp of when the object was created.
    - `updatedAt` string, date-time — ISO 8601 timestamp of when the object was last updated.
    - `__v` integer — Internal document version (Mongo).

## Other responses

- `400` — Validation error.
- `401` — Authentication failed — missing or invalid API key.

---

[API](https://skmtc.net/sudo/apis/sudo-sandbox-api.md) · [All operations](https://skmtc.net/sudo/apis/sudo-sandbox-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sudo/sudo-sandbox-api/versions/52be624fcb53/schema)
