Skip to main content

Checkout Handler

Integrasikan checkout Dodo Payments ke dalam aplikasi Astro Anda.

Customer Portal

Izinkan pelanggan mengelola langganan dan detail mereka.

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 file .env di root proyek Anda:
Jangan pernah commit file .env atau secret Anda ke version control.

Contoh Route Handler

Semua contoh mengasumsikan Anda menggunakan Astro App Router.
Gunakan handler ini untuk mengintegrasikan checkout Dodo Payments ke dalam aplikasi Astro Anda. Mendukung alur pembayaran static (GET), dynamic (POST), dan session (POST).

Checkout Route Handler

Dodo Payments mendukung tiga jenis alur pembayaran untuk mengintegrasikan pembayaran ke situs web Anda; adaptor ini mendukung semua jenis alur pembayaran.
  • Payment Links Statis: URL yang dapat langsung dibagikan untuk pengumpulan pembayaran yang cepat dan tanpa kode.
  • Payment Links Dinamis: Buat payment link secara terprogram dengan detail khusus menggunakan API atau SDK.
  • Checkout Sessions: Buat pengalaman checkout yang aman dan dapat disesuaikan dengan keranjang produk dan detail pelanggan yang telah dikonfigurasi sebelumnya.

Query Parameters yang Didukung

string
wajib
Identifier 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 pelanggan.
boolean
Nonaktifkan field nama lengkap.
boolean
Nonaktifkan field nama depan.
boolean
Nonaktifkan field nama belakang.
boolean
Nonaktifkan field email.
boolean
Nonaktifkan field negara.
boolean
Nonaktifkan field baris alamat.
boolean
Nonaktifkan field kota.
boolean
Nonaktifkan field negara bagian.
boolean
Nonaktifkan field kode pos.
string
Tentukan currency pembayaran (misalnya, USD).
boolean
Tampilkan pemilih currency.
integer
Tentukan jumlah pembayaran (misalnya, 1000 untuk $10.00).
boolean
Tampilkan field diskon.
string
Query parameter apa pun yang diawali dengan metadata_ akan diteruskan sebagai metadata.
Jika productId tidak ada, handler mengembalikan response 400. Query parameter yang tidak valid juga menghasilkan response 400.

Format Response

Checkout statis mengembalikan response JSON dengan URL checkout:

Format Response

Checkout dinamis mengembalikan response JSON dengan URL checkout:
Checkout sessions menyediakan pengalaman checkout yang di-host dan lebih aman, yang menangani seluruh alur pembayaran untuk pembelian satu kali maupun langganan dengan kontrol kustomisasi penuh.Lihat Panduan Integrasi Checkout Sessions untuk detail lebih lanjut dan daftar lengkap field yang didukung.

Format Response

Checkout sessions mengembalikan response JSON dengan URL checkout:

Customer Portal Route Handler

Customer Portal Route Handler memungkinkan Anda mengintegrasikan customer portal Dodo Payments ke dalam aplikasi Astro Anda dengan lancar.

Query Parameters

string
wajib
ID pelanggan untuk sesi portal (misalnya, ?customer_id=cus_123).
boolean
Jika diatur ke true, email berisi link portal akan dikirim kepada pelanggan.
Mengembalikan 400 jika customer_id tidak ada.

Webhook Route Handler

  • Method: Hanya request POST yang didukung. Method lainnya mengembalikan 405.
  • Signature Verification: Memverifikasi signature webhook menggunakan webhookKey. Mengembalikan 401 jika verifikasi gagal.
  • Payload Validation: Divalidasi dengan Zod. Mengembalikan 400 untuk payload yang tidak valid.
  • Error Handling:
    • 401: Signature tidak valid
    • 400: Payload tidak valid
    • 500: Error internal selama verifikasi
  • Event Routing: Memanggil event handler yang sesuai berdasarkan tipe payload.

Event Handler Webhook yang Didukung


Prompt untuk LLM

Terakhir diubah pada 21 Juli 2026