Produk adalah dasar dari Dodo Payments. Apakah Anda menjual unduhan sekali pakai, langganan berulang, atau akses berbasis pemakaian, Anda memulainya dengan membuat sebuah produk. Setiap produk menentukan cara penetapan harganya, penyajiannya di halaman checkout, dan pemenuhannya setelah pembelian.
One‑Time
Kenakan biaya sekali untuk akses seumur hidup atau barang tunggal.
Subscriptions
Tagih sesuai jadwal dengan uji coba, prorata, dan tambahan.
Usage‑Based
Mengukur konsumsi dan tagihan berdasarkan penggunaan sebenarnya.
Buat produk
Anda dapat membuat produk dari dasbor atau melalui API. Pilih model harga di awal, Satu Kali, Langganan, atau Berbasis Penggunaan dan kemudian konfigurasikan detailnya. Model harga tidak dapat diubah setelahnya; buat produk baru jika Anda memerlukan model yang berbeda.1
Name & description
Berikan judul yang jelas dan deskripsi bernilai singkat. Deskripsi mendukung Markdown.

2
Pricing model & price
Pilih model harga:
- Satu Kali: Harga tetap dibayar sekali.
- Langganan: Harga berulang dengan interval dan percobaan opsional.
- Berbasis Penggunaan: Harga berasal dari peristiwa yang diukur.
- Harga: Jumlah dasar dan mata uang. Anda dapat menetapkan harga dasar dalam mata uang apa pun yang dapat ditagihkan oleh Dodo Payments, bukan hanya USD. Gunakan pemilih mata uang yang dapat dicari untuk menemukan mata uang; USD, GBP, EUR, dan INR disematkan di bagian atas daftar.
- Diskon (%): Diskon inline opsional yang ditampilkan di checkout dan invoice.
- Untuk subscription, tetapkan Ulangi setiap (misalnya, 1 bulan atau 1 tahun), Hari uji coba, dan Jumlah uji coba opsional untuk paid trial. Harga subscription harus setidaknya $1 (atau setara dalam mata uang yang Anda pilih); jumlah di bawah minimum ini tidak didukung dan subscription tidak akan berfungsi.
Pelanggan di luar mata uang dasar Anda tetap ditagih melalui Adaptive Currency, sehingga Anda dapat membuat harga dalam mata uang yang paling sesuai dengan pasar tanpa mengubah cara pembeli ditagih.
3
Product media
Unggah gambar untuk menampilkan produk di checkout dan invoice. PNG/JPG/WebP hingga 3 MB didukung. Urutkan ulang atau ganti kapan saja.
4
Automated entitlements (Under Advanced Settings)
Lampirkan fulfillment yang aktif secara otomatis setelah pembayaran:
- License Keys: Terbitkan dan validasi key unik
- File Downloads: Berikan akses file yang aman
- Custom: Picu logika entitlement Anda sendiri melalui webhook
Varian dan opsi harga
Daripada membuat varian di bawah satu produk, buat produk terpisah untuk setiap opsi harga (misalnya, Monthly dan Yearly). Kemudian kelompokkan produk tersebut ke dalam Product Collection untuk menampilkan semua opsi dalam satu checkout dan mengaktifkan perpindahan paket di Customer Portal.
Mengapa pendekatan ini?
- Model harga yang jelas: Setiap produk memiliki satu model harga yang terdefinisi dengan baik (one-time, subscription, atau berbasis penggunaan)
- API yang dapat diprediksi: Integrasi lebih sederhana tanpa logika varian bertingkat
- Pelaporan lebih mudah: Lacak pendapatan dan metrik per produk tanpa agregasi varian
- Checkout fleksibel: Tampilkan beberapa produk berdampingan, sehingga pelanggan dapat membandingkan dan memilih
Cara kerja Product Collections
- Buat produk: Siapkan produk individual untuk setiap paket (misalnya, Starter Monthly, Starter Annual, Pro Monthly, Pro Annual)
- Kelompokkan ke dalam collection: Tambahkan produk terkait ke Product Collection
- Checkout terpadu: Pelanggan melihat semua opsi dalam satu checkout dan memilih paket yang diinginkan
- Perpindahan paket: Pelanggan dapat upgrade atau downgrade antarproduk dalam collection yang sama melalui Customer Portal
Product Collections
Kelompokkan produk terkait untuk pengalaman checkout terpadu serta alur upgrade/downgrade yang lancar.
Mengelola produk
Anda dapat mengelola produk melalui dashboard atau secara programatis melalui API. API menyediakan kontrol penuh atas pembuatan, pembaruan, pengambilan, pengunggahan gambar, dan pengarsipan produk.Pengelolaan melalui Dashboard
- Perbarui: Edit nama, deskripsi, gambar, harga, field, dan benefit kapan saja (model harga tidak dapat diubah).
- Arsipkan: Sembunyikan produk dari pembelian baru tanpa mengganggu pelanggan yang sudah ada. Anda dapat membatalkan pengarsipan nanti.
- Draft: Produk yang sedang dikerjakan disimpan sebagai draft sehingga Anda dapat melanjutkannya nanti. Draft disimpan secara terpisah untuk test mode dan live mode, sehingga produk yang belum selesai dalam satu mode tidak pernah masuk ke mode lainnya. Gunakan Clear Draft untuk membuangnya dan memulai dari awal.
Pengelolaan melalui API
Petunjuk berikut memungkinkan Anda membuat, memperbarui, mengelola, dan mengambil produk, termasuk mengunggah gambar.Creating a Product
Creating a Product
Produk dapat berupa item one-time atau layanan berbasis subscription. Untuk membuat produk baru, kirim request
POST ke endpoint /products dengan detail seperti nama, deskripsi, harga, mata uang, dan apakah produk tersebut recurring.Untuk produk recurring, tetapkan object price ke harga recurring (type: recurring_price) dan tentukan payment_frequency_interval serta subscription_period_interval (Day, Week, Month, atau Year) beserta jumlah masing-masing.Create Product API
Lihat struktur request dan response secara mendetail di dokumentasi Create Product API.
Updating a Product
Updating a Product
Untuk mengubah produk yang sudah ada, kirim request
PATCH ke endpoint /products/{product_id}. Anda dapat memperbarui properti seperti nama, harga, dan deskripsi dengan mempertahankan detail lainnya.Pastikan product_id di endpoint cocok dengan produk yang sudah ada.Update Product API
Lihat struktur request dan response secara mendetail di dokumentasi Update Product API.
Retrieving Products
Retrieving Products
Anda dapat mengambil daftar produk yang tersimpan di akun menggunakan request
GET ke endpoint /products. Ini memungkinkan Anda mengambil detail produk, termasuk produk aktif dan yang diarsipkan.Retrieve Products API
Lihat struktur request dan response secara mendetail di dokumentasi Retrieve Products API.
Uploading Product Images
Uploading Product Images
Anda dapat mengaitkan gambar dengan produk dengan mengunggahnya ke AWS S3 menggunakan pre-signed URL yang disediakan oleh API. Pertama, minta URL pengunggahan gambar dari endpoint
/products/{product_id}/images, lalu gunakan URL yang diberikan untuk mengunggah gambar dalam waktu 60 detik.Setelah pre-signed URL diterima dari API, unggah gambar menggunakan method PUT. Ini memastikan akses yang aman dan sementara ke AWS S3 untuk mengunggah gambar.Library yang didukung untuk mengunggah ke S3:- Node.js:
axios,node-fetch - Python:
requests,boto3 - Go:
net/http - PHP:
GuzzleHttp - Ruby:
rest-client
200 OK, yang menunjukkan bahwa gambar telah berhasil disimpan.Upload Product Image API
Lihat struktur request dan response secara mendetail di dokumentasi Upload Product Image API.
Archiving a Product
Archiving a Product
Jika Anda tidak lagi ingin menampilkan atau menggunakan produk, Anda dapat mengarsipkannya menggunakan request
DELETE ke endpoint /products/{id}. Tindakan ini menyembunyikan produk, tetapi tidak menghapusnya secara permanen.Archive Product API
Lihat struktur request dan response secara mendetail di dokumentasi Archive Product API.
Unarchiving a Product
Unarchiving a Product
Jika Anda perlu memulihkan produk yang diarsipkan, kirim request
POST ke endpoint /products/{product_id}/unarchive. Ini akan mengaktifkan kembali produk dan membuatnya tersedia untuk digunakan kembali.Unarchive Product API
Lihat struktur request dan response secara mendetail di dokumentasi Unarchive Product API.
Checkout & fulfillment
Checkout & fulfillment
Buat alur pembayaran atau subscription dari produk, lalu lakukan fulfillment secara otomatis melalui benefit dan webhook.
Checkout Sessions
Buat checkout session untuk pembelian one-time atau subscription.
Payment Webhooks
Tanggapi event siklus pembayaran.
Subscription Webhooks
Tangani event subscription yang dibuat, diperbarui, dan dibatalkan.
Praktik terbaik
- Mulai dengan kejelasan: Pisahkan produk untuk setiap opsi harga (Monthly vs Yearly)
- Gunakan trial dengan bijak: Padukan trial dengan onboarding untuk mendorong aktivasi
- Otomatiskan fulfillment: Gunakan benefit dan webhook untuk mengirimkan akses secara instan
- Tambahkan tag metadata: Simpan ID sistem Anda untuk rekonsiliasi
Anda siap membuat produk dan mulai menjual — secara one-time, recurring, atau berdasarkan penggunaan.
Terkait
Product Analytics
Lacak pendapatan, pelanggan, retensi, subscriber, dan MRR untuk setiap produk.
Localized Pricing
Tetapkan harga tetap per mata uang atau per negara pada produk, alih-alih mengandalkan nilai tukar langsung.