VibeFox Mondial Relay for PrestaShop — المساعدة
المتطلبات
PrestaShop: من 8.0 إلى 9.x. يعمل الدفع مع القالبين Classic وHummingbird.
PHP: 8.0 أو أحدث. ترفض الوحدة التثبيت على إصدارات PHP الأقدم.
حساب Mondial Relay: يأتي رمز العلامة التجارية (Enseigne) وPrivate Key مع حساب أعمال لدى Mondial Relay: راجع قسم المحترفين في موقع mondialrelay.fr، أو منطقة العملاء "Connect"، أو جهة اتصال المبيعات لديك. يحتاج محدد الخريطة إلى رمز العلامة التجارية فقط. تحتاج قائمة أقرب النقاط إلى الاثنين. ولأغراض الاختبار تُوفّر Mondial Relay رمز العلامة التجارية BDTEST13 مع Private Key وهو PrivateK.
مفتاح ترخيص VibeFox: يُشترى من vibefox.net. يعمل مفتاح واحد على نطاق واحد.
التثبيت
1. في لوحة الإدارة، انتقل إلى Modules > Module Manager واضغط على Upload a module. اختر ملف ZIP الخاص بالوحدة.
2. عند انتهاء الرفع، اضغط على Configure، أو ابحث لاحقًا عن VibeFox Mondial Relay في قائمة الوحدات واضغط على Configure.
3. أدخل مفتاح ترخيص VibeFox في License key في كتلة الترخيص أعلى صفحة Configure واضغط على Activate (انظر مفتاح الترخيص).
4. أدخل رمز علامتك التجارية (Enseigne)، وفي وضع القائمة أدخل Private Key. املأ Country prices ثم اضغط على Save.
عند التثبيت تُنشئ الوحدة شركة الشحن Mondial Relay Point Relais مع نص مدة التوصيل Delivery to a Mondial Relay Point Relais of your choice. تُخصَّص شركة الشحن لجميع مجموعات العملاء ولمناطق فرنسا وبلجيكا ولوكسمبورغ وإسبانيا والبرتغال وهولندا. يمكنك تغيير المناطق ومجموعات العملاء ومدة التوصيل والشعار وحدود الحجم في Shipping > Carriers. لا تحدد الأسعار هناك: فالسعر يأتي دائمًا من الوحدة.
الإعدادات
جميع الإعدادات موجودة في صفحة الوحدة: Modules > Module Manager > VibeFox Mondial Relay > Configure. لكل قسم زر Save خاص به، وهو يحفظ الصفحة كاملة. كل عملية حفظ تمسح أيضًا قوائم نقاط الاستلام المخزنة مؤقتًا.
تعرض التحذيرات أعلى الصفحة المشكلات التي تُخفي شركة الشحن: غياب رمز العلامة التجارية، أو غياب Private Key في وضع القائمة، أو عدم وجود سعر لفرنسا أو بلجيكا أو إسبانيا، أو حذف شركة الشحن. القيم التي لا يمكن حفظها تُبلَّغ بعد Save: حقل رقمي يحتوي على قيمة ليست رقمًا (أو سالبة) يحتفظ بقيمته السابقة. يُرفض اسم أطول من 64 حرفًا، أو Min weight (kg) أكبر من Max weight (kg)، ولا يُحفظ أي شيء. إذا لم تكن وحدة وزن المتجر من الوحدات التي تعرفها الوحدة، يوضح تحذير أن أوزان المنتجات تُعامَل بالكيلوغرام.
عام
Enable/Disable: يفعّل Mondial Relay أو يعطّله. وهو المفتاح نفسه الخاص بحالة شركة الشحن في Shipping > Carriers.
Name: اسم شركة الشحن الذي يراه العميل عند الدفع. الافتراضي: Mondial Relay Point Relais. مطلوب، حتى 64 حرفًا.
Tax status: تعني None أن الأسعار في الجدول نهائية. ويعني الخيار Taxable مع اسم قاعدة ضريبية أن PrestaShop يضيف ضريبة الشحن لتلك القاعدة فوق الأسعار.
حساب Mondial Relay
Brand code (Enseigne): مطلوب، حتى 8 أحرف وأرقام، مثل BDTEST13 للاختبار. يستخدمه خريطة نقاط الاستلام وWeb Service. بدونه لا يستطيع العملاء اختيار Point Relais، ولذلك لا تظهر شركة الشحن عند الدفع.
Private Key: مطلوب فقط لمحدد List of nearest points. بعد الحفظ يبقى الحقل فارغًا ويعرض Saved - leave empty to keep it. أدخل قيمة جديدة فقط إذا أردت تغييرها. لحذف المفتاح المحفوظ، فعّل Remove the saved Private Key ثم اضغط على Save. عند ضبط رمز العلامة التجارية وPrivate Key، يُختبر الاتصال بـ Mondial Relay Web Service في كل مرة تحفظ فيها الإعدادات، ويعرض لك تنبيه ما إذا كانا صالحين.
محدد نقطة الاستلام
Selector: الطريقة التي يختار بها العميل Point Relais.
الأسعار (بعملة المتجر الافتراضية، دون الضريبة)
Country prices: السعر حسب بلد الوجهة ووزن الطرد. اضغط على + Add country لإضافة صف، وعلى أيقونة سلة المهملات لحذفه. اختر * Default بوصفه البلد لجميع البلدان الأخرى. يحتوي كل صف على عمود Price وأعمدة للوزن: XS حتى 1 كغ، وS من 1-2 كغ، وM من 2-3 كغ، وL من 3-5 كغ، وXL فوق 5 كغ. يستخدم عمود الوزن الفارغ أو الذي قيمته 0 عمود Price. إذا كان Price فارغًا أيضًا، يكون التوصيل لذلك الوزن مجانيًا، لذلك املأ Price عندما تستخدم بعض أعمدة الوزن فقط. الأرقام العشرية بنقطة أو فاصلة (4.90 أو 4,90). تُحذف الصفوف التي لا تحتوي على أي سعر عند الحفظ، وتُبلَّغ القيم التي ليست أرقامًا وتُترك فارغة.
Fallback cost: يُستخدم للبلدان التي ليس لها صف في الجدول. اتركه فارغًا لإخفاء شركة الشحن لتلك البلدان.
Calculation type: الطريقة التي يُحسب بها السعر.
Free shipping from: المجموع الفرعي للسلة (بعد الخصومات، دون الضريبة) الذي يصبح عنده التوصيل مجانيًا. اتركه فارغًا إذا لم يكن هناك شحن مجاني.
التوفر
Min weight (kg): يُخفي شركة الشحن عندما تكون السلة أخف من ذلك. 0 تعني دون حد.
Max weight (kg): يُخفي شركة الشحن عندما تكون السلة أثقل من ذلك. تقبل Mondial Relay طرودًا حتى 30 كغ في Points Relais. الافتراضي: 30. 0 تعني دون حد. الحقل الفارغ يعني 30 كغ. ولا يمكن أن يكون أقل من Min weight (kg).
Minimum subtotal: يعرض شركة الشحن فقط عندما يبلغ المجموع الفرعي للسلة (المنتجات التي تحتاج إلى شحن، بعد الخصومات، دون الضريبة) هذا المبلغ على الأقل. اتركه فارغًا لعرضها دائمًا.
Ignore shipping zones: يعرض شركة الشحن للبلدان المذكورة أدناه، أو لجميع البلدان المدعومة إذا كانت القائمة فارغة، حتى حيث لا تتضمنها مناطق شركة الشحن. وطالما هذا الخيار مفعّل، تُربط شركة الشحن بكل منطقة نشطة، بما في ذلك المناطق التي ستنشئها لاحقًا. وعند إيقافه تستعيد شركة الشحن المناطق التي كانت لديها من قبل.
Countries (ignore zones): بلدان الوجهة لهذا الوضع. لا يُستخدم هذا الحقل إلا عندما يكون Ignore shipping zones مفعّلًا. تتضمن القائمة البلدان التي لديها Points Relais فقط.
متقدم
Debug log: يكتب حسابات الأسعار واستدعاءات Web Service في logs/vfd_mrel_debug.log.php داخل مجلد الوحدة. لا يمكن فتح الملف من الويب. تُسجَّل الأخطاء دائمًا، حتى مع إيقاف هذا الخيار. ولا تُسجَّل المفاتيح وبيانات العملاء أبدًا.
Log: يعرض حجم السجل وآخر مدخلاته. اضغط على Clear log لتفريغه.
Remove data on uninstall: عند التفعيل، يحذف إلغاء تثبيت الوحدة الإعدادات وشركة الشحن. وعند الإيقاف، يؤدي إلغاء التثبيت إلى تعطيل شركة الشحن فقط. تبقى نقاط الاستلام المحفوظة في الطلبات.
كيف يعمل عند الدفع
تُعرض شركة الشحن فقط للبلدان التي لديها Points Relais: فرنسا وبلجيكا ولوكسمبورغ وإسبانيا والبرتغال وهولندا. وتُخفى عندما لا يستطيع العميل اختيار نقطة: بدون رمز العلامة التجارية، أو في وضع القائمة بدون Private Key.
في خطوة الشحن يطلب PrestaShop من الوحدة السعر. تُحتسب المنتجات المادية فقط: لا تضيف المنتجات الافتراضية وزنًا، ولا تدخل في المجموع الفرعي. تتحقق الوحدة من وزن السلة والمجموع الفرعي الأدنى. يأتي السعر من صف البلد (أو صف *): عمود الوزن، وإلا فـ Price. وبدون صف تُستخدم التكلفة الاحتياطية. وإذا لم يوجد سعر تُخفى شركة الشحن. وإذا بلغ المجموع الفرعي Free shipping from يصبح السعر 0. يُحسب السعر بعملة المتجر الافتراضية ثم يُعرض بعملة سلة العميل.
إذا عدّلت شركة الشحن في Shipping > Carriers بعد أن أصبح لديها طلبات، يحفظها PrestaShop كنسخة جديدة من شركة الشحن. وتتبع الوحدة النسخة الجديدة تلقائيًا.
لا تطلب الوحدة الأسعار الفورية: فليس لدى Mondial Relay واجهة برمجية عامة لأسعار الشحن. ولا تنشئ شحنات، ولا تطبع ملصقات، ولا تتتبع الطرود. أنشئ الشحنات في مساحة "Connect" الخاصة بك لدى Mondial Relay باستخدام رقم Point Relais المعروض في الطلب. التوصيل إلى المنزل (Domicile) غير متاح.
نقاط الاستلام
عندما يختار العميل شركة الشحن Mondial Relay في خطوة التوصيل، يظهر مربع Mondial Relay pickup point أسفلها.
وضع الخريطة: يفتح الزر Choose a Point Relais الخريطة الرسمية لـ Mondial Relay في نافذة، لبلد التوصيل والرمز البريدي ووزن الطرد. وبعد أن يختار العميل نقطة، تظهر بعنوان Selected: ويتحول الزر إلى Change Point Relais. تُحمَّل أداة الخريطة من widget.mondialrelay.com، ومكتبة الخريطة من unpkg.com، فقط عندما يفتح العميل الخريطة. اذكر ذلك في سياسة الخصوصية لديك.
وضع القائمة: تعرض القائمة المنسدلة - Choose a Point Relais - أقرب 10 نقاط إلى الرمز البريدي للتوصيل، مع المسافة لكل منها. تُعرض النقطة المختارة مع ساعات عملها. تُحمَّل القائمة من خادمك، لذلك لا يُشغَّل أي سكربت من طرف ثالث في المتصفح. تُخزَّن القوائم مؤقتًا لمدة 12 ساعة، والردود الفارغة لمدة ساعة، والطلب الفاشل يُتذكَّر لمدة 5 دقائق. مهلة Web Service هي 10 ثوانٍ. وبدون رمز بريدي يرى العميل Enter your postcode to see the nearest pickup points. وإذا لم تُوجد أي نقطة أو لم تكن القائمة متاحة، يرى العميل رسالة مثل "قائمة نقاط الاستلام غير متاحة حاليًا. يُرجى استخدام الخريطة." وتُعرض عليه الخريطة.
تُحفظ النقطة المختارة في السلة فورًا. النقطة مطلوبة. وبدونها يرى العميل Please choose a Mondial Relay pickup point. ولا يستطيع المتابعة إلى الدفع. تُرفض النقطة الواقعة في بلد غير بلد عنوان التوصيل. وفي وضع القائمة تُقارَن النقطة أيضًا بالقائمة الخاصة بالعنوان.
عند إتمام الطلب تبقى النقطة مع الطلب. تعرض صفحة الطلب في لوحة الإدارة كتلة Mondial Relay pickup point مع اسم النقطة وعنوانها وPoint Relais number (مثل FR-066974). يرى العميل النقطة في صفحة تأكيد الطلب وفي تفاصيل الطلب ضمن حسابه. وفي رسالة تأكيد الطلب، وفي رسالة الطلب الجديد الخاصة بوحدة تنبيهات البريد، تُضاف النقطة بعد اسم شركة الشحن.
مفتاح الترخيص
تعمل الوحدة بمفتاح ترخيص VibeFox من vibefox.net. كتلة الترخيص License — VibeFox Mondial Relay هي أول كتلة في Modules > Module Manager > VibeFox Mondial Relay > Configure، فوق الإعدادات. الصق المفتاح في License key واضغط على Activate. بعد ذلك تعرض الكتلة المفتاح مخفيًا، والحالة (مثلًا تاريخ انتهاء صلاحية الترخيص ونطاقك)، والأزرار Check now لإعادة التحقق من الحالة، وChange key لإدخال مفتاح آخر، وRemove key لإزالة المفتاح من هذا المتجر. تحتها السطر Product: presta-shipping-mondialrelay والرابط Manage licenses and domains in your account الذي يفتح حسابك على vibefox.net. لا يمكن تغيير المفتاح إلا للموظفين الذين لديهم صلاحية Configure للوحدة. وتتبع نصوص الكتلة لغة لوحة الإدارة (الإنجليزية والروسية متوفرتان).
إذا لم يُقبل المفتاح، تذكر الكتلة السبب، مثلًا Key not found أو This key belongs to another product أو Domain limit reached أو License expired on مع تاريخ. بعد تغيير عنوان المتجر، أو بعد تحرير مكان نطاق في حسابك، اضغط على Check now. إذا تعذر الوصول إلى خادم التراخيص، تواصل الوحدة العمل بآخر حالة معروفة.
يعمل المفتاح الواحد على نطاق واحد: نطاق المتجر الرئيسي، حتى في إعداد المتاجر المتعددة. إزالة المفتاح من المتجر لا تحرر مكان نطاقه. حرره في حسابك على vibefox.net.
من دون مفتاح نشط، لا تظهر شركة الشحن Mondial Relay للعملاء عند الدفع، ولا يُحسب أي سعر. لا تعرف واجهة متجر PrestaShop أنك مسجل الدخول إلى لوحة الإدارة، لذلك تُخفى الشركة عنك أيضًا: يمكنك إعداد الوحدة قبل شراء مفتاح، لكن لا يمكنك اختبارها عند الدفع. يظهر تذكير في Modules > Module Manager على تبويب Alerts. الطلبات الحالية لا تتأثر.
عند انتهاء صلاحية الترخيص، تواصل الوحدة العمل، لكن التحديثات والدعم تحتاج إلى تجديد. يُعاد التحقق من الحالة تلقائيًا أثناء عملك في لوحة الإدارة: مرة في اليوم خلال أول 14 يومًا بعد إدخال المفتاح، ثم مرة في الأسبوع. لا حاجة إلى مهمة Cron. إلغاء تثبيت الوحدة أو إعادة ضبطها يحذف دائمًا مفتاح الترخيص وحالة الترخيص.
استكشاف الأخطاء وإصلاحها
لا تظهر Mondial Relay عند الدفع: تحقق من أن الترخيص نشط وأن Enable/Disable مفعّل. في Shipping > Carriers تحقق من أن شركة الشحن تغطي منطقة بلد العميل ومجموعته، أو فعّل Ignore shipping zones. راجع التحذيرات أعلى صفحة الوحدة: تُخفى شركة الشحن بدون رمز العلامة التجارية، وفي وضع القائمة بدون Private Key، ولبلد بلا سعر، وخارج حدود الوزن والمجموع الفرعي، وللبلدان التي ليس فيها Points Relais. ويمكن أيضًا تقييد المنتجات بشركات شحن معينة في صفحة المنتج.
فشل اختبار Web Service بعد الحفظ: تعرض الرسالة خطأ Mondial Relay، مثل رمز علامة تجارية غير صالح أو مفتاح أمان غير صالح. تحقق من رمز العلامة التجارية وPrivate Key لدى Mondial Relay.
قائمة النقاط فارغة أو غير متاحة: يحتاج العميل أولًا إلى رمز بريدي للتوصيل. وإذا تعذّرت خدمة Web Service تُعرض الخريطة بدلًا منها. فعّل Debug log، وأعد تحميل صفحة الدفع، وراجع الحقل Log في صفحة الوحدة لمعرفة السبب.
لا تفتح الخريطة: تُحمَّل الخريطة من widget.mondialrelay.com وunpkg.com. تحقق من أن أداة حظر الخصوصية أو السكربتات لا تحجبهما. وإذا تعذّر تحميل الخريطة يرى العميل "تعذّر تحميل خريطة Mondial Relay. يُرجى المحاولة لاحقًا أو اختيار طريقة شحن أخرى."
تقول صفحة الطلب No Point Relais was saved for this order: تم إتمام الطلب دون نقطة من بلد التوصيل. ويُكتب السبب في السجل. اطلب من العميل Point Relais قبل إنشاء الشحنة.
تقول الصفحة إن شركة شحن Mondial Relay لم تُعثر عليها: حُذفت شركة الشحن في Shipping > Carriers. أعد ضبط الوحدة في Modules > Module Manager لإنشائها من جديد.
إلغاء التثبيت
انتقل إلى Modules > Module Manager، وافتح القائمة بجوار VibeFox Mondial Relay واختر Uninstall. يُحذف مفتاح الترخيص وحالة الترخيص دائمًا. تُحذف قوائم نقاط الاستلام المخزنة مؤقتًا دائمًا. إذا كان Remove data on uninstall مفعّلًا، تُحذف شركة الشحن (تحتفظ الطلبات بسجلها)، وتُحذف الإعدادات والسجل ونقاط السلات التي لا تحتوي على طلب. وإذا كان معطّلًا، تُعطَّل شركة الشحن فقط وتبقى جميع الإعدادات محفوظة. تؤدي إعادة تثبيت الوحدة إلى استعادة حالة شركة الشحن التي كانت عليها من قبل. تبقى نقاط الاستلام المحفوظة في الطلبات دائمًا.
Mondial Relay علامة تجارية مسجلة لمالكها. هذه الوحدة غير تابعة لـ Mondial Relay ولا تحظى بتأييد منها.
