Dispute & Chargebacks Webhooks

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 supported for processors Adyen, Braintree, Checkout.com & PayPal.

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.

post/dispute-status

Headers

X-Signature-Primarystring 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-Secondarystring required

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

Request body

eventTypestring 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.

versionstring

The payload version

type'RETRIEVAL' | 'DISPUTE' | 'PREARBITRATION' required

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

status'OPEN' | 'ACCEPTED' | 'CHALLENGED' | 'EXPIRED' | 'CANCELLED' | 'WON' | 'LOST' required

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

primerAccountIdstring required

A unique identifier for your Primer merchant account.

transactionIdstring

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

orderIdstring required

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

paymentIdstring required

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

processor'ADYEN' | 'BRAINTREE' required

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

processorDisputeIdstring 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.

receivedAtstring date-time required

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

challengeRequiredBystring date-time required

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

reasonstring

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.

reasonCodestring required

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

processorReasonstring

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.

amountinteger 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.

currencystring required

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

merchantIdstring

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

Example request

{
  "version": "2.4"
}

Response

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

Changes

No recorded changes to this endpoint across all 1 revision of this API.