أطلق منصّة SaaS اشتراكية كاملة
منتجك الاشتراكي — من التسجيل إلى الفاتورة الشهرية تلقائياً.
دليل مغلق لبناء منصّة SaaS عربية على Lovable: تسجيل مستخدمين، فرق عمل، خطط اشتراك شهرية/سنوية، فوترة Stripe، تجربة مجانية، لوحة تحكم، وSSO.
«الحزمة الكاملة» تحتوي: البرومبتات بالتسلسل + قائمة التحقق (بحالتها الحالية) + التكاملات + خطوات النشر + الأسئلة الشائعة. سياق مشروعك يُدمج تلقائيًا في كل برومبت.
ما ستبنيه
- ✅ تسجيل / تسجيل دخول + Google/Apple OAuth
- ✅ فرق عمل ودعوات وأدوار
- ✅ خطط اشتراك (Free / Pro / Business)
- ✅ فوترة تلقائية Stripe مع فواتير
- ✅ تجربة مجانية ١٤ يوماً بلا بطاقة
- ✅ لوحة تحكم للمستخدم + لوحة مشرف داخلي
- ✅ حدود استخدام حسب الخطة (Feature Gating)
الحزمة التقنية الموصى بها
| الطبقة | الأداة | السبب |
|---|---|---|
| الواجهة | React + Tailwind + shadcn/ui | تجربة SaaS احترافية |
| المصادقة | Supabase Auth (Email + OAuth) | Google/Apple/GitHub |
| قاعدة البيانات | Supabase (Postgres) | workspaces, members, subscriptions |
| الفوترة | Stripe Billing | خطط، ترقيات، ضرائب تلقائية |
| البريد | Resend | تفعيل، دعوات، فواتير |
برومبتات البناء بالتسلسل
انسخ كل برومبت والصقه في Lovable بالترتيب. لا تدمج خطوتين في برومبت واحد — الجودة تنخفض. عدّل النص بين الأقواس المربّعة ليناسب مشروعك.
تنقّل بين الخطوات بالأسهم (↑ ↓ → ←)، واضغط Enter أو Space لنسخ البرومبت.
الخطوة 1: الهيكل والصفحات
برومبت الخطوة 1 — الهيكل والصفحات. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
أنشئ SaaS باسم [الاسم] يحلّ [المشكلة]. صفحات عامة: الرئيسية (Landing)، الأسعار، الأسئلة الشائعة، المدوّنة، تواصل. صفحات المستخدم بعد الدخول: /app (Dashboard)، /app/settings، /app/team، /app/billing. RTL عربي بخط IBM Plex Sans Arabic.
الخطوة 2: المصادقة والفرق
برومبت الخطوة 2 — المصادقة والفرق. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
فعّل Supabase Auth (Email + Google + Apple). أنشئ جداول: workspaces (name, owner_id, plan)، workspace_members (workspace_id, user_id, role: owner/admin/member)، invitations (email, workspace_id, token, expires_at). المستخدم عند التسجيل ينشئ Workspace افتراضي.
الخطوة 3: الأدوار والصلاحيات
برومبت الخطوة 3 — الأدوار والصلاحيات. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
أنشئ enum role وجدول user_roles منفصل — لا تخزّن الدور في users أو workspace_members بدون RLS. أنشئ security definer has_workspace_role(user, ws, role). طبّق RLS على جميع الجداول ليرى العضو بيانات مساحته فقط.
الخطوة 4: خطط Stripe وفوترة
برومبت الخطوة 4 — خطط Stripe وفوترة. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
في Stripe أنشئ منتج SaaS بخطط: Free (0)، Pro (49/شهر)، Business (149/شهر) بأسعار شهرية وسنوية. أنشئ جدول subscriptions (workspace_id, stripe_customer_id, stripe_subscription_id, plan, status, current_period_end). زر «رقّي خطتك» يفتح Stripe Checkout، وWebhook يحدّث subscriptions.
الخطوة 5: تجربة مجانية وFeature Gating
برومبت الخطوة 5 — تجربة مجانية وFeature Gating. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
عند إنشاء Workspace ضع trial_ends_at = now() + 14 يوم بخطة Pro. أنشئ hook usePlanLimits() يعيد حدود الخطة (عدد المشاريع، عدد الأعضاء، حجم التخزين). امنع الإضافة عند تجاوز الحد مع رسالة «رقّي خطتك» وزر مباشر للترقية.
الخطوة 6: الدعوات والفريق
برومبت الخطوة 6 — الدعوات والفريق. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
في /app/team زر «ادعُ عضواً» يفتح مودال (email + role). ينشئ سجل invitations ويرسل بريد Resend فيه رابط قبول token صالح ٧ أيام. المستقبل يفتح الرابط ثم يسجّل/يدخل ثم ينضم تلقائياً.
الخطوة 7: بوّابة الفوترة للمستخدم
برومبت الخطوة 7 — بوّابة الفوترة للمستخدم. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
في /app/billing اعرض: الخطة الحالية، تاريخ التجديد، طريقة الدفع، آخر فواتير. زر «إدارة الفوترة» يفتح Stripe Customer Portal (يحدّث البطاقة، يلغي الاشتراك، يحمّل الفواتير). حدّث DB عبر Webhook.
الخطوة 8: لوحة المشرف الداخلي
برومبت الخطوة 8 — لوحة المشرف الداخلي. اضغط Enter أو Space للنسخ، أو استخدم الأسهم للتنقّل.
أنشئ /admin محميّة بدور superadmin تعرض: عدد المستخدمين والمساحات، الاشتراكات النشطة، MRR (الإيراد الشهري المتكرّر)، Churn، آخر التسجيلات. مصادر البيانات كلها من Supabase + Stripe API.
التكاملات المطلوبة
خطط، فوترة تلقائية، فواتير، Customer Portal
بديل يتولّى الضرائب العالمية عنك (MoR)
التفعيل والدعوات والفواتير
تحليلات منتج (Funnels, Retention)
دعم فوري داخل التطبيق
تسجيل دخول اجتماعي
الإضافات المقترحة
SAML/OIDC لباقة Enterprise.
سجل بكل تعديل مهم داخل المساحة.
امنح مستخدمي Business مفاتيح API.
أحداث للأنظمة الخارجية.
عربي + إنجليزي.
قائمة تحقق قبل الإطلاق
تُحفظ حالة القائمة تلقائيًا على جهازك.
خطوات النشر
- ١. راجع المعاينة (Preview)
افتح المعاينة داخل Lovable وتأكد أن جميع الصفحات تعمل بلا أخطاء وأن الروابط الداخلية سليمة، خاصة على شاشة الجوّال.
- ٢. فعّل Lovable Cloud إذا كان مشروعك يحتاج قاعدة بيانات أو تسجيل دخول
من الإعدادات فعّل Cloud (يعمل على Supabase تحت الغطاء) قبل النشر لضمان أن العمليات الخلفية مربوطة بمشروع إنتاجي.
- ٣. أضف مفاتيح البيئة (Secrets)
من Project Settings أضف مفاتيح خدمات الدفع والبريد وأي API خارجي. لا تضع المفاتيح داخل الكود مباشرة.
- ٤. اضغط Publish
سينشر Lovable مشروعك على نطاق فرعي *.lovable.app خلال دقيقة تقريباً. شارك الرابط للتجربة الأولى.
- ٥. اربط نطاقك الخاص (Custom Domain)
من Project Settings → Domains أضف نطاقك واتبع تعليمات DNS. النطاق الخاص شرط أساسي لثقة المستخدم ولمحركات البحث.
- ٦. أرسل خريطة الموقع لـ Google Search Console
بعد ربط النطاق، أضف الموقع في Search Console وأرسل /sitemap.xml وابدأ بمراقبة الفهرسة.
- ٧. فعّل Stripe Webhooks في وضع Live
بعد النشر، أنشئ Webhook Endpoint في Stripe يشير إلى /api/public/stripe-webhook مع أحداث: customer.subscription.*، invoice.paid، invoice.payment_failed. تحقّق من التوقيع (Signature) داخل الـ Handler.
الأسئلة الشائعة
Stripe أم Paddle لـ SaaS عربي؟
Stripe يعطيك مرونة أكثر ودعم Mada عبر Moyasar. Paddle يتولّى الضريبة عنك كـ Merchant of Record — مثالي إذا كان جمهورك عالمياً وتريد تجنّب تعقيدات الضرائب الدولية.
كيف أطبّق حدود الخطة تقنياً؟
احفظ الحدود في ثابت (planLimits) واستدعِها في كل مكان يُنشئ فيه المستخدم مورداً. طبّقها أيضاً على مستوى RLS/Trigger لضمان عدم التجاوز حتى من API.
هل أحتاج SOC 2 / ISO 27001؟
ليست شرطاً للإطلاق. اطلبها عملاء الشركات لاحقاً. Supabase وStripe وResend مطابقة، ما يبسّط رحلتك.
كيف أخفّض Churn في البداية؟
١) Onboarding قوي (Aha Moment في أول ٥ دقائق) ٢) بريد استرداد عند بطاقة تفشل ٣) مقابلة إلغاء اختيارية ٤) خصم شهر للسنوية عند نية الإلغاء.
جاهز للبناء؟
ابدأ الآن بمولّد البرومبت أو اطرح فكرتك على مجتمع Lovable بالعربية على واتساب.
هل كان هذا المحتوى مفيداً؟
استلم أحدث الأدلّة والبرومبتات كل أسبوع
خلاصة عربية أسبوعية عن Lovable وVibe Coding — بلا سبام، إلغاء متى شئت.
