الانتقال إلى المحتوى الرئيسي

المقدمة

إرسال رسائل البريد الإلكتروني المعاملات وإدارة اتصالات العملاء تلقائيًا عند حدوث أحداث الدفع. تسليم تأكيدات الدفع، وتحديثات الاشتراك، والإشعارات المهمة من خلال بنية البريد الإلكتروني للحلقات.
تتطلب هذه التكامل مفتاح API الخاص بك للحلقات للمصادقة.

البدء

1

فتح قسم الويب هوك

في لوحة معلومات مدفوعات دودو، انتقل إلى الويب هوكس → + إضافة نقطة نهاية وقم بتوسيع قائمة التكاملات.
إضافة نقطة نهاية وقائمة التكاملات
2

اختيار الحلقات

اختر بطاقة تكامل الحلقات.
3

إدخال مفتاح API

قدم مفتاح API الخاص بك للحلقات في الإعدادات.
4

تكوين التحويل

قم بتحرير كود التحويل لتنسيق رسائل البريد الإلكتروني لواجهة برمجة التطبيقات الخاصة بالحلقات.
5

اختبار وإنشاء

اختبر باستخدام حمولات نموذجية وانقر على إنشاء لتفعيل إرسال البريد الإلكتروني.
6

تم!

🎉 ستؤدي أحداث الدفع الآن تلقائيًا إلى إرسال رسائل البريد الإلكتروني المعاملات عبر الحلقات.

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

رسالة تأكيد الدفع

payment_confirmation.js
function handler(webhook) {
  if (webhook.eventType === "payment.succeeded") {
    const p = webhook.payload.data;
    webhook.url = "https://api.loops.so/v1/events/send";
    webhook.payload = {
      eventName: "payment_confirmation",
      email: p.customer.email,
      properties: {
        customer_name: p.customer.name,
        payment_id: p.payment_id,
        amount: (p.total_amount / 100).toFixed(2),
        currency: p.currency || "USD",
        payment_method: p.payment_method || "unknown",
        payment_date: new Date(webhook.payload.timestamp).toLocaleDateString()
      }
    };
  }
  return webhook;
}

رسالة ترحيب الاشتراك

subscription_welcome.js
function handler(webhook) {
  if (webhook.eventType === "subscription.active") {
    const s = webhook.payload.data;
    webhook.url = "https://api.loops.so/v1/events/send";
    webhook.payload = {
      eventName: "subscription_welcome",
      email: s.customer.email,
      properties: {
        customer_name: s.customer.name,
        subscription_id: s.subscription_id,
        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
      }
    };
  }
  return webhook;
}

إشعار فشل الدفع

payment_failure.js
function handler(webhook) {
  if (webhook.eventType === "payment.failed") {
    const p = webhook.payload.data;
    webhook.url = "https://api.loops.so/v1/events/send";
    webhook.payload = {
      eventName: "payment_failed",
      email: p.customer.email,
      properties: {
        customer_name: p.customer.name,
        payment_id: p.payment_id,
        amount: (p.total_amount / 100).toFixed(2),
        error_message: p.error_message || "Payment processing failed",
        retry_link: `https://yourdomain.com/retry-payment/${p.payment_id}`
      }
    };
  }
  return webhook;
}

نصائح

  • استخدم أسماء أحداث وصفية لتحسين تنظيم قوالب البريد الإلكتروني
  • تضمين خصائص العملاء ذات الصلة للتخصيص
  • إعداد قوالب البريد الإلكتروني في لوحة معلومات الحلقات لكل حدث
  • استخدام تسمية خصائص متسقة عبر الأحداث
  • اختبار تسليم البريد الإلكتروني قبل الذهاب للعرض

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

  • تحقق من أن مفتاح API صحيح ونشط
  • تحقق من أن أسماء الأحداث تتطابق مع قوالب الحلقات الخاصة بك
  • تأكد من أن عناوين البريد الإلكتروني للمستلمين صالحة
  • مراجعة حدود وإجراءات إرسال الحلقات
  • تحقق من أن هيكل JSON يتطابق مع تنسيق واجهة برمجة التطبيقات للحلقات
  • تحقق من أن جميع الحقول المطلوبة موجودة
  • تأكد من أن أسماء الأحداث منسقة بشكل صحيح
  • تحقق من أذونات مفتاح API