Skip to main content
Payment Retries menagih ulang pembayaran renewal subscription yang gagal secara otomatis berdasarkan jadwal back-off. Jika percobaan ulang berhasil, subscription kembali ke active, tanpa tindakan dari pelanggan dan tanpa pekerjaan integrasi.

Apa Itu Payment Retries?

Saat pembayaran renewal subscription gagal, subscription berpindah ke on_hold, atau ke past_due jika Anda menetapkan masa tenggang. Jika Payment Retries aktif, Dodo Payments menagih ulang payment method pelanggan yang tersimpan sesuai jadwal hingga penagihan berhasil atau jendela pemulihan berakhir. Retries memulihkan pendapatan yang hilang akibat kegagalan sementara, seperti penangguhan sementara pada kartu, dana tidak mencukupi yang kemudian diisi ulang oleh pelanggan, atau error jaringan sementara. Pelanggan tidak menerima email dan tidak perlu mengubah apa pun.
Payment Retries hanya berlaku untuk pembayaran renewal subscription. Pembayaran pertama subscription (penyiapan mandate), pembayaran satu kali, biaya perubahan plan, dan biaya on-demand tidak akan dicoba ulang.

Cara Kerja Payment Retries

1

Renewal fails

Pembayaran renewal subscription gagal, dan subscription berpindah ke on_hold, atau ke past_due selama masa tenggang.
2

Retryability check

Dodo Payments memeriksa error code kegagalan tersebut. Soft declines, seperti dana tidak mencukupi, penolakan umum, atau error pemrosesan maupun jaringan, dapat dicoba ulang. Hard declines mengakhiri rangkaian percobaan ulang karena percobaan lain tidak akan mengubah hasilnya. Kegagalan tanpa error code dianggap sebagai hard decline.
3

Scheduled retry

Jika penolakan dapat dicoba ulang dan percobaan berikutnya masih sesuai dengan jendela pemulihan, Dodo Payments menjadwalkannya. Setiap percobaan ulang merupakan penagihan off-session ke payment method pelanggan yang tersimpan, dan setiap jeda dihitung sejak kegagalan sebelumnya.
4

Recovery

Pada percobaan ulang pertama yang berhasil, subscription kembali ke active, dan tanggal penagihan berikutnya berpindah ke satu billing period setelah percobaan ulang yang berhasil. Jika jendela ditutup sebelum percobaan ulang berhasil, retries berhenti dan subscription mempertahankan statusnya, seperti on_hold.

Mengonfigurasi Payment Retries

Aktifkan dan konfigurasikan Payment Retries di Settings → Recovery pada dashboard Anda.
Halaman Recovery Settings dengan toggle Enable Payment Retries aktif dan kolom Recovery window (days) diatur ke 13

Payment Retries settings under Settings → Recovery

Halaman ini memiliki dua pengaturan: Jendela pemulihan dimulai saat invoice untuk renewal yang gagal dibuat. Dodo Payments menjadwalkan percobaan hanya jika jumlah semua jeda hingga percobaan tersebut masih berada dalam jendela, dan hanya selama jendela masih terbuka.

Jadwal Retry

Retry menggunakan jeda yang semakin panjang. Dodo Payments melakukan hingga 8 percobaan, selama masing-masing masih sesuai dengan jendela pemulihan Anda:
Jendela default selama 13 hari mencakup percobaan 1 hingga 5 karena percobaan 5 dijalankan sekitar 10,5 hari setelah kegagalan. Untuk menjalankan percobaan berikutnya yang memiliki jeda lebih panjang, tingkatkan jendelanya: percobaan 6 memerlukan setidaknya 16 hari, percobaan 7 setidaknya 23 hari, dan percobaan 8 memerlukan maksimum 30 hari.

Transisi Status Subscription

Retries memindahkan subscription di antara status berikut:
Saat subscription dibatalkan, rangkaian retry berakhir dan tidak ada percobaan berikutnya. Semua status lainnya (on_hold, past_due, expired, pending, failed) tetap melakukan retry karena invoice renewal yang terbuka merupakan utang untuk periode yang telah digunakan pelanggan. Retry juga berhenti saat invoice dibayar dengan cara lain, misalnya setelah pelanggan memperbarui payment method, atau saat Anda menambahkan pelanggan ke blocklist.
Transisi ini menghasilkan event webhook subscription standar, sehingga logika entitlement Anda tidak memerlukan penanganan khusus untuk retry:

Subscription Webhook Payloads

Lihat skema payload webhook lengkap untuk event lifecycle subscription.

Kegagalan yang Dapat dan Tidak Dapat Dicoba Ulang

Error code dari kegagalan terbaru menentukan apakah rangkaian berlanjut:
Mencoba ulang hard decline tidak akan mengubah hasilnya, sehingga rangkaian berakhir segera setelah hard decline terjadi. Gunakan Payment Retries bersama Subscription Dunning untuk meminta payment method baru dari pelanggan dalam kasus tersebut. Untuk jenis setiap code, lihat Transaction Failures.

Retry Sesuai Permintaan

Anda tidak perlu menunggu percobaan berikutnya yang dijadwalkan. Saat subscription berada dalam status on_hold, Anda dapat mengirim retry dari halaman detail pembayaran yang gagal di dashboard, atau dengan POST /payments/{payment_id}/retry. Retry manual berjalan secara independen dari jadwal: retry ini tidak menghabiskan atau memindahkan percobaan otomatis, dan tetap berfungsi meskipun Payment Retries dinonaktifkan. Lihat Manual Payment Retry.

Payment Retries vs. Dunning

Payment Retries dan Subscription Dunning memulihkan jenis kegagalan yang berbeda: Aktifkan keduanya untuk cakupan terluas: retry otomatis menangani kegagalan sementara, dan dunning mengembalikan pelanggan yang payment method-nya perlu diganti.

Terkait

Manual Payment Retry

Kirim retry segera, tanpa menunggu percobaan berikutnya yang dijadwalkan.

Subscription Dunning

Rangkaian email yang meminta pelanggan memperbarui payment method mereka.

Abandoned Cart Recovery

Pulihkan checkout yang ditinggalkan atau gagal dengan email pemulihan.

Subscriptions

Status subscription yang menjadi tujuan perpindahan recovery flows.

Subscription Webhooks

Tanggapi event subscription.on_hold dan subscription.active.
Terakhir diubah pada 26 September 2026