---
title: "Update dispute"
method: PUT
path: "/v1/disputes/{disputeId}"
tags: ["Disputes"]
---

# Update dispute

`PUT /v1/disputes/{disputeId}`

Update one or more dispute fields. Parameters that are not passed are not updated.

**Note:** You can only update a dispute if its group status is `OPEN`, `FAILED`, `DENIED` or `MIGRATION`. Refer to the [Dispute state machine](https://developers.pismo.io/pismo-docs/docs/disputes-state-machine) for more information.

## Path parameters

- `disputeId` number, required

## Request body

- UpdateDisputeRequest
  - `disputed_amount` number — Disputed amount.
  - `currency_code` string — ISO-4217 code for transaction currency. For example, 986 = Brazilian real. **Note:** Only allowed if you are updating a dispute in a Zero balance program.
  - `reason_code` number — Each card network, such as Visa or Mastercard, defines and maintains their own unique set of reason codes, which banks that issue credit and debit cards under their brands apply to disputes. Here's a reason code [quick reference](https://www.chargebackgurus.com/blog/a-definitive-guide-to-chargeback-reason-codes-by-card-network#chargback-reason-code-quick-reference-guide) for the major credit card networks. For Visa, this would be either `10` (fraud - card present), `11` (authorization), `12` (processing error), or `13` (consumer dispute). For more infomation, refer to the [Visa](https://usa.visa.com/dam/VCOM/global/support-legal/documents/chargeback-management-guidelines-for-visa-merchants-vbs-19-may-16-%20v2.pdf) or [Mastercard](https://www.mastercard.us/content/dam/public/mastercardcom/na/global-site/documents/chargeback-guide.pdf) chargeback quides. For example - `4853` (Mastercard - cardholder dispute), `12` (Visa - processing error) or `72` (ELO - denied authorization)
  - `comment` string, nullable — Client custom dispute comment. **REQUIRED** for Visa partial dispute to explain why partial.
  - `first_installment_amount` number — Amount to be updated on first installment chargeback.
  - `stop_automated_installment` boolean — Stop automated dispute installment control. If an issuer opens a dispute for a transaction that has more than one installment, with installments that can still be posted, the issuer will need to open a dispute for subsequent installments as well. With automated dispute installment control, once you open a chargeback for the first installment, the same information can be used for subsequent transaction installments. Default = `false`.
  - `transaction_amount` number — Transaction amount. **Note:** Only allowed if you are updating a dispute in a Zero balance program.
  - `arn` string — Acquirer reference number for first installment **Note:** Only allowed if you are updating a dispute in a Zero balance program.
  - `transaction_date` string — Transaction date. Format = yyyy-mm-dd **Note:** Only allowed if you are updating a dispute in a Zero balance program.

## Response `200`

OK

- DisputeResponse
  - `id` number — Dispute ID
  - `org_id` string — Organization ID
  - `account_id` integer — Account ID
  - `authorization_id` number — Authorization ID.
  - `comment` string, nullable — Client custom dispute comment. **REQUIRED** for Visa partial dispute to explain why partial.
  - `dispute_reason` number — Each card network, such as Visa or Mastercard, defines and maintains their own unique set of reason codes, which banks that issue credit and debit cards under their brands apply to disputes. Here's a reason code [quick reference](https://www.chargebackgurus.com/blog/a-definitive-guide-to-chargeback-reason-codes-by-card-network#chargback-reason-code-quick-reference-guide) for the major credit card networks. For Visa, this would be either `10` (fraud - card present), `11` (authorization), `12` (processing error), or `13` (consumer dispute). For more infomation, refer to the [Visa](https://usa.visa.com/dam/VCOM/global/support-legal/documents/chargeback-management-guidelines-for-visa-merchants-vbs-19-may-16-%20v2.pdf) or [Mastercard](https://www.mastercard.us/content/dam/public/mastercardcom/na/global-site/documents/chargeback-guide.pdf) chargeback quides. For example - `4853` (Mastercard - cardholder dispute), `12` (Visa - processing error) or `72` (ELO - denied authorization)
  - `modality` number — Dispute *modality* - legacy term for reason code to file the dispute.
  - `dispute_status` 'OPENED' | 'PENDING' | 'CANCELED' | 'FAILED' | 'CHARGEBACK_REJECTED' | 'CHARGEBACK_CREATED' | 'CHARGEBACK_ACCEPTED' | 'CHARGEBACK_CLOSED' | 'SECOND_PRESENTMENT' | 'PRE_ARBITRATION_OPENED' | 'PRE_ARBITRATION_ACCEPTED' | 'PRE_ARBITRATION_DECLINED' | 'PRE_ARBITRATION_RECALL' | 'PRE_ARB_ALLOCATION_OPENED' | 'FAILED_PRE_ARBITRATION' | 'PRE_ARB_ALLOCATION_ACCEPTED' | 'PRE_ARB_ALLOCATION_DECLINED' | 'PRE_ARB_ALLOCATION_RECALLED' | 'FAILED_DECLINE_PRE_ARB' | 'FAILED_ACCEPT_PRE_ARB' | 'FAILED_ON_CLOSE' | 'EXPIRED' | 'ISSUER_LOSS' | 'MIGRATION' | 'FAILED_MIGRATION' — Dispute status enums.
  - `dispute_status_group` 'OPEN' | 'APPROVED' | 'DENIED' | 'CARDNETWORK_CHARGEBACK' | 'ANALYSING' | 'CARDNETWORK_SECOND_PRESENTMENT' | 'FAILED' | 'CARDNETWORK_PREARBITRATION' | 'RESEND' | 'LOSS' | 'WON' | 'REJECTED' | 'FAILED_PROCESSED' — Group status enums
  - `created_at` string, date-time — Datetime program calendar strategy was created. Format = YYYY-MM-DDTHH:MM:SS:MM.
  - `updated_at` string, date — Dispute last updated date, format = yyyy-mm-dd.
  - `created_at_utc` string, date-time — Dispute created in UTC date/time.
  - `updated_at_utc` string — When dispute updated in UTC date/time.
  - `timeline` string, nullable — Client custom timeline information.
  - `protocol` string — Client custom protocol ID. This is primarily for you to internally identify a request. If not provided, Pismo creates a CID (correlation ID) field for this purpose.
  - `metadata` string — Any data object with key/value pairs. No limit on length. **Note**: This field must not be used to send Personally Identifiable Information (PII), Payment Card Industry (PCI) data, or any sensitive/regulated information. Metadata fields are intended for operational, non-sensitive data only. For sensitive data, use the specific parameters designed for that purpose. For more information, refer to [Get started with Pismo APIs](https://developers.pismo.io/pismo-docs/reference/get-started-with-pismo-apis#metadata).
  - `disputed_amount` number — Disputed amount.
  - `is_network` boolean — Does dispute have a network authorization?
  - `is_dispute_migrated` boolean — Has this dispute been migrated to the Pismo platform?
  - `reversal_id` number — Event-generated reversal ID
  - `network_return_reason_code` string — Network reason code.
  - `network_brand_type` 'Visa' | 'Mastercard' | 'Elo' — Network brand
  - `transaction_date` string — Transaction date, format = yyyy-mm-dd hh:mm:ss
  - `transaction_amount` number — Transaction amount
  - `currency_code` string — ISO-4217 code for transaction currency. For example, `986` = Brazilian real.

## Other responses

- `400` — Bad request
- `401` — Access token is missing or invalid
- `404` — Not Found
- `422` — Unprocessable entity
- `500` — Internal server error

---

[API](https://skmtc.net/pismo/apis/platform-authentication.md) · [All operations](https://skmtc.net/pismo/apis/platform-authentication/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pismo/platform-authentication/revisions/935b62e16de4/schema)
