Dispute Status

Primer notifies you with a DISPUTE.STATUS webhook that will provide information on retrievals, disputes (also known as chargebacks), and preabritration filings.

This notification is unified across all processors.

The DISPUTE.STATUS event can be used to proactively communicate with customers, issue refunds, send disputes to risk tools, or to proactively defend disputes.

The DISPUTE.STATUS event is currently in an open beta stage, as we continue to add more processors.

Learn more about managing disputes at Primer.

Headers

X-Signature-Primary
string

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

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

Payload

The payload of this webhook request is an object.
eventType
optional string

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.

version
optional string

The payload version

type
optional enum

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

Allowed values: RETRIEVALDISPUTEPREARBITRATION
status
optional enum

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

primerAccountId
optional string

A unique identifier for your Primer merchant account.

transactionId
optional string

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

orderId
optional string

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

paymentId
optional string

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

paymentMethod
optional object

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

processor
optional enum

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

Allowed values: ADYENBRAINTREE
processorDisputeId
optional string

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
optional datetime

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

challengeRequiredBy
optional datetime

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

reason
optional 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.

reasonCode
optional string

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

processorReason
optional 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.

amount
optional integer

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
optional string

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

merchantId
optional string

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

Response

200
any

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

Payload
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
  "eventType": "string",
  "version": "string",
  "type": "RETRIEVAL",
  "status": "OPEN",
  "primerAccountId": "string",
  "transactionId": "string",
  "orderId": "string",
  "paymentId": "string",
  "paymentMethod": {
    "paymentMethodType": "string",
    "paymentMethodData": {
      "network": "string"
    }
  },
  "processor": "ADYEN",
  "processorDisputeId": "string",
  "receivedAt": "2023-01-01T00:00:00Z",
  "challengeRequiredBy": "2023-01-01T00:00:00Z",
  "reason": "string",
  "reasonCode": "string",
  "processorReason": "string",
  "amount": 0,
  "currency": "string",
  "merchantId": "string"
}