بوابة الأعضاء وفوترة الاشتراكات
تقع عضويتك على /learn/<slug> — بوابة يسجّل مشتركوك الدخول إليها، منفصلة تمامًا عن لوحة تحكم MailInApp وعن أي حساب Firebase Auth. وتجري الفوترة اشتراكاتٍ حقيقية في Stripe على حساب Stripe المرتبط الخاص بك، وهو حساب Connect نفسه الذي يستخدمه الدفع في عنصر المنتج، ممتدًّا هنا إلى الاشتراكات/الفوترة المتكررة.
المطالبة برابط بوابتك
ضمن الإعدادات ← بوابة العضوية، طالِب بـ <slug> (من 3 إلى 40 حرفًا، أحرف لاتينية صغيرة/أرقام/شرطات) — بالطريقة نفسها للمطالبة وإعادة التسمية المتّبعة في معرّف ملف المُرسِل، لكن في حقله الخاص. وهذا هو الرابط الذي ستربط إليه من الحملات ومن أي مكان آخر تروّج فيه للعضوية؛ ويمكن إعادة تسميته لاحقًا دون الإخلال بوصول المشتركين الحاليين.
تحديد الأسعار
ضمن الإعدادات ← بوابة العضوية أيضًا، أضف باقة اشتراك واحدة أو أكثر — اسمًا، ومبلغًا متكررًا، وفترة شهرية أو سنوية، مع فترة تجريبية مجانية اختيارية بالأيام. وتقابل كل باقة سعرًا واحدًا (Stripe Price) في حسابك المرتبط بنسبة 1:1. ولا يمكن حذف الباقات بعد إنشائها (فأسعار Stripe لا يمكن حذفها أيضًا)، بل أرشفتها فقط — فالباقة المؤرشفة تختفي من صفحة الاشتراك العامة لكنها تبقى صالحة لكل من هو مشترك فيها أصلًا، فلا تقطع الأرشفة أبدًا وصول المشتركين الحاليين.
مسار الاشتراك
/learn/<slug>/subscribe?plan=<planId> هي الصفحة العامة التي تربط إليها من حملة. اخترها هدفًا لرابط عنصر زر، أو استخدم الإعداد المسبق اشترك المدمج في الاستوديو (عنوان + نص + زر، بالشكل نفسه لـ«تركيب عناصر موجودة، دون نوع عنصر جديد» المتّبع في الإعداد المسبق «لوحة النتائج» في قطاع الفرق الرياضية).
يختار الزائر باقة ويدفع عبر جلسة Stripe Checkout حقيقية في وضع الاشتراك. وعند الاكتمال، يُنشأ صف Subscriber أو يُطابَق بحسب البريد الإلكتروني، وتُرسل رسالة ترحيب برابط مباشر إلى البوابة.
تسجيل الدخول دون حساب في MailInApp
لا ينشئ المشترك أبدًا حسابًا في MailInApp. فتسجيل الدخول على /learn/<slug> رابط سحري: يُدخل بريده الإلكتروني، فيُرسل إليه رابط تسجيل دخول بنقرة واحدة عبر SMTP الخاص بك وبعلامتك التجارية (لا قالب Firebase الافتراضي). وهذه الخطوة محدودة المعدّل ولا تكشف أبدًا، عن قصد، ما إذا كان ذلك البريد مشتركًا أصلًا. ويثبت النقر على الرابط أنه يملك العنوان، ويسجّل دخوله إلى البوابة لتلك العضوية تحديدًا.
مشاهدة درس
كل طلب تشغيل لدرس يُجري فحص استحقاق لكل طلب حيًّا — لا رابطًا موقّعًا طويل الأمد كالذي تستخدمه نقطتا نهاية العدّاد التنازلي أو التقويم. ففي كل مرة يفتح فيها المشترك درسًا، يتحقق MailInApp من حالة اشتراكه الحالية قبل إنشاء رمز تشغيل قصير الأمد. وفقدان الوصول (اشتراك ملغى أو متأخر السداد) يسري مع الطلب التالي مباشرة، لا عند تحميل الصفحة التالي فحسب. والدرس الموسوم بـ معاينة مجانية يتخطّى هذا الفحص كليًا ويُشغَّل لأي شخص يصل إلى البوابة.
إدارة اشتراك قائم
تمنح /learn/<slug>/account المشترك المسجّل دخوله زر إدارة الفوترة الذي يحيله إلى بوابة العملاء المستضافة لدى Stripe نفسها — لتحديث بطاقة، أو تبديل الباقة، أو الإلغاء — بدلًا من أن يعيد MailInApp تنفيذ إدارة الاشتراكات بنفسه.
ما يحدث عند أحداث الفوترة
- اكتمال الدفع ← يُنشأ صف المشترك أو يُطابَق، ويُفعَّل الاشتراك، وتُرسل رسالة ترحيب برابط إلى البوابة.
- فشل الدفع ← يتلقى المشترك رسالة تحصيل تشير إلى
/learn/<slug>/accountلتحديث بطاقته، بينما يعيد Stripe محاولة الخصم تلقائيًا — ولا يغيّر MailInApp الوصول عند الفشل الأول، بل فقط حين يُبلغ Stripe نفسه أن الاشتراك لم يعد نشطًا. - إلغاء الاشتراك (من المشترك، أو بعد استنفاد محاولات التحصيل) ← ينتهي الوصول إلى الدروس وجلسات البث المباشر المحجوبة، وتُرسل رسالة إلغاء برابط يعود إلى
/learn/<slug>/subscribeإن أراد العودة.
انظر أيضًا
- نظرة عامة على العضوية التعليمية
- الدورات والدروس والفيديو
- جلسات البث المباشر والندوات عبر الإنترنت
- نطاق البوابة المخصّص — قدّم بوابتك من نطاقك الخاص بدلًا من
mailinapp.com/learn/<slug> - عنصر المنتج — لعملية شراء لمرة واحدة بدلًا من عضوية متكررة
- ملف المُرسِل