Skip to main content
Manual Retry gör ett nytt försök med en misslyckad betalning för en förnyelse av en prenumeration när du begär det, från betalningens detaljsida eller via API:t. Den debiterar den betalningsmetod som sparats för prenumerationen och körs oberoende av det automatiska schemat för Payment Retries.

Vad är Manual Retry?

När en betalning för en förnyelse misslyckas flyttas prenumerationen till on_hold. Om du har aktiverat Payment Retries gör de nya debiteringsförsök enligt ett back-off-schema. Ibland vet du att betalningen kommer att gå igenom nu: kunden har bekräftat att hen har fyllt på sitt konto, eller så har ditt supportteam ett pågående samtal med kunden. Manual Retry gör ett försök omedelbart i stället för att vänta i timmar eller dagar på nästa schemalagda försök.
  • Endast betalningar för förnyelser: Manual Retry gäller prenumerationsfakturor för förnyelser medan prenumerationen är on_hold. Första betalningar, engångsbetalningar, debiteringar vid planändringar och on-demand-debiteringar kan inte användas.
  • Ingen åtgärd från kunden: Debiteringen görs mot den betalningsmetod som redan har sparats för prenumerationen.
  • Oberoende av automatiska försök: Ett manuellt nytt försök förbrukar inte ett försök från det automatiska schemat, flyttar inte nästa schemalagda försök och fungerar även när Payment Retries är avstängt.
  • Försöker med fakturan, inte betalningen: Den misslyckade betalningen är bara utgångspunkten. Dodo Payments hittar den öppna förnyelsefakturan bakom den och debiterar den utestående skulden, så det spelar ingen roll vilken misslyckad betalning på fakturan du försöker med.

Försöka igen från kontrollpanelen

Endast användare med rollen Owner eller Editor kan skicka ett manuellt nytt försök.
1

Open the failed payment

Gå till Transactions → Payments och klicka på den misslyckade betalningen för förnyelsen för att öppna sidan Transaction details.
2

Click Retry Payment Manually

Klicka på Retry Payment Manually i det övre högra hörnet. Knappen är endast tillgänglig så länge betalningen är eligible.
3

Check the result

Dodo Payments skapar en ny betalning för försöket, och den visas i Activity Log. Om debiteringen lyckas återgår prenumerationen till active, och nästa faktureringsdatum flyttas till en faktureringsperiod efter det lyckade försöket. Om betalningsprocessorn ännu inte har slutfört debiteringen visas betalningen som pågående tills webhooken payment.succeeded eller payment.failed rapporterar resultatet.
Sidan Transaction details för en misslyckad betalning som visar felkoden och felmeddelandet, en Activity Log och en knapp för Retry Payment Manually

Retry Payment Manually on the transaction details page of a failed renewal

Behörighet

Dodo Payments skickar ett manuellt nytt försök endast när alla kontroller i den här tabellen godkänns. Kolumnen Reason code visar det som API:t returnerar: i reason på GET /payments/{payment_id}/retry och som felet code på POST /payments/{payment_id}/retry.
Manual Retry är mer begränsat än automatiska försök på en punkt: prenumerationen måste vara on_hold. En past_due-prenumeration i en respitperiod klarar inte den här kontrollen. Automatiska försök fortsätter för andra statusar än active. Se Subscription Status Transitions.
Att försöka med en hard decline mot samma kort kan inte lyckas, och upprepade avslag försämrar din auktoriseringsgrad. När orsaken är MANUAL_RETRY_HARD_DECLINE ber du kunden att uppdatera sin betalningsmetod i stället. Subscription Dunning gör detta automatiskt.

Gränser för nya försök

Varje förnyelsefaktura tillåter 3 manuella försök, med en spärrtid mellan dem: Gränserna gäller både i testläge och live-läge. När gränsen stoppar ett nytt försök returnerar API:t MANUAL_RETRY_LIMIT_REACHED (HTTP 429), och felsvaret innehåller endast code och message. Om du vill se när nästa försök blir tillgängligt kan du kontrollera försökstillståndet och läsa retry_available_at. Det är null när alla tre försök har använts. Automatiska försök räknas inte mot den här gränsen, och manuella försök räknas inte mot de 8 försöken i det automatiska schemat.

Manuella och automatiska försök

De två vägarna för nya försök skiljer sig på följande sätt:

Göra nya försök via API:t

Kontrollera behörigheten först och skicka sedan det nya försöket. Båda slutpunkterna tar ID:t för en misslyckad betalning.

Kontrollera om en betalning kan göras om

GET /payments/{payment_id}/retry returnerar inte ett fel för en betalning som inte är eligible. Den returnerar can_retry: false med koden reason i stället, så att din egen instrumentpanel eller supportverktyg kan visa samma status som Dodo Payments instrumentpanel. Den kräver rollen Viewer.
Response

Skicka ett manuellt nytt försök

POST /payments/{payment_id}/retry skapar en ny betalning och debiterar den sparade betalningsmetoden. Den kräver rollen Editor. SDK-exemplen återanvänder client från föregående exempel.
Response

Felsvar

När ett nytt försök inte är tillåtet returnerar POST en av dessa HTTP-statusar: Referensen Error Codes beskriver alla koder.

Webhooks

Ett manuellt nytt försök skapar en vanlig betalning, så samma webhookar utlöses som för alla försök med en förnyelse: På betalningsobjektet i dessa händelser är retry_attempt 1 eller högre och subscription_id är angivet, på samma sätt som för ett automatiskt försök. Betalningsobjektet har inget fält som markerar ett manuellt försök, så spara payment_id från svaret på det nya försöket om du behöver skilja ett manuellt försök från ett schemalagt.

Payment Webhook Payloads

Fullständiga scheman för nyttolaster för betalningshändelser.

Relaterat

Subscription Payment Retries

Det automatiska back-off-schemat som körs parallellt med manuella försök.

Subscription Dunning

Skicka ett e-postmeddelande till kunden och be hen uppdatera sin betalningsmetod efter en hard decline.

Handle Payment Failures

Läs avslagskoder och avgör när det lönar sig att göra ett nytt försök.

Error Codes

Varje MANUAL_RETRY_*-kod, dess utlösare och meddelande.
Senast ändrad 26 september 2026