Documentation Index
Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
Use this file to discover all available pages before exploring further.
Fitur Baru
1. Kode Diskon Bertumpuk
Sesi checkout, pembayaran, langganan, dan perubahan paket sekarang menerima hingga 20 kode diskon dalam satu permintaan melalui array discount_codes. Kode diterapkan sesuai urutan array — kode yang memenuhi syarat pertama kali mengurangi harga dasar, yang kedua mengurangi harga yang sudah di-diskon, dan seterusnya — sehingga Anda dapat melapisi kampanye tanpa membuat kode gabungan khusus.
const session = await client.checkoutSessions.create({
product_cart: [{ product_id: 'prod_abc', quantity: 1 }],
discount_codes: ['WELCOME10', 'BLACKFRIDAY20'], // applied in this order
customer: { email: 'user@example.com' },
return_url: 'https://yoursite.com/return'
});
Di mana itu berlaku
| Permukaan | Kolom | Maksimal kode |
|---|
| Sesi Checkout | discount_codes | 20 |
| Pembayaran | discount_codes | 20 |
| Langganan | discount_codes | 20 |
| Perubahan Paket | discount_codes | 20 |
Perilaku perubahan paket
Nilai discount_codes | Efek |
|---|
| Tidak disediakan | Diskon yang ada dengan preserve_on_plan_change=true tetap ada jika berlaku pada produk baru |
[] (array kosong) | Semua diskon yang ada dihapus dari langganan |
['CODE_A', 'CODE_B', ...] | Menggantikan diskon yang ada dengan set bertumpuk ini, diterapkan sesuai urutan array |
Bentuk respons
Set lengkap diskon yang diterapkan dikembalikan di bawah array discounts pada pembayaran dan langganan — setiap entri termasuk discount_id, position, dan cycles_remaining (untuk langganan). Kolom tunggal discount_id yang lama telah dihentikan tetapi masih ada untuk kompatibilitas mundur.
Kolom tunggal discount_code dihentikan tetapi masih sepenuhnya didukung — integrasi yang ada terus berfungsi tanpa perubahan. Tidak dapat digabungkan dengan discount_codes dalam permintaan yang sama. Kami menyarankan untuk bermigrasi ke discount_codes saat nyaman, bahkan untuk satu kode, untuk memanfaatkan penumpukan dan bentuk respons yang lebih kaya.
Pelajari lebih lanjut: Kode Diskon | Sesi Checkout | Perubahan Paket
2. Tujuh Email Notifikasi Pelanggan Baru
Tujuh email transaksi baru sekarang dikirimkan kepada pelanggan Anda secara otomatis, mencakup konfirmasi pengembalian dana, tonggak siklus hidup langganan, dan kegagalan pembayaran. Setiap email dapat diaktifkan secara independen dari Pengaturan → Komunikasi di bawah bagian Email Pelanggan.
Opt-in (diaktifkan secara default)
| Email | Kapan dipicu |
|---|
| Pengembalian Dana Berhasil | Sebuah pengembalian dana berhasil diproses dan dana dalam perjalanan kembali ke pelanggan |
| Uji coba Berakhirnya Langganan | ~2 hari sebelum percobaan berakhir dan biaya penagihan pertama terjadi |
| Langganan Dibatalkan Segera | Sebuah langganan dibatalkan dengan efek langsung |
| Langganan Ditetapkan untuk Dibatalkan pada Tanggal Penagihan Berikutnya | Sebuah langganan dijadwalkan untuk dibatalkan di akhir periode penagihan saat ini |
Opt-out (dinonaktifkan secara default)
| Email | Kapan dipicu |
|---|
| Pembayaran Gagal | Sebuah percobaan pembayaran gagal — aktifkan jika Anda menginginkan Dodo Payments memberitahu pelanggan secara langsung daripada menangani di sistem Anda sendiri |
| Pembaharuan Langganan Gagal | Pembayaran pembaharuan langganan gagal secara spesifik; dipicu menggantikan (bukan selain) email Pembayaran Gagal umum untuk pembayaran pembaharuan |
| Pengingat Pembaharuan Mendatang | ~2 hari sebelum langganan diperbarui |
Jika Anda mengelola komunikasi pelanggan sendiri melalui webhooks, biarkan email opt-out dinonaktifkan untuk menghindari pengiriman notifikasi duplikat kepada pelanggan untuk acara yang sama.
Email pelanggan terpisah dari email notifikasi yang dikirim ke tim Anda. Menonaktifkan email pelanggan tidak mempengaruhi notifikasi tim Anda untuk acara yang sama.
Pelajari lebih lanjut: Preferensi Komunikasi
3. Sunbit — Pembiayaan Cicilan untuk Pelanggan AS
Sunbit kini tersedia sebagai metode pembayaran Beli Sekarang, Bayar Nanti, memungkinkan pelanggan AS membagi pembelian menjadi cicilan bulanan yang dapat dikelola di checkout.
| Fitur | Detail |
|---|
| Ketersediaan | Amerika Serikat |
| Mata Uang | USD |
| Jumlah Minimum | $60,00 |
| Jumlah Maksimal | $19.999,00 |
| Langganan | Tidak didukung (hanya pembayaran satu kali) |
Masukkan sunbit dalam allowed_payment_method_types untuk mengaktifkannya pada sesi checkout:
const session = await client.checkoutSessions.create({
product_cart: [{ product_id: 'prod_123', quantity: 1 }],
allowed_payment_method_types: ['sunbit', 'credit', 'debit'],
return_url: 'https://example.com/success'
});
Pelanggan menyelesaikan aplikasi pembiayaan singkat dalam modal Sunbit saat checkout; setelah disetujui, pembayaran dikonfirmasi dan Anda menerima dana seperti biasa.
Selalu sertakan credit dan debit sebagai cadangan. Tidak semua pelanggan memenuhi syarat untuk pembiayaan Sunbit, dan transaksi di luar rentang 60,00–19,999,00 tidak akan menampilkan opsi tersebut.
Pelajari lebih lanjut: Metode Pembayaran BNPL
Perbaikan
4. Perombakan Halaman Pembayaran Checkout
Halaman pembayaran pada checkout telah mengalami perombakan secara menyeluruh — tata letak yang lebih ketat, pemuatan yang lebih cepat, status validasi yang lebih jelas, dan UX input pada kartu yang disempurnakan. Secara keseluruhan, perubahan ini meningkatkan tingkat keberhasilan checkout yang diamati sebesar ~2–3% di seluruh lalu lintas global.
Apa yang berubah:
- Interaksi kolom yang lebih halus — autofocus, urutan tab yang lebih cerdas, dan navigasi keyboard yang ditingkatkan pada formulir kartu
- Status kesalahan dan pemuatan yang lebih bersih — validasi inline muncul tepat di tempat pelanggan perlu bertindak, menggantikan pola banner kesalahan seluruh formulir sebelumnya
- Pencetakan lebih cepat — skeleton dan hidrasi progresif menghilangkan flicker status kosong singkat pada jaringan lambat
- Penyempurnaan seluler — sasaran tap, perilaku gulir, dan penanganan keyboard disesuaikan secara khusus untuk checkout seluler, di mana sebagian besar lalu lintas kini berada
Tidak ada perubahan integrasi yang diperlukan. Sesi checkout yang ada secara otomatis mengambil halaman pembayaran baru.
Alur buat, edit, dan duplikasi produk telah dibangun ulang dari awal dengan pengalaman formulir yang seragam.
Sorotan:
- Pratinjau langsung — lihat bagaimana produk Anda muncul di checkout dan portal pelanggan saat Anda mengedit, berdampingan dengan formulir
- Autosave — draft disimpan secara otomatis, sehingga berpindah atau kehilangan tab Anda tidak lagi berarti kehilangan pekerjaan Anda
- Editor Markdown — deskripsi produk sekarang mendukung editor markdown lengkap dengan rendering langsung, pratinjau tautan, dan kontrol pemformatan inline
- Paritas alur duplikasi — menggandakan produk membuka formulir terpadu yang sama yang sudah terisi sebelumnya, bukan dialog yang dipotong, sehingga Anda dapat menyesuaikan setiap kolom sebelum menyimpan salinan
Gunakan Duplikasi untuk membuat varian regional atau tingkat harga dari produk yang sudah ada tanpa memasukkan kembali deskripsi, metadata, atau konfigurasi pemenuhan.
6. Desain Ulang Halaman Pengaturan Bisnis
Halaman Pengaturan → Bisnis telah didesain ulang untuk membuat konfigurasi lebih mudah dipindai dan lebih cepat untuk diperbarui. Pengaturan sekarang dikelompokkan dalam bagian yang lebih jelas dengan keterangan yang menjelaskan dampak dari setiap toggle sebelum Anda mengaktifkannya.
Tidak ada perubahan perilaku pada pengaturan yang ada — hanya tata letak, pengelompokan, dan penjelasan sekitarnya yang telah ditingkatkan.
Perbaikan
- Penggantian
credits_amount sekarang dipropagasi dengan benar ke rute sesi checkout dan tautan pembayaran GET — ketika sesi checkout atau tautan pembayaran dibuat dengan penggantian credit_entitlements per-checkout, mengambil sesi atau tautan tersebut melalui GET mengembalikan credits_amount default tingkat produk alih-alih nilai yang diganti. Ini sekarang telah diperbaiki.
- Aksi pengembalian dana dinonaktifkan untuk pembayaran yang sepenuhnya dikembalikan — tombol Pengembalian Dana pada pembayaran sekarang dinonaktifkan setelah pembayaran sepenuhnya dikembalikan, dengan tooltip yang menjelaskan alasannya. Sebelumnya tombol tetap aktif dan mengembalikan kesalahan hanya setelah pengiriman.
- Perbaikan bug kecil dan peningkatan stabilitas di seluruh platform.