Pendahuluan
Jalankan fungsi Inngest dan pekerjaan latar belakang saat event pembayaran terjadi. Dodo Payments mengirim setiap event ke Inngest, tempat fungsi Anda dapat mengirim notifikasi, memperbarui database, dan menjalankan alur kerja multi-langkah dengan fitur percobaan ulang dan penanganan error Inngest.Anda memerlukan URL webhook Inngest. Buat URL tersebut di dasbor Inngest melalui Manage → Webhooks.
Memulai
1
Open the Webhook Section
Di dasbor Dodo Payments, buka Developer → Webhooks dan klik Add endpoint.

2
Select Inngest
Di Integration, pilih Inngest. Di bagian Subscribed events, pilih event yang harus memicu fungsi Anda.
3
Create an Inngest Webhook
Di dasbor Inngest, buka tab Manage dan pilih Webhooks. Buat webhook dan salin URL-nya. Inngest menjalankan fungsi transformasi webhook pada setiap request, jadi pastikan fungsi tersebut tetap menyertakan field
name dan data yang diharapkan fungsi Anda.4
Paste Webhook URL
Tempel URL webhook Inngest ke Endpoint URL.
5
Configure Transformation
Di Transformation code, edit kode untuk memformat event untuk fungsi Inngest Anda. Lihat contoh di bawah.
6
Test & Create
Di bagian Test this code, pilih jenis event dan klik Simulate untuk menjalankan transformasi menggunakan sample payload. Kemudian klik Create endpoint untuk mengaktifkan integrasi.
7
Done
Event Dodo Payments sekarang memicu fungsi Inngest Anda.
Contoh Kode Transformasi
Setiap contoh menulis ulangwebhook.payload menjadi event Inngest. name adalah event yang memicu fungsi Anda, data berisi detail event, user berisi data customer, dan ts adalah waktu event dalam milidetik, yang diperlukan oleh format event Inngest.
Basic Event Payload
basic_event.js
Subscription Event Handler
subscription_event.js
Dispute Event Handler
Handler ini meneruskan setiap eventdispute.* dan menandai dispute.opened sebagai urgent. Payload sengketa tidak menyertakan detail customer, jadi handler ini tidak mengirim objek user.
dispute_event.js
Kasus Penggunaan Inngest yang Umum
Payment Processing
Payment Processing
- Mengirim email konfirmasi
- Memperbarui data customer
- Memproses refund
- Membuat invoice
- Memperbarui inventaris
Subscription Management
Subscription Management
- Menyambut subscriber baru
- Memproses pembatalan
- Mengirim pengingat perpanjangan
- Memperbarui siklus penagihan
- Menangani pembayaran yang gagal
Analytics & Reporting
Analytics & Reporting
- Memperbarui metrik pendapatan
- Melacak perilaku customer
- Membuat laporan
- Menyinkronkan data ke platform analitik
- Menghitung tingkat churn
Tips
- Gunakan nama event yang deskriptif. Inngest merekomendasikan pemberian awalan berdasarkan sumber, seperti
dodo/payment.succeeded. - Letakkan detail customer di
user, yang dienkripsi Inngest saat disimpan. - Atur
tsdaritimestampmilik webhook, dalam milidetik, agar event mempertahankan urutan dan waktu aslinya. - Gunakan struktur data yang sama di seluruh event.
- Gunakan fitur percobaan ulang dan penanganan error Inngest.
Pemecahan Masalah
Functions not triggering
Functions not triggering
- Periksa apakah URL endpoint sesuai dengan URL webhook Inngest Anda dan webhook tersebut aktif.
- Periksa apakah fungsi Inngest Anda telah di-deploy dan aktif.
- Periksa apakah nama event sesuai dengan trigger fungsi Anda.
- Tinjau log fungsi Inngest untuk menemukan error.
Data not received correctly
Data not received correctly
- Periksa apakah struktur payload sesuai dengan format event Inngest.
- Periksa apakah nama event diformat dengan benar.
- Periksa apakah fungsi transformasi webhook Inngest tetap menyertakan field yang ditetapkan oleh transformasi Dodo Payments.
- Periksa apakah semua field yang diperlukan telah disertakan.
- Uji menggunakan alat pengujian webhook Inngest.