المقدمة
نفذ سير العمل والبرامج النصية المخصصة في طاحونة الهواء عند حدوث أحداث الدفع. قم بتشغيل عمليات قاعدة البيانات، إرسال الإشعارات، معالجة البيانات، وأتمتة منطق الأعمال المعقد باستخدام محرك سير العمل القوي في طاحونة الهواء.
تتطلب هذه التكامل عنوان URL الخاص بويب هوك Windmill من تكوين سير العمل الخاص بك.
البدء
Open the Webhook Section
في لوحة تحكم Dodo Payments، انتقل إلى Webhooks → + Add Endpoint وقم بتوسيع قائمة التكاملات.
Select Windmill
اختر بطاقة التكامل Windmill .
Create Windmill Workflow
في Windmill، أنشئ سير عمل جديد ونسخ عنوان URL الخاص بويب هوك من تكوين المشغل.
Paste Webhook URL
الصق عنوان URL الخاص بويب هوك Windmill في تكوين نقطة النهاية.
Configure Transformation
حرر شفرة التحويل لتنسيق الأحداث لسير عمل Windmill الخاص بك.
Test & Create
اختبر باستخدام حمولات نموذجية وانقر على Create لتنشيط التكامل.
Done!
🎉 ستؤدي أحداث الدفع الآن إلى تشغيل سير عمل Windmill الخاص بك تلقائيًا.
أمثلة على كود التحويل
حمولة سير العمل الأساسية
function handler ( webhook ) {
if ( webhook . eventType === "payment.succeeded" ) {
const p = webhook . payload . data ;
webhook . payload = {
event_type: webhook . eventType ,
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" ,
timestamp: webhook . payload . timestamp ,
metadata: {
business_id: p . business_id ,
product_id: p . product_id
}
};
}
return webhook ;
}
See all 20 lines
معالج سير عمل الاشتراك
function handler ( webhook ) {
const s = webhook . payload . data ;
switch ( webhook . eventType ) {
case "subscription.active" :
webhook . payload = {
event_type: "subscription_started" ,
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 ,
customer_id: s . customer . customer_id ,
timestamp: webhook . payload . timestamp
};
break ;
case "subscription.cancelled" :
webhook . payload = {
event_type: "subscription_cancelled" ,
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 ,
customer_id: s . customer . customer_id ,
timestamp: webhook . payload . timestamp
};
break ;
}
return webhook ;
}
See all 31 lines
معالج سير عمل النزاع
function handler ( webhook ) {
if ( webhook . eventType . startsWith ( "dispute." )) {
const d = webhook . payload . data ;
webhook . payload = {
event_type: webhook . eventType ,
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" ,
business_id: d . business_id ,
timestamp: webhook . payload . timestamp
};
}
return webhook ;
}
See all 18 lines
حالات استخدام طاحونة الهواء الشائعة
تحديث سجلات العملاء في PostgreSQL/MySQL
تسجيل أحداث الدفع إلى مخازن البيانات
مزامنة البيانات مع الأنظمة الخارجية
تحديث مستويات المخزون
تتبع مقاييس التحليلات
حساب مقاييس الإيرادات
معالجة المردودات والتعديلات
التعامل مع دورة حياة الاشتراك
إنشاء التقارير والتصديرات
التحقق من صحة بيانات الدفع
إرسال البيانات إلى منصات التحليلات
تحديث أنظمة إدارة علاقات العملاء
تشغيل حملات البريد الإلكتروني
إنشاء أحداث في التقويم
إرسال إشعارات SMS
نصائح
هيكل بيانات الحمولة لسهولة معالجة سير العمل
تضمين جميع البيانات الوصفية ذات الصلة لمنطق الأعمال
استخدام أسماء حقول متسقة عبر الأحداث
تضمين الطوابع الزمنية لتوقيت سير العمل
الاستفادة من معالجة الأخطاء المدمجة في طاحونة الهواء
استكشاف الأخطاء وإصلاحها
التأكد من صحة عنوان URL للويب هوك ونشاطه
التحقق من نشر سير عمل Windmill ونشاطه
التأكد من تطابق هيكل الحمولة مع توقعات سير العمل
مراجعة سجلات تنفيذ Windmill للأخطاء
التحقق من تعيين معلمات إدخال سير العمل
التأكد من تطابق أنواع البيانات مع التنسيقات المتوقعة
اختبار سير العمل ببيانات نموذجية
مراجعة سجلات تنفيذ نصوص Windmill