Skip to main content
Som din Merchant of Record, hanterar Dodo Payments tvist- och återdebiteringsprocessen med kortnätverken å dina vägnar. Dessa webhooks håller dina system synkroniserade när en tvist går igenom sin livscykel så att du kan återkalla åtkomst, samla bevis och stämma av dina register.

Dispute Webhook Events

En tvist avger en händelse i varje steg av dess livscykel:
Tvister som automatiskt löses genom Visa Rapid Dispute Resolution (RDR) visas som dispute.lost med is_resolved_by_rdr: true. Detta är förväntat — återbetalningen utfärdades automatiskt för att förhindra en formell återdebitering.
Ethoca alerts och deflections skapar aldrig en tvist och genererar därför inga dispute.*-events. En återbetalning via en Ethoca alert utlöser standardhändelsen refund.succeeded, och en eventuell länkad uppsägning av en subscription utlöser det vanliga subscription-eventet. En deflection utlöser inget event.

Hantera dispute-events

När dispute.opened utlöses hålls det omtvistade beloppet omedelbart. Använd eventet för att uppdatera dina poster och samla bevis i dashboarden om du tänker bestrida tvisten.
Handling dispute events
Verifiera alltid webhook-signaturen innan du bearbetar den — se guiden för Webhooks för konfiguration. Handlern ovan utelämnar verifieringen för korthetens skull.
Du har 10 dagar på dig att svara på en tvist efter att den har skapats. Se bästa praxis för att svara på tvister för information om vilka bevis du bör samla in och hur du formaterar dem.

Tvistens status och steg

Dispute-objektet rapporterar sin utveckling genom två fält:

Relaterat

Managing Disputes

Så svarar du på tvister, skickar in bevis och så skyddar RDR din tvistfrekvens.

Handle Payment Failures

Identifiera och återvinn misslyckade betalningar innan de blir tvister.

Schema för webhook-payload

amount
string
obligatorisk

The amount involved in the dispute, represented as a string to accommodate precision.

brand_id
string
obligatorisk

Brand id this dispute belongs to

business_id
string
obligatorisk

The unique identifier of the business involved in the dispute.

created_at
string<date-time>
obligatorisk

The timestamp of when the dispute was created, in UTC.

currency
string
obligatorisk

The currency of the disputed amount, represented as an ISO 4217 currency code.

customer
object
obligatorisk

The customer who filed the dispute

dispute_id
string
obligatorisk

The unique identifier of the dispute.

dispute_stage
enum<string>
obligatorisk

The current stage of the dispute process.

Tillgängliga alternativ:
pre_dispute,
dispute,
pre_arbitration
dispute_status
enum<string>
obligatorisk

The current status of the dispute.

Tillgängliga alternativ:
dispute_opened,
dispute_expired,
dispute_accepted,
dispute_cancelled,
dispute_challenged,
dispute_won,
dispute_lost
payment_id
string
obligatorisk

The unique identifier of the payment associated with the dispute.

payment_provider
enum<string>
obligatorisk

Which processor handled the underlying payment. stripe / adyen for BYOP routes (the merchant's own payment connector); dodo for everything Dodo processed itself.

Tillgängliga alternativ:
stripe,
adyen,
dodo
is_resolved_by_rdr
boolean | null

Whether the dispute was resolved by Rapid Dispute Resolution

reason
string | null

Reason for the dispute

remarks
string | null

Remarks

Senast ändrad 26 september 2026