Brevo SMTP: دليل الإعداد والإعدادات وحل المشكلات
اضبط Brevo SMTP بشكل صحيح: مضيف الخادم، والمنافذ 587 و 465 و 2525، ومفاتيح SMTP، وتوثيق النطاق، وأمثلة WordPress والشيفرة، والحدود، وإصلاح الأخطاء.
ينقل Brevo SMTP البريد الصادر من تطبيقك بعيدًا عن وكيل البريد المحلي لخادم الاستضافة إلى بنية تحتية توثّق كل رسالة وتسجّلها وتقدّم تقارير عنها. الإعداد صغير: اسم مضيف واحد، ومنفذ واحد، وبيانتا اعتماد. والخطأ فيه صغير أيضًا، وأنماط الفشل صامتة. يغطي هذا الدليل الإعدادات، ونموذج بيانات الاعتماد، وأعمال DNS التي تجعل التسليم يحدث، والأخطاء التي ستصادفها إذا كان أي جزء مضبوطًا بشكل خاطئ. وإذا كنت لا تزال تختار مزوّدًا، فإن دليل خدمات البريد عبر SMTP الأوسع يقارن السوق أولًا.
ما هو Brevo SMTP
تصف Brevo خدمة Brevo SMTP بأنها خدمة مُرحِّل SMTP لديها. يسلّم تطبيقك أو موقعك أو خادم بريدك رسالة إلى المُرحِّل عبر اتصال موثَّق، وتتولى Brevo مسؤولية التوجيه وإعادة المحاولة والسمعة والتقارير. تظهر إحصاءات البريد المُرحَّل إلى جانب إحصاءات الحملات، والارتداد الصلب يحجب جهة الاتصال تلقائيًا.
المُرحِّل مبني للرسائل المعاملاتية: إعادة تعيين كلمات المرور، والإيصالات، وتأكيدات الطلبات، وإشعارات الحساب. وإذا لم يكن الخط الفاصل بينها وبين البريد التسويقي واضحًا بعد، فإن ما هو البريد المعاملاتي يغطي ذلك.
SMTP أم واجهة REST
كلا المسارين يصل إلى المنصّة نفسها. التقسيم العملي:
| استخدم SMTP عندما | استخدم واجهة REST عندما |
|---|---|
| يتحدث النظام SMTP فقط (WordPress، Postfix، نظام ERP، عميل بريد) | تكتب التكامل بنفسك وتريد أخطاء منظّمة |
| ترحّل إعداد SMTP قائمًا وتريد أقصر تغيير ممكن | تحتاج إلى الإرسال الدفعي أو الجدولة أو مفاتيح عدم التكرار |
قيد صارم واحد: تنص وثائق مطوّري Brevo على أن مُرحِّل SMTP لا يدعم الإرسال الدفعي، وتوجّه العمليات الدفعية إلى نقاط نهاية الواجهة البرمجية.
إنشاء بيانات اعتماد SMTP
تستخدم مصادقة SMTP في Brevo قيمتين يسهل الخلط بينهما وبين بيانات اعتماد تملكها بالفعل.
اعثر على تسجيل دخول SMTP
تسجيل دخول SMTP ليس بريد حسابك في Brevo. إنه معرّف منفصل يظهر في حقل Login في صفحة Settings، SMTP and API، بصيغة [email protected].
تتبع ذلك قاعدتان، كلتاهما من وثائق حل المشكلات لدى Brevo. لا تضع smtp-relay.brevo.com في حقل اسم المستخدم: فهذا مضيف المُرحِّل لا تسجيل دخولك. ولا تضع تسجيل دخول SMTP في ترويسة From، لأنه يوثّق هويتك ولا يعرّف مرسِلًا.
أنشئ مفتاح SMTP
كلمة المرور هي مفتاح SMTP، لا كلمة مرور حسابك ولا مفتاح API.
- افتح قائمة الحساب المنسدلة واختر Settings ثم SMTP and API.
- ضمن تبويب SMTP، اضغط Generate a new SMTP key.
- سمِّ المفتاح باسم التكامل الذي سيستخدمه.
- اختر النوع. النوع Standard هو المفتاح الموصى به بطول 64 حرفًا، والنوع Short مفتاح بطول 15 حرفًا للعملاء الذين لا يتعاملون مع كلمات المرور الطويلة.
- اضبط مدة صلاحية بين 7 أيام وسنة واحدة، أو اختر بلا انتهاء صلاحية.
- اضغط Generate، ثم انسخ المفتاح كاملًا فورًا.
يُعرض المفتاح الكامل مرة واحدة، وبعدها تعرض الصفحة أرقامه الأخيرة فقط. إذا فقدته، أنشئ بديلًا وحدّث إعداداتك.
إعدادات الاتصال
القيم التي تدخلها في أي عميل أو مكتبة:
| الإعداد | القيمة |
|---|---|
| خادم SMTP | smtp-relay.brevo.com |
| المنفذ | 587 أو 465 أو 2525 |
| التشفير | اتركه فارغًا إلا عند استخدام المنفذ 465 الذي يتطلب SSL أو TLS |
| اسم المستخدم | تسجيل دخول SMTP الخاص بك، بصيغة [email protected] |
| كلمة المرور | مفتاح SMTP الخاص بك |
اختيار المنفذ
| المنفذ | التشفير | متى تستخدمه |
|---|---|---|
| 587 | TLS، يُتفاوض عليه عبر STARTTLS | الافتراضي. ابدأ من هنا. |
| 465 | SSL أو TLS، ضمني من لحظة الاتصال | عندما يتطلب عميلك اتصالًا مشفّرًا ضمنيًا |
| 2525 | TLS، يُتفاوض عليه عبر STARTTLS | عندما يحجب مزوّد الاستضافة المنفذ 587 |
توصي Brevo بالمنفذ 587 كافتراضي. المنفذ 465 خُصِّص لـ SMTP عبر SSL ثم أُلغي اعتماده لاحقًا، لكنه لا يزال مدعومًا على نطاق واسع وهو الخيار الصحيح عندما تحتاج إلى اتصال مشفّر قبل أول أمر. أما المنفذ 2525 فليس منفذًا مسجّلًا لدى IETF أو IANA، لكن معظم مزوّدي الإنترنت والسحابة يسمحون به، وهو ما يجعله مخرج الطوارئ عندما يكون 587 محجوبًا.
حقل التشفير يربك الناس. تخبرك Brevo بتركه فارغًا ما لم تكن على 465. وهذا لا يعني أن الاتصال غير مشفّر: على 587 و 2525 يعلن الخادم عن STARTTLS وأي عميل كفؤ يرقّي الاتصال قبل المصادقة. المقصود ألا تختار “SSL” أثناء الاتصال بالمنفذ 587، لأن عدم توافق المنفذ مع التشفير يُفشل المصادقة حتى مع بيانات اعتماد صحيحة.
اختبر الاتصال قبل كتابة أي شيفرة
تأكد من أن المُرحِّل يستجيب وأن TLS يتفاوض قبل تنقيح شيفرة التطبيق.
openssl s_client -starttls smtp -crlf -connect smtp-relay.brevo.com:587المصافحة الناجحة تنتهي بقائمة قدرات الخادم 250، والتي يجب أن تتضمن STARTTLS وسطر AUTH يسرد PLAIN و LOGIN. غياب أي ترويسة ترحيب يعني مشكلة شبكة، لا مشكلة بيانات اعتماد.
توثيق نطاق الإرسال
هذه هي الخطوة التي يتخطاها الناس، وهي التي تقرر ما إذا كان أي شيء سيصل. منذ 1 فبراير 2024 صار توثيق النطاق إلزاميًا بموجب متطلبات المرسِلين لدى Gmail و Yahoo، وتشير Brevo إلى أن Microsoft أعلنت معايير مشابهة في 5 مايو 2025. البريد غير الموثَّق يُرشَّح أو يُرفض بغضّ النظر عن المُرحِّل الذي أرسله.
السجلات التي تطلبها Brevo
| السجل | النوع | الغرض |
|---|---|---|
| رمز Brevo | TXT | يتحقق من ملكيتك للنطاق المرسِل وتحكمك فيه |
| DKIM | سجل TXT واحد أو سجلا CNAME | يوقّع الرسائل كي يتمكن المستلمون من كشف أي تعديل أثناء النقل |
| DMARC | TXT | يخبر الخوادم المستقبِلة كيف تتعامل مع البريد المشبوه، بسياسة none أو quarantine أو reject |
يمكن لـ Brevo إضافة هذه السجلات تلقائيًا إذا سجّلت الدخول إلى مزوّد نطاقك من داخل Brevo، أو يمكنك نسخ القيم إلى منطقة DNS يدويًا. وشكل DKIM الذي تحصل عليه يعتمد على الحساب: سجلا CNAME يستخدمان مفتاحًا بطول 2048 بت افتراضيًا، بينما يستخدم شكل TXT المفرد مفتاحًا بطول 1024 بت.
لماذا لا يوجد سجل SPF
الأسئلة الشائعة لدى Brevo صريحة: سجلات SPF و MX ليست مطلوبة لتوثيق نطاق، وتُقدَّم فقط عند إعداد عنوان IP مخصّص. على البنية المشتركة تتحكم Brevo بمسار العودة، لذا فإن DKIM مع فحص الملكية يحمل عبء التوثيق. وإذا كنت تنتقل من مزوّد كان يطلب تضمين SPF، فلا تخترع واحدًا؛ التضمين غير الضروري يخاطر بمشكلة حدّ عمليات البحث لا أكثر.
يبقى DMARC مهمًا، وتنشر Brevo سجل بداية عاملًا:
v=DMARC1; p=none; rua=mailto:[email protected]ابدأ بـ p=none للحصول على التقارير المجمّعة دون المخاطرة بالتسليم، ثم شدّد إلى quarantine ثم reject بمجرد أن تتوافق كل مصادر الإرسال المشروعة. يغطي دليل قابلية تسليم البريد الإلكتروني هذا التدرّج.
وثّق المرسِل
كل عنوان في حقل From يجب أن يكون مرسِلًا موثَّقًا أو أن يقع على نطاق موثَّق. يُوثَّق المرسِل الجديد برمز من 6 أرقام يُرسل إلى ذلك العنوان، لكن المرسِلين على نطاق موثَّق يتخطون تلك الخطوة، ولهذا توثّق النطاق أولًا. ولا يمكن توثيق نطاقات البريد المجانية، لذا فإن عنوان From على gmail.com أو outlook.com سيُرفض أو يُرشَّح.
أمثلة تطبيقية للتكامل
WordPress
يسلّم WordPress البريد الصادر إلى wp_mail، الذي يستدعي ما توفره الاستضافة. توجيهه عبر Brevo يتطلب إضافة برمجية.
- من الشريط الجانبي للوحة التحكم اذهب إلى Plugins ثم Add New Plugin.
- ابحث عن Brevo، وثبّت “Newsletter, SMTP, Email marketing and Subscribe forms by Brevo”، ثم فعّلها.
- اذهب إلى Brevo ثم Home، وأدخل مفتاح Brevo API v3 في حقل التفعيل. تستخدم هذه الخطوة مفتاح API لأن الإضافة تزامن جهات الاتصال أيضًا. اضغط Login.
- ضمن Transactional emails، اختر Yes.
- اختر مرسِلًا موجودًا أو أنشئ واحدًا. كل رسالة من WordPress تستخدم اسم ذلك المرسِل وعنوانه.
- أدخل عنوانًا واضغط Send email لإطلاق اختبار.
هناك خطآن شائعان. رسالة تقول إن البريد المعاملاتي غير مفعّل لأن حساب Brevo SMTP لديك لم يُفعَّل تعني أن دعم Brevo يجب أن يفعّل المنصّة. ورسالة تقول إنه لا يمكن استخدام SMTP لأن wp_mail أُعلنت من عملية أخرى تعني وجود إضافة SMTP منافسة؛ عطّل الإضافات الأخرى واحدة تلو الأخرى.
تطبيق على جانب الخادم
يستخدم مثال Node.js من Brevo نفسها مكتبة nodemailer والإعدادات أعلاه:
const nodemailer = require("nodemailer");
const transporter = nodemailer.createTransport({ host: "smtp-relay.brevo.com", port: 587, secure: false, // true للمنفذ 465، و false لبقية المنافذ auth: { pass: process.env.BREVO_SMTP_KEY, },});
async function sendOrderConfirmation() { const info = await transporter.sendMail({ subject: "Your order is confirmed", text: "Order 10482 is confirmed and ships within two business days.", }); console.log("Message sent:", info.messageId);}
sendOrderConfirmation().catch(console.error);لاحظ secure: false على المنفذ 587. هذا العَلَم يتحكم بـ TLS الضمني، لا بما إذا كان الاتصال مشفّرًا؛ فمكتبة nodemailer تصدر STARTTLS على أي حال. اضبطه على true للمنفذ 465 فقط.
والمكافئ بلغة Python باستخدام المكتبة القياسية:
import smtplib, sslfrom email.message import EmailMessage
msg = EmailMessage()msg["Subject"] = "Your order is confirmed"msg.set_content("Order 10482 is confirmed and ships within two business days.")
with smtplib.SMTP("smtp-relay.brevo.com", 587, timeout=20) as server: server.starttls(context=ssl.create_default_context()) server.login(BREVO_SMTP_LOGIN, BREVO_SMTP_KEY) server.send_message(msg)كلاهما يقرأ بيانات الاعتماد من البيئة، وهو موضوع القسم التالي.
أمن المفاتيح وتدويرها
تعامل Brevo مفاتيح SMTP كأنها كلمات مرور. القواعد التشغيلية تستحق الالتزام بها حرفيًا.
- مفتاح واحد لكل تكامل. سمِّ كل مفتاح باسم النظام الذي يستخدمه، كي يُبطل التسريب أو إيقاف الخدمة شيئًا واحدًا بالضبط.
- لا ترفع مفتاحًا إلى المستودع أبدًا. متغيرات البيئة، أو مدير أسرار، أو مخزن إعدادات منصّتك. لا في إدارة الشيفرة المصدرية، ولا في ملف
.envمتتبَّع، ولا في لقطة شاشة. - دوّر المفاتيح دون توقف الخدمة. أنشئ البديل، وانشر، وأكّد نجاح الإرسال، ثم احذف المفتاح القديم. الحذف لا رجعة فيه، وحذف مفتاح لا يزال قيد الاستخدام يوقف الإرسال المعاملاتي فورًا.
- عطّل بدل أن تحذف لإيقاف تكامل مؤقتًا. يمكن إعادة تفعيل المفاتيح لاحقًا.
- توقّع انتهاء الصلاحية. يمكن أن تحمل المفاتيح صلاحية من 7 أيام إلى سنة، وتنهي Brevo صلاحية المفاتيح الخاملة بعد 90 يومًا.
ولحدّ أقوى، يمكن لـ Brevo حجب الطلبات القادمة من عناوين IP غير معروفة. القائمة المصرَّح بها مشتركة بين مفاتيح API و SMTP، لذا فإن ما تسمح به ينطبق على الاثنين. انتبه في أحمال العمل الحاوية أو السحابية: قد يكون العنوان الصادر بوابة NAT لا عنوان IP للنسخة الذي تتوقعه، والخطأ فيه ينتج رفضًا بالصيغة 525 5.7.1 Unauthorized IP address.
الفرق التي تشغّل Brevo إلى جانب متجر ونظام CRM ومكتب دعم ينتهي بها الأمر إلى إدارة عدة مفاتيح ومرسِلين ونطاقات في آن واحد. Tajo يحفظ تلك الإعدادات في مكان واحد بدل أربع لوحات تحكم.
حدود الإرسال والتقييد
يسحب الإرسال عبر SMTP من رصيد البريد في خطّتك. على الخطّة المجانية يعني ذلك 300 إرسالة بريد يوميًا؛ يُعاد ضبط الحد يوميًا والإرسالات غير المستخدمة لا تُرحَّل. وبمجرد بلوغه، تحتفظ Brevo بما يصل إلى 1,000 رسالة إضافية في طابور إعادة المحاولة ولا تسلّم شيئًا يتجاوز ذلك الطابور. الخطط المدفوعة تزيل السقف اليومي، ويفصّل دليل أسعار Brevo المستويات.
عندما ينفد الرصيد تمامًا، تُعلَّق الرسائل المرسَلة عبر SMTP وتوضع في طابور بدل إسقاطها. تجد التراكم ضمن Transactional ثم Real time ثم Usage and plan، في قسم Email queue.
تنشر Brevo حدود معدل صارمة لواجهة REST لا للمُرحِّل. على المستوى العام يسمح POST /v3/smtp/email بـ 1,000 طلب في الثانية، وتجاوز الحد يعيد 429 Too Many Requests. كما يعيد مسار الواجهة البرمجية ترويسات حدود المعدل التي تضبط إيقاعك عليها، وهو ما لا يفعله المُرحِّل.
مراقبة الارتدادات والشكاوى
البريد المُرحَّل مرئي ضمن Transactional، في صفحتَي Statistics و Logs. الأحداث التي تستدعي ردّ فعل:
- الارتداد الصلب. العنوان غير صالح، وتحجب Brevo جهة الاتصال تلقائيًا.
- المحجوب. المستلم اشتكى سابقًا، أو ألغى الاشتراك، أو ارتدّت رسالته ارتدادًا صلبًا، أو حُجب يدويًا.
- التأجيل والارتداد المرن. قبل المزوّد الاتصال لكنه أخّر الرسالة أو رفضها. تكرار التأجيلات مع مزوّد واحد يشير إلى مشكلة سمعة، لا مشكلة شيفرة.
الاستعلام المتكرر عن السجلات لا يتوسّع. تدعم Brevo webhooks معاملاتية تدفع أحداث التسليم والارتداد والفتح والشكوى إلى نقطة نهايتك في الوقت الفعلي، وهذه هي الطريقة التي تبقي بها بيانات الحجب لديك محدّثة.
الرقم الذي يجب مراقبته هو معدل شكاوى البريد المزعج. تطلب Gmail و Yahoo و Microsoft من المرسِلين البقاء تحت 0.3%، وتوصي Brevo بمراقبته عبر Gmail Postmaster Tools. التعافي من تجاوز العتبة يستغرق وقتًا أطول بكثير من تجنّبها.
حل المشكلات
535 5.7.8 Authentication failed
تعذّر التحقق من اسم المستخدم أو كلمة المرور. حسب الاحتمال:
- استُخدم بريد الحساب بدل تسجيل دخول SMTP بصيغة
[email protected]. - لُصق
smtp-relay.brevo.comفي حقل اسم المستخدم. تسمّي Brevo هذا واحدًا من أكثر الأسباب شيوعًا. - استُخدم مفتاح API بدل مفتاح SMTP.
- يحمل المفتاح مسافة أو فاصل أسطر زائدًا من النسخ واللصق.
- إعداد التشفير لا يطابق المنفذ.
- أُبطل المفتاح بعد تنبيه أمني، وفي هذه الحالة أنشئ مفتاحًا جديدًا.
525 5.7.1 Unauthorized IP address
حجب عناوين IP مفعّل والعنوان المتصل غير مصرَّح به. أضفه، وتحقق أولًا من عنوان الخروج الحقيقي إذا كان التطبيق يعمل خلف NAT أو في منصّة حاويات.
لا استجابة ولا ترويسة ترحيب
إذا فُتح اتصال TCP ولم يرسل الخادم أبدًا تحية 220، فلا يمكن أن تبدأ المصادقة والخلل في جانبك من الشبكة. جدران الحماية المؤسسية تسمح أحيانًا بالاتصال ثم تُسقط حركة SMTP بصمت. كما تقيّد AWS و Azure و Google Cloud حركة SMTP الصادرة افتراضيًا على الحسابات الجديدة. اطلب رفع التقييد، أو انتقل إلى المنفذ 2525.
450، المنصّة غير مفعّلة
يقول الخطأ إن حساب SMTP لديك لم يُفعَّل بعد أو إن منصّة الإرسال معطّلة حاليًا. على حساب جديد، يتطلب الإرسال المعاملاتي خطوة تفعيل منفصلة من دعم Brevo. أما على حساب قائم فهو يعني عادة تعليقًا، إما لأن نموذجًا غير محمي تعرّض لتسجيلات آلية أو لأن الحساب أظهر علامات اختراق.
رفض المرسِل
تحقق من ثلاثة أمور: أن النطاق موثَّق، وأن المرسِل موثَّق، وأن ترويسة From ليست تسجيل دخول SMTP الخاص بك.
البريد مقبول لكنه يهبط في البريد المزعج
اعمل بهذا الترتيب. أكّد أن نطاق الإرسال موثَّق وأن DKIM يوقّع. أكّد أن نطاق From ملكك وليس مزوّد بريد مجاني. افحص معدل شكاواك في Postmaster Tools مقابل عتبة 0.3%. ولا تنظر إلى المحتوى إلا بعد أن تكون هذه الفحوص نظيفة، لأنه نادرًا ما يكون السبب الأول.
عناوين IP المخصّصة
عنوان IP مخصّص لا يفيد إلا عند حجم مرتفع وثابت. يجب إحماؤه قبل أن ترسل عبره بشكل معتبر، ويحتاج إلى نطاق فرعي للإرسال يظهر كنطاق mailed by و return path في ترويساتك. هذا هو الإعداد الوحيد الذي تقدّم فيه Brevo سجلات SPF و MX، إلى جانب سجلات A و CNAME و DKIM و DMARC لذلك النطاق الفرعي.
تفصيلان يُوقعان الناس. عنوان IP مخصّص مضبوط للبريد التسويقي فقط يضع رسائلك المعاملاتية في طابور بدل إرسالها، لذا بدّل إعداده أو اشترِ عنوانًا ثانيًا. كما أن فصل توجيه البريد المعاملاتي عن التسويقي يتطلب مجمّعًا من عنوانين على الأقل بمرسِلين مختلفين، كي لا يجر ضعف التفاعل على البريد التسويقي الإيصالات وإعادة تعيين كلمات المرور إلى الأسفل.
أن تضبطه من المرة الأولى
وثّق النطاق، وأنشئ مفتاح SMTP بمسمّى واضح، واتصل بـ smtp-relay.brevo.com على المنفذ 587، وأرسل اختبارًا عبر مسار الشيفرة الحقيقي لا عبر زر في لوحة التحكم. تقريبًا كل مشكلة لاحقة تعود إلى واحد من ثلاثة أمور.
- بيانات اعتماد خاطئة في حقل اسم المستخدم أو كلمة المرور.
- إعدادا منفذ وتشفير لا يتفقان مع بعضهما.
- نطاق إرسال لم يُوثَّق قط.
اضبط هذه الأمور وسيختفي المُرحِّل في الخلفية، وهذا بالضبط ما يجب أن تفعله البنية التحتية المعاملاتية.