Langsung ke konten utama

Checkout Function

Integrasikan checkout Dodo Payments dengan alur berbasis sesi.

Customer Portal

Izinkan pelanggan mengelola langganan dan detail.

Webhooks

Terima dan proses peristiwa webhook Dodo Payments.

Instalasi

1

Install the package

Jalankan perintah berikut di root proyek Anda:
2

Add Component to Convex Config

Tambahkan komponen Dodo Payments ke konfigurasi Convex Anda:
Setelah mengedit convex.config.ts, jalankan npx convex dev sekali untuk menghasilkan tipe yang diperlukan.
3

Set up environment variables

Atur variabel lingkungan di dasbor Convex Anda (SettingsEnvironment Variables). Anda dapat mengakses dasbor dengan menjalankan:
Tambahkan variabel lingkungan berikut:
  • DODO_PAYMENTS_API_KEY - Kunci API Dodo Payments Anda
  • DODO_PAYMENTS_ENVIRONMENT - Atur ke test_mode atau live_mode
  • DODO_PAYMENTS_WEBHOOK_SECRET - Rahasia webhook Anda (diperlukan untuk penanganan webhook)
Selalu gunakan variabel lingkungan Convex untuk informasi sensitif. Jangan pernah menyertakan rahasia di version control.

Contoh Pengaturan Komponen

1

Create Internal Query

Pertama, buat query internal untuk mengambil pelanggan dari database Anda. Ini akan digunakan dalam fungsi pembayaran untuk mengidentifikasi pelanggan.
Sebelum menggunakan query ini, pastikan untuk mendefinisikan skema yang sesuai di file convex/schema.ts Anda atau ubah query agar sesuai dengan skema yang sudah ada.
2

Configure DodoPayments Component

Gunakan fungsi ini untuk mengintegrasikan checkout Dodo Payments ke dalam aplikasi Convex Anda. Menggunakan checkout berbasis sesi dengan dukungan fitur lengkap.

Fungsi Checkout

Komponen Convex Dodo Payments menggunakan checkout berbasis sesi, menyediakan pengalaman checkout yang aman dan dapat disesuaikan dengan keranjang produk dan detail pelanggan yang telah dikonfigurasi sebelumnya. Ini adalah pendekatan yang direkomendasikan untuk semua alur pembayaran.

Penggunaan

Lihat Sesi Checkout untuk detail lebih lanjut dan daftar lengkap bidang yang didukung.

Format Respons

Fungsi checkout mengembalikan respons JSON dengan URL checkout:

Fungsi Portal Pelanggan

Fungsi Portal Pelanggan memungkinkan Anda untuk mengintegrasikan portal pelanggan Dodo Payments ke dalam aplikasi Convex Anda dengan mulus.

Penggunaan

Parameter

send_email
boolean
Jika diatur ke true, mengirimkan email ke pelanggan dengan tautan portal.
Pelanggan secara otomatis diidentifikasi menggunakan fungsi identify yang dikonfigurasi dalam setup DodoPayments Anda. Fungsi ini harus mengembalikan dodoCustomerId pelanggan.

Penangan Webhook

  • Metode: Hanya permintaan POST yang didukung. Metode lain mengembalikan 405.
  • Verifikasi Tanda Tangan: Memverifikasi tanda tangan webhook menggunakan DODO_PAYMENTS_WEBHOOK_SECRET. Mengembalikan 401 jika verifikasi gagal.
  • Validasi Payload: Divalidasi dengan Zod. Mengembalikan 400 untuk payload yang tidak valid.
  • Penanganan Kesalahan:
    • 401: Tanda tangan tidak valid
    • 400: Payload tidak valid
    • 500: Kesalahan internal selama verifikasi
  • Rute Acara: Memanggil penangan acara yang sesuai berdasarkan jenis payload.

Penangan Event Webhook yang Didukung

Penggunaan Frontend

Gunakan fungsi checkout dari komponen React Anda dengan hook Convex.

Prompt untuk LLM

Terakhir diubah pada 4 Mei 2026