m2pfintech

Create Dispute V2

Creates a new dispute (v2) for a transaction. Supports configurable handling types (DEFAULT or SHADOW_CREDIT) and optionally blocks the card kit. Returns a dispute reference and card block status.

POST
/statement/dispute/v2/create

Header Parameters

TENANT*string

Tenant identifier

Content-Type*string

Content type of the request

Default"application/json"

Request Body

application/json

entityId*string

Entity ID of the customer raising the dispute

amount*number

Disputed transaction amount; must be positive

Formatdouble
Range0.01 <= value
reason*string

Reason for the dispute

extTxnId*string

External transaction ID of the disputed transaction

date?string

Date of the disputed transaction

Formatdate-time
handlingType?string

Dispute handling type; defaults to DEFAULT

Default"DEFAULT"
Value in"DEFAULT" | "SHADOW_CREDIT"
isAuthorisedTransaction?boolean

Whether the transaction was authorised by the customer; defaults to true

Defaulttrue
description?string

Additional description for the dispute

shouldBlockKit?boolean

Whether to block the card kit as part of the dispute; defaults to false

Defaultfalse

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://api.m2pfintech.com/statement/dispute/v2/create" \  -H "TENANT: string" \  -H "Content-Type: application/json" \  -H "Content-Type: application/json" \  -d '{    "entityId": "CUST20260617001",    "amount": 2500,    "reason": "Unauthorized transaction — did not make this purchase",    "extTxnId": "TXN20260620001",    "date": "2026-06-20T14:30:00Z",    "handlingType": "DEFAULT",    "isAuthorisedTransaction": false,    "shouldBlockKit": false  }'
{
  "result": {
    "disputeRef": "DSP20260622001",
    "cardBlocked": false
  },
  "exception": null,
  "pagination": null
}
{
  "result": null,
  "exception": {
    "errorCode": "ERR_400",
    "shortMessage": "Bad Request",
    "detailMessage": "Invalid or missing required fields in the request payload."
  },
  "pagination": null
}
{
  "result": null,
  "exception": {
    "errorCode": "ERR_401",
    "shortMessage": "Unauthorized",
    "detailMessage": "Missing or invalid TENANT header."
  },
  "pagination": null
}
{
  "result": null,
  "exception": {
    "errorCode": "ERR_500",
    "shortMessage": "Internal Server Error",
    "detailMessage": "An unexpected error occurred. Please try again later."
  },
  "pagination": null
}