> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AutoSend

> تعلم كيفية استخدام واجهة برمجة تطبيقات البريد الإلكتروني الخاصة بـ AutoSend لإرسال رسائل بريد إلكتروني تلقائية للمعاملات المالية الخاصة بك في Dodo Payments، والمبالغ المستردة، وأحداث الدفع.

## المقدمة

تتيح لك تكامل AutoSend وDodo Payments إرسال إشعارات بريد إلكتروني تلقائية في الوقت الفعلي لجميع أحداث الدفع، من المعاملات الناجحة إلى المحاولات الفاشلة وتأكيدات المبالغ المستردة.

أرسل رسائل بريد إلكتروني معاملات لأحداث الدفع باستخدام واجهة برمجة تطبيقات البريد الإلكتروني القوية من AutoSend.

<Info>
  يتطلب هذا التكامل مفتاح AutoSend لواجهة برمجة التطبيقات للمصادقة. يمكنك العثور على مفتاح API الخاص بك في لوحة تحكم AutoSend ضمن الإعدادات > مفاتيح API.
</Info>

## البدء

اتبع هذه الخطوات لتكامل AutoSend مع Dodo Payments:

<Steps>
  <Step title="Open Webhook Section">
    انتقل إلى قسم Webhooks في لوحة معلومات Dodo Payments الخاصة بك.

    <Frame>
      <img src="https://mintcdn.com/dodopayments/VOF9xBBvs1EjN4xq/images/integrations/autosend.png?fit=max&auto=format&n=VOF9xBBvs1EjN4xq&q=85&s=8645c6b295d3fecdf62f046e4480b1e4" alt="Add Endpoint and integrations dropdown" style={{ maxHeight: '500px', width: 'auto' }} width="1750" height="1234" data-path="images/integrations/autosend.png" />
    </Frame>
  </Step>

  <Step title="Select AutoSend Integration">
    اختر AutoSend من قائمة التكاملات المتاحة.
  </Step>

  <Step title="Enter API Key">
    قدِّم مفتاح AutoSend لواجهة برمجة التطبيقات للمصادقة. يمكنك العثور على مفتاح API الخاص بك في لوحة تحكم AutoSend ضمن الإعدادات > مفاتيح API.

    <Card title="Learn how to create and manage API keys" icon="key" href="https://docs.autosend.com/api-keys">
      تفضل بزيارة وثائق AutoSend للحصول على تعليمات مفصلة حول إنشاء وإدارة مفاتيح API.
    </Card>
  </Step>

  <Step title="Configure Transformation">
    أعد إعداد معالجات التحويل في JavaScript لتخصيص محتوى البريد الإلكتروني استنادًا إلى أحداث الدفع.
  </Step>

  <Step title="Test & Create">
    اختبر تكوين الويب هوك للتأكد من إرسال الرسائل الإلكترونية بشكل صحيح، ثم أنشئ التكامل.
  </Step>

  <Step title="Activation Complete">
    🎉 أصبح تكامل AutoSend نشطًا الآن وسيقوم بإرسال الرسائل الإلكترونية تلقائيًا للأحداث المدفوعة المُكوَّنة.
  </Step>
</Steps>

## أمثلة على الكود

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

أرسل رسالة تأكيد عند معالجة الدفع بنجاح:

```javascript payment_confirmation.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "payment.succeeded") {
    const p = webhook.payload.data;
    webhook.url = "https://api.autosend.com/v1/mails/send";
    webhook.payload = {
      to: {
        email: p.customer.email,
        name: p.customer.name,
      },
      from: {
        email: "payments@mail.yourdomain.com",
        name: "Your Company",
      },
      subject: "Payment Successful - Thank you for your purchase!",
      templateId: "A-61522f2xxxxxxxxx",
      dynamicData: {
        customerName: p.customer.name,
        amount: p.amount,
        currency: p.currency,
        paymentId: p.payment_id,
        paymentDate: new Date(p.created_at).toLocaleDateString(),
      },
      replyTo: {
        email: "support@yourdomain.com",
        name: "Support Team",
      },
    };
  }
  return webhook;
}
```

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

أرسل رسالة ترحيب عند إنشاء اشتراك جديد:

```javascript subscription_welcome.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "subscription.active") {
    const s = webhook.payload.data;
    webhook.url = "https://api.autosend.com/v1/mails/send";
    webhook.payload = {
      to: {
        email: s.customer.email,
        name: s.customer.name,
      },
      from: {
        email: "subscriptions@mail.yourdomain.com",
        name: "Your Company",
      },
      subject: "Welcome to your subscription!",
      templateId: "A-61522f2xxxxxxxxx",
      dynamicData: {
        customerName: s.customer.name,
        planName: s.plan.name,
        billingInterval: s.billing_interval,
        nextBillingDate: new Date(s.next_billing_at).toLocaleDateString(),
        subscriptionId: s.subscription_id,
      },
      replyTo: {
        email: "support@yourdomain.com",
        name: "Support Team",
      },
    };
  }
  return webhook;
}
```

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

أرسل رسالة إشعار عند فشل الدفع:

```javascript payment_failure.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "payment.failed") {
    const p = webhook.payload.data;
    webhook.url = "https://api.autosend.com/v1/mails/send";
    webhook.payload = {
      to: {
        email: p.customer.email,
        name: p.customer.name,
      },
      from: {
        email: "billing@mail.yourdomain.com",
        name: "Your Company Billing",
      },
      subject: "Payment Failed - Action Required",
      templateId: "A-61522f2xxxxxxxxx",
      dynamicData: {
        customerName: p.customer.name,
        amount: p.amount,
        currency: p.currency,
        failureReason: p.failure_reason,
        paymentId: p.payment_id,
        retryUrl: `https://yourdomain.com/billing/retry/${p.payment_id}`,
      },
      replyTo: {
        email: "billing@yourdomain.com",
        name: "Billing Support",
      },
    };
  }
  return webhook;
}
```

## أفضل الممارسات

* **تحقق من نطاق المرسل الخاص بك**: تأكد من أن نطاق البريد الإلكتروني المرسل الخاص بك تم التحقق منه في AutoSend لتحسين إمكانية التسليم وتجنب مشكلات المصادقة. تساعد النطاقات الموثقة في منع رسائل البريد الإلكتروني من الهبوط في مجلدات البريد العشوائي.

* **استخدام البيانات الديناميكية للتخصيص**: استخدم الحقل `dynamicData` لتخصيص الرسائل الإلكترونية بمعلومات مخصصة للعميل مثل الأسماء، مبالغ المدفوعات، وتفاصيل الاشتراك. الرسائل المخصصة تحقق معدلات تفاعل أعلى.

* **اكتب عناوين واضحة**: اكتب عناوين وصفية تشير بوضوح إلى غرض البريد الإلكتروني. تجنب كلمات تحفيز البريد العشوائي واحتفظ بالعناوين مختصرة (أقل من 50 حرفًا).

* **اختبر قبل الإنتاج**: اختبر دائمًا رسائل البريد الإلكتروني الخاصة بك قبل إرسالها في الإنتاج. يضمن ذلك أن محتوى البريد الإلكتروني يظهر بشكل صحيح وأن جميع البيانات الديناميكية تم تعيينها بشكل صحيح.

## مرجع API

للحصول على تفاصيل كاملة حول واجهة برمجة تطبيقات AutoSend، بما في ذلك جميع المعلمات المتاحة وأكواد الأخطاء، قم بزيارة [وثائق واجهة برمجة تطبيقات AutoSend](https://docs.autosend.com/api-reference/mails/send).

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

<AccordionGroup>
  <Accordion title="Emails not being sent">
    * تحقق من أن مفتاح API صحيح ونشط
    * تأكد من أن نطاق المرسل تم التحقق منه في AutoSend
    * تأكد من أن عناوين البريد الإلكتروني للمستلمين صالحة
    * راجع حدود إرسال AutoSend والحصص
    * تحقق من أن عنوان URL لنقطة نهاية API صحيح: `https://api.autosend.com/v1/mails/send`
    * تأكد من وجود المعلمات المطلوبة في الحمولة
  </Accordion>

  <Accordion title="Transformation errors">
    * تحقق من تطابق هيكل JSON مع تنسيق واجهة برمجة تطبيقات AutoSend
    * تأكد من وجود جميع الحقول المطلوبة (`to`، `from`، `templateId` أو `html`/`text`)
    * تأكد من تنسيق عناوين البريد الإلكتروني بشكل صحيح
    * تحقق من أن `templateId` صالح إذا كنت تستخدم القوالب
    * تأكد من أن مفاتيح `dynamicData` تتطابق مع متغيرات القالب الخاصة بك
  </Accordion>

  <Accordion title="Template issues">
    * تحقق من أن معرف القالب الخاص بك صحيح ونشط في AutoSend
    * تأكد من أن مفاتيح `dynamicData` تطابق المتغيرات المستخدمة في القالب
    * تأكد من توفير جميع متغيرات القالب المطلوبة
    * اختبر القالب بشكل مستقل في لوحة تحكم AutoSend
  </Accordion>
</AccordionGroup>
