اجمع إجابات منظمة داخل واتساب
صمّم نموذجًا في Flow Builder من Meta، ثم زامنه مع StartMessaging واربطه بزر في قالب. يملؤه العملاء دون مغادرة المحادثة، وتصل كل إجابة كحقول معنونة في صندوق الوارد وواجهة API والـwebhooks لديك. نماذج واتساب متاحة في باقة Business وفي التجربة المجانية لمدة 14 يوماً.
✦ تجربة مجانية لمدة 14 يوماً · رقم واتساب للأعمال الخاص بك · تُصدر Meta فواتير الرسائل مباشرةً
يُصمَّم في Meta ويُستخدم في StartMessaging
نماذج واتساب هي Meta Flows. تصمّم الشاشات والأسئلة في Flow Builder من Meta داخل Meta Business Manager؛ ولا تحتوي StartMessaging على محرر نماذج خاص بها. اضغط "المزامنة من Meta" لتظهر نماذجك في صفحة نماذج واتساب مع حالتها وفئاتها ومعرّف Meta الخاص بها، جاهزة للربط بزر Flow في أي قالب.
- افتح Flow Builder من Meta من صفحة نماذج واتساب
- زامن من Meta لجلب النماذج الجديدة أو المعدّلة
- اربط نموذجًا تمت مزامنته بزر Flow في قالب
تصل الإجابات إلى المحادثة كحقول
عندما يرسل العميل نموذجًا، يعرض صندوق الوارد المشترك بطاقة "نموذج واتساب" في المحادثة مع عنوان لكل إجابة، بما في ذلك الملفات من أدوات اختيار الصور أو المستندات. ويظهر طلب العنوان كعنوان. وإذا أرسل واتساب شيئًا لا يمكن قراءته كحقول، توضح البطاقة ذلك وتتيح لك رؤية ما أرسله واتساب بالضبط، فلا يضيع شيء.
- تُعرض كل إجابة بعنوان مقروء
- الإجابات نفسها في GET /api/v1/messages/{id}
- وفي كائن form ضمن webhook message.received
من النموذج إلى الإجابات في أربع خطوات
1. صمّم النموذج في Meta
صمّم الشاشات والأسئلة في Flow Builder من Meta: نموذج عملاء محتملين، أو حجز، أو استبيان آراء، أو أي شيء آخر يحتاج عملاؤك إلى تعبئته.
2. زامنه مع StartMessaging
في صفحة نماذج واتساب، اضغط "المزامنة من Meta". تظهر نماذجك مع حالتها ومعرّف Meta.
3. اربطه بقالب
في منشئ القوالب، أضف زر Flow (نموذج واتساب)، واختر النموذج، ثم أرسل القالب للمراجعة. تراجعه Meta مثل أي قالب آخر.
4. أرسله واقرأ الإجابات
أرسل القالب المعتمد من لوحة التحكم أو عبر API. وعند استخدام API، أضف flow token خاصًا بك لربط كل إرسال للنموذج بالعميل المحتمل أو الطلب أو الحجز لديك.
نموذج واتساب مقابل الأسئلة في المحادثة مقابل رابط نموذج ويب
ثلاث طرق لجمع البيانات من العميل على واتساب.
| القدرة | نموذج واتساب | أسئلة في المحادثة | رابط نموذج ويب |
|---|---|---|---|
| أين يجيب العميل | داخل واتساب، على شاشات النموذج | داخل واتساب، رسالة تلو الأخرى | في المتصفح، خارج واتساب |
| ما تستلمه | حقول منظمة: المفتاح والعنوان والقيمة | نص حر تحلله بنفسك | ما ترسله أداة النماذج لديك |
| كيف تربطه بسجلك | الـflow token الذي ترسله | رقم الهاتف والمحادثة | معاملات الرابط الخاصة بك |
| يظهر في صندوق وارد StartMessaging | ✓ (كبطاقة نموذج بإجابات معنونة) | ✓ (كرسائل) | |
| كيف يُرسل | قالب يحتوي على زر Flow | رسائل نصية أو تفاعلية داخل نافذة الـ24 ساعة | رابط في رسالة أو زر URL |
| أين يُصمَّم | Flow Builder من Meta | وكلاؤك أو مسار شات بوت | أداة نماذج الويب لديك |
أرسل نموذجًا برمزك الخاص واستلم الإجابات كحقول
عيّن الـflow token باستخدام buttonParameters مع subType "flow". يصل الإرسال في message.received مع form.flowToken وform.fields، ومن خلال context الرسالة التي حملت النموذج.
# Send the template whose Flow button opens your WhatsApp Form.
# The flow token comes back on the submission as form.flowToken.
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: lead-77-demo-form" \
-d '{
"to": "+919812345678",
"type": "template",
"template": {
"name": "book_a_demo",
"language": "en_US",
"parameters": [
{ "text": "Asha" }
],
"buttonParameters": [
{ "index": 0, "subType": "flow", "text": "lead-77" }
]
},
"clientReference": "lead-77"
}' // 1. Send the form (needs the messages:send scope)
const res = await fetch('https://waba-api.startmessaging.com/api/v1/messages', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + process.env.SM_API_KEY, // sm_live_your_api_key
'Content-Type': 'application/json',
'Idempotency-Key': 'lead-77-demo-form',
},
body: JSON.stringify({
to: '+919812345678',
type: 'template',
template: {
name: 'book_a_demo',
language: 'en_US',
parameters: [{ text: 'Asha' }],
buttonParameters: [{ index: 0, subType: 'flow', text: 'lead-77' }],
},
clientReference: 'lead-77',
}),
});
const { data } = await res.json();
console.log(data.id, data.status);
// 2. In your message.received webhook handler (after verifying the signature)
function onMessageReceived(event) {
const form = event.data.message.form;
if (!form) return;
const answers = Object.fromEntries(form.fields.map((f) => [f.key, f.value]));
// form.flowToken === 'lead-77' -> update that lead with the answers
} import os, requests
res = requests.post(
'https://waba-api.startmessaging.com/api/v1/messages',
headers={
'Authorization': f"Bearer {os.environ['SM_API_KEY']}", # sm_live_your_api_key
'Idempotency-Key': 'lead-77-demo-form',
},
json={
'to': '+919812345678',
'type': 'template',
'template': {
'name': 'book_a_demo',
'language': 'en_US',
'parameters': [{'text': 'Asha'}],
'buttonParameters': [{'index': 0, 'subType': 'flow', 'text': 'lead-77'}],
},
'clientReference': 'lead-77',
},
)
data = res.json()['data']
print(data['id'], data['status'])
# Later: read the answers from the message.received webhook,
# or GET /api/v1/messages/{id} for the inbound message (messages:read scope). <?php
$body = json_encode([
'to' => '+919812345678',
'type' => 'template',
'template' => [
'name' => 'book_a_demo',
'language' => 'en_US',
'parameters' => [['text' => 'Asha']],
'buttonParameters' => [
['index' => 0, 'subType' => 'flow', 'text' => 'lead-77'],
],
],
'clientReference' => 'lead-77',
]);
$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'), // sm_live_your_api_key
'Content-Type: application/json',
'Idempotency-Key: lead-77-demo-form',
],
CURLOPT_POSTFIELDS => $body,
]);
$data = json_decode(curl_exec($ch), true)['data'];
echo $data['id'] . ' ' . $data['status']; {
"id": "evt_01JCA4M8ZP",
"type": "message.received",
"createdAt": "2026-10-07T11:05:12.000Z",
"workspaceId": "ws_9f2c",
"data": {
"message": {
"id": "msg_8e41",
"conversationId": "conv_3a90",
"contactId": "ct_88b1",
"from": "+919812345678",
"type": "interactive",
"text": "Full name: Asha Rao · City: Pune · Preferred date: 2026-10-12",
"reply": null,
"context": {
"messageId": "msg_7f20",
"clientReference": "lead-77"
},
"form": {
"kind": "flow",
"flowToken": "lead-77",
"flowId": "1187364520093321",
"flowName": "Book a demo",
"fields": [
{ "key": "screen_0_Full_name_0", "label": "Full name", "value": "Asha Rao" },
{ "key": "screen_0_City_1", "label": "City", "value": "Pune" },
{ "key": "screen_0_Preferred_date_2", "label": "Preferred date", "value": "2026-10-12" }
],
"raw": null
},
"referral": null,
"timestamp": "2026-10-07T11:05:10.000Z"
},
"contact": {
"id": "ct_88b1",
"phone": "+919812345678",
"name": "Asha"
}
}
} نماذج واتساب — الأسئلة الشائعة
هل يمكنني تصميم النموذج داخل StartMessaging؟
لا. نماذج واتساب هي Meta Flows، وتصمّمها في Flow Builder من Meta داخل Meta Business Manager. تزامن StartMessaging نماذجك من Meta، وتتيح لك ربطها بأزرار القوالب، وتعرض الإجابات وتوصلها إليك.
كيف أرسل نموذج واتساب إلى عميل؟
اربط النموذج بزر Flow في قالب وأرسل القالب إلى Meta للمراجعة. بعد موافقة Meta، أرسله مثل أي قالب آخر. وعبر API، استخدم POST /api/v1/messages مع buttonParameters [{ "index": 0, "subType": "flow", "text": "<الـflow token الخاص بك>" }].
كيف أربط إرسال النموذج بالعميل المحتمل أو الحجز لديّ؟
أرسل flow token يعرّف السجل، مثل "lead-77". يعود مع الإرسال في form.flowToken. وإذا لم يتضمن الإرسال رمزًا، تكون قيمة flowToken هي "unused". كما يشير context في الإرسال إلى الرسالة التي حملت النموذج، بما في ذلك clientReference الخاص بها.
أين يمكنني قراءة الإجابات؟
في ثلاثة أماكن: كبطاقة نموذج في محادثة صندوق الوارد المشترك؛ وعبر API باستخدام GET /api/v1/messages/{id} أو قائمة رسائل المحادثة؛ وفي كائن form ضمن webhook message.received بالشكل { kind, flowToken, flowId, flowName, fields: [{ key, label, value }], raw }.
هل عناوين الحقول هي نفسها التي كتبتها في النموذج؟
ليس تمامًا. يرسل واتساب كل إجابة مع مفتاح استجابة، وتحوّل StartMessaging هذا المفتاح إلى عنوان مقروء (يُقرأ screen_0_Full_name_0 من Flow Builder على أنه "Full name"). اربط بياناتك على key، فهو ما أرسله واتساب بالضبط. وإذا تعذّرت قراءة الإجابات بصيغة JSON، تكون fields فارغة ويحتوي raw على رد واتساب الأصلي.
فيمَ يمكنني استخدام نماذج واتساب؟
أي حالة تحتاج فيها إلى عدة بيانات دفعة واحدة: جمع العملاء المحتملين، وحجز المواعيد والعروض التوضيحية، واستبيانات الآراء، وطلبات العناوين. يمكن أن تكون الإجابات نصًا، أو موافقة بنعم/لا، أو أرقامًا، أو اختيارات من مربعات الاختيار، أو ملفات من أداة اختيار الصور أو المستندات.
ما الباقة التي تتضمن نماذج واتساب؟
باقة Business، والتجربة المجانية لمدة 14 يوماً، مع تدفقات الشات بوت. تتطلب مزامنة النماذج من Meta وإضافة زر Flow (نموذج واتساب) إلى قالب باقة Business. أما باقة Team فتشمل صندوق الوارد المشترك وجهات الاتصال والحملات والردود التلقائية بالكلمات المفتاحية، لكنها لا تشمل النماذج.
هل لنماذج واتساب تكلفة إضافية؟
لا يتقاضى StartMessaging أي رسوم لكل نموذج أو لكل رسالة: تأتي نماذج واتساب مع باقة Business. وتحتسب Meta كل قالب يتم تسليمه، بما فيه القالب الذي يحمل النموذج، بسعر فئته، مباشرة على حساب واتساب للأعمال الخاص بك.
صفحات ذات صلة
ابدأ جمع الإجابات على واتساب
اربط حساب واتساب للأعمال، وزامن نماذجك من Meta، وأرسل أول نموذج خلال التجربة المجانية لمدة 14 يوماً. نماذج واتساب متاحة في باقة Business.