VibeFox DPO for WooCommerce — المساعدة
المتطلبات
WordPress: 6.2 أو أحدث.
WooCommerce: 8.0 أو أحدث، مثبَّت ومفعَّل. ترفض الإضافة التفعيل بدونه.
PHP: 8.0 أو أحدث.
حساب DPO Pay: تحتاج إلى Company Token وService Type ID الخاصين بحساب تاجر DPO لديك. تصدرهما DPO عند فتح حسابك؛ احصل عليهما من مدير حسابك في DPO أو من dpogroup.com. يمكن لـ DPO أيضًا تقديم حساب اختبار بـ token وservice type خاصين به. لا يوجد خادم اختبار منفصل: تستخدم DPO نفس عنوان API لحسابات الاختبار والحسابات الفعلية، ويُحدَّد الحساب عبر الـ token.
العملة: يجب أن يدعم حساب DPO الخاص بك عملة المتجر، مثل USD وEUR وZAR وKES وUGX وTZS وRWF وGHS وNGN وZMW وXOF أو AED. تقبل DPO حدًا أقصى لمنزلتين عشريتين، لذا لا يمكن دفع إجماليات الطلبات ذات 3 منازل عشرية (مثل KWD 12.345).
مفتاح ترخيص VibeFox: يُشترى من vibefox.net. يعمل المفتاح الواحد على نطاق واحد.
التثبيت
1. في WordPress، اذهب إلى Plugins > Add New > Upload Plugin، واختر ملف ZIP للإضافة، وانقر على Install Now. يمكنك أيضًا رفع مجلد wcp_dpo_pay إلى /wp-content/plugins/ عبر FTP.
2. انقر على Activate.
3. افتح الإعدادات: WooCommerce > Settings > Payments > DPO Pay > Manage، أو انقر على Settings تحت اسم الإضافة في صفحة الإضافات.
4. أدخل مفتاح ترخيص VibeFox في كتلة الترخيص بأعلى الصفحة، وانقر على Activate.
5. أدخل Company Token وService Type للاختبار و/أو الحساب الفعلي (انظر «الإعدادات»).
6. أرسل عنوان URL للإشعار الفوري (push) الظاهر في صفحة الإعدادات إلى دعم DPO، واطلب منهم تعيينه لحسابك.
7. فعِّل Enable/Disable. قدِّم طلب اختبار في وضع الاختبار، ثم أزل التحديد من Test mode لقبول المدفوعات الفعلية.
الإعدادات
جميع الإعدادات في صفحة واحدة: WooCommerce > Settings > Payments > DPO Pay. عندما تكون البوابة مفعَّلة لكن Company Token أو Service Type للوضع المحدد فارغ، تُحذِّر الصفحة من أن طريقة الدفع ستكون مخفية في صفحة الدفع، ويظهر الخطأ نفسه عند الحفظ. وبينما يكون وضع الاختبار مفعَّلًا، تعرض الصفحة Test mode is on: payments are created with the test account credentials.
عام
Enable/Disable: يُفعِّل Enable DPO Pay طريقة الدفع أو يعطّلها. الافتراضي: معطَّل.
Title: اسم طريقة الدفع التي يراها العملاء في صفحة الدفع. الافتراضي: DPO Pay.
Description: النص الظاهر أسفل طريقة الدفع في صفحة الدفع. الافتراضي: Pay securely by card or mobile money on the DPO Pay payment page.
بيانات اعتماد API
تصدر DPO Company Token وService Type ID لحساب تاجرك، وبيانات مستقلة لحساب الاختبار. احصل عليهما من مدير حسابك في DPO أو من dpogroup.com.
Test mode: Use the test account credentials below. عند التفعيل، تُنشأ المدفوعات الجديدة بـ Company Token وService Type الخاصين بالاختبار. الافتراضي: مفعَّل. أزل التحديد لقبول المدفوعات الفعلية ببيانات الاعتماد الفعلية. تستخدم فحوصات حالة الطلبات الحالية دائمًا الحساب الذي أُنشئ به الدفع.
Test Company Token: Company Token لحساب اختبار DPO الخاص بك.
Test Service Type: Service Type ID الرقمي لحساب اختبار DPO الخاص بك.
Live Company Token: Company Token لحساب تاجر DPO الفعلي الخاص بك.
Live Service Type: Service Type ID الرقمي لحساب تاجر DPO الفعلي الخاص بك.
يجب أن يكون Service Type رقمًا. لا تُحفظ أي قيمة أخرى: تُظهر الصفحة خطأ وتحافظ على القيمة السابقة. إذا كنت تُحدِّث من الإصدار 1.0، فستُنسَخ بيانات اعتماد ذلك الإصدار أيضًا إلى حقول الاختبار.
إشعارات الدفع
يُخبر الإشعار الفوري (push) متجرك فورًا بأن الدفع قد تم، حتى لو أغلق العميل متصفحه بعد الدفع. يعرض هذا القسم عنوان URL للإشعار الفوري. يبدو مثل https://your-site/wc-api/dpo_pay_notify/. لا يُضبَط من لوحة تحكم: اطلب من دعم DPO ضبط هذا العنوان لحسابك.
لا تحمل إشعارات DPO الفورية أي توقيع، لذا لا يُوثَق بمحتواها أبدًا. تستخدمها الإضافة فقط للعثور على الطلب، ثم تتحقق من الدفع مباشرةً مع DPO. وبدون عنوان URL للإشعار الفوري، تُؤكَّد الطلبات أيضًا عندما يعود العميل إلى المتجر، وعبر إعادة الفحص التلقائية بعد 15 دقيقة من إعادة التوجيه وبعد انتهاء المهلة المحددة للدفع.
الطلبات
Successful payment status: حالة الطلب بعد دفع ناجح تم التحقق منه. تُضبَط الحالة فورًا، بلا تغيير حالة ثانٍ.
خيارات متقدمة
Logging: يكتب Enable logging استدعاءات API والإشعارات في WooCommerce > Status > Logs، بمصدر wcp_dpo_pay. تُسجَّل الأخطاء دائمًا. تُموَّه الرموز، ولا تُسجَّل أي بيانات عميل. الافتراضي: معطَّل.
Delete data: Delete all plugin data when the plugin is deleted. يحذف الإعدادات وبيانات DPO المخزَّنة على الطلبات والسجلات عند إزالة الإضافة. لا يحذف إلغاء التفعيل البيانات أبدًا. الافتراضي: معطَّل.
صفحة الدفع
يختار العميل طريقة الدفع (الافتراضية DPO Pay) ويُقدِّم الطلب. تُنشئ الإضافة معاملة DPO بإجمالي الطلب وبعملة الطلب، بوصف يتضمن رقم الطلب واسم موقعك، وتُرسل العميل إلى صفحة دفع DPO. يُرسَل اسم العميل وبريده الإلكتروني وهاتفه وعنوانه لتعبئة الصفحة مسبقًا. هناك، يدفع العميل بأي طريقة مفعّلة في حساب DPO الخاص بك. يظل رابط الدفع صالحًا لمدة 5 ساعات.
بعد الدفع، يعود العميل إلى متجرك. لا يُعلَّم الطلب كمدفوع إلا بعد تأكيد DPO: تسأل الإضافة DPO عن نتيجة المعاملة عند عودة العميل، وعند وصول إشعار فوري، وأثناء إعادة الفحص التلقائية. وعند تأكيد الدفع، ينتقل العميل إلى صفحة استلام الطلب.
إذا لم يُؤكَّد الدفع، يعود العميل إلى صفحة الدفع أو إلى صفحة Pay for order مع إحدى هذه الرسائل:
إذا نقر العميل على زر العودة إلى المتجر في صفحة DPO، يُلغى الطلب بالطريقة المعتادة في WooCommerce، ويُلغى رابط دفع DPO الخاص به لدى DPO.
عندما يدفع العميل مرة أخرى لنفس الطلب، يُفحص رابط دفع DPO السابق أولًا. وإذا كان مدفوعًا، يُكتمل الطلب دون خصم ثانٍ. وإذا كان لا يزال قيد المعالجة، يرى العميل Your previous payment for this order is still being processed by DPO. Please wait a few minutes before trying again. وإلا، يُلغى الرابط القديم لدى DPO ويُنشأ رابط جديد.
إذا تعذَّر على DPO بدء الدفع، يرى العميل رسالة قصيرة تُحدَّد بحسب رمز خطأ DPO، على سبيل المثال أن DPO Pay لا يدعم عملة هذا الطلب، أو أن المبلغ يتجاوز الحد المسموح به في DPO Pay، ويمكنه اختيار طريقة دفع أخرى.
تعمل طريقة الدفع في صفحة الدفع الكلاسيكية، وفي كتلة Checkout، وفي صفحة Pay for order. وهي متوافقة مع WooCommerce High-Performance Order Storage (HPOS).
تقبل الإضافة المدفوعات لمرة واحدة فقط في صفحة DPO. لا تتضمن استردادات من WooCommerce، ولا بطاقات محفوظة، ولا اشتراكات أو مدفوعات متكررة، ولا حقول بطاقة في موقعك، ولا تحصّل المدفوعات المفوَّضة فقط.
الطلبات
حالات الطلب
Pending payment: أُرسل العميل إلى DPO ولم يدفع بعد، أو لم تؤكد DPO الدفع بعد.
Processing أو Completed أو On hold: تم التحقق من الدفع. تتبع الحالة إعداد Successful payment status. تُظهر ملاحظة الطلب المبلغ والعملة ورمز الموافقة وبداية رمز معاملة DPO. معرِّف المعاملة هو رمز معاملة DPO.
On hold after payment: أكدت DPO دفعًا، لكن المبلغ أو العملة يختلفان عن الطلب، أو أن الدفع مفوَّض فقط وغير محصَّل، أو أن المعاملة دُفع فيها أكثر أو أقل من المطلوب، أو أن الطلب كان قد أُلغي بالفعل. تشرح ملاحظة الطلب السبب. تحقق من المعاملة في بوابة DPO. حصِّل أو ألغِ دفعًا مفوَّضًا فقط في بوابة DPO، ثم حدِّث الطلب.
Failed: رُفض الدفع، أو أُلغي، أو انتهت المهلة المحددة للدفع. يمكن للعميل الدفع مرة أخرى.
Cancelled: عاد العميل إلى المتجر من صفحة DPO، أو أُلغي الطلب منك أو عبر مهلة WooCommerce للطلبات غير المدفوعة. يُلغى رابط دفع DPO غير المدفوع لدى DPO.
لا تُغيِّر أي رسالة رفض لاحقة أبدًا طلبًا مدفوعًا بالفعل، ولا تتسبَّب نتائج روابط الدفع القديمة أبدًا في فشل المحاولة الحالية. وإذا أكدت DPO دفعًا ناجحًا ثانيًا لطلب مدفوع بالفعل، يحصل الطلب على ملاحظة حول احتمال دفع مزدوج، لتتمكن من استرداده في بوابة DPO.
الاستردادات
لا تتوفر الاستردادات من WooCommerce في هذا الإصدار. استرد الدفع في بوابة تاجر DPO، ثم علِّم الطلب كمُستَرَد في WooCommerce.
مفتاح الترخيص
تعمل الإضافة بمفتاح ترخيص VibeFox من vibefox.net. تقع كتلة الترخيص بأعلى WooCommerce > Settings > Payments > DPO Pay. ألصِق المفتاح في License key وانقر على Activate. تعرض الكتلة الحالة، مثل تاريخ انتهاء صلاحية الترخيص ونطاقك. استخدم Check now لإعادة التحقق من الحالة، وChange key لإدخال مفتاح آخر، وRemove key لإزالته من هذا الموقع. يفتح رابط Manage licenses and domains in your account حسابك على vibefox.net.
يعمل المفتاح الواحد على نطاق واحد. إزالة المفتاح من موقع لا تحرر خانة النطاق الخاصة به. حرِّر الخانة في حسابك على vibefox.net.
بدون مفتاح نشط، لا يُعرَض DPO Pay للعملاء في صفحة الدفع. وإذا بدأ دفع مع ذلك، يرى العميل This payment method is not available. Please choose another one. ما زال مديرو المتجر المسجَّلون يرون طريقة الدفع، مع علامة (unlicensed — visible to admins only)، لتتمكن من إعداد الإضافة واختبارها قبل شراء مفتاح. يظهر تذكير في صفحة الإضافات وصفحات WooCommerce. لا تتأثر الطلبات الحالية: ما زالت المدفوعات التي بدأت بالفعل تُؤكَّد.
عندما تنتهي صلاحية ترخيص، تستمر الإضافة في العمل، لكن التحديثات والدعم تتطلب تجديدًا. يُعاد التحقق من الحالة تلقائيًا في الخلفية.
استكشاف الأخطاء وإصلاحها
لا يظهر DPO Pay في صفحة الدفع: تحقق من أن الترخيص نشط، وأن Enable/Disable مفعَّل، وأن Company Token وService Type للوضع المحدد مضبوطان: حقول الاختبار في وضع الاختبار، وحقول الحساب الفعلي في غير ذلك. تعرض صفحة الإعدادات تحذيرًا عند غيابهما.
تم الدفع، لكن الطلب يبقى في حالة Pending payment: من المرجح أن عنوان URL للإشعار الفوري لم يُضبط لحساب DPO الخاص بك، وأن العميل لم يعد إلى المتجر. اطلب من دعم DPO ضبط العنوان الظاهر في الإعدادات. يُؤكَّد الطلب أيضًا عبر إعادة الفحص التلقائية بعد 15 دقيقة من إعادة التوجيه. فعِّل Logging وراجع WooCommerce > Status > Logs، بمصدر wcp_dpo_pay.
يرد الإشعار الفوري بـ Unknown transaction: رمز المعاملة لا ينتمي إلى طلب DPO Pay في هذا المتجر، مثلًا ورد الإشعار من متجر آخر على نفس حساب DPO.
يرد الإشعار الفوري بـ Verification failed: تعذَّر الوصول إلى DPO للتحقق من الدفع. تُعيد DPO الإشعار، وتؤكد إعادة الفحص التلقائية الطلب أيضًا.
لا يُحفظ Service Type: يجب أن يكون Service Type ID الرقمي من DPO.
يرى العميل DPO Pay is temporarily unavailable: رفضت DPO إنشاء المعاملة، مثلًا بسبب Company Token أو Service Type غير صحيح، أو رمز من الوضع الآخر. يوجد رمز نتيجة DPO في WooCommerce > Status > Logs، بمصدر wcp_dpo_pay.
يرى العميل أن DPO تقبل منزلتين عشريتين كحد أقصى: يحتوي إجمالي الطلب على 3 منازل عشرية. لا يمكن لـ DPO خصم مثل هذه المبالغ.
الطلب في حالة On hold بعد الدفع: اقرأ ملاحظة الطلب. اختلف المبلغ أو العملة المدفوعة عن الطلب، أو كان الدفع مفوَّضًا فقط، أو دُفع في المعاملة أكثر أو أقل من المطلوب، أو كان الطلب قد أُلغي. تحقق من المعاملة في بوابة DPO.
تعرض كتلة الترخيص خطأ: اتبع الرسالة الظاهرة في الكتلة. فمثلًا، إذا كان المفتاح مستخدَمًا بالفعل على نطاق آخر، حرِّر خانة في حسابك على vibefox.net وانقر على Check now. وإذا تغيَّر عنوان الموقع، انقر على Check now لتفعيل المفتاح للنطاق الجديد. وإذا تعذَّر الوصول إلى خادم الترخيص، تستمر الإضافة في العمل بآخر حالة معروفة.
إلغاء التثبيت
يحافظ إلغاء تفعيل الإضافة على جميع البيانات ويوقف فقط فحوصات الحالة المجدوَلة. لإزالتها، أوقف تفعيلها واحذفها في صفحة Plugins. يُزال دائمًا مفتاح الترخيص وحالة الترخيص لهذه الإضافة. تُزال الإعدادات وبيانات DPO المخزَّنة على الطلبات والفحوصات المجدوَلة والسجلات فقط إذا كانت Delete data مفعَّلة. وإلا، تبقى لإعادة تثبيت لاحقة. تحافظ الطلبات الحالية على ملاحظات الدفع ومعرِّفات المعاملات الخاصة بها.
DPO Pay علامة تجارية مملوكة لصاحبها. هذه الإضافة غير تابعة لـ DPO Pay ولا تحظى بمصادقتها.
