البدء السريع
أنشئ مستأجِرًا، وثبّت إضافة DHRU، وأرسل أول دفعة اختبارية.
البدء السريع
قائمة تحقق سريعة للمستخدمين العائدين. يوجد دليل الإعداد الأول في التثبيت.
- سجّل في
/registerباسم مستخدم وبريد إلكتروني وكلمة مرور (12 حرفًا فأكثر). - تحقّق من بريدك بالنقر على الرابط.
- انتظر حتى يقوم مسؤول بتفعيل المستأجر. سيصلك إشعار بالبريد.
- سجّل الدخول. افتح Integration من الشريط الجانبي.
- اضبط Webhook URL ليشير إلى endpoint الـ callback في DHRU، مثل
https://yourdhru.com/modules/gateways/callback/triapay.php. - قم بتدوير API key و Webhook secret. كلاهما يُعرَض مرة واحدة فقط، فانسخهما فورًا.
- نزّل ملفي الإضافة من صفحة Integration نفسها:
triapay.php← ضعه فيmodules/gateways/على خادم DHRU.triapay-callback.php← أعد تسميته إلىtriapay.phpوضعه فيmodules/gateways/callback/على خادم DHRU.
- في لوحة DHRU، فعِّل بوابة TriaPay وألصق API URL و API key و webhook secret الخاصة بـ TriaPay.
- اضبط طرق الاستلام (master wallet addresses لـ TRC20/BEP20، و Pay ID لـ Binance Pay) ضمن تبويبَي Crypto و Binance Pay.
- أرسل إيداع اختبار قيمته
$1من حساب عميل في DHRU. تأكّد من انتقال الطلبpending → matched → creditedخلال ثوانٍ (زمن الرصد النموذجي من 3 إلى 7 ثوانٍ بالإضافة إلى تأكيد الـ chain).
زمن الرصد
عادةً ما يكتمل الإيداع من الطرف إلى الطرف في أقل بكثير من دقيقة. المتغيّران المهيمنان هما تأكيد الـ chain و polling tick الذي يفحص المطابقات.
| Chain | Polling tick | النموذجي من الطرف إلى الطرف |
|---|---|---|
| TRC20 | 3 ث | 3 إلى 7 ث |
| BEP20 | 3 ث | 3 إلى 7 ث |
| Binance Pay | 5 ث | 5 إلى 10 ث |
لا تشمل هذه الأرقام زمن بث المحفظة من جانب العميل. الإيقاع المذكور أعلاه هو معدّل فحص الـ listener نفسه؛ تنتقل الطلبات المطابقة إلى credited فور إقرار الـ webhook. يوجد push الخاص بـ eth_subscribe في BSC و merchant-webhooks الخاصة بـ Binance Pay على خارطة الطريق للرصد دون الثانية لكنهما لم يُطرحا بعد.
أمان تسجيل الدخول
يمرّ تسجيل الدخول عبر /auth/login مع خيارات OTP التالية:
- Email OTP (الافتراضي).
- WhatsApp OTP، متاح عند تعيين رقم هاتف في الملف الشخصي.
- تخطّي خطوة TOTP عند تفعيل 2FA.
تتجاوز ملفّات تعريف الارتباط "remember this device" (مدّتها 7 أيام، مرتبطة ببصمة المتصفّح وفئة IP /24) طلب OTP في عمليات الدخول اللاحقة من فئة الشبكة نفسها. يمكن إلغاء أجهزة محدّدة في أي وقت من /me/devices.
الاختبار باستخدام وضع sandbox
يتيح وضع sandbox تنفيذ الدورة الكاملة order → webhook → DHRU دون لمس chains حقيقية أو أموال حقيقية أو فواتير DHRU حقيقية. استخدمه عند تغيير إعدادات الإضافة أو تدوير مفتاح أو نقل DHRU إلى مضيف جديد.
الإعداد لمرة واحدة
- اللوحة ← تبويب Integration ← بطاقة API Key ← انتقل إلى تبويب Sandbox ← اضغط Generate sandbox key. انسخ قيمة
tpk_test_.... - في البطاقة ذاتها، القسم الفرعي Webhook Secret ← تبويب Sandbox ← Generate sandbox secret. انسخ القيمة.
- في لوحة DHRU ← Setup ← Payment Gateways ← TriaPay، ألصق sandbox key في API Key (Sandbox) و sandbox secret في Webhook Secret (Sandbox).
- فعّل خانة Sandbox Mode في النموذج نفسه. احفظ.
إطلاق دفعة اختبارية
- اللوحة ← API Playground ← غيّر مفتاح الوضع إلى Sandbox (يظهر شريط يؤكّد تفعيل sandbox).
- شغّل Create order بأي مزيج chain/asset. انسخ
idempotencyKeyالمُعاد. - شغّل Force credit بـ idempotency key نفسه. يُرسل المحاكي الـ webhook عبر مسار الـ crediter ذاته المستخدم في الإنتاج.
- تحقّق من أن خادم DHRU استلم POST يحمل
X-Payment-Mode: sandbox(راجعerror_log).
يقطع معالج callback في إضافة DHRU webhooks الخاصة بـ sandbox تلقائيًا: يسجّل الحدث، ويُعيد 200 OK، ولا يستدعي addPayment إطلاقًا. لا تُقيَّد أي فاتورة حقيقية، ولا يتغيّر أي صفّ في tblUsers.credit_left.
عندما تكون مستعدًا للانتقال إلى الترافيك الحقيقي، أزل علامة Sandbox Mode من نموذج لوحة DHRU. تظل API key الحيّة و webhook secret الحيّ في مكانهما؛ لا يلزم تغيير أي شيء آخر.