تطوير منصات SaaS للشركات في دبي والإمارات
نبني برمجيات بنظام الاشتراك تدفع شركات أخرى مقابل استخدامها: عزل المستأجرين، والأدوار، والفوترة مع فواتير ضريبة القيمة المضافة الإماراتية، وتهيئة المستخدمين، وسجلات التدقيق، وأدوات التشغيل اللازمة لإدارتها بعد الإطلاق.
لمن هذه الخدمة
يأتي عملاء SaaS من نقاط انطلاق مختلفة، ويبدو الشهر الأول من العمل مختلفاً لكل منهم.
- مؤسس لديه مشكلة مُثبتة
- لديكم دليل على أن الشركات ستدفع: عملاء تجريبيون، أو خطابات نوايا، أو خدمة يدوية تبيعونها بالفعل. وتحتاجون إلى بناء المنتج وأسس منصته بالترتيب الصحيح. وإذا كان الدليل أضعف من ذلك، فابدؤوا بـ MVP بدلاً من ذلك.
- شركة برمجيات قائمة
- تبيعون منتجاً لمستأجر واحد أو منتجاً يُثبَّت محلياً وتريدون نسخة متعددة المستأجرين، أو تحتاجون إلى قدرات هندسية في تعدد المستأجرين أو الفوترة أو ميزات المؤسسات التي لم يبنها فريقكم من قبل. يبدأ العمل من شيفرتكم ونموذج بياناتكم الحاليين.
- شركة تحوّل أداة داخلية إلى منتج
- بنى فريقكم شيئاً لإدارة عملياتكم الخاصة، وصار نظراؤكم يطلبون استخدامه. البرمجيات تعمل لشركة واحدة، وتحويلها إلى منتج يعني فصل بياناتكم عن بيانات العملاء المستقبليين، وإزالة الافتراضات المكتوبة في الشيفرة، وإضافة التسجيل الذاتي والفوترة.
عزل المستأجرين
يحدد نموذج العزل تكلفة الاستضافة، وكيفية التعامل مع طلبات المؤسسات، ومدى خطورة خطأ برمجي واحد. نختاره عن قصد في الأسبوع الأول.
| النموذج | كيف يعمل | يناسب | ما يجب الانتباه إليه |
|---|---|---|---|
| قاعدة بيانات مشتركة، ومفتاح المستأجر في كل صف | يتشارك جميع المستأجرين الجداول. تُقيَّد كل استعلام بمعرّف المستأجر، ويُفضَّل أن تفرض قاعدة البيانات ذلك عبر الأمان على مستوى الصفوف. | معظم منتجات B2B ذات العملاء الكثيرين من الشركات الصغيرة والمتوسطة | مرشّح واحد منسي قد يكشف البيانات، لذا يجب أن يكون الفرض تحت مستوى شيفرة التطبيق. واستعادة بيانات مستأجر بمفرده أصعب. |
| مخطط لكل مستأجر | قاعدة بيانات واحدة، ومخطط منفصل لكل عميل. | من عشرات إلى بضع مئات من المستأجرين مع تخصيص متوسط | تُنفَّذ عمليات الترحيل مرة لكل مخطط، فيزداد وقت النشر بازدياد عدد العملاء. |
| قاعدة بيانات لكل مستأجر | يحصل كل عميل على قاعدة بيانات خاصة به، وأحياناً على منطقة خاصة به. | عملاء المؤسسات أو القطاعات المنظّمة الذين يشترطون الفصل المادي | تكلفة استضافة وتشغيل أعلى، ويحتاج إلى تجهيز آلي منذ اليوم الأول. |
| هجين | مشترك افتراضياً، مع قواعد بيانات مخصصة لعملاء فئة المؤسسات. | المنتجات التي تبيع للشركات الصغيرة والمتوسطة والحسابات الكبيرة معاً | نموذجا تشغيل يجب اختبارهما ومراقبتهما. ولا يستحق ذلك إلا حين يكون طلب المؤسسات حقيقياً. |
العزل لا يقتصر على قاعدة البيانات الرئيسية. فالمهام الخلفية، وذاكرات التخزين المؤقت، وفهارس البحث، ومسارات تخزين الملفات، وعمليات التصدير، كلها تحتاج إلى سياق المستأجر، وهي المواضع التي تحدث فيها التسريبات عادةً. يتناول دليلنا حول تعدد المستأجرين في SaaS الأسئلة التي يجب طرحها على أي شريك هندسي.
الأدوار والصلاحيات والوصول
- نموذج حسابات يضم المؤسسات، ومساحات عمل أو فرقاً اختيارية داخلها، ومستخدمين يمكن أن ينتموا إلى أكثر من مؤسسة.
- صلاحيات قائمة على الأدوار مع مجموعة صغيرة من الأدوار الافتراضية (مالك، ومسؤول، وعضو، وقراءة فقط)، إضافة إلى أدوار مخصصة إذا كان عملاؤكم يتوقعونها.
- قواعد على مستوى الموارد عند الحاجة، كمندوب مبيعات لا يرى إلا عملاءه.
- دعوات، ونقل ملكية، وإلغاء تفعيل يحافظ على سجل التدقيق عند مغادرة المستخدم.
- تسجيل دخول موحّد عبر SAML أو OpenID Connect، وتجهيز المستخدمين عبر SCIM، وعادةً ما يُخصَّص ذلك لباقة أعلى.
- وصول لفريق الدعم يمنحه العميل لفترة محدودة، مع تسجيل كل إجراء ووسمه بأنه نُفِّذ من قِبل الموظفين.
فوترة الاشتراكات وفواتير ضريبة القيمة المضافة
نمثّل الاستحقاقات بمعزل عن أسماء الباقات، بحيث يسأل التطبيق ما إذا كان الحساب يستطيع استخدام ميزة ما أو كم تبقى من حصته، لا عن الباقة التي يشترك فيها. هذا يجعل تغييرات التسعير مهمة إعداد لا إصداراً برمجياً. ونبني أيضاً الفترات التجريبية، والاحتساب النسبي، وقياس المقاعد أو الاستخدام، وإعادة محاولة الدفعات الفاشلة، وفترات السماح، وقاعدة تحدد مصير البيانات عند انقضاء الحساب.
يغطي Stripe Billing معظم ذلك للشركات التي يمكنها امتلاك حساب Stripe. ويفضّل بعض العملاء في الإمارات، أو يُلزَمون، باستخدام بوابة إقليمية مثل Network International أو Telr أو PayTabs، حيث يختلف دعم ترميز البطاقات والرسوم المتكررة بحسب المزوّد والحساب. في هذه الحالة نبني منطق الاشتراكات داخل التطبيق ونستخدم البوابة للتحصيل والاسترداد. وتُؤكَّد أهلية البوابة ورسومها لكل مشروع. تصل أحداث الدفع عبر webhook، لذلك تكون المعالجات متساوية الأثر (idempotent)، وتقارن تسوية ليلية سجلات البوابة بدفتر حسابات التطبيق.
ولضريبة القيمة المضافة في الإمارات، تُصدر الفواتير بوصفها فواتير ضريبية تُظهر رقم التسجيل الضريبي الخاص بكم، ومبلغ الضريبة بالدرهم (AED)، والتفاصيل الأخرى التي تشترطها الهيئة الاتحادية للضرائب، مع إشعارات دائنة للمبالغ المستردة. أما كيفية معاملة العملاء خارج الإمارات فمسألة يحددها مستشاركم الضريبي، ونحن نبني وفق القواعد التي يقدّمها لنا. وتعمل الإمارات على تطبيق الفوترة الإلكترونية الإلزامية تدريجياً، لذلك نتحقق مع مستشاركم مما إذا كانت تنطبق عليكم عند الإطلاق، ونُبقي بيانات الفواتير منظّمة بحيث يمكن تقديمها إلكترونياً حين يصبح ذلك مطلوباً. وإذا كانت الفوترة كبيرة بما يكفي لتكون مشروعاً مستقلاً، فراجعوا تطوير أنظمة فوترة الاشتراكات ودليل متطلبات الفوترة في SaaS لدينا.
التهيئة والوصول إلى القيمة الأولى
للمنتج ذاتي الخدمة مهمة تهيئة واحدة: إيصال الحساب الجديد إلى أول نتيجة مفيدة دون مكالمة مبيعات. نبني التسجيل، والتحقق من البريد الإلكتروني، وإنشاء مساحة العمل، ودعوة الزملاء، ثم مساراً موجّهاً إلى تلك النتيجة الأولى، غالباً باستخدام بيانات نموذجية أو استيراد من جدول بيانات. تُطلق كل خطوة حدثاً في تحليلات المنتج، لتروا أين تتعثر الفترات التجريبية. ويُحدَّد نطاق التهيئة ثنائية اللغة بالإنجليزية والعربية، بما فيها التخطيطات من اليمين إلى اليسار ورسائل البريد المعرَّبة، منذ البداية. ويمكن أن يكون تصميم التفاعل نفسه تعاقداً منفصلاً ضمن تصميم منتجات SaaS.
سجلات التدقيق وقابلية المراقبة
- سجلات التدقيق
- سجل لا يقبل إلا الإضافة للإجراءات ذات الصلة بالأمان والأعمال: من فعل ماذا، وبأي سجل، وفي أي مستأجر، ومتى، ومن أين، مع القيم قبل التغيير وبعده. يستطيع مسؤولو العملاء عرض سجل مستأجرهم وتصديره. وسيطلب عملاء المؤسسات ومدققوهم ذلك.
- السجلات المنظّمة
- يحمل كل سطر في السجل معرّفات المستأجر والمستخدم والطلب، بحيث يمكن تتبّع تذكرة دعم عبر طبقة الويب والمهام الخلفية واستدعاءات الأطراف الثالثة.
- المقاييس والتنبيهات
- معدلات الأخطاء، وزمن الاستجابة، وعمق قوائم الانتظار، والدفعات الفاشلة، وإخفاقات webhooks، مع تنبيهات تصل إلى شخص محدد لا إلى بريد مشترك.
- الاستخدام لكل مستأجر
- أي العملاء يولّدون الحِمل وأي الميزات يستخدمون، وهي بيانات تغذي تخطيط السعة ومراجعات التسعير والنقاشات حول إلغاء الاشتراكات.
التقنيات والنشر والتسليم
نختار تقنيات شائعة يمكنكم التوظيف لها في الإمارات، عادةً خادماً بلغة TypeScript أو Python، وPostgreSQL، وواجهة أمامية بـ React، مستضافة لدى مزوّد سحابي رئيسي. تتم عمليات النشر عبر CI مع بيئتين منفصلتين للتجربة والإنتاج. تُختبر ترحيلات قاعدة البيانات على بيانات بحجم بيئة الإنتاج قبل الإصدار، وتُختبر عمليات الاستعادة فعلياً بدلاً من افتراض نجاحها. وإذا كان عملاؤكم أو قطاعكم يشترطون بقاء البيانات في الإمارات، ننشر في منطقة داخل الدولة ونوثّق ذلك لإشعار الخصوصية الخاص بكم بموجب قانون حماية البيانات الشخصية (PDPL) في الإمارات، أو بموجب قواعد DIFC أو ADGM حيث تنطبق.
يشمل التسليم المستودع، والبنية التحتية كشيفرة، ولوحة إدارة داخلية لفريق الدعم لديكم، وأدلة تشغيل للحوادث وتجهيز المستأجرين، وسجلاً للبنية يشرح القرارات المذكورة أعلاه. ويستثني النطاق محتوى الموقع التسويقي، والاستحواذ المدفوع على العملاء، والصياغة القانونية لشروطكم، ويمكننا إحالتها إلى جهات مختصة.
ما الذي يحدد التكلفة
- نموذج العزل، خاصة إذا كانت قواعد البيانات المخصصة مطلوبة عند الإطلاق.
- تعقيد الفوترة: باقات ثابتة، أو مقاعد، أو قياس الاستخدام، أو بوابة إقليمية دون دعم أصلي للاشتراكات.
- عدد أدوار المستخدمين المختلفة ومدى دقة الصلاحيات المطلوبة.
- التكاملات التي يتوقعها العملاء منذ اليوم الأول، مثل المحاسبة أو CRM أو WhatsApp.
- دعم العربية والكتابة من اليمين إلى اليسار في المنتج والرسائل والمستندات.
- ميزات المؤسسات مثل تسجيل الدخول الموحّد (SSO)، وتصدير سجلات التدقيق، وضمانات إقامة البيانات.
يقسّم دليل تكلفة تطوير SaaS لدينا هذه العوامل إلى مكونات ميزانية منفصلة. ولأمثلة على أعمالنا، راجعوا دراسات الحالة.
أسئلة يطرحها العملاء
هل يمكننا البدء بمستأجر واحد وإضافة تعدد المستأجرين لاحقاً؟
يمكنكم ذلك، لكن إضافة تعدد المستأجرين لاحقاً تمس كل استعلام ومهمة ومسار ملف، وهي من أكثر عمليات إعادة الكتابة تكلفة في SaaS. أما إضافة مفتاح المستأجر وآلية فرضه من الإصدار الأول فتكلفتها ضئيلة بالمقارنة، حتى لو كان لديكم عميل واحد فقط.
هل نحتاج إلى Stripe، أم يمكننا استخدام بوابة إماراتية؟
كلاهما يمكن أن ينجح. يوفر Stripe ميزات اشتراك جاهزة. وقد تناسب البوابة الإقليمية علاقتكم المصرفية أو قاعدة عملائكم، لكن جزءاً أكبر من منطق الاشتراكات سيكون حينها داخل تطبيقكم. نقارن الخيارين وفق خططكم قبل الاختيار.
هل ستتعامل المنصة مع استبيانات الأمان الخاصة بالمؤسسات؟
ستمنحكم إجابات صادقة عنها: نموذج العزل، والتشفير، وضوابط الوصول، وسجلات التدقيق، والنسخ الاحتياطية، وموقع الاستضافة. أما الشهادات الرسمية مثل SOC 2 أو ISO 27001 فهي عملية مؤسسية تسعون إليها بشكل منفصل.
من يدير المنتج بعد الإطلاق؟
يُتفق على ذلك قبل الإطلاق. تشمل الخيارات عقداً هندسياً مستمراً معنا، أو التسليم إلى فريقكم مع فترة انتقالية، أو مزيجاً منهما. ويُكتب النطاق والساعات وأوقات الاستجابة في اتفاقية الدعم.

