الإشعارات التي تُقرأ
توقف عن فقدان الإشعارات المهمة في مجلدات البريد العشوائي. أرسل التذكيرات وتنبيهات الدفع وتحديثات الحساب كقوالب واتساب معتمدة من الواجهة الخلفية لديك، وتابع حالات الإرسال والتسليم والقراءة والفشل عبر ويب هوك موقّعة.
✦ تجربة مجانية لمدة 14 يوماً · رقم واتساب للأعمال الخاص بك · تُصدر Meta فواتير الرسائل مباشرةً
أنواع الإشعارات
-
تذكيرات المواعيد
تذكيرات مواعيد تلقائية مع أزرار رد سريع للتأكيد أو إعادة الجدولة. تصل كل نقرة إلى الويب هوك الخاص بك.
-
تنبيهات الدفع
تأكيدات الدفع، وتذكيرات الفواتير، وتجديد الاشتراكات، وإشعارات الدفع المتأخرة.
-
إشعارات الحساب
رسائل الترحيب، وإعادة تعيين كلمات المرور، والتنبيهات الأمنية، وإشعارات نشاط الحساب.
-
تحديثات الخدمة
فترات الصيانة، وإصدارات الميزات، وتغييرات السياسة، وإشعارات حالة النظام.
تسليم يمكنك تتبعه
يعيد كل إرسال معرّف رسالة، ويعود clientReference الخاص بك (رقم الفاتورة أو الموعد) في كل ويب هوك للإرسال والتسليم والقراءة والفشل. وتحمل الرسالة الفاشلة رمزاً وسبباً بلغة واضحة، ليقرر نظامك الخطوة التالية، مثل إعادة المحاولة لاحقاً أو مراسلة العميل بالبريد. لا يوجد تحويل تلقائي إلى SMS.
- قيمة clientReference الخاصة بك في كل إيصال تسليم
- إيصالات حالة التسليم في الوقت الفعلي وسجلات الويب هوك
- ترويسة Idempotency-Key لإعادة المحاولة بأمان
دورة حياة تسليم الإشعارات
1. تشغيل الحدث
يستدعي حدث في نظامك (دفع، تذكير) واجهة POST /api/v1/messages بقالب خدمي معتمد وقيمة clientReference الخاصة بك.
2. الإرسال إلى واتساب
تقبل Meta الرسالة ويُطلق ويب هوك message.sent؛ ثم يتبعه message.delivered وmessage.read عند حدوثهما.
3. تتصرف بناءً على النتيجة
إذا وصل message.failed فإنه يحمل رمز الفشل والسبب وقيمة clientReference الخاصة بك، ليتمكن نظامك من إعادة المحاولة أو تنبيه فريقك أو التواصل مع العميل بطريقة أخرى.
تنبيهات واتساب المعاملاتية مقابل تنبيهات SMS مقابل إشعارات البريد الإلكتروني
قارن التنسيق والتفاعل وتتبع التسليم.
| عامل الوصول | تنبيهات واتساب | تنبيهات SMS | إشعارات البريد الإلكتروني |
|---|---|---|---|
| أزرار تفاعلية | ✓ (أزرار تفاعلية وروابط كليك) | ✗ (روابط نصية فقط) | ✓ (روابط تخطيط HTML) |
| إيصالات التسليم والقراءة | ✓ (ويب هوك للإرسال والتسليم والقراءة والفشل) | تقارير التسليم فقط | تتبع الفتح (يُحظر غالباً) |
| إيصالات PDF غنية | ✓ (يُرسل كملف مرفق مباشر) | ✗ (لا يدعم الملفات) | ✓ (مرفقات قياسية) |
أرسل تنبيهاً معاملاتياً عبر واتساب
curl -X POST https://waba-api.startmessaging.com/api/v1/messages \
-H "Authorization: Bearer sm_live_your_api_key" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: appt-5512-reminder" \
-d '{
"to": "+919812345678",
"type": "template",
"template": {
"name": "appointment_reminder",
"language": "en_US",
"parameters": [
{
"text": "Asha"
},
{
"text": "Dr. Mehta"
},
{
"text": "12 Oct, 4:30 PM"
}
]
},
"clientReference": "appt-5512"
}' const res = await fetch('https://waba-api.startmessaging.com/api/v1/messages', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + process.env.SM_API_KEY,
'Content-Type': 'application/json',
'Idempotency-Key': 'appt-5512-reminder',
},
body: JSON.stringify({
"to": "+919812345678",
"type": "template",
"template": {
"name": "appointment_reminder",
"language": "en_US",
"parameters": [
{
"text": "Asha"
},
{
"text": "Dr. Mehta"
},
{
"text": "12 Oct, 4:30 PM"
}
]
},
"clientReference": "appt-5512"
}),
});
const { data } = await res.json();
console.log(data.id, data.status); import os, requests
res = requests.post(
'https://waba-api.startmessaging.com/api/v1/messages',
headers={
'Authorization': f"Bearer {os.environ['SM_API_KEY']}",
'Idempotency-Key': 'appt-5512-reminder',
},
json={
"to": "+919812345678",
"type": "template",
"template": {
"name": "appointment_reminder",
"language": "en_US",
"parameters": [
{
"text": "Asha"
},
{
"text": "Dr. Mehta"
},
{
"text": "12 Oct, 4:30 PM"
}
]
},
"clientReference": "appt-5512"
},
)
data = res.json()['data']
print(data['id'], data['status']) <?php
$body = <<<'JSON'
{
"to": "+919812345678",
"type": "template",
"template": {
"name": "appointment_reminder",
"language": "en_US",
"parameters": [
{
"text": "Asha"
},
{
"text": "Dr. Mehta"
},
{
"text": "12 Oct, 4:30 PM"
}
]
},
"clientReference": "appt-5512"
}
JSON;
$ch = curl_init('https://waba-api.startmessaging.com/api/v1/messages');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('SM_API_KEY'),
'Content-Type: application/json',
'Idempotency-Key: appt-5512-reminder',
],
CURLOPT_POSTFIELDS => $body,
]);
$data = json_decode(curl_exec($ch), true)['data'];
echo $data['id'] . ' ' . $data['status']; الإشعارات — الأسئلة الشائعة
هل يمكنني إرسال إشعارات عبر كل من واتساب وSMS؟
نعم، كمنتجين منفصلين من StartMessaging لكل منهما تسجيل ومفاتيح API خاصة. لا يوجد تحويل تلقائي بينهما. وإذا أردت SMS كخيار بديل، فاستمع إلى ويب هوك message.failed في واتساب وأرسل SMS من الكود الخاص بك.
هل هناك قيود محلية لإرسال الإشعارات المعاملاتية؟
على واتساب، يجب أن تستخدم الإشعارات قوالب خدمية معتمدة مرتبطة بمعاملة أو حساب محدد، ولا تزال بحاجة إلى موافقة العميل لمراسلته عبر واتساب. أما رسائل SMS في الهند فتتطلب أيضاً التسجيل في DLT.
كم تحتسب Meta على إشعار واتساب؟
تحتسب Meta كل قالب خدمات (utility) يتم تسليمه بسعر فئة الخدمات، مباشرة على حساب واتساب للأعمال الخاص بك. ومنذ 1 أكتوبر 2026 يشمل ذلك قوالب الخدمات المرسلة أثناء فتح نافذة الـ24 ساعة لدى العميل، والتي كانت مجانية من قبل. لا يضيف StartMessaging أي رسوم على الرسالة، ويُظهر الحقل pricing في كل رسالة الفئة التي احتسبتها Meta بموجبها.
كيف أعرف إذا لم يتم تسليم إشعار؟
اشترك في ويب هوك message.delivered وmessage.read وmessage.failed. يحمل كل منها معرّف الرسالة وقيمة clientReference الخاصة بك، ويضيف message.failed رمز الفشل وسببه. ويمكنك أيضاً الاستعلام عبر GET /api/v1/messages/{id}. تُوقّع عمليات الإرسال بـ HMAC-SHA256 وتُعاد المحاولة لنحو 20 ساعة إذا كانت نقطة النهاية لديك متوقفة.
هل يمكنني إرفاق إيصالات PDF بالإشعارات المعاملاتية؟
نعم. استخدم قالباً بترويسة مستند ومرّر رابط ملف PDF العام في headerMediaUrl. تجلب Meta الملف ويستلمه العميل كمستند قابل للتنزيل في المحادثة.
الصفحات ذات الصلة
ترقية إشعاراتك
ابدأ بتجربة واتساب مجانية لمدة 14 يوماً بكل ميزات باقة Business.