رجوع

VibeFox iPay88 for OpenCart — المساعدة

المتطلبات

OpenCart: ‏3.0.x (تم الاختبار على الإصدار 3.0.5.0) أو ‏4.0.2 والإصدارات الأحدث (تم الاختبار على الإصدار 4.1.0.3).

PHP: ‏8.0 أو أحدث.

حساب تاجر iPay88: تُصدر iPay88 الـ Merchant Code والـ Merchant Key عند تفعيل حساب التاجر الخاص بك، وتظهران أيضًا في بوابة التجار الخاصة بـ iPay88. إذا لم تكن تاجرًا بعد، فقدّم طلبًا على موقع iPay88. احتفظ بالـ Merchant Key سرًّا، فهو يوقّع المدفوعات. لا تملك iPay88 بيئة تجريبية منفصلة، لذلك لا توجد مفاتيح اختبار.

Request URL: يجب تسجيل عنوان موقعك لدى iPay88 بوصفه request URL. وإلا فستعرض صفحة iPay88 الرسالة "Permission not allow".

العملة: ماليزيا — MYR، وكذلك USD وSGD وAUD وCAD وEUR وGBP وHKD وCNY وTWD وINR وIDR وPHP وTHB إذا كان خيار تعدد العملات مفعّلًا في حساب iPay88 الخاص بك؛ الفلبين — PHP أو USD؛ إندونيسيا — IDR؛ تايلاند — THB. وإذا تعذّر تحصيل عملة دفع العميل في منطقتك، تُخفى طريقة الدفع في صفحة الدفع.

مفتاح ترخيص VibeFox: يُشترى من vibefox.net. يعمل المفتاح الواحد على نطاق واحد.

التثبيت

يحتوي هذا التنزيل على ملف zip واحد فيه حزم الإصدارين من OpenCart. فكّ ضغطه على حاسوبك. يحتوي على README.txt، وحزمة OpenCart 3 wcp_ipay88_payment-oc3-(version).ocmod.zip، وحزمة OpenCart 4 wcp_ipay88_payment.ocmod.zip. ثبّت الحزمة الخاصة بإصدار OpenCart لديك فقط. مفتاح الترخيص واحد للإصدارين.

OpenCart 3

1. في لوحة الإدارة، انتقل إلى Extensions > Installer، ثم انقر على Upload واختر الملف wcp_ipay88_payment-oc3-(version).ocmod.zip. لا تحتوي الإضافة على أي تعديلات OCMOD، لذلك لا يلزم تحديث Extensions > Modifications. وبدلًا من أداة التثبيت، يمكنك نسخ محتويات المجلد upload الموجود في هذه الحزمة إلى المجلد الجذر لمتجرك.

2. انتقل إلى Extensions > Extensions، واختر النوع Payments. ابحث عن VibeFox iPay88 Payment وانقر على Install (زر + الأخضر). يحتاج مستخدم الإدارة لديك إلى صلاحية تعديل قائمة امتدادات الدفع.

3. انقر على Edit (زر القلم) لفتح صفحة الإعدادات. الصق مفتاح ترخيص VibeFox في License key ضمن كتلة الترخيص أعلى الصفحة، ثم انقر على Activate (راجع مفتاح الترخيص).

4. اختر iPay88 region الخاصة بك، وأدخل Merchant Code وMerchant Key، وفعّل Enable/Disable، ثم انقر على Save.

5. للتحقق من الإعداد، أجرِ عملية دفع مع تفعيل Test mode، ثم أوقف وضع الاختبار.

OpenCart 4

1. في لوحة الإدارة، انتقل إلى Extensions > Installer، ثم انقر على Upload واختر الملف wcp_ipay88_payment.ocmod.zip. لا تُغيّر اسم الملف: يأخذ OpenCart 4 رمز الامتداد من اسم الملف، ولا تعمل الحزمة إذا أُعيد تسميتها.

2. تظهر الحزمة في قائمة الامتدادات المثبتة في الصفحة نفسها. انقر على Install (زر + الأخضر) بجانبها.

3. انتقل إلى Extensions > Extensions واختر النوع Payments. ابحث عن VibeFox iPay88 Payment، وانقر على Install (زر + الأخضر)، ثم على Edit (زر القلم).

4. أدخل مفتاح الترخيص ومفاتيح iPay88 كما في الخطوات من 3 إلى 5 لـ OpenCart 3. صفحة الإعدادات وحقولها متطابقة في الإصدارين. الفرق الوحيد هو عنوانا الاستجابة والخادم الخلفي (راجع عناوين الاستجابة والخادم الخلفي).

يبدأ التثبيت الجديد بطريقة الدفع معطّلة. تُرسل عناوين الاستجابة والخادم الخلفي مع كل عملية دفع، لذلك لا يلزم إعداد أي شيء لها لدى iPay88.

الإعدادات

جميع الإعدادات موجودة في صفحة الامتداد: Extensions > Extensions > Payments > VibeFox iPay88 Payment > Edit. تُعرض الأقسام على اليسار، وزر Save أسفل القائمة يحفظ الصفحة كاملةً. وفوق الإعدادات تعرض الصفحة النص Enter the iPay88 Merchant Code and Merchant Key — until then the payment method is not shown at checkout. طالما أن مفتاحًا مفقود، وتحذيرًا عندما يتعذّر تحصيل عملة المتجر الافتراضية في المنطقة المختارة (فتُخفى طريقة الدفع في صفحة الدفع لهذه العملة)، وتحذيرًا طالما أن وضع الاختبار مفعّل. ومن دون صلاحية تعديل الامتداد، تعرض الصفحة الإعدادات لكنها لا تستطيع حفظها.

عند الحفظ، لا يمكن أن يكون Title أطول من 128 حرفًا، ويجب أن يكون Sort Order عددًا صحيحًا، ويجب أن يكون Total رقمًا يساوي 0 أو أكبر، ويجب أن تكون المنطقة الجغرافية وحالات الطلب المختارة موجودة. وإلا فلن يُحفظ شيء، وستُظهر رسالة الخطأ اسم الحقل. حقول iPay88 لا تمنع الحفظ أبدًا.

iPay88

Enable/Disable: Enable iPay88 Payment Gateway يُفعّل طريقة الدفع أو يُوقفها. الافتراضي: مُعطّل.

Title: اسم طريقة الدفع الذي يراه العملاء في صفحة الدفع. وهو أيضًا اسم طريقة الدفع المحفوظ في الطلب. الافتراضي: iPay88. حتى 128 حرفًا؛ وإذا تركته فارغًا فسيرى العملاء iPay88.

Description: النص الذي يراه العميل في خطوة Confirm Order، فوق زر التأكيد. الافتراضي: Pay securely via iPay88 (credit card, online banking, e-wallet).

Sort Order: موضع iPay88 بين طرق الدفع في صفحة الدفع. اتركه فارغًا أو أدخل عددًا صحيحًا.

Geo Zone: اعرض iPay88 فقط لعناوين الدفع الواقعة في المنطقة الجغرافية المختارة. الافتراضي: All zones. تُضبط المناطق الجغرافية في System > Localisation > Geo Zones.

Total: إجمالي صفحة الدفع، بعملة المتجر الافتراضية، الذي يجب أن يبلغه الطلب قبل أن تُعرض iPay88. اتركه فارغًا لعرض iPay88 مهما كان المبلغ.

حساب iPay88

iPay88 region: بلد حساب التاجر الخاص بك في iPay88. يحدد صفحة الدفع الخاصة بـ iPay88 والعملات التي يمكن تحصيلها. يُحصَّل الطلب دائمًا بعملته الخاصة. الافتراضي: Malaysia.

Malaysia (payment.ipay88.com.my): MYR، والعملات الأخرى المذكورة في المتطلبات إذا كان تعدد العملات مفعّلًا في حسابك.
Philippines (payment.ipay88.com.ph): PHP، USD.
Indonesia (payment.ipay88.co.id): IDR، يُرسل بلا منازل عشرية.
Thailand (payment.ipay88.co.th): THB.

Merchant Code: الـ Merchant Code الخاص بك في iPay88، مثل M01234.

Merchant Key: الـ Merchant Key الخاص بك في iPay88. يوقّع طلبات الدفع ويتحقق من ردود iPay88. احتفظ به سرًّا. تُحذف المسافات في بداية القيمة ونهايتها عند الحفظ. لا يُعرض المفتاح المحفوظ مرة أخرى: يبقى الحقل فارغًا ويعرض Saved — leave empty to keep it. أدخل قيمة جديدة فقط إذا أردت تغييرها. ولحذف المفتاح المحفوظ، ضع علامة على Clear the saved Merchant Key on save وانقر على Save.

Signature type: طريقة توقيع طلبات الدفع. تُتحقق الردود بكلا الصيغتين، لذلك تبقى المدفوعات التي بدأت قبل التبديل قابلة للتحقق.

SHA256 (recommended): المواصفة الحالية لـ iPay88 (الافتراضية).
SHA1 (legacy): اختر هذا فقط إذا طلبت منك iPay88 استخدام التوقيع القديم.

الدفع

Payment method: اختر مسبقًا طريقة دفع واحدة من iPay88 من قائمة PaymentId الماليزية، أو اترك Let the customer choose on the iPay88 page (الافتراضي). تشمل القائمة Credit Card (MYR) وFPX (Online Banking) وMaybank2U وAlliance Online وAmBank وRHB Bank وHong Leong Bank وCIMB Clicks وWeb Cash وPayPal (MYR) وCredit Card (PHP) وBoost وTouch n Go eWallet وGrabPay وShopeePay.

Reference prefix: اختياري. يُضاف قبل رقم الطلب في مرجع iPay88 (RefNo)، مثل SHOP1-. استخدم بادئة مختلفة في كل متجر يشترك في حساب iPay88 نفسه، حتى لا يُطبَّق رد متجر على طلب في متجر آخر أبدًا. يُسمح بالأحرف والأرقام و"-" و"_"، حتى 10 أحرف. تُحذف الأحرف الأخرى عند الحفظ، ويُضاف "-" في نهاية البادئة التي تنتهي برقم، لأن رقم الطلب يُقرأ من نهاية RefNo. وعندها ستحذرك الصفحة بالقيمة المحفوظة.

Test mode: يحصّل مبلغًا تجريبيًا ثابتًا بدلًا من إجمالي الطلب. لا تملك iPay88 بيئة تجريبية منفصلة: مدفوعات الاختبار معاملات حقيقية في صفحة الدفع الفعلية لـ iPay88 بمبلغ صغير (1.00؛ IDR 10,000). يُعلَّم الطلب كمدفوع عند استلام المبلغ التجريبي، وتذكر ملاحظة الطلب ذلك. وطالما أن وضع الاختبار مفعّل، يرى العملاء في خطوة Confirm Order النص TEST MODE: only a test amount of ... will be charged. ويُتحقق دائمًا من أي دفع بدأ في وضع الاختبار مقابل المبلغ التجريبي، حتى لو أوقفت وضع الاختبار قبل أن ترد iPay88. لا تترك وضع الاختبار مفعّلًا أبدًا في متجر فعلي. الافتراضي: مُعطّل.

عناوين الاستجابة والخادم الخلفي

يُرسل الامتداد العنوانين مع كل عملية دفع، لذلك لا يوجد ما يتطلب الإعداد. وإذا طلبتهما iPay88، فانسخهما من هذا القسم. في OpenCart 3 وهما بالشكل التالي: https://your-store/index.php?route=extension/payment/wcp_ipay88_payment/back (Response URL، عودة العميل) وhttps://your-store/index.php?route=extension/payment/wcp_ipay88_payment/backend (Backend URL، الإشعار من خادم إلى خادم)، وفي OpenCart 4 بالشكل التالي: https://your-store/index.php?route=extension/wcp_ipay88_payment/payment/wcp_ipay_88payment.back وhttps://your-store/index.php?route=extension/wcp_ipay88_payment/payment/wcp_ipay_88payment.backend. ويعرض القسم أيضًا عنوان موقعك، الذي يجب تسجيله لدى iPay88 بوصفه request URL.

تُفحص كلتا استجابتي iPay88 بالطريقة نفسها: الحقول المطلوبة، والتوقيع المُنشأ بالـ Merchant Key الخاص بك، ومرجع دفعة بدأها هذا المتجر لهذا الطلب. وتُرفض الاستجابات التي لا تحمل توقيعًا صالحًا، ولا تغيّر الطلب أبدًا. ولا يُجاب على إشعار الخادم الخلفي بـ RECEIVEOK إلا بعد معالجته؛ وإلا فستعيد iPay88 إرساله. ويعمل أيضًا والمتجر في وضع الصيانة: يسمح OpenCart 3 بمرور طلبات امتدادات الدفع، ويضيف الامتداد في OpenCart 4 startup action يسمح بمرور إشعار الخادم الموقّع وعودة العميل. وتُبلغ iPay88 عن حالات الدفع التالية:

1 (success): تم الدفع. يحصل الطلب على Order Status After Payment بعد التحقق من المبلغ والعملة.
6 (pending): الدفع ما زال معلّقًا، مثل تحويل عبر ماكينة الصراف الآلي أو حساب افتراضي. يحصل الطلب على Awaiting Payment Status حتى تؤكده iPay88 أو تُفشله.
Any other status: فشل الدفع أو أُلغي. يبقى الطلب بلا حالة، ويُعرض للعميل السبب الذي أرسلته iPay88.

الطلبات

ينشئ OpenCart الطلب في خطوة Confirm Order دون حالة (طلب مفقود، missing order). لا يحصل الطلب على حالة إلا بعد أن ترسل iPay88 ردًا موقّعًا بشكل صحيح. ويترك الدفع الفاشل أو الملغى الطلب بلا حالة؛ ويعود العميل إلى صفحة الدفع مع الاحتفاظ بالسلة. يسرد كل حقل أدناه حالات الطلب في OpenCart لديك.

Order Status After Payment: دفع ناجح (حالة iPay88 رقم 1) بالمبلغ والعملة المتوقعين. الافتراضي: Processing.

Awaiting Payment Status: دفع معلّق (الحالة 6)، مثل تحويل عبر ماكينة الصراف الآلي أو حساب افتراضي لم يُنفّذه العميل بعد. ينتقل الطلب إلى حالة ما بعد الدفع عندما تؤكده iPay88. الافتراضي: Pending.

On Hold (Review) Status: أبلغت iPay88 عن دفع ناجح، لكن بمبلغ أو عملة مختلفين عن الطلب، أو لطلب كان قد أُلغي. تعرض ملاحظة التفاصيل؛ ولا يُعلَّم الطلب كمدفوع. الافتراضي: Pending، لأن OpenCart لا يملك حالة On hold. يمكنك إنشاء حالتك الخاصة في System > Localisation > Order Statuses واختيارها هنا.

Failed Payment Status: دفع معلّق (الحالة 6) أبلغت iPay88 لاحقًا بفشله (الحالة 0). الافتراضي: Failed.

Cancelled Order Status: الحالة التي يستخدمها متجرك للطلبات الملغاة. يضع الدفع المستلم لمثل هذا الطلب في حالة المراجعة بدلًا من تعليمه كمدفوع. ولا يضبط الامتداد هذه الحالة أبدًا. الافتراضي: Canceled.

متقدم

Debug log: يسجل طلبات الدفع وردود iPay88 في ipay88_p_debug.log.php داخل مجلد السجلات في OpenCart (storage/logs). لا يمكن فتح الملف من الويب. لا تُسجَّل البيانات الشخصية ولا الـ Merchant Key ولا التواقيع. وتُسجَّل الأخطاء والتحذيرات دائمًا حتى مع إيقاف المفتاح. الافتراضي: مُعطّل.

Log: يعرض حجم السجل وآخر إدخالاته. انقر على Clear log لتفريغه.

Delete data on uninstall: عند التفعيل، يؤدي إلغاء تثبيت الامتداد إلى حذف الإعدادات والسجل. لا تُحذف الطلبات وسجلات الدفع في iPay88 أبدًا، لذلك يُعالَج الرد المتأخر لدفعة قديمة حتى بعد إعادة التثبيت. الافتراضي: مُعطّل.

الاستيراد / التصدير

Export: Download JSON يحفظ الإعدادات في ملف JSON. لا يُصدَّر الـ Merchant Key.

Import: الصق ملف JSON المُصدَّر سابقًا وانقر على Import لاستعادة الإعدادات. يبقى الـ Merchant Key المحفوظ كما هو.

الدفع

في خطوة Payment Method يختار العميل طريقة الدفع (افتراضيًا iPay88). وفي خطوة Confirm Order يرى العميل وصفك. ينشئ OpenCart الطلب في هذه الخطوة، ولا يزال بلا حالة. وعندما ينقر العميل على Confirm Order، تعرض الخطوة Redirecting to iPay88 payment gateway... وPlease do not close this window. بينما يُرسل نموذج موقّع إلى صفحة الدفع الخاصة بـ iPay88 في منطقتك. وإذا لم يرسله المتصفح تلقائيًا، ينقر العميل على Pay Now. ويمرّر الامتداد إجمالي الطلب بعملة الطلب (ومبلغ الاختبار في وضع الاختبار)، وأسماء المنتجات، واسم العميل وبريده الإلكتروني وهاتفه. وفي صفحة iPay88 يدفع العميل بالبطاقة، أو عبر FPX للخدمات المصرفية الإلكترونية، أو بالمحفظة الإلكترونية، أو بطريقة أخرى يقدمها حسابك.

في OpenCart 4 يختار العميل طريقة الدفع بزر Choose في كتلة طريقة الدفع، داخل النافذة Payment method options، وينقر على Confirm Order أسفل صفحة الدفع. وبشكل افتراضي لا يطلب OpenCart 4 رقم الهاتف في الدفع، لكن iPay88 تطلبه: إذا لم يكن في الطلب هاتف، تظهر في خطوة التأكيد خانة Phone مطلوبة مع الرسالة iPay88 requires the contact number of the payer. وبدون رقم يرى العميل iPay88 requires a phone number. Please enter your phone number and try again. ويُحفظ الرقم المُدخل للمحاولة التالية.

لا يُعلَّم الطلب كمدفوع إلا بعد أن تؤكده iPay88 برد موقّع، سواء عند عودة العميل أو عبر إشعار الخادم الخلفي. ثم يحصل الطلب على حالته بالطريقة المعتادة في OpenCart، مع رسائل البريد الإلكتروني المعتادة للطلب وتحديث المخزون. وبعد الدفع الناجح يرى العميل صفحة نجاح الطلب في OpenCart مع الرسالة Your iPay88 payment has been received. وبالنسبة إلى الدفع المعلّق تعرض الصفحة Your payment is pending confirmation from iPay88. We will update your order as soon as the payment is confirmed. وبالنسبة إلى طلب قيد المراجعة تعرض We have received a payment notification from iPay88 and are reviewing it. We will contact you if anything is needed. وعندما يُؤكَّد الدفع المعلّق أو يفشل لاحقًا، يُبلغ OpenCart العميل بالحالة الجديدة.

إذا كان الطلب يُؤكَّد في الوقت نفسه عبر إشعار الخادم الخلفي، يرى العميل We have not received the payment confirmation from iPay88 yet. If you completed the payment, your order will be updated shortly. مع الزرين Check again وBack to checkout.

إذا فشل الدفع أو أُلغي، يبقى الطلب بلا حالة وتُحفظ السلة. يعود العميل إلى صفحة الدفع مع The payment was not completed: والسبب الذي قدمته iPay88، يليه You can try again or choose another payment method. وفي OpenCart 4 تظهر هذه الرسالة أعلى صفحة الدفع. وينشئ OpenCart 3 طلبًا جديدًا، وبالتالي RefNo جديدًا، في كل مرة تظهر فيها خطوة Confirm Order؛ أما OpenCart 4 فيُحدِّث طلب الدفع في صفحة الدفع، فيدفع العميل الطلب نفسه من جديد، وإعادة المحاولة للطلب نفسه تستخدم RefNo نفسه. وإذا تعذّر التحقق من الرد، يرى العميل The payment response could not be verified. If you completed the payment, please contact us with your order number — the payment will be checked manually. مع زر Return to the store.

إذا تعذّر بدء الدفع، يبقى العميل في خطوة Confirm Order مع This payment method is temporarily unavailable. Please choose another payment method. (مفاتيح مفقودة أو إجمالي صفر)، أو iPay88 cannot accept payments in ... Please choose another payment method. (عملة لا يمكن تحصيلها في المنطقة). ولا تُدفع السلة الواحدة إلا مرة واحدة: إذا كان طلب آخر من السلة نفسها مدفوعًا بالفعل أو ينتظر دفعًا معلّقًا، فلن يُنشأ نموذج دفع ثانٍ، ويُنقل العميل إلى صفحة نجاح الطلب. وأي تغيير في السلة، بما في ذلك الكمية الجديدة، يُحسب سلة جديدة تحتاج إلى دفعها الخاص.

في OpenCart 4 يبقى الطلب في صفحة الدفع إلى أن تظهر صفحة النجاح. وإذا أُغلق هذا الطلب دون دفع في الأثناء (مثلًا فشل تحويل معلّق أو أُلغي الطلب)، يُعاد العميل إلى صفحة الدفع مع الرسالة Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order. وإذا كان الطلب قد تم تقديمه بالفعل وتغيّرت السلة، فالرسالة هي Your previous order #(number) has already been placed. Your cart has changed: please confirm the new order to pay for it. وفي الحالتين، يدفع Confirm Order التالي طلبًا جديدًا للسلة.

لا يقبل الامتداد إلا المدفوعات لمرة واحدة. لا توجد استردادات من OpenCart، ولا بطاقات محفوظة، ولا اشتراكات، ولا تفويض مسبق وتحصيل، ولا حقول بطاقات في موقعك. ولا يستعلم مجددًا من iPay88 عن حالة الدفع: تُحدَّث الطلبات فقط بردّ iPay88 وإشعار الخادم الخلفي.

الطلبات

حالات الطلب

No status (missing order): أُرسل العميل إلى iPay88 ولم تصل أي نتيجة بعد، أو فشل الدفع. وفي Sales > Orders لا تظهر هذه الطلبات إلا مع فلتر Order Status مضبوطًا على Missing Orders.

Order Status After Payment (default Processing): أبلغت iPay88 عن دفع ناجح بالمبلغ والعملة المتوقعين. تعرض ملاحظة الـ TransID والـ PaymentID والمبلغ والعملة. وفي وضع الاختبار، تذكر ملاحظة ثانية أنه جرى تحصيل المبلغ التجريبي بدلًا من إجمالي الطلب.

Awaiting Payment Status (default Pending): أبلغت iPay88 بأن الدفع معلّق. ينتقل الطلب إلى Order Status After Payment عندما تؤكده iPay88، أو إلى Failed Payment Status إذا فشل.

Failed Payment Status (default Failed): دفع معلّق فشل لاحقًا. تعرض الملاحظة سبب iPay88. يستطيع العميل تقديم طلب جديد.

On Hold (Review) Status (default Pending): أبلغت iPay88 عن دفع ناجح بمبلغ أو عملة مختلفين عن الطلب، أو وصل الدفع بعد إلغاء الطلب. لم يُعلَّم الطلب كمدفوع. وتشرح الملاحظة ذلك. تحقق من الدفع في بوابة iPay88 ثم أكمل الطلب أو استرد الدفع.

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

الملاحظات هي إدخالات في History الطلب، ولا يراها العميل.

تبويب VibeFox iPay88 Payment

في Sales > Orders افتح طلبًا دُفع عبر iPay88. في أسفل صفحة الطلب، بجانب History وAdditional، يعرض تبويب VibeFox iPay88 Payment الحقول RefNo وTransId وStatus والمبلغ Requested والمبلغ Amount received وPaymentId وAuthCode وError وRegion، وشارة TEST MODE لمدفوعات الاختبار، والـ iPay88 notes الخاصة بالطلب. يظهر التبويب للمستخدمين الذين لديهم صلاحية الوصول إلى الامتداد.

الاستردادات

لا تُرسل الاستردادات من OpenCart إلى iPay88. استرد الدفع في بوابة التجار الخاصة بـ iPay88، ثم سجّل الاسترداد في OpenCart يدويًا.

مفتاح الترخيص

يعمل الامتداد بمفتاح ترخيص VibeFox من vibefox.net. كتلة الترخيص License — VibeFox iPay88 Payment هي أول كتلة في Extensions > Extensions > Payments > VibeFox iPay88 Payment > Edit، فوق الإعدادات. ألصق المفتاح في License key وانقر على Activate. بعد ذلك تعرض الكتلة المفتاح مُخفى الأحرف، والحالة (مثل التاريخ الذي يبقى فيه الترخيص فعالًا ونطاقك)، والأزرار Check now لإعادة التحقق من الحالة، وChange key لإدخال مفتاح آخر، وRemove key لإزالة المفتاح من هذا المتجر. وتحتها السطر Product: opencart-payment-ipay88 والرابط Manage licenses and domains in your account الذي يفتح حسابك في vibefox.net. ولا يستطيع تغيير المفتاح إلا مستخدمو الإدارة الذين لديهم صلاحية Modify للامتداد. وتتبع نصوص الكتلة لغة الإدارة (الإنجليزية والروسية مدرجتان).

إذا لم يُقبل المفتاح، تشرح الكتلة السبب، مثل Key not found أو This key belongs to another product أو Domain limit reached أو License expired on مع تاريخ. وبعد تغيير عنوان المتجر، أو بعد تحرير خانة نطاق في حسابك، انقر على Check now. وإذا تعذّر الوصول إلى خادم التراخيص، يستمر الامتداد في العمل بآخر حالة معروفة.

يعمل المفتاح الواحد على نطاق واحد: عنوان المتجر من إعدادات OpenCart. ولا تؤدي إزالة المفتاح من المتجر إلى تحرير خانة النطاق. حرّر الخانة من حسابك في vibefox.net.

من دون مفتاح فعّال، لا تظهر iPay88 للعملاء في صفحة الدفع. وإذا بدأ الدفع رغم ذلك، يرى العميل This payment method is not available. Please choose another one. ويظل مستخدم الإدارة الذي سجّل الدخول إلى الإدارة في المتصفح نفسه يرى طريقة الدفع في المتجر، مع العلامة (unlicensed — visible to admins only)، حتى تتمكن من إعداد الامتداد واختباره قبل شراء مفتاح. وفي OpenCart 4 لا تتوفر هذه المعاينة: لا يرى المتجر تسجيل دخول الإدارة، لذلك تبقى طريقة الدفع مخفية عن الجميع من دون مفتاح فعّال. وبعد أن تفتح صفحة Edit مرة واحدة، يظهر تذكير على Dashboard الإدارة. أغلقه بـ × لإخفائه لمدة 7 أيام. ولا تتأثر الطلبات الحالية: الدفعات التي بدأت بالفعل تظل تُؤكَّد.

عندما تنتهي صلاحية الترخيص، يستمر الامتداد في العمل، لكن التحديثات والدعم تحتاج إلى تجديد. يُعاد التحقق من الحالة تلقائيًا عند فتح Dashboard أو صفحة Edit في الإدارة: مرة واحدة يوميًا خلال أول 14 يومًا بعد إدخال المفتاح، ثم مرة واحدة أسبوعيًا. لا حاجة إلى مهمة cron. وعند إلغاء تثبيت الامتداد تُحذف دائمًا مفتاح الترخيص وحالته.

استكشاف الأخطاء وإصلاحها

لا تظهر iPay88 في صفحة الدفع: تحقق من أن الترخيص فعّال، وأن Enable/Disable مفعّل، وأن Merchant Code وMerchant Key مُدخلان، وأن عملة دفع العميل يمكن تحصيلها في iPay88 region المختارة. وتعرض صفحة الإعدادات تحذيرًا عندما يكون شيء ناقصًا. وتحقق أيضًا من أن عنوان الدفع يقع ضمن Geo Zone المختارة، وأن الطلب يبلغ Total المحدد في الإعدادات.

تمت عملية الدفع لكن الطلب بقي بلا حالة: لم يصل إلى متجرك لا رجوع العميل ولا إشعار الخادم الخلفي مع توقيع صالح. انظر إلى حقل Log: تُسجَّل الأخطاء دائمًا. تحقق من أن Merchant Key هو بالضبط المفتاح الذي أعطته إياك iPay88، ومن أن خادمك يقبل طلبات iPay88 على الـ Backend URL المعروض في الإعدادات.

تعرض صفحة iPay88 الرسالة "Permission not allow": عنوان موقعك غير مسجل لدى iPay88 بوصفه request URL. اطلب من iPay88 تسجيل العنوان المعروض في قسم عناوين الاستجابة والخادم الخلفي.

يرد إشعار الخادم الخلفي بـ BAD SIGNATURE: التوقيع لا يطابق الـ Merchant Key. تحقق من Merchant Key. ولم يتغير شيء.

يرد إشعار الخادم الخلفي بـ NOT CONFIGURED: لم يُضبط الـ Merchant Code أو الـ Merchant Key، لذلك لا يمكن التحقق من الرد. ستعيد iPay88 إرسال الإشعار.

يرد إشعار الخادم الخلفي بـ UNKNOWN ORDER: لم تُبدأ أي عملية دفع لدى iPay88 لهذا المرجع في هذا المتجر، مثلًا لأن متجرًا آخر يستخدم الحساب نفسه لا يستخدم Reference prefix أو يستخدم البادئة نفسها.

يرد إشعار الخادم الخلفي بـ RETRY: كان الطلب (أو طلب آخر من السلة نفسها) يُؤكَّد في اللحظة نفسها من رجوع العميل أو إشعار آخر، أو تعذّر تعيين حالة الطلب. ستعيد iPay88 إرسال الإشعار.

يعرض Backend URL الرسالة BAD REQUEST في المتصفح: هذا أمر طبيعي. يقبل الرابط الطلبات الموقّعة الصادرة من iPay88 فقط.

الطلب في On Hold (Review) Status: أبلغت iPay88 عن دفع لا يطابق الطلب، أو كان الطلب قد أُلغي. اقرأ الملاحظات في تبويب VibeFox iPay88 Payment وتحقق من الدفع في بوابة iPay88، ثم أكمل الطلب أو استرد الدفع.

يرى العميل الرسالة "iPay88 cannot accept payments in" مع عملة: لا يمكن تحصيل عملة الدفع في المنطقة المختارة. وفي iPay88 ماليزيا تحتاج العملات غير MYR أيضًا إلى خيار تعدد العملات في حساب iPay88 الخاص بك.

يرى العميل الرسالة This payment method is not available. Please reload the checkout page.: جلسة الدفع لم تعد تطابق الطلب، أو أُوقفت طريقة الدفع في الأثناء. يُعيد العميل تحميل صفحة الدفع.

لا يُحصَّل من العملاء الحقيقيين إلا 1.00: Test mode مفعّل. أوقفه.

إلغاء التثبيت

انتقل إلى Extensions > Extensions، واختر النوع Payments، ثم انقر على Uninstall (الزر الأحمر −) بجانب VibeFox iPay88 Payment. تُحذف مفاتيح الترخيص وحالته لهذا الامتداد دائمًا. ويحذف OpenCart دائمًا إعدادات الامتداد الخاصة به: Enable/Disable، وSort Order، وGeo Zone، وTotal، وحالات الطلب في قسم Orders، التي تعود إلى قيمها الافتراضية عند إعادة التثبيت. ويُحذف أيضًا حدث OpenCart الخاص بالامتداد (وفي OpenCart 4 أيضًا الـ startup action الذي يسمح بمرور ردود iPay88 في وضع الصيانة). وإذا كان Delete data on uninstall مفعّلًا، تُحذف الإعدادات الأخرى (العنوان، والوصف، والمنطقة، والـ Merchant Code والـ Key، ونوع التوقيع، وطريقة الدفع، والبادئة، ووضع الاختبار، ومفتاح سجل التصحيح) والسجل. وإذا كان معطّلًا، تُحفظ لإعادة التثبيت لاحقًا. تُحفظ دائمًا سجلات الدفع في iPay88 الخاصة بالطلبات. ولا تُحذف الطلبات أبدًا، وتحتفظ بملاحظات الدفع الخاصة بها.

في OpenCart 4، لإزالة ملفات الامتداد أيضًا، انتقل بعد إلغاء التثبيت إلى Extensions > Installer، وانقر على Uninstall (زر − البرتقالي) بجانب VibeFox iPay88 Payment في قائمة الامتدادات المثبتة، ثم على Delete (زر سلة المهملات الأحمر) لحذف الحزمة المرفوعة.

iPay88 علامة تجارية مسجلة لمالكها. هذا الامتداد غير تابع لـ iPay88 ولا يحظى بتأييدها.