نحن بصدد إنهاء API داخل المواقع. راجع مستند حالة إنهاء API داخل المواقع للحصول على التفاصيل، والتعرف على كيفية الترحيل إلى API السحابة من الجيل القادم.

مشاركة المنتجات مع العملاء

تتوفر لدى الأنشطة التجارية عدة طرق لمشاركة المنتجات مع العملاء:

  • رسائل الكتالوج — رسائل حرة تحتوي على زر يعرض كتالوج المنتجات ضمن واتساب عندما يتم الضغط عليه.
  • رسائل قالب الكتالوج — رسائل قالب تحتوي على زر يعرض كتالوج المنتجات ضمن واتساب عندما يتم الضغط عليه.
  • رسائل رابط الكتالوج — رسائل تحتوي على صور مصغرة للكتالوج ورابط لكتالوج المنتجات بالكامل.
  • رسائل المنتجات — رسائل تحتوي على معلومات حول منتج واحد أو ما يصل إلى 30 منتجًا من كتالوج المنتجات.
  • قوالب رسائل المنتجات المتعددة — رسائل قالب تحتوي على معلومات حول ما يصل إلى 30 منتجًا من كتالوج التجارة الإلكترونية، منظمة في ما يصل إلى 10 أقسام في رسالة واحدة.

رسائل الكتالوج

رسائل الكتالوج هي رسائل حرة تسمح لك بعرض كتالوج المنتجات بالكامل ضمن واتساب.

تعرض رسائل الكتالوج صورة عنوان لصورة مصغرة للمنتج من اختيارك ونص رئيسي مخصص وعنوان نصي ثابت وعنوان فرعي نصي ثابت وزر عرض الكتالوج.

عندما يضغط العميل على زر عرض الكتالوج، سيظهر كتالوج المنتجات ضمن واتساب.

المتطلبات

يجب تحميل المخزون على Meta في كتالوج التجارة الإلكترونية المرتبط بحساب واتساب للأعمال.

بنية الطلب

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

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages

نص المنشور

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "<TO>",
  "type": "interactive",
  "interactive" : {
    "type" : "catalog_message",
    "body" : {
      "text": "<BODY_TEXT>"
    },
    "action": {
      "name": "catalog_message",
      "parameters": {
        "thumbnail_product_retailer_id": "<THUMBNAIL_PRODUCT_RETAILER_ID>"
      }
    },

    /* Footer object is optional */
    "footer": {
      "text": "<FOOTER_TEXT>"
  }
}

الخصائص

العنصر النائبالوصفعينة من القيمة

<BODY_TEXT>

String (سلسلة)

مطلوب.


النص المطلوب عرضه في النص الرئيسي للرسالة.


بحد أقصى 1024 حرفًا.

Hello! Thanks for your interest. Ordering is easy. Just visit our catalog and add items to purchase.

<FOOTER_TEXT>

String (سلسلة)

اختياري.


النص المطلوب عرضه في تذييل الرسالة.


بحد أقصى 60 حرفًا.

Best grocery deals on WhatsApp!

<THUMBNAIL_PRODUCT_RETAILER_ID>

String (سلسلة)

مطلوب.


رقم وحدة إدارة المخزون الخاص بالعنصر. يتم تصنيفه كـ معرف محتوى في مدير المعاملات التجارية.


سيتم استخدام صورة مصغرة لهذا العنصر كصورة عنوان الرسالة.


إذا تم حجب الكائن parameters، فسيتم استخدام صورة المنتج لأول عنصر في الكتالوج.

2lc20305pt

<TO>

String (سلسلة)

رقم هاتف العميل.

16505551234

عينة من الطلب

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "16505551234",
  "type": "interactive",
  "interactive": {
    "type": "catalog_message",
    "body": {
      "text": "Hello! Thanks for your interest. Ordering is easy. Just visit our catalog and add items to purchase."
    },
    "action": {
      "name": "catalog_message",
      "parameters": {
        "thumbnail_product_retailer_id": "2lc20305pt"
      }
    },
    "footer": {
      "text": "Best grocery deals on WhatsApp!"
    }
  }
}'

عينة من الاستجابة

{
  "messaging_product": "whatsapp",
  "contacts": [
    {
      "input": "16505551234",
      "wa_id": "16505551234"
    }
  ],
  "messages": [
    {
      "id": "wamid.HBgLMTY1MDM4Nzk0MzkVAgARGBI0ODVEREUwQzEzQkVBRjQ1RUUA"
    }
  ]
}

رسائل قالب الكتالوج

رسائل قالب الكتالوج هي رسائل قالب تحتوي على زر يعرض كتالوج المنتجات ضمن واتساب عندما يتم الضغط عليه.

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

رسائل رابط الكتالوج

بإمكان الأنشطة التجاري إرسال رابط لكتالوج المنتجات بالكامل عن طريق تجميع رابط wa.me وتضمينه في رسالة نصية قياسية. عند إرسال رسالة نصية، بإمكان الأنشطة التجارية استخدام preview_url الاختياري مع تعيينه على true لجعل الرسالة تعرض مجموعة من الصور المصغرة في كتالوج المنتجات لأي عنوان URL في سلسلة body للرسالة.

لاحظ أنه إذا قامت الأنشطة التجارية بتعطيل الكتالوج، فستعرض روابط wa.me والزر عرض الكتالوج في رسائل رابط الكتالوج رسالة رابط الكتالوج غير صالح عند الضغط عليها.

لتجميع رابط wa.me، يمكنك إلحاق رقم هاتف النشاط التجاري، بما في ذلك كود البلد في نهاية السلسلة التالية:

https://wa.me/c/

على سبيل المثال:

https://wa.me/c/15555455657

رسائل المنتجات

تُعد كل من رسائل المنتجات المتعددة ورسائل المنتج الواحد أنواع من رسائل interactive.

مثال على رسالة منتجات متعددة:
مثال على رسالة منتج واحد:
القائمة التي يتم تشغيلها عندما ينقر المستخدم على بدء التسوق:
مثال على صفحة تفاصيل المنتج:

نظرة عامة

بإمكان المستخدمين الذين يتلقون رسائل منتجات متعددة ورسائل منتج واحد تنفيذ 3 إجراءات أساسية:

  1. عرض المنتجات: يمكن للعملاء عرض قائمة منتجات أو منتج واحد فقط. عندما ينقر المستخدم على عنصر محدد، تظهر أحدث معلومات حول المنتج ونعرض المنتج بتنسيق صفحة تفاصيل المنتج (PDP). لا تدعم صفحات PDP حاليًا إلا صور المنتجات — أي لن يتم عرض أي مقاطع فيديو و/أو صور GIF تمت إضافتها إلى المنتج في صفحة PDP.
  2. إضافة المنتجات إلى عربة تسوق: بإمكان المستخدم إضافة منتج إلى عربة التسوق أو تعديل الكميات مباشرةً من القائمة أو في صفحة تفاصيل المنتج. عندما يضيف المستخدم منتجًا إلى عربة التسوق، نعرض أحدث معلومات حول العنصر. إذا حدث تغيير في حالة أي من العناصر، فسنعرض مربع حوار يتضمن الرسالة "تم تحديث عنصر واحد أو أكثر في عربة التسوق" — راجع تحديثات المنتج لمزيد من المعلومات. تظل عربة التسوق في سلسلة الدردشة بين النشاط التجاري والعميل حتى يتم إرسال عربة التسوق إلى النشاط التجاري — راجع تجربة عربة التسوق لمزيد من التفاصيل.
  3. إرسال عربة تسوق إلى النشاط التجاري: بعد إضافة كل العناصر اللازمة، يمكن للعملاء إرسال عربة التسوق إلى النشاط التجاري الذين يراسلونه. بعد ذلك، ستتمكن الأنشطة التجارية من تحديد الخطوات التالية، مثل طلب معلومات التسليم أو توفير خيارات الدفع.

إذا كان العميل لديه أجهزة متعددة مرتبطة بحساب واتساب ذاته، فستتم مزامنة رسائل المنتجات المتعددة ورسائل المنتج الواحد بين الأجهزة. ومع ذلك، توجد عربة تسوق محلية لكل جهاز محدد. راجع تجربة عربة التسوق لمزيد من التفاصيل.

في الوقت الحالي، يمكن تلقي هذه الأنواع من الرسائل في المنصات التالية:

  • iOS: 2.21.100 (رسائل المنتجات المتعددة) و2.21.210 (رسائل المنتج الواحد).
  • Android: 2.21.9.15 (رسائل المنتجات المتعددة) و2.21.19 (رسائل المنتج الواحد).
  • الويب: تم طرح عميل الويب الذي يدعم هذه الميزات.

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

السلوك المتوقع للرسائل

يمكن إجراء ما يلي بالنسبة لرسائل المنتجات المتعددة ورسائل المنتج الواحد:

  • إعادة توجيهها من جانب مستخدم إلى آخر.
  • إعادة فتحها من جانب مستخدم موجود ضمن المحادثة ذاتها.

لا يمكن إجراء ما يلي بالنسبة لرسائل الكتالوج ورسائل المنتجات المتعددة ورسائل المنتج الواحد:

  • إرسالها كإشعارات. لا يمكن إرسالها إلا كجزء من محادثات موجودة.

تحديثات المنتجات

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

الخاصية التي تم تحديثهاعملية التحديث

سعر المنتج وعنوانه ووصفه والصورة.

  1. يرسل النشاط التجاري رسالة منتجات متعددة أو رسالة منتج واحد تحتوي على المنتج أ.
  2. يقوم النشاط التجاري بتحديث خصائص المنتج أ في الكتالوج.
  3. يتم تحديث الشاشات التي تعرض هذا المنتج بمجرد أن يتعرف العميل على التغيير من جانب الخادم.

تغيير التوّفر

  1. يرسل النشاط التجاري رسالة منتجات متعددة أو رسالة منتج واحد تحتوي على المنتج ب إلى العميل.
  2. يبيع النشاط التجاري كل وحدات المنتج ب المتوفرة. بعد ذلك، يعمل النشاط التجاري على تحديث الكتالوج موضحًا عدم توّفر المنتج ب بعد الآن
  3. إذا أضاف العميل بالفعل المنتج ب إلى عربة التسوق، فستتم إزالة العنصر من عربة التسوق. تعرض عربة التسوق مربع حوار يتضمن الرسالة "تم تحديث عنصر واحد أو أكثر في عربة التسوق".
  4. إذا لم يضف العميل المنتج ب إلى عربة التسوق، فستعرض رسالة المنتجات المتعددة أو رسالة المنتج الواحد الآن العنصر كغير متوفر.

تجربة عربة التسوق

بعد عرض المنتجات، يمكن للعميل إضافتها إلى عربة التسوق وإرسال عربة التسوق هذه إلى النشاط التجاري. لأغراض المعاملات التجارية في واتساب، تكون عربة التسوق:

  • فريدة لسلسلة دردشة الشخص/النشاط التجاري في جهاز محدد: لا يتم إنشاء سوى عربة تسوق واحدة لكل سلسلة دردشة بين العميل والنشاط التجاري ولا تتواجد عربات التسوق عبر أجهزة متعددة. بمجرد إرسال عربة التسوق، يمكن للعميل فتح عربة تسوق أخرى مع النشاط التجاري وبدء العملية مجددًا.
  • لا تتقيد بتاريخ انتهاء صلاحية: تظل عربة التسوق في سلسلة الدردشة حتى يتم إرسالها إلى النشاط التجاري. بمجرد إرسالها، يتم تفريغ عربة التسوق.

بإمكان العملاء إضافة ما يصل إلى 99 وحدة من كل عنصر كتالوج واحد إلى عربة التسوق، ولكن لا يوجد تقييد على عدد العناصر المختلفة التي يمكن إضافتها إلى عربة التسوق.

بمجرد إرسال عربة التسوق، لا يمكن إجراء أي تعديلات. بإمكان العملاء إرسال عربة تسوق جديدة إذا كانوا في حاجة إلى عناصر جديدة أو يرغبون في تغيير الطلب. يتعذر على الأنشطة التجاري إرسال عربات التسوق إلى العملاء.

مثال على تجربة عربة التسوق والسلوك المتوقع لتغيير حالة العنصر.

مزايا الاستخدام

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

بسيطة وفعّالة

الجمع بين الميزات وأدوات التنقل مثل معالجة اللغة الطبيعية أو البحث عن النص أو رسائل قائمة المعروضات وأزرار الرد للوصول إلى ما يبحث عنه العميل بسرعة.

التخصيص

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

نتائج النشاط التجاري

قناة فعالة لمعالجة الطلبات، أثناء الاختبار، كان لدى الأنشطة التجارية معدل تحويل 7% في المتوسط لرسائل المنتجات المتعددة المرسلة إلى عربات التسوق التي تم استلامها.

بدون قوالب

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

متى يمكن استخدامها

تُعد رسائل المنتجات المتعددة أفضل خيار لتوجيه العملاء إلى مجموعة فرعية محددة من مخزون النشاط التجاري، مثل:

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

تُعد رسائل المنتج الواحد أفضل خيار لتوجيه العملاء إلى عنصر واحد محدد من مخزون النشاط التجاري، حيث توفر ردودًا سريعة من مجموعة محدودة من الخيارات، مثل:

  • الرد على طلب محدد من جانب العميل.
  • توفير توصيات.
  • إعادة طلب عنصر سابق.

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

البدء

قبل إرسال كل رسالة، تحتاج إلى الحصول على معرف واتساب للمستلم من خلال إرسال استدعاء إلى العقدة /contacts.

نوصي بإعداد أحداث webhooks لتلقي حالة الرسالة وإشعارات الرسالة الواردة. بهذه الطريقة، يمكنك تتبع ما إذا كان قد تم إرسال الرسالة والردود من جانب العملاء.

الخطوة الأولى: تكوين الكائن التفاعلي

رسائل المنتج الواحد

لإرسال رسالة منتج واحد، يمكنك تكوين كائن interactive من النوع product يتضمن المكونات التالية:

الكائنالوصف

body

اختياري.

كائن النص. اطلع على كل خيارات الكائن body.

footer

اختياري.

كائن التذييل. اطّلع على كل خيارات الكائن footer.

action

مطلوب.

يجب أن يتضمن حقل الإجراء ما يلي:

  • catalog_id: معرف الكتالوج الذي تريد استخدامه لهذه الرسالة. يمكنك استرداد هذا المعرف عبر مدير المعاملات التجارية.
  • product_retailer_id: معرف المنتج الفريد.

اطّلع على كل خيارات الكائن action.

في النهاية، من المفترض أن يبدو الكائن التفاعلي كما يلي:

"interactive": {
    "type": "product",
    "body": {
      "text": "text-body-content"
    },
    "footer": {
      "text": "text-footer-content"
    },
    "action": {
      "catalog_id": "catalog-id",
      "product_retailer_id": "product-SKU-in-catalog"
    }
}

رسائل المنتجات المتعددة

لإرسال رسالة منتجات متعددة، يمكنك تكوين كائن interactive من النوع product_list يتضمن المكونات التالية:

الكائنالوصف

header

مطلوب.

يجب أن يتم تعيين type للعنوان على text. لا تنس إضافة الكائن text بالمحتوى المطلوب. راجع كل حقول header المتوفرة.

body

مطلوب.

كائن body. اطّلع على كل خيارات الكائن body.

footer

اختياري.

كائن footer. اطلع على كل خيارات الكائن footer.

action

مطلوب.

يجب أن يتضمن حقل الإجراء ما يلي:

  • catalog_id: معرف الكتالوج الذي تريد استخدامه لهذه الرسالة. يمكنك استرداد هذا المعرف عبر مدير المعاملات التجارية.
  • sections: مصفوفة من كائنات الأقسام. يجب تضمين قسم واحد على الأقل.

في كل قسم، يمكنك تضمين ما يلي:

  • title: يمكنك تضمين عنوان لكل قسم إذا كنت تخطط لاستخدام أكثر من واحد.
  • product_items: مصفوفة بكائنات المنتجات المطلوب عرضها.

يحتوي كل كائن منتج على product_retailer_id، والذي يتوافق مع معرف المنتج الفريد. يمكنك استرداد هذا المعرف عبر مدير المعاملات التجارية. اطلع على كل خيارات الكائن action.

في النهاية، من المفترض أن يبدو الكائن interactive كما يلي:

"interactive": 
    {
    "type": "product_list",
    "header":{
       "type": "text",
        "text": "text-header-content"
     },
     "body":{
        "text": "text-body-content"
      },
     "footer":{
        "text":"text-footer-content"
     },
     "action":{
        "catalog_id":"catalog-id",
        "sections": [
             {
             "title": "the-section-title",             
             "product_items": [
                  { "product_retailer_id": "product-SKU-in-catalog" },
                  { "product_retailer_id": "product-SKU-in-catalog" },
                            ...
              ]},
              {
              "title": "the-section-title",
              "product_items": [
                 { "product_retailer_id": "product-SKU-in-catalog" }
                           ...
              ]},
               ...
       ]
     },  
    }

العناصر المفقودة

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

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

  • يتم إرسال الرسائل بنجاح،
  • ويتم تجاهل العناصر غير المتطابقة
  • يتلقى النشاط التجاري رسالة خطأ تطالب بتحديث الكتالوج

الخطوة الثانية: إضافة معلمات الرسائل الشائعة

بمجرد إكمال الكائن التفاعلي، يمكنك إلحاق المعلمات الأخرى التي تكون الرسالة: recipient_type وto وtype. لا تنس تعيين type على interactive.

{
  "recipient_type": "individual",
  "to" : "whatsapp-id", // WhatsApp ID of the recipient
  "type": "interactive",
  "interactive":{
    // The interactive object  
   }
  }

راجع المعلمات الشائعة لكل أنواع الرسائل هنا.

الخطوة الثالثة: إجراء استدعاء POST إلى /messages

يمكنك إجراء استدعاء POST إلى نقطة النهاية /messages التي تحتوي على كائن JSON الذي تم تكوينه في الخطوتين 1 و2. إذا تم إرسال الرسالة بنجاح، فستحصل على الاستجابة التالية:

{
  "messages": [{
    "id": "{message-id}"
  }]
  }

قوالب رسائل المنتجات المتعددة

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