---
title: "Create dispute migration"
method: POST
path: "/v1/migration"
tags: ["Migration"]
---

# Create dispute migration

`POST /v1/migration`

Create a migration for a Full balance or Zero balance program.

After this, you can create a [dispute migration for a specific installment](https://developers.pismo.io/pismo-docs/reference/post-migration-installment) using the dispute ID returned here.

This endpoint generates a [Dispute installment created](https://developers.pismo.io/events/docs/disputes-dispute-installment-creation-1) event. Once the dispute is migrated into the system, its status changes and a [Dispute status changed](https://developers.pismo.io/events/docs/disputes-dispute-installment-status-change-1) event is generated.

## Request body

- CreateMigrationRequest — Create dispute migration request object
  - `chargeback_id` string, required — Chargeback ID, same as dispute ID for VISA.
  - `claim_id` string, required — Claim ID, same as case number for VISA.
  - `disputed_amount` number, double, required — Amount under dispute
  - `network_brand_type` 'Visa' | 'Mastercard' | 'Elo', required — Network brand
  - `authorization_id` number — Authorization ID. **REQUIRED** for Full balance integration.
  - `account_id` number — Account ID. **REQUIRED** for Zero balance integration.
  - `transaction_date` string — Transaction date, format = yyyy-mm-dd. **REQUIRED** for Zero balance integration.
  - `arn` string — Acquirer reference number. **REQUIRED** for Zero balance integration.
  - `is_partial` boolean — Is partial amount chargeback? Default is `false`.
  - `installment_disputed_amount` number — Installent disputed amount
  - `installment_number` integer — Installment number.

## Response `200`

OK

- CreateMigrationResponse — Create dispute migration request object
  - `id` number — Dispute ID
  - `authorization_id` number — Authorization ID. **REQUIRED** for Full balance integration.
  - `account_id` number — Account ID. **REQUIRED** for Zero balance integration.
  - `comment` string, nullable — Client custom dispute comment. **REQUIRED** for Visa partial dispute to explain why partial.
  - `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)
  - `dispute_installment_id` integer — Dispute installment ID.

## Other responses

- `400` — Bad request
- `401` — Access token is missing or invalid
- `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)
