Manual Retry ripete il pagamento del rinnovo di un abbonamento non riuscito nel momento in cui lo richiedi, dalla pagina dei dettagli del pagamento o tramite API. Addebita il metodo di pagamento salvato sull’abbonamento e viene eseguito indipendentemente dalla pianificazione di Payment Retries automatici.
Che cos’è Manual Retry?
Quando un pagamento di rinnovo non va a buon fine, l’abbonamento passa aon_hold e Payment Retries ripete l’addebito secondo una pianificazione con intervalli crescenti. A volte sai che il pagamento andrà a buon fine subito: il cliente ha confermato di aver ricaricato il proprio conto oppure il tuo team di supporto è al telefono con lui. Manual Retry ti consente di inviare immediatamente un tentativo invece di attendere ore o giorni per quello pianificato successivo.
- Solo pagamenti di rinnovo: Manual Retry si applica alle fatture di rinnovo degli abbonamenti mentre l’abbonamento è
on_hold. I pagamenti iniziali, i pagamenti una tantum, gli addebiti per il cambio di piano e gli addebiti su richiesta non sono idonei. - Nessuna azione da parte del cliente: l’addebito viene effettuato sul metodo di pagamento già salvato sull’abbonamento.
- Indipendente dalle riprove automatiche: una riprova manuale non consuma un tentativo della pianificazione automatica, non sposta la prossima riprova pianificata e funziona anche quando Payment Retries è disattivato.
- Ripete la fattura, non il pagamento: un pagamento non riuscito è solo il punto di partenza. Dodo Payments individua la fattura di rinnovo aperta associata e addebita l’importo dovuto, quindi non importa da quale pagamento non riuscito della fattura avvii la riprova.
Ripetere dal dashboard
1
Open the failed payment
Vai a Transactions → Payments e fai clic sul pagamento di rinnovo non riuscito per aprire la pagina Transaction details.
2
Click Retry Payment Manually
Fai clic su Retry Payment Manually nell’angolo in alto a destra. Il pulsante è disponibile solo mentre il pagamento è idoneo.
3
Check the result
Per il tentativo viene creato un nuovo pagamento, che compare nell’Activity Log. Se l’addebito va a buon fine, l’abbonamento torna a
active e la data della fatturazione successiva avanza normalmente. Se il gestore dei pagamenti non ha ancora completato l’elaborazione dell’addebito, il pagamento risulta in corso finché il webhook payment.succeeded o payment.failed non comunica l’esito.
Retry Payment Manually on the transaction details page of a failed renewal
Idoneità
Una riprova manuale viene inviata solo se tutti i controlli seguenti hanno esito positivo. La colonna Reason code indica ciò che restituisce l’API: inreason su GET /payments/{payment_id}/retry e come errore code su POST /payments/{payment_id}/retry.
Manual Retry è più restrittivo delle riprove automatiche in un caso: richiede che l’abbonamento sia
on_hold. Le riprove automatiche continuano per altri stati non attivi; consulta Transizioni dello stato dell’abbonamento.Limiti delle riprove
Ogni fattura di rinnovo consente 3 riprove manuali, con un periodo di attesa tra una e l’altra:
I limiti si applicano sia in modalità test sia in modalità live. Quando una riprova viene rifiutata per questo motivo, l’API restituisce
MANUAL_RETRY_LIMIT_REACHED (HTTP 429). Il corpo dell’errore contiene solo code e message. Per sapere quando sarà disponibile la prossima riprova, controlla lo stato della riprova e leggi retry_available_at. Il valore è null quando sono state utilizzate tutte e tre.
Le riprove automatiche non vengono conteggiate in questo limite e le riprove manuali non vengono conteggiate tra gli 8 tentativi della pianificazione automatica.
Riprove manuali e automatiche
Ripetere tramite API
Controlla prima l’idoneità, quindi invia la riprova. Entrambi gli endpoint richiedono l’ID di un pagamento non riuscito.Verificare se un pagamento può essere ripetuto
GET /payments/{payment_id}/retry non restituisce mai un errore per un pagamento non idoneo. Restituisce invece can_retry: false con il codice reason, così la dashboard o gli strumenti di supporto possono mostrare lo stesso stato visualizzato dalla dashboard di Dodo Payments. Richiede il ruolo Viewer.
Response
Inviare una riprova manuale
POST /payments/{payment_id}/retry crea un nuovo pagamento e addebita il metodo di pagamento salvato. Richiede il ruolo Editor.
Response
Risposte di errore
Ogni codice è descritto nella documentazione di riferimento Error Codes.
Webhook
Una riprova manuale crea un normale pagamento, quindi vengono attivati gli stessi webhook di qualsiasi tentativo di rinnovo:
Nell’oggetto del pagamento di questi eventi,
retry_attempt è 1 o superiore e subscription_id è impostato, esattamente come per una riprova automatica. Conserva payment_id della risposta della riprova se devi distinguere un tentativo manuale da uno pianificato.
Payment Webhook Payloads
Schemi completi del payload per gli eventi di pagamento.
Correlati
Subscription Payment Retries
La pianificazione automatica con intervalli crescenti che viene eseguita insieme alle riprove manuali.
Subscription Dunning
Invia un’email al cliente chiedendogli di aggiornare il metodo di pagamento dopo un rifiuto definitivo.
Handle Payment Failures
Leggi i codici di rifiuto e stabilisci quando vale la pena effettuare una riprova.
Error Codes
Ogni codice
MANUAL_RETRY_*, il relativo trigger e il messaggio.