Skip to main content

SDKs & Libraries

SDK backend resmi untuk TypeScript, Python, Go, PHP, Java, Kotlin, C#, Ruby, dan Rust. Library ini menangani autentikasi, serialisasi, dan penanganan error sehingga Anda dapat berfokus pada integrasi.

Mobile Checkout SDKs

Buka hosted checkout Dodo dari aplikasi Android, iOS, React Native, dan Flutter, lalu dapatkan hasil bertipe dalam satu panggilan. SDK ini tidak menyimpan API key.

URL Environment

  • Test Mode: https://test.dodopayments.com
  • Live Mode: https://live.dodopayments.com
Pelajari lebih lanjut tentang Test Mode vs Live Mode.

Autentikasi

Permintaan API memerlukan API key, kecuali beberapa endpoint publik seperti Activate License, Validate License, dan Deactivate License. Buat API key di dashboard Anda dan sertakan di header Authorization pada setiap permintaan.
1

Generate an API Key

Buka Developer → API Keys di dashboard Anda dan pilih Add API Key. Buat key dalam mode yang ingin Anda panggil: test mode key hanya berfungsi dengan https://test.dodopayments.com, sedangkan live mode key hanya berfungsi dengan https://live.dodopayments.com. Berikan nama deskriptif untuk key dan pilih tingkat akses Anda:
  • Enable write access dicentang (default): Izin baca dan tulis penuh untuk semua operasi API.
  • Enable write access tidak dicentang: Akses hanya-baca. Anda dapat mengambil data (payment, subscription, customer, product), tetapi tidak dapat membuat atau mengubah resource.
Hapus centang Enable write access untuk integrasi yang hanya perlu melihat data, seperti alat analytics atau integrasi dashboard.
2

Store Your Key Securely

Salin key segera. Anda tidak akan dapat melihatnya lagi. Simpan di environment variable seperti DODO_PAYMENTS_API_KEY.
3

Authenticate Requests

Sertakan API key Anda di header Authorization pada setiap request:
Jangan pernah mengekspos API key Anda dalam kode client-side, repository publik, atau version control.

Format Response

Request yang berhasil mengembalikan 200 atau 201 dengan body JSON, atau 204 tanpa body. Error mengembalikan status 4xx atau 5xx dengan body JSON yang berisi code dan message.

Rate Limits

API menerapkan dua limit sekaligus: limit burst per detik dan limit berkelanjutan per menit. Limit berlaku untuk seluruh bisnis Anda, di semua API key miliknya, dan bergantung pada tier rate limit bisnis Anda.

Tier Default

Tier Lebih Tinggi

Bisnis dengan kebutuhan API yang lebih besar dapat meningkatkan rate limit ke tier yang lebih tinggi:
Untuk meningkatkan tier rate limit, kirim email ke support@dodopayments.com.

Request Tanpa Autentikasi

Request tanpa API key yang valid dibatasi berdasarkan alamat IP:

Header Rate Limit

Response menyertakan header yang menunjukkan penggunaan Anda saat ini:
  • X-RateLimit-Limit — Jumlah maksimum request yang diizinkan dalam window saat ini.
  • X-RateLimit-Remaining — Jumlah request yang tersisa sebelum Anda mencapai limit.
  • X-RateLimit-Reset — Jumlah detik hingga window saat ini di-reset.
Saat melebihi limit, API mengembalikan 429 Too Many Requests. Terapkan exponential backoff dalam logika retry Anda.

Penanganan Error

Untuk mengetahui arti sebuah error dan cara mengatasinya, lihat halaman kode error dan transaction failures.

Error Codes

Daftar lengkap kode error dan artinya.

Transaction Failures

Masalah transaction yang umum dan cara menanganinya.

Webhook

Terima notifikasi real-time saat payment, subscription, dan event lainnya terjadi. Siapkan webhook di dashboard Anda dan tangani event yang diperlukan oleh integrasi Anda.

Webhook Guide

Siapkan webhook, tangani event, dan verifikasi signature.

Panduan Integrasi

Mulai dengan salah satu panduan berikut untuk membuat integrasi pertama Anda:

One-time Payments

Buat checkout session, payment link, dan tangani payment.

Subscriptions

Siapkan recurring billing, kelola plan, dan tangani event lifecycle.

Usage-Based Billing

Ukur penggunaan dan kenakan biaya kepada customer berdasarkan konsumsi.

Checkout Sessions

Buat pengalaman checkout yang aman dan di-host.
Terakhir diubah pada 26 September 2026