Hoppa till huvudinnehåll

Översikt

Dodo Payments returnerar en detaljerad felorsak när ett betalningsförsök misslyckas. Dessa orsaker standardiseras över betalningsmetoder och leverantörer, så du kan implementera konsekvent hantering i din applikation. När en betalning misslyckas visar payment.failed-webhooken och betalningsobjektet:
  • error_code — en standardiserad felorsak från tabellen nedan.
  • error_message — en lättläst förklaring.
  • retry_attempt0 för den ursprungliga debiteringen, 1 eller högre för varje schemalagt prenumerationsförnyelsförsök.
Genom att förstå dessa felorsaker kan du ge kunder tydlig feedback, bestämma om ett nytt försök är värt det, och återfå mer intäkter.

Handle Payment Failures

En steg-för-steg-utvecklarguide för att läsa dessa koder från webbhooks och API:er, visa dem för kunder, och bestämma när ett nytt försök bör göras.

Mjuk vs. Hård Avvisning

Varje felkod faller i en av två kategorier. Denna åtskillnad avgör om du ska försöka med samma betalningsmetod igen eller be kunden om en ny. För prenumerationsförnyelser tillämpar Dodo Payments denna åtskillnad automatiskt: mjuka avvisningar försöks om på nytt av Prenumerationsbetalningsförsök, medan hårda avvisningar avslutar försökskedjan omedelbart och hanteras bäst med Prenumerationshantering.
Avslöja aldrig den verkliga orsaken till STOLEN_CARD, LOST_CARD, PICKUP_CARD, eller FRAUDULENT för kunden. Att visa dessa kan tipsa en bedräglig aktör. Visa alltid kunden ett generiskt avslagsmeddelande (till exempel, “Ditt kort avvisades. Vänligen kontakta din bank eller använd ett annat kort.”) och logga bara den specifika koden internt.

Transaktionsmisslyckande Orsaker

Följande tabell listar varje felkod, dess avvisningstyp, om kunden kan lösa det, en beskrivning och den rekommenderade åtgärden.
Användarfel indikerar om betalningsavvisning kan lösas av kunden. När Yes kan kunden vidta åtgärder för att lösa problemet (till exempel genom att ange korrekta kortuppgifter). När No beror avvisningen på systemnivåproblem eller bankbegränsningar som kunden inte kan lösa direkt.
Ett kort kan också nekas när den utfärdande bankens egen riskmotor flaggar kortinnehavaren som en högriskkund — oberoende av handlaren eller transaktionsdetaljerna. Dessa nekningar visas vanligtvis som generiska koder som DO_NOT_HONOR, GENERIC_DECLINE, CARD_DECLINED, TRANSACTION_NOT_APPROVED, eller FRAUDULENT. I dessa fall delar inte banken den specifika anledningen, och varken Dodo Payments eller handlaren kan ändra beslutet. Be kunden kontakta sin bank för att lösa flaggan, eller använd ett annat kort eller betalningsmetod.

Hantering av fel programmatiskt

Läs error_code från payment.failed webhook eller betalningsobjektet, mappa det till den rekommenderade åtgärden ovan, och bestäm om det ska försöka igen. För förnyelser av prenumerationer, mjuka avslag försökas om automatiskt — se Subscription Payment Retries. För API-nivå och affärslogikfel (såsom PAYMENT_NOT_SUCCEEDED eller REFUND_WINDOW_EXPIRED) som inte är kortavslag, se Error Codes referensen.

Relaterad

Handle Payment Failures

Guide för att från början till slut upptäcka, visa och försöka igen underkända betalningar.

Error Codes

Fel koder för API och affärslogik för fel som inte är avslag.

Subscription Payment Retries

Automatiska försök som återhämtar mjuka avslag på prenumerationsförnyelser.

Subscription Dunning

E-postsekvenser som återhämtar hårda avslag genom att uppmana till en uppdatering av betalningsmetod.

Support

För ytterligare hjälp med transaktionsfel eller integrationsfrågor, vänligen kontakta vårt supportteam på support@dodopayments.com.
Senast ändrad 26 juni 2026