Skip to main content

Checkout Handler

Integrasikan checkout Dodo Payments ke dalam aplikasi Tanstack Anda.

Customer Portal

Izinkan pelanggan mengelola langganan dan detailnya.

Webhooks

Terima dan proses event webhook Dodo Payments.

Instalasi

1

Install the package

Jalankan perintah berikut di root proyek Anda:
2

Set up environment variables

Buat berkas .env di root proyek Anda:
Jangan pernah meng-commit berkas .env atau rahasia Anda ke version control.

Contoh Pengelola Rute

Semua contoh mengasumsikan Anda menggunakan Tanstack App Router.
Gunakan handler ini untuk mengintegrasikan checkout Dodo Payments ke dalam aplikasi Tanstack Anda. Mendukung alur pembayaran statis (GET), dinamis (POST), dan sesi (POST).

Pengelola Rute Checkout

Dodo Payments mendukung tiga jenis alur pembayaran untuk mengintegrasikan pembayaran ke situs web Anda, adaptor ini mendukung semua jenis alur pembayaran.
  • Tautan Pembayaran Statis: URL yang dapat dibagikan secara instan untuk pengumpulan pembayaran cepat tanpa kode.
  • Tautan Pembayaran Dinamis: Menghasilkan tautan pembayaran secara programatis dengan detail kustom menggunakan API atau SDK.
  • Sesi Checkout: Membuat pengalaman checkout yang aman dan dapat disesuaikan dengan keranjang produk dan detail pelanggan yang telah dikonfigurasi sebelumnya.

Parameter Query yang Didukung

string
wajib
Pengidentifikasi produk (misalnya ?productId=pdt_nZuwz45WAs64n3l07zpQR).
integer
Jumlah produk.
string
Nama lengkap pelanggan.
string
Nama depan pelanggan.
string
Nama belakang pelanggan.
string
Alamat email pelanggan.
string
Negara pelanggan.
string
Baris alamat pelanggan.
string
Kota pelanggan.
string
Negara bagian/provinsi pelanggan.
string
Kode pos/petik pelanggan.
boolean
Nonaktifkan kolom nama lengkap.
boolean
Nonaktifkan kolom nama depan.
boolean
Nonaktifkan kolom nama belakang.
boolean
Nonaktifkan kolom email.
boolean
Nonaktifkan kolom negara.
boolean
Nonaktifkan kolom baris alamat.
boolean
Nonaktifkan kolom kota.
boolean
Nonaktifkan kolom negara bagian.
boolean
Nonaktifkan kolom kode pos.
string
Tentukan mata uang pembayaran (misalnya USD).
boolean
Tampilkan pemilih mata uang.
integer
Tentukan jumlah pembayaran (misalnya 1000 untuk $10.00).
boolean
Tampilkan kolom diskon.
string
Setiap parameter query yang dimulai dengan metadata_ akan diteruskan sebagai metadata.
Jika productId hilang, handler mengembalikan respons 400. Parameter query yang tidak valid juga menghasilkan respons 400.

Format Respons

Checkout statis mengembalikan respons JSON dengan URL checkout:

Format Respons

Checkout dinamis mengembalikan respons JSON dengan URL checkout:
Sesi checkout menyediakan pengalaman checkout yang lebih aman dan di-hosting yang menangani seluruh alur pembayaran untuk pembelian satu kali maupun langganan dengan kontrol kustomisasi penuh.Lihat Panduan Integrasi Sesi Checkout untuk detail lebih lanjut dan daftar lengkap bidang yang didukung.

Format Respons

Sesi checkout mengembalikan respons JSON dengan URL checkout:

Pengelola Rute Portal Pelanggan

Pengelola Rute Portal Pelanggan memungkinkan Anda untuk mengintegrasikan portal pelanggan Dodo Payments ke dalam aplikasi Tanstack Anda dengan mulus.

Parameter Query

string
wajib
ID pelanggan untuk sesi portal (misalnya ?customer_id=cus_123).
boolean
Jika diatur ke true, mengirim email ke pelanggan dengan tautan portal.
Mengembalikan 400 jika customer_id hilang.

Pengelola Rute Webhook

  • Metode: Hanya permintaan POST yang didukung. Metode lain mengembalikan 405.
  • Verifikasi Tanda Tangan: Memverifikasi tanda tangan webhook menggunakan webhookKey. 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
  • Pengarahan Acara: Memanggil pengelola acara yang sesuai berdasarkan jenis payload.

Handler Event Webhook yang Didukung


Prompt untuk LLM

Terakhir diubah pada 22 Mei 2026