Langsung ke konten utama

Checkout API Route

Integrasikan Dodo Payments checkout ke dalam aplikasi Nuxt Anda menggunakan routing server.

Customer Portal API Route

Biarkan pelanggan mengelola langganan dan detail melalui routing server Nuxt.

Webhooks API Route

Terima dan proses event webhook Dodo Payments dengan aman di Nuxt.

Ikhtisar

Panduan ini menjelaskan cara mengintegrasikan Dodo Payments ke aplikasi Nuxt Anda menggunakan modul resmi Nuxt. Anda akan mempelajari cara mengatur checkout, portal pelanggan, dan rute API webhook, serta cara mengelola variabel lingkungan dengan aman.

Instalasi

1

Install the Nuxt module

Jalankan perintah berikut di root proyek Anda:
2

Register the module in nuxt.config.ts

Tambahkan @dodopayments/nuxt ke array modules Anda dan konfigurasikan:
nuxt.config.ts
Jangan pernah meng-commit file .env atau rahasia Anda ke sistem kontrol versi.

Contoh Penangan Rute API

Semua integrasi Dodo Payments di Nuxt ditangani melalui rute server di direktori server/routes/api/.
Gunakan handler ini untuk mengintegrasikan checkout Dodo Payments ke aplikasi Nuxt Anda. Mendukung aliran pembayaran statis (GET), dinamis (POST), dan sesi (POST).
Jika productId hilang atau tidak valid, handler mengembalikan respons 400.

Penangan Rute Checkout

Dodo Payments mendukung tiga jenis aliran pembayaran untuk mengintegrasikan pembayaran ke situs web Anda, adaptor ini mendukung semua jenis aliran 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.

Supported Query Parameters

productId
string
wajib
Identifikasi produk (misalnya, ?productId=pdt_nZuwz45WAs64n3l07zpQR).
quantity
integer
Jumlah produk.
fullName
string
Nama lengkap pelanggan.
firstName
string
Nama depan pelanggan.
lastName
string
Nama belakang pelanggan.
email
string
Alamat email pelanggan.
country
string
Negara pelanggan.
addressLine
string
Alamat pelanggan.
city
string
Kota pelanggan.
state
string
Negara bagian/provinsi pelanggan.
zipCode
string
Kode pos pelanggan.
disableFullName
boolean
Nonaktifkan kolom nama lengkap.
disableFirstName
boolean
Nonaktifkan kolom nama depan.
disableLastName
boolean
Nonaktifkan kolom nama belakang.
disableEmail
boolean
Nonaktifkan kolom email.
disableCountry
boolean
Nonaktifkan kolom negara.
disableAddressLine
boolean
Nonaktifkan kolom alamat.
disableCity
boolean
Nonaktifkan kolom kota.
disableState
boolean
Nonaktifkan kolom negara bagian.
disableZipCode
boolean
Nonaktifkan kolom kode pos.
paymentCurrency
string
Tentukan mata uang pembayaran (misalnya, USD).
showCurrencySelector
boolean
Tampilkan pemilih mata uang.
paymentAmount
integer
Tentukan jumlah pembayaran (misalnya, 1000 untuk $10,00).
showDiscounts
boolean
Tampilkan kolom diskon.
metadata_*
string
Setiap parameter kueri yang dimulai dengan metadata_ akan diteruskan sebagai metadata.
Jika productId hilang, handler mengembalikan respons 400. Parameter kueri 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 memberikan pengalaman checkout yang lebih aman dan dihosting, yang menangani seluruh alur pembayaran untuk pembelian satu kali dan langganan dengan kendali 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:

Penangan Rute Portal Pelanggan

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

Parameter Kuery

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

Penangan 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
  • Rute Acara: Memanggil penangan acara yang sesuai berdasarkan jenis payload.

Penangan Event Webhook yang Didukung


Prompt untuk LLM

Terakhir diubah pada 22 Mei 2026