مدفوعات العملات المشفرة لـ Blesta
اقبل العملات المشفرة على فواتير Blesta. SnapEX Pay بوابة من نوع non-merchant: يختار العميل SnapEX Pay (Crypto)، ويدفع على صفحة SnapEX Pay بـ USDT على شبكات TRON وEthereum وBSC وغيرها، أو بعملات أخرى تُحوَّل إلى USDT، فتُسجَّل الدفعة في Blesta وتُطبَّق على الفواتير تلقائيًا.
مجانًا. الإصدار 1.0.0.
ماذا تفعل الوحدة
- لا محافظ ولا عُقد تحتاج إلى تشغيلها: تصل الأموال إلى رصيد التاجر الخاص بك في SnapEX Pay.
- تُسجَّل الدفعة من إشعار Webhook الموقّع أو فور عودة العميل إلى صفحة «payment received»، أيهما أسبق. وفي الحالتين تُقرأ الفاتورة أولًا من جديد عبر API الخاص بـ SnapEX Pay: محتوى إشعار Webhook وحده لا يُعلِّم أي شيء مدفوعًا أبدًا، ولا تُسجَّل أي دفعة مرتين.
- أي عملة للفاتورة: تُحوَّل المبالغ بغير USD إلى USD بأسعار الصرف المحفوظة في Blesta أصلًا، وتُسجَّل المعاملة بعملة الفاتورة.
- لا تُطبَّق الدفعات الجزئية تلقائيًا أبدًا: تصبح معاملة معلّقة لتراجعها بنفسك.
- وضع الاختبار: تُؤكَّد الفواتير التجريبية من تلقاء نفسها دون أموال حقيقية؛ وما دام مفعّلًا لا يرى الزر إلا الموظفون الذين سجّلوا الدخول بصفة عميل، ويُطلب من بقية العملاء اختيار طريقة دفع أخرى.
التثبيت
- ارفع محتويات الأرشيف إلى المجلد الجذر لـ Blesta مع الحفاظ على المسار
components/gateways/nonmerchant/snapex_pay/. - في لوحة إدارة Blesta افتح Settings → Payment Gateways → Available، وابحث عن SnapEX Pay (Crypto) واضغط Install. ينشئ التثبيت جدولًا واحدًا هو
snapex_pay_invoices. - في لوحة تحكم التاجر في SnapEX Pay أنشئ مفتاح API بالصلاحيتين
invoices.readوinvoices.write، والصقه في حقل API key. - Webhook (إلزامي): في لوحة التحكم أضف Webhook بالعنوان
https://<your Blesta>/callback/gw/<company id>/snapex_pay/(العنوان الدقيق يظهر في إعدادات البوابة)، والصق السرwhsec_…في حقل Webhook secret. لا يوفّر Blesta مهمة cron للبوابات، لذا فإشعار Webhook هو طريق وصول الدفعات حين لا يعود العميل إلى الموقع. - إذا لم تكن فواتيرك بعملة USD، فأضف USD في Settings → Company → Currencies مع سعر صرف (أو دع Blesta يحدّث الأسعار تلقائيًا). وحدّد العملات التي تُعرض البوابة لها.
- فعّل Test mode، وادخل إلى منطقة العميل بصفة عميل من لوحة الإدارة، وادفع فاتورة على صفحة SnapEX Pay بطريقة تجريبية، وتحقّق من أن الفاتورة أصبحت مدفوعة. ثم أوقف وضع الاختبار.
الإعدادات
| API key | من لوحة تحكم SnapEX Pay. يُخزَّن مشفّرًا. |
|---|---|
| Webhook secret | whsec_… من إعدادات Webhook في لوحة التحكم. إلزامي. يُخزَّن مشفّرًا. |
| Network fee paid by | Merchant: يدفع العميل مبلغ الفاتورة بالضبط. Client: تُضاف الرسوم إلى المبلغ. |
| Payment window, minutes | مدة صلاحية صفحة الدفع (1–1440، الافتراضي 60). الدفع مجددًا لاحقًا يفتح صفحة جديدة. |
| Test mode | فواتير تجريبية؛ ما دام الوضع مفعّلًا لا يرى الزر إلا الموظفون. بعد إيقاف وضع الاختبار تُتجاهل الدفعات التجريبية. |
| Partner ID | اختياري: Partner ID للمُدمِج الذي أعدّ الوحدة (برنامج الإحالة في SnapEX Pay). اتركه فارغًا إذا أعددتها بنفسك. |
| API URL | اتركه كما هو. |
أسئلة
لماذا إشعار Webhook إلزامي؟
لا يوفّر Blesta مهمة cron للبوابات. فإذا دفع العميل ولم يعد إلى الموقع، فإن إشعار Webhook الموقّع هو طريق وصول الدفعة إلى Blesta. وإذا عاد العميل، تُسجَّل الدفعة فورًا، ولا تُسجَّل مرتين أبدًا.
فواتيري ليست بعملة USD. هل ستعمل الوحدة؟
نعم. أضف USD في Settings → Company → Currencies مع سعر صرف. تُحوَّل المبالغ بأسعار Blesta، وتُسجَّل المعاملة بعملة الفاتورة.
ماذا يظهر في Blesta عند دفع الفاتورة؟
معاملة مُعتمَدة بعملة الفاتورة، مطبَّقة على الفواتير المدفوعة. معرّف المعاملة هو معرّف فاتورة SnapEX Pay (INV-…)، ويتلقى العميل رسالة «payment received» المعتادة من Blesta.
ماذا لو أرسل العميل أقل من مبلغ الفاتورة؟
إذا لم يُكمل العميل المبلغ في الوقت المحدد، تُسجَّل معاملة معلّقة يُذكر في رسالتها المبلغ المستلم، ولا تُطبَّق. راجعها ضمن معاملات العميل.
ماذا لو انتهت صلاحية صفحة الدفع دون دفع؟
لا يُسجَّل شيء. وإذا وصلت الأموال بعد إغلاق الفاتورة، يُضاف قيد إلى سجل البوابة؛ والأموال في رصيدك في SnapEX Pay.
أين أرى ما فعلته الوحدة؟
في Blesta، Tools → Logs → Gateway.
هل أنت مستعد لقبول العملات المشفرة؟
أنشئ حساب تاجر، واحصل على مفتاح API، ثم اربط الوحدة. عمولة 1% على كل دفعة، دون رسوم شهرية.