Coba Lagi Manual mencoba kembali pembayaran perpanjangan langganan yang gagal segera setelah Anda memintanya, dari halaman detail pembayaran atau melalui API. Pembayaran dibebankan ke metode pembayaran yang tersimpan di langganan, dan berjalan secara independen dari jadwal Payment Retries otomatis.
Apa Itu Coba Lagi Manual?
Saat pembayaran perpanjangan gagal, langganan berpindah keon_hold dan Payment Retries mencoba kembali membebankan biaya berdasarkan jadwal back-off. Terkadang Anda tahu bahwa pembayaran akan berhasil sekarang: pelanggan telah mengonfirmasi bahwa mereka mengisi saldo akunnya, atau tim dukungan Anda sedang berbicara dengan mereka. Coba Lagi Manual memungkinkan Anda mengirim satu percobaan segera, tanpa menunggu berjam-jam atau berhari-hari hingga percobaan terjadwal berikutnya.
- Hanya pembayaran perpanjangan: Coba Lagi Manual berlaku untuk invoice perpanjangan langganan saat langganan berada dalam status
on_hold. Pembayaran pertama, pembayaran satu kali, biaya perubahan paket, dan biaya sesuai permintaan tidak memenuhi syarat. - Tanpa tindakan pelanggan: Biaya dibebankan ke metode pembayaran yang sudah tersimpan di langganan.
- Independen dari percobaan otomatis: Percobaan manual tidak mengurangi jumlah percobaan dari jadwal otomatis, tidak memindahkan percobaan terjadwal berikutnya, dan tetap berfungsi meskipun Payment Retries dinonaktifkan.
- Mencoba kembali invoice, bukan pembayaran: Pembayaran yang gagal hanyalah titik awal. Dodo Payments mencari invoice perpanjangan terbuka yang mendasarinya dan menagihkan utang tersebut, sehingga tidak masalah pembayaran gagal mana pada invoice yang Anda gunakan untuk mencoba lagi.
Mencoba Lagi dari Dashboard
1
Open the failed payment
Buka Transactions → Payments dan klik pembayaran perpanjangan yang gagal untuk membuka halaman Transaction details.
2
Click Retry Payment Manually
Klik Retry Payment Manually di sudut kanan atas. Tombol ini hanya tersedia saat pembayaran memenuhi syarat.
3
Check the result
Pembayaran baru dibuat untuk percobaan tersebut dan muncul di Activity Log. Jika biaya berhasil, langganan kembali ke
active dan tanggal penagihan berikutnya maju seperti biasa. Jika pemroses pembayaran belum menyelesaikan biaya tersebut, pembayaran akan ditampilkan sebagai sedang diproses hingga webhook payment.succeeded atau payment.failed melaporkan hasilnya.
Retry Payment Manually on the transaction details page of a failed renewal
Kelayakan
Percobaan manual hanya dikirim jika semua pemeriksaan di bawah ini berhasil. Kolom Reason code adalah yang dikembalikan API: dalamreason pada GET /payments/{payment_id}/retry, dan sebagai error code pada POST /payments/{payment_id}/retry.
Coba Lagi Manual lebih terbatas daripada percobaan otomatis dalam satu hal: status langganan harus
on_hold. Percobaan otomatis tetap berjalan untuk status nonaktif lainnya; lihat Transisi Status Langganan.Batas Percobaan
Setiap invoice perpanjangan mengizinkan 3 percobaan manual, dengan masa tunggu di antaranya:
Batas ini berlaku dalam mode test dan mode live. Saat percobaan ditolak karena alasan ini, API mengembalikan
MANUAL_RETRY_LIMIT_REACHED (HTTP 429). Isi error hanya memuat code dan message. Untuk mengetahui kapan percobaan berikutnya tersedia, periksa status percobaan dan baca retry_available_at. Nilainya adalah null setelah ketiganya digunakan.
Percobaan otomatis tidak dihitung dalam batas ini, dan percobaan manual tidak dihitung dalam 8 percobaan pada jadwal otomatis.
Percobaan Manual vs. Otomatis
Mencoba Lagi melalui API
Periksa kelayakan terlebih dahulu, lalu kirim percobaan ulang. Kedua endpoint menerima ID pembayaran yang gagal.Memeriksa Apakah Pembayaran Dapat Dicoba Lagi
GET /payments/{payment_id}/retry tidak pernah gagal untuk pembayaran yang tidak memenuhi syarat. Endpoint ini mengembalikan can_retry: false dengan kode reason, sehingga dashboard atau alat dukungan Anda dapat menampilkan status yang sama seperti dashboard Dodo Payments. Endpoint ini memerlukan peran Viewer.
Response
Mengirim Coba Lagi Manual
POST /payments/{payment_id}/retry membuat pembayaran baru dan menagihkan metode pembayaran yang tersimpan. Endpoint ini memerlukan peran Editor.
Response
Respons Error
Setiap kode dijelaskan dalam referensi Error Codes.
Webhook
Coba lagi manual membuat pembayaran biasa, sehingga webhook yang sama dipicu seperti pada percobaan perpanjangan lainnya:
Pada objek pembayaran dalam event ini,
retry_attempt bernilai 1 atau lebih tinggi dan subscription_id ditetapkan, sama seperti pada percobaan otomatis. Simpan payment_id dari respons percobaan ulang jika Anda perlu membedakan percobaan manual dari percobaan terjadwal.
Payment Webhook Payloads
Skema payload lengkap untuk event pembayaran.
Terkait
Subscription Payment Retries
Jadwal back-off otomatis yang berjalan bersamaan dengan percobaan manual.
Subscription Dunning
Kirim email kepada pelanggan untuk memperbarui metode pembayaran mereka setelah hard decline.
Handle Payment Failures
Baca kode penolakan dan tentukan kapan percobaan ulang layak dilakukan.
Error Codes
Setiap kode
MANUAL_RETRY_*, pemicunya, dan pesannya.