المدفوعات والرصيد

في GetMyBot حلقتان مختلفتان للدفع: رصيد الطلبات للمنصة (مقابل عمل البوت) وقبول مدفوعات المستخدمين للبوت عبر Telegram. يدير قسم الفوترة (المعروف أيضاً بـ «قبول المدفوعات») الخطط والرصيد.

كيف يُحتسَب البوت

تحسب المنصة العمل بـ الطلبات: كل رسالة يُوصلها البوت يخصم طلباً واحداً من رصيد الحساب. الرصيد عداد صحيح؛ مصدر الحقيقة هو سجل تحويلات ثابت (مكافأة التسجيل، الإضافات من الخطة، الإعادات، الاستهلاك).

الخطط والرصيد

يعرض قسم الفوترة الرصيد الحالي والخطط المتاحة. للخطة اسم وسعر وحجم طلبات وحدود (مثلاً أقصى عدد بوتات). بزر اختيار يتم تفعيل الخطة.

  • الرصيد — الرصيد الحالي للطلبات (مرئي أيضاً في شاشتَي النظرة العامة والإحصائيات).
  • التوقعات، بالأيام في شاشة الإحصائيات يقدّر كم يكفي الرصيد عند الاستهلاك الحالي.

سجل التحويلات (ledger)

رصيد الطلبات عداد صحيح، لكن مصدر حقيقته هو سجل العمليات الثابت (ledger). يُسجَّل فيه كل تغيير في الرصيد:

  • مكافأة التسجيل — حجم طلبات أولي للحساب الجديد.
  • إضافة الخطة — الطلبات الممنوحة عند تفعيل الخطة.
  • الإعادة — الطلبات المشتراة.
  • الاستهلاك — خصم طلب واحد لكل رسالة يُوصلها البوت.

السجل يُضاف إليه فقط (السجلات القديمة لا تتغير)، لذلك يمكن دائماً مراجعة سجل المصاريف والإضافات. الرصيد الحالي هو مجموع السجل.

الإعادة

تُنشئ الإعادة دفعة بحجم الطلبات المطلوب؛ بعد تأكيد المزود يُضاف الرصيد تلقائياً وبشكل idempotent (استجابة callback مكررة لن تُضيف مرتين). مزود الدفع المحدد يعتمد على إعداد النسخة.

قبول مدفوعات المستخدمين (Telegram Payments)

يستطيع البوت قبول وتسجيل مدفوعات Telegram:

  • يُؤكَّد طلب pre_checkout_query تلقائياً.
  • تُسجَّل المدفوعات الناجحة (successful_payment) (المبلغ والعملة ومعرّف العملية والـ payload)، ثم قد يُطلَق تفاعل — مثلاً منح الوصول ووضع علامة «دفع» وتسجيل الطلب في مجموعة.

مجموع المدفوعات الناجحة مرئي في التحليلات («المدفوعات»).

إصدار الفاتورة (sendInvoice) وأزرار «قبول الدفع» / «الإشعار» في منشئ الأزرار لا تزال مُعلَّمة كـ «قريباً»: البوت يسجّل المدفوعات الواردة، لكن لا يمكن في الإصدار الحالي إطلاق فاتورة من تفاعل.

الخطوات التالية