Skip to main content

المقدمة

شغّل دوال Inngest والمهام في الخلفية عند حدوث أحداث الدفع. يرسل Dodo Payments كل حدث إلى Inngest، حيث يمكن لدوالك إرسال الإشعارات وتحديث قواعد البيانات وتشغيل سير العمل متعدد الخطوات باستخدام عمليات إعادة المحاولة ومعالجة الأخطاء في Inngest.
تحتاج إلى عنوان URL لـ Inngest webhook. يمكنك إنشاؤه في لوحة معلومات Inngest ضمن Manage → Webhooks.

البدء

1

Open the Webhook Section

في لوحة تحكم Dodo Payments، انتقل إلى Developer → Webhooks وانقر على Add endpoint.
Add endpoint dialog with Inngest selected in the Integration dropdown
2

Select Inngest

في Integration، حدّد Inngest. ضمن Subscribed events، حدّد الأحداث التي يجب أن تؤدي إلى تشغيل دوالك.
3

Create an Inngest Webhook

في لوحة معلومات Inngest، افتح علامة التبويب Manage وحدّد Webhooks. أنشئ webhook وانسخ عنوان URL الخاص به. يشغّل Inngest دالة التحويل الخاصة بالـ webhook مع كل request، لذا تحقّق من أنها تُبقي حقلي name و data اللذين تتوقعهما دوالك.
4

Paste Webhook URL

ألصق عنوان URL الخاص بـ Inngest webhook في Endpoint URL.
5

Configure Transformation

في Transformation code، عدّل الكود لتنسيق الأحداث الخاصة بدوال Inngest. راجع الأمثلة أدناه.
6

Test & Create

ضمن Test this code، حدّد نوع حدث وانقر على Simulate لتشغيل التحويل مقابل عينة payload. ثم انقر على Create endpoint لتفعيل التكامل.
7

Done

تؤدي أحداث Dodo Payments الآن إلى تشغيل دوال Inngest الخاصة بك.

أمثلة على كود التحويل

يعيد كل مثال كتابة webhook.payload في صورة حدث Inngest. يحدد name الحدث الذي تُشغّل عليه دالتك، ويحتوي data على تفاصيل الحدث، ويحتوي user على بيانات العميل، بينما يمثل ts وقت الحدث بالمللي ثانية، وهو ما يتطلبه تنسيق أحداث Inngest.

حمولة الحدث الأساسية

basic_event.js

معالج أحداث الاشتراك

subscription_event.js

معالج أحداث النزاع

يعيد هذا المعالج توجيه كل حدث dispute.* ويضع علامة على dispute.opened باعتباره عاجلًا. لا تتضمن payloads الخاصة بالنزاعات تفاصيل العميل، لذلك لا يرسل كائن user.
dispute_event.js

حالات الاستخدام الشائعة لـ Inngest

  • إرسال رسائل تأكيد بالبريد الإلكتروني
  • تحديث سجلات العملاء
  • معالجة عمليات رد الأموال
  • إنشاء الفواتير
  • تحديث المخزون
  • الترحيب بالمشتركين الجدد
  • معالجة عمليات الإلغاء
  • إرسال تذكيرات التجديد
  • تحديث دورات الفوترة
  • معالجة المدفوعات الفاشلة
  • تحديث مقاييس الإيرادات
  • تتبّع سلوك العملاء
  • إنشاء التقارير
  • مزامنة البيانات مع منصات التحليلات
  • احتساب معدلات التسرّب

نصائح

  • استخدم أسماء أحداث وصفية. يوصي Inngest بوضع بادئة تشير إلى المصدر، مثل dodo/payment.succeeded.
  • ضع تفاصيل العميل في user، حيث يقوم Inngest بتشفيرها أثناء التخزين.
  • عيّن ts من timestamp الخاص بـ webhook، بالمللي ثانية، حتى تحافظ الأحداث على ترتيبها ووقتها الأصليين.
  • استخدم بنية البيانات نفسها عبر الأحداث.
  • استخدم ميزات إعادة المحاولة ومعالجة الأخطاء في Inngest.

استكشاف الأخطاء وإصلاحها

  • تحقّق من أن عنوان URL لنقطة النهاية يطابق عنوان URL الخاص بـ Inngest webhook وأن الـ webhook نشط.
  • تحقّق من أن دالة Inngest منشورة ونشطة.
  • تحقّق من تطابق أسماء الأحداث مع مشغلات دالتك.
  • راجع سجلات دالة Inngest بحثًا عن الأخطاء.
  • تحقّق من أن بنية payload تطابق تنسيق أحداث Inngest.
  • تحقّق من تنسيق أسماء الأحداث بشكل صحيح.
  • تحقّق من أن دالة التحويل الخاصة بـ Inngest webhook تُبقي الحقول التي يعيّنها تحويل Dodo Payments.
  • تحقّق من تضمين جميع الحقول المطلوبة.
  • اختبر باستخدام أداة اختبار webhook في Inngest.
آخر تعديل في ٢٦ سبتمبر ٢٠٢٦