Kelola sumber daya Dodo Payments Anda, buat sesi checkout, dan uji webhook langsung dari terminal. Dirancang untuk pengembang yang lebih suka baris perintah.
Instalasi
npm install -g dodopayments-cli
Instalasi Manual
- Unduh rilis terbaru dari GitHub Releases untuk sistem Anda
- Ekstrak dan ubah nama binari menjadi
dodo
- Pindahkan ke direktori di PATH Anda:
sudo mv ./dodo /usr/local/bin/
Autentikasi
Sebelum menggunakan CLI, autentikasi dengan kunci API Anda:
This will:
- Buka browser Anda ke halaman API Keys Dodo Payments
- Meminta Anda memasukkan Kunci API Anda
- Meminta Anda memilih lingkungan (Test Mode atau Live Mode)
- Menyimpan kredensial Anda secara lokal ke
~/.dodopayments/api-key
CLI mendukung menyimpan satu kunci API per lingkungan. Jika kedua kunci mode tes dan mode langsung dikonfigurasi, Anda akan diminta untuk memilih lingkungan mana yang akan digunakan untuk sesi saat ini.
Penggunaan
Sintaks umum adalah:
dodo ‹category› ‹sub-command›
Menjalankan dodo tanpa argumen menampilkan semua kategori yang tersedia. Menjalankan dodo <category> tanpa subperintah menunjukkan subperintah yang tersedia untuk kategori tersebut.
Produk
Kelola katalog produk Anda.
| Command | Description |
|---|
dodo products list | Daftar semua produk (dipaginasi) |
dodo products create | Buka dasbor untuk membuat produk |
dodo products info | Lihat detail produk tertentu |
Payments
Lihat transaksi pembayaran.
| Command | Description |
|---|
dodo payments list | Daftar semua pembayaran (dipaginasi) |
dodo payments info | Dapatkan informasi tentang pembayaran tertentu |
Customers
Kelola basis pelanggan Anda.
| Command | Description |
|---|
dodo customers list | Daftar semua pelanggan (dipaginasi) |
dodo customers create | Buat profil pelanggan baru |
dodo customers update | Perbarui detail pelanggan yang ada |
Discounts
Kelola kupon dan diskon.
| Command | Description |
|---|
dodo discounts list | Daftar semua diskon (dipaginasi) |
dodo discounts create | Buat diskon berbasis persentase baru |
dodo discounts delete | Hapus diskon berdasarkan ID |
Licenses
Kelola lisensi perangkat lunak.
| Command | Description |
|---|
dodo licences list | Daftar semua kunci lisensi (dipaginasi) |
Addons
Kelola addon produk.
| Command | Description |
|---|
dodo addons list | Daftar semua addon (dipaginasi) |
dodo addons create | Buka dasbor untuk membuat addon |
dodo addons info | Lihat detail addon tertentu |
Refunds
Lihat informasi pengembalian dana.
| Command | Description |
|---|
dodo refund list | Daftar semua pengembalian dana (dipaginasi) |
dodo refund info | Lihat detail pengembalian dana tertentu |
Checkout
Buat sesi checkout.
| Command | Description |
|---|
dodo checkout new | Buat sesi checkout baru dan dapatkan URL checkout |
Perintah checkout mendukung opsi lanjutan termasuk pengumpulan alamat minimal, URL pengembalian, penerapan 3D Secure, kode diskon, dan metadata.
Pengujian Webhook
CLI menyertakan dua alat kuat untuk menguji webhook selama pengembangan: sebuah listener yang meneruskan webhook uji langsung ke server lokal Anda, dan sebuah trigger yang mengirim payload webhook tiruan ke endpoint mana pun.
Dengarkan Webhook
Teruskan webhook dari Dodo Payments langsung ke server pengembangan lokal Anda secara real time.
Enter your local endpoint URL
Berikan URL lokal tempat Anda ingin menerima webhook (misalnya, http://localhost:3000/webhook).
Automatic setup
CLI secara otomatis membuat endpoint webhook di akun Dodo Payments Anda jika belum ada, lalu membuka koneksi WebSocket untuk menerima peristiwa secara real time.
Receive and forward
Ketika event webhook terjadi (dari pembayaran uji, perubahan langganan, dll.), CLI menerimanya, mencatat jenis event, dan meneruskan permintaan lengkap beserta header dan body ke endpoint lokal Anda. Respons dari endpoint Anda dicatat dan dikirim kembali.
Listener webhook hanya berfungsi dengan kunci API mode uji. Pastikan Anda masuk dengan kunci mode uji sebelum menggunakan dodo wh listen.
Listener menjaga header webhook asli (webhook-id, webhook-signature, webhook-timestamp) saat meneruskan ke endpoint lokal Anda, sehingga Anda dapat menguji logika verifikasi tanda tangan.
Memicu Webhook Uji
Kirim payload webhook tiruan ke endpoint apa pun untuk pengujian cepat tanpa perlu membuat transaksi nyata.
Ini memandu Anda melalui:
- Mengatur URL endpoint tujuan
- Opsional mengonfigurasi Business ID, Product ID, dan Metadata
- Memilih peristiwa tertentu untuk dipicu dari menu interaktif
- Mengirim payload tiruan dan melihat respons
Setelah setiap event, Anda dapat memilih event lain untuk dipicu atau keluar — sehingga mudah menguji beberapa handler event dalam satu sesi.
Alat trigger mengirim payload tiruan tanpa tanda tangan webhook. Nonaktifkan verifikasi tanda tangan webhook selama pengujian dengan menggunakan unsafe_unwrap() alih-alih unwrap() dalam handler webhook Anda.
Peristiwa Webhook yang Didukung
| Category | Events |
|---|
| Subscription | subscription.active, subscription.updated, subscription.on_hold, subscription.renewed, subscription.plan_changed, subscription.cancelled, subscription.failed, subscription.expired |
| Payment | payment.success, payment.failed, payment.processing, payment.cancelled |
| Refund | refund.success, refund.failed |
| Dispute | dispute.opened, dispute.expired, dispute.accepted, dispute.cancelled, dispute.challenged, dispute.won, dispute.lost |
| License | licence.created |
Variabel Lingkungan
| Variable | Description |
|---|
DODO_WH_TEST_SERVER_URL | Menimpa URL server relay webhook default yang digunakan oleh dodo wh listen |
Sumber Daya
Dukungan