Skip to main content
POST
/
dispute-status
Dispute Status
curl --request POST \
  --url https://api.sandbox.primer.io/dispute-status \
  --header 'Content-Type: application/json' \
  --header 'X-Signature-Primary: <x-signature-primary>' \
  --header 'X-Signature-Secondary: <x-signature-secondary>' \
  --data '
{
  "eventType": "<string>",
  "type": "RETRIEVAL",
  "status": "OPEN",
  "primerAccountId": "<string>",
  "orderId": "<string>",
  "paymentId": "<string>",
  "paymentMethod": {
    "paymentMethodType": "<string>",
    "paymentMethodData": {
      "network": "AMEX"
    }
  },
  "processor": "ADYEN",
  "processorDisputeId": "<string>",
  "receivedAt": "2023-11-07T05:31:56Z",
  "challengeRequiredBy": "2023-11-07T05:31:56Z",
  "reasonCode": "<string>",
  "amount": 123,
  "currency": "<string>",
  "version": "2.3",
  "transactionId": "<string>",
  "reason": "<string>",
  "processorReason": "<string>",
  "merchantId": "<string>"
}
'

Headers

X-Signature-Primary
string
required

An HMAC signature generated using the webhook payload and a shared signing secret. This is then converted to a base64 encoded string.

X-Signature-Secondary
string
required

A secondary signature that is added when you have rotated your secret within the past 24 hours.

Body

application/json
eventType
string
required

The type of event that triggered the webhook. This will have the value DISPUTE.STATUS. This indicates that a dispute notification was issued through a configured connection.

Use these notifications to proactively communicate with your customer, issue refunds, or submit evidence to challenge disputes.

type
enum<string>
required

The type of dispute event. More information on what the type field represents can be found in Manage disputes

Available options:
RETRIEVAL,
DISPUTE,
PREARBITRATION
status
enum<string>
required

To see which statuses are applicable for a dispute type, and how we map status, please see Manage disputes.

Available options:
OPEN,
ACCEPTED,
CHALLENGED,
EXPIRED,
CANCELLED,
WON,
LOST
primerAccountId
string
required

A unique identifier for your Primer merchant account.

orderId
string
required

Your reference for the sale transaction that the dispute relates to.

paymentId
string
required

A unique identifier for the Primer payment corresponding to this dispute.

paymentMethod
Payment Method Information · object
required

The payment method information for the payment that is now disputed.

processor
enum<string>
required

The payment processor that you submitted a payment to, and received a dispute notification from.

Available options:
ADYEN,
BRAINTREE
processorDisputeId
string
required

An identifier for this dispute provided by the processor. This is shared across multiple dispute type and status relating to the same payment.

e.g. as an open dispute that is later challenged will share a proccessorDisputeId.

receivedAt
string<date-time>
required

Date and time at which Primer received the processor's dispute event. Provided as an ISO timestamp in UTC.

challengeRequiredBy
string<date-time>
required

Time by which the merchant must challenge a dispute. This is provided by the processor, where available.

reasonCode
string
required

The dispute reason code for a dispute. This will be the same code provided by the card schemes.

amount
integer<int64>
required

The disputed amount. Note: this is not always the same as the payment amount.

This will be displayed in minor units.

e.g. for $7, use 700. Some currencies, such as Japanese Yen, do not have minor units. In this case you should use the value as it is, without any formatting. For example for ¥100, use 100.

currency
string
required

The 3-letter currency code in ISO 4217 format. e.g. use USD for US dollars.

version
string

The payload version

Example:

"2.3"

transactionId
string

A unique identifier for the Primer transaction corresponding to this dispute.

reason
string

Primer’s unified reason that explains why the dispute was raised. This should not vary across processors for the same dispute reasonCode, unlike the processorReason.

processorReason
string

The dispute reason provided by the processor. This can vary across processors for the same dispute reasonCode, which is why we provide a unified field - reason.

merchantId
string

The merchant ID registered at the payment processor used for this dispute.

Response

200

Return a 200 status to indicate that the data was received successfully