إعداد الجدار المدفوع للمشتركين المدفوعين في VeloCMS
دليل شامل لتفعيل نظام العضوية، وربط Stripe، وتحديد مستويات الأسعار، وحجب المقالات بحيث لا يطّلع على المحتوى الكامل إلا المشتركون المدفوعون.
يتيح لك نظام العضوية في VeloCMS تحصيل رسوم من القرّاء مقابل الوصول إلى المحتوى المميز. لكل مقال إعداد ظهور — عام، أو للأعضاء المجانيين، أو للمشتركين المدفوعين — فيمكنك حجب أي مقال بمفرده مع إبقاء بقية الموقع مفتوحًا. تُعالَج المدفوعات عبر Stripe باستخدام حسابك الخاص (BYOK — أحضر مفاتيحك بنفسك)، مما يعني أنك تحتفظ بـ 100% من الإيرادات دون أي رسوم منصة تتجاوز المعدل المعتاد لـ Stripe.
الخطوة 1 — إنشاء حساب Stripe والحصول على مفاتيح API
إن لم يكن لديك حساب Stripe، أنشئ واحدًا على stripe.com. بعد إتمام التهيئة، انتقل إلى Stripe Dashboard ← Developers ← API Keys. ستحتاج إلى مفتاحين: المفتاح السري (يبدأ بـ sk_live_ أو sk_test_) والمفتاح العام (يبدأ بـ pk_live_ أو pk_test_). أبقِ المفتاح السري سرياً — يجب ألا يظهر قط في أي كود يُنفَّذ على جانب العميل.
استخدم مفاتيح sk_test_ وpk_test_ أثناء الإعداد تجنبًا للرسوم الفعلية. انتقل إلى المفاتيح الحقيقية فقط حين تكون مستعدًا لاستقبال مدفوعات حقيقية. يمكنك اختبار تدفق الدفع بالكامل بأمان باستخدام رقم بطاقة الاختبار 4242 4242 4242 4242.
الخطوة 2 — ضبط إعدادات Stripe في VeloCMS
انتقل إلى لوحة التحكم ← الإعدادات ← العضوية. فعّل «قبول اشتراكات القراء (مجاني + مدفوع)». الصق «مفتاح Stripe السري» و«مفتاح Stripe العام» في الحقلين المخصصين لهما. يُشفّر VeloCMS مفتاحك السري حال تخزينه باستخدام AES-256-GCM — فلا يُحفظ أبدًا بصيغة نصية صريحة. انقر «حفظ». سيُنشئ VeloCMS تلقائيًا منتجًا على Stripe وسجلَّي سعر (شهري وسنوي) استنادًا إلى الأسعار التي ستحددها في الخطوة التالية.
الخطوة 3 — تحديد أسعار الاشتراك
لا تزال في لوحة التحكم ← الإعدادات ← العضوية. حدد ما يلي: «اسم المستوى» (الافتراضي: Member)، والسعر الشهري بعملتك، والسعر السنوي (عادةً 10 أضعاف السعر الشهري لمنح خصم شهرين)، ورمز العملة (USD أو GBP أو EUR وغيرها). أضف 3 إلى 5 جُمَل تصف مزايا العضوية — ستظهر في دعوة الترقية التي يراها القرّاء المجانيون حين يصطدمون بمقال محجوب. ويمكنك أيضًا تعريف ما يصل إلى خمسة مستويات مدفوعة، لكل منها تسعيرها ومزاياها، إن لم يكفِ مستوى واحد.
- مثال على السعر الشهري: 7 دولارات (معيار النشرة البريدية)، أو 10 دولارات (المدونة + الأرشيف)، أو 15 دولارًا (مجتمع مميز)
- مثال على السعر السنوي: 70 دولارًا (شهران مجانًا مقارنةً بالاشتراك الشهري)، أو 100 دولار، أو 150 دولارًا
- جمل المزايا: «الوصول الكامل إلى جميع المقالات»، «جلسة أسئلة وأجوبة شهرية مع الكاتب»، «الوصول إلى مجتمع Discord»، «قراءة خالية من الإعلانات»
الخطوة 4 — إعداد Stripe webhook
يحتاج VeloCMS إلى معرفة وقت إنشاء اشتراك Stripe أو تجديده أو إلغائه. انتقل إلى Stripe Dashboard ← Webhooks ← Add Endpoint. عيّن رابط نقطة النهاية (Endpoint) على https://yourblog.velocms.org/api/member-webhook/yourblog — الرابط الدقيق لموقعك، بما فيه المعرّف المختصر (slug) لموقعك في آخره، معروض في لوحة التحكم ← الإعدادات ← العضوية. فعّل الأحداث التالية: checkout.session.completed وcustomer.subscription.updated وcustomer.subscription.deleted وinvoice.payment_failed. انسخ سر التوقيع (Signing secret) الخاص بـ Webhook والصقه في حقل «سر ويب هوك» في لوحة التحكم ← الإعدادات ← العضوية.
الخطوة 5 — حجب أول مقال لك
أنشئ مقالًا جديدًا عبر لوحة التحكم ← المقالات ← مقال جديد. في لوحة الإعدادات على اليمين، ابحث عن قسم «من يستطيع القراءة». اضبطه على «المشتركون المدفوعون». انشر المقال. الآن افتح رابط المقال وأنت غير مسجّل الدخول — ستجد مقتطف المقال (أول 300 حرف منه) يعقبه دعوة للاشتراك. يرى الأعضاء المجانيون الجدار المدفوع ذاته. لا يطّلع على المحتوى الكامل إلا المشتركون المدفوعون.
الخطوة 6 — تدفق الدفع للمشترك
حين ينقر القارئ على زر الترقية، يُحال إلى /member/subscribe حيث يختار الفوترة الشهرية أو السنوية. يفتح الدفع في صفحة مدفوعات مستضافة على Stripe. عند النجاح، يُعاد توجيهه إلى المقال الأصلي الذي أصبح متاحًا الآن.
الخطوة 7 — إدارة المشتركين
يظهر جميع المشتركين في لوحة التحكم ← الأعضاء. تعرض قائمة الأعضاء البريد الإلكتروني لكل عضو وحالة اشتراكه وتاريخ انضمامه، ويمكنك استيراد الأعضاء دفعة واحدة أو تصدير القائمة من القسم نفسه. يُقسّم منشئ حملات النشرة البريدية جمهورك — يمكنك إرسال حملة إلى الجميع، أو إلى المشتركين المجانيين فقط، أو إلى المشتركين المدفوعين فقط.
بمجرد الانتهاء من الإعداد، يعمل الجدار المدفوع بصورة تلقائية كاملة — إذ يتولى Stripe التجديدات، وإعادة المحاولة عند فشل الدفع، وإلغاء الاشتراكات، ويُبقي الـ webhook وصول كل عضو متزامنًا مع اشتراكه في Stripe.
إرسال حملات النشرة البريدية للمشتركين المدفوعين فقط
حين يصبح لديك مشتركون مدفوعون، يمكنك إرسال حملات النشرة البريدية إليهم حصريًا. انتقل إلى لوحة التحكم ← النشرة الإخبارية ← حملة جديدة. في قسم «الجمهور»، اختر «المشتركون المدفوعون» من القائمة المنسدلة. ستُرسَل الحملة إلى الأعضاء الذين يملكون اشتراكًا مدفوعًا نشطًا فقط. استخدم هذا الخيار لتقديم محتوى مميز — تحليلات معمّقة ووصول مبكر وتحديثات المجتمع — مما يعزز قيمة المستوى المدفوع. سيواصل المشتركون المجانيون الذين يتلقون النشرة الاعتيادية استقبال الحملات الموجّهة إلى «جميع» أو «المجانيين».