परिचय
भुगतान घटनाओं के होने पर स्वचालित रूप से सर्वर रहित कार्य और बैकग्राउंड जॉब्स निष्पादित करें। Inngest के विश्वसनीय कार्य निष्पादन प्लेटफ़ॉर्म के साथ भुगतान संसाधित करें, सूचनाएँ भेजें, डेटाबेस अपडेट करें, और जटिल कार्यप्रवाह चलाएँ।
इस एकीकरण के लिए आपके कार्य कॉन्फ़िगरेशन से Inngest वेबहुक URL की आवश्यकता है।
प्रारंभ करना
वेबहुक अनुभाग खोलें
अपने Dodo Payments डैशबोर्ड में, Webhooks → + Add Endpoint पर जाएँ और एकीकरण ड्रॉपडाउन का विस्तार करें।
Inngest चुनें
Inngest एकीकरण कार्ड चुनें।
Inngest कार्य बनाएँ
Inngest में, एक नया कार्य बनाएँ और कार्य कॉन्फ़िगरेशन से वेबहुक URL कॉपी करें।
वेबहुक URL चिपकाएँ
एंडपॉइंट कॉन्फ़िगरेशन में Inngest वेबहुक URL चिपकाएँ।
रूपांतरण कॉन्फ़िगर करें
अपने Inngest कार्य के लिए घटनाओं को स्वरूपित करने के लिए रूपांतरण कोड संपादित करें।
परीक्षण और बनाएँ
नमूना पेलोड के साथ परीक्षण करें और एकीकरण सक्रिय करने के लिए Create पर क्लिक करें।
हो गया!
🎉 भुगतान घटनाएँ अब स्वचालित रूप से आपके Inngest कार्यों को ट्रिगर करेंगी।
रूपांतरण कोड उदाहरण
बुनियादी घटना पेलोड
function handler ( webhook ) {
if ( webhook . eventType === "payment.succeeded" ) {
const p = webhook . payload . data ;
webhook . payload = {
name: "payment.succeeded" ,
data: {
payment_id: p . payment_id ,
amount: ( p . total_amount / 100 ). toFixed ( 2 ),
currency: p . currency || "USD" ,
customer_email: p . customer . email ,
customer_name: p . customer . name ,
payment_method: p . payment_method || "unknown"
},
user: {
email: p . customer . email
},
ts: Math . floor ( new Date ( webhook . payload . timestamp ). getTime () / 1000 )
};
}
return webhook ;
}
See all 21 lines
सदस्यता घटना हैंडलर
function handler ( webhook ) {
const s = webhook . payload . data ;
switch ( webhook . eventType ) {
case "subscription.active" :
webhook . payload = {
name: "subscription.started" ,
data: {
subscription_id: s . subscription_id ,
customer_email: s . customer . email ,
customer_name: s . customer . name ,
product_id: s . product_id ,
amount: ( s . recurring_pre_tax_amount / 100 ). toFixed ( 2 ),
frequency: s . payment_frequency_interval ,
next_billing: s . next_billing_date
},
user: {
email: s . customer . email
},
ts: Math . floor ( new Date ( webhook . payload . timestamp ). getTime () / 1000 )
};
break ;
case "subscription.cancelled" :
webhook . payload = {
name: "subscription.cancelled" ,
data: {
subscription_id: s . subscription_id ,
customer_email: s . customer . email ,
cancelled_at: s . cancelled_at ,
cancel_at_next_billing: s . cancel_at_next_billing_date
},
user: {
email: s . customer . email
},
ts: Math . floor ( new Date ( webhook . payload . timestamp ). getTime () / 1000 )
};
break ;
}
return webhook ;
}
See all 39 lines
विवाद घटना हैंडलर
function handler ( webhook ) {
if ( webhook . eventType . startsWith ( "dispute." )) {
const d = webhook . payload . data ;
webhook . payload = {
name: webhook . eventType ,
data: {
dispute_id: d . dispute_id ,
payment_id: d . payment_id ,
amount: ( d . amount / 100 ). toFixed ( 2 ),
status: d . dispute_status ,
stage: d . dispute_stage ,
remarks: d . remarks || "" ,
urgent: webhook . eventType === "dispute.opened"
},
user: {
email: d . customer ?. email || "unknown"
},
ts: Math . floor ( new Date ( webhook . payload . timestamp ). getTime () / 1000 )
};
}
return webhook ;
}
See all 22 lines
सामान्य Inngest उपयोग के मामले
पुष्टि ईमेल भेजें
ग्राहक रिकॉर्ड अपडेट करें
रिफंड संसाधित करें
चालान उत्पन्न करें
इन्वेंट्री अपडेट करें
नए ग्राहकों का स्वागत करें
रद्दीकरण संसाधित करें
नवीनीकरण अनुस्मारक भेजें
बिलिंग चक्र अपडेट करें
असफल भुगतानों को संभालें
राजस्व मैट्रिक्स अपडेट करें
ग्राहक व्यवहार ट्रैक करें
रिपोर्ट उत्पन्न करें
विश्लेषण प्लेटफार्मों के लिए डेटा समन्वयित करें
चर्न दरें गणना करें
सुझाव
बेहतर कार्य संगठन के लिए वर्णनात्मक घटना नामों का उपयोग करें
कार्य निष्पादन के लिए उपयोगकर्ता संदर्भ शामिल करें
घटना क्रम के लिए उचित समय मुहैया करें
घटनाओं के बीच डेटा को लगातार संरचना करें
Inngest की पुनः प्रयास और त्रुटि हैंडलिंग सुविधाओं का उपयोग करें
समस्या निवारण
सुनिश्चित करें कि वेबहुक URL सही और सक्रिय है
जांचें कि Inngest कार्य तैनात और सक्रिय है
सुनिश्चित करें कि घटना नाम कार्य ट्रिगर्स से मेल खाते हैं
त्रुटियों के लिए Inngest कार्य लॉग की समीक्षा करें
डेटा सही ढंग से प्राप्त नहीं हुआ
जांचें कि पेलोड संरचना Inngest की अपेक्षाओं से मेल खाती है
सुनिश्चित करें कि घटना नाम सही ढंग से स्वरूपित हैं
सुनिश्चित करें कि सभी आवश्यक फ़ील्ड शामिल हैं
Inngest के वेबहुक परीक्षण उपकरण के साथ परीक्षण करें