لنفرض أن لديك شركة توزيع صغيرة فيها عشرون موظفاً: المبيعات تسجل الطلبات في ملف Excel، والمستودع يعرف الكميات من ملف آخر، والمحاسب يكتب الفواتير في برنامج ثالث، ومدير المبيعات يتابع العملاء المحتملين في دفتره أو في هاتفه. وفي كل يوم يعيد أحدهم كتابة اسم العميل وأصناف الطلب وأسعارها من مكان إلى آخر، فإذا أخطأ في رقم واحد ظهر الخطأ بعد أسبوعين في فاتورة لا تطابق ما خرج من المستودع. وعندما يسأل صاحب الشركة سؤالاً بسيطاً مثل «كم ربحنا من هذا الصنف في الربع الماضي؟» يحتاج الجواب إلى يومين من جمع الملفات.
وهذه هي المشكلة التي صنعت لها أنظمة تخطيط موارد المؤسسة ERP وأنظمة إدارة علاقات العملاء CRM، وهذا المقال هو الأول في مرحلة أنظمة الأعمال: ERP وCRM والمحاسبة والموارد البشرية في خريطة الطريق، لذلك سوف نبقى فيه عند الفكرة والقرار، ونترك التثبيت للمقال الذي بعده، وسوف نناقش فيه ما يلي:
- ما هو ERP وما هو CRM، والفرق بينهما، والوحدات Modules التي يتكون منها كل منهما.
- متى تحتاج شركتك إليهما فعلاً، ومتى يكفيها برنامج فواتير بسيط.
- لماذا تفشل مشاريع تطبيق ERP، مع حادثة موثقة، وكيف تنقل بياناتك القديمة إلى النظام الجديد.
- الفاتورة الإلكترونية في المملكة ومرحلتاها كما تصفهما هيئة الزكاة والضريبة والجمارك.
- الخيارات مفتوحة المصدر: Odoo وERPNext وDolibarr وTwenty برخصها، والفرق بين Odoo Community وOdoo Enterprise.
ما هو تخطيط موارد المؤسسة ERP؟
تخطيط موارد المؤسسة Enterprise Resource Planning، واختصاراً ERP، نظام واحد يغطي العمليات الأساسية في الشركة، مثل المبيعات والمشتريات والمخزون والمحاسبة والموارد البشرية، بحيث تعمل كلها على قاعدة بيانات واحدة، فالطلب الذي تسجله المبيعات هو نفسه الذي يراه المستودع ليجهزه، ثم يراه المحاسب ليصدر فاتورته، دون أن يعيد أحد كتابته. ولو أردنا تشبيهاً من الحياة فهو مثل دفتر واحد كبير في وسط المكتب يكتب فيه كل قسم في صفحته، ولكن الصفحات مربوطة ببعضها، فإذا كتب أمين المستودع أن البضاعة خرجت ظهر ذلك فوراً في صفحة المحاسب. والصورة التالية تبين الفرق:

في المخطط أعلاه لاحظ التالي:
- كل سهم أحمر متقطع على اليسار هو مكان محتمل للخطأ، لأن إنساناً ينقل فيه رقماً من مكان إلى مكان.
- على اليمين لا توجد أسهم بين الوحدات، لأن الوحدات لا تتبادل الملفات، وإنما تقرأ من الجداول نفسها.
- الوحدات التي تراها هي الشائعة، وأغلب الأنظمة تسمح لك أن تبدأ بوحدتين أو ثلاث ثم تضيف غيرها، وهذا ما ننصح به كما سيأتي.
ما هو إدارة علاقات العملاء CRM؟
إدارة علاقات العملاء Customer Relationship Management، واختصاراً CRM، نظام يتابع العميل قبل أن يشتري: من أين جاء العميل المحتمل Lead، وفي أي مرحلة هو من مسار البيع Pipeline، ومتى اتصلنا به آخر مرة، ومن المسؤول عنه، وما احتمال إغلاق الصفقة Deal وقيمتها. فإذا كان ERP يجيب عن سؤال «ماذا بعنا وكم بقي في المستودع؟» فإن CRM يجيب عن سؤال «من سوف نبيع له الشهر القادم؟».
وقد يتساءل البعض: هل CRM جزء من ERP أم نظام منفصل؟ والإجابة: الاثنان موجودان، فبعض أنظمة ERP مثل Odoo وERPNext فيها وحدة CRM مدمجة، فيتحول العرض الذي كسبته في CRM إلى أمر بيع في الوحدة المجاورة دون نقل، وبعض الشركات تختار نظام CRM مستقلاً لأن فريق المبيعات يحتاج مزايا أكثر، ثم تربطه بنظام المحاسبة. والقاعدة: إذا كانت شركتك صغيرة فابدأ بوحدة CRM داخل ال ERP، والسبب أن الربط بين نظامين منفصلين مشروع صغير بحد ذاته يحتاج من يصونه.
كيف تبدو دورة البيع داخل ERP؟
أفضل طريقة لفهم ERP هي أن تتبع عملية بيع واحدة من أولها إلى آخرها، وهي ما يسمى دورة الطلب حتى التحصيل Order to Cash، والصورة التالية تبين خطواتها والوحدة المسؤولة عن كل خطوة:

- العميل المحتمل Lead: يسجل في CRM من نموذج الموقع أو من مكالمة.
- عرض السعر Quotation: ينشأ من العميل المحتمل، ويرسل إلى العميل بالبريد.
- أمر البيع Sales Order: عندما يوافق العميل يتحول العرض إلى أمر، فيحجز النظام الكمية في المخزون.
- التسليم Delivery: المستودع يجهز الطلب ويؤكد خروجه، فينقص المخزون فعلاً.
- الفاتورة Invoice: تنشأ من أمر البيع بالأصناف والأسعار نفسها، ويحسب النظام الضريبة.
- الدفع Payment: يسجل المبلغ المستلم على الفاتورة، فتتغير حالتها إلى مدفوعة، ويظهر ذلك في الحسابات.
وقد مررنا بهذه الدورة كاملة على نظام حقيقي في دليل تثبيت Odoo Community، بالأرقام والمستندات التي أنشأها النظام.
متى تحتاج شركتك إلى ERP؟
الطريقة البسيطة هي أن تشتري ERP لأن الشركات الكبيرة تستخدمه، والمشكلة أن ERP يفرض على الشركة طريقة عمل منظمة، ويحتاج من يدخل البيانات بدقة كل يوم، فإذا لم تكن هناك مشكلة حقيقية يحلها تحول إلى عبء. وفيما يلي العلامات التي تقول إن الوقت قد حان:
- إعادة الإدخال Re-entry: الرقم نفسه يكتب في أكثر من مكان، والأخطاء بين الأقسام أصبحت أسبوعية.
- المخزون لا يطابق الواقع: الجرد الفعلي يختلف عن الملف، ولا يعرف أحد أين حدث الفرق.
- إقفال الشهر يطول Month-end Close: المحاسب يحتاج أسبوعين ليعرف أرقام الشهر الماضي.
- الأسئلة البسيطة بلا جواب سريع: مثل ربح كل صنف، أو أكثر عميل متأخر في الدفع.
- الامتثال Compliance: متطلبات مثل الفاتورة الإلكترونية تجعل الفواتير اليدوية أو برامج الفواتير غير المتوافقة مخاطرة.
وفي المقابل، إذا كان نشاطك خدمة بلا مخزون وعدد فواتيرك قليل، فقد يكفيك برنامج فواتير ومحاسبة متوافق مع الفاتورة الإلكترونية، وفي صفحة المرحلة مقال قادم عن Akaunting وInvoice Ninja لهذه الحالة تحديداً.
لماذا تفشل مشاريع ERP؟
شراء النظام وتثبيته هو الجزء السهل، والصعب هو أن تغير طريقة عمل الناس، ولذلك تتكرر الأسباب نفسها في المشاريع التي تتعثر:
- التخصيص الزائد Over-customisation: الإصرار على أن يعمل النظام كما كانت تعمل الملفات القديمة بالضبط، فتكتب الشركة تعديلات كثيرة في الكود، ثم تجد أن كل ترقية Upgrade أصبحت مشروعاً مستقلاً. والقاعدة: غير طريقة العمل لتناسب النظام حيث يمكن، وعدل النظام فقط حيث يكون الفرق ميزة حقيقية لشركتك.
- لا يوجد مالك للعملية Process Owner: المشروع يسلم لقسم تقنية المعلومات وحده، والسبب في فشل هذا أن المحاسب ومدير المستودع هم من يعرفون كيف يجب أن تعمل الدورة، وليس المبرمج.
- الإطلاق دفعة واحدة Big Bang: تشغيل كل الوحدات لكل الأقسام في يوم واحد، فإذا تعطل شيء تعطلت الشركة كلها، والأفضل أن تبدأ بالمبيعات والفواتير، ثم المخزون، ثم البقية.
- التدريب في آخر أسبوع: الموظف الذي لم يتدرب يعود إلى ملفه القديم، فيعيش النظامان معاً، ولا يثق أحد بأي منهما.
- نقل البيانات القديمة دون تنظيف: وهو موضوع القسم التالي.
نقل البيانات Data Migration
الطريقة البسيطة هي أن تصدر كل ما في النظام القديم وتستورده في الجديد قبل الإطلاق بيوم، والمشكلة أن البيانات القديمة فيها عملاء مكررون بأسماء مختلفة قليلاً، وأصناف توقف بيعها منذ سنوات، وأرصدة لا يعرف أحد مصدرها، فإذا استوردتها كما هي ورث النظام الجديد كل مشكلات القديم من اليوم الأول. والطريقة الصحيحة تمر بالخطوات التي في الصورة التالية:

في المخطط أعلاه لاحظ التالي:
- ابدأ بالبيانات الرئيسية Master Data: العملاء والموردون والأصناف وشجرة الحسابات، فهي التي يبنى عليها كل شيء بعدها.
- لا تنقل سنوات المعاملات القديمة: انقل الأرصدة الافتتاحية Opening Balances في تاريخ الإطلاق، واترك النظام القديم للقراءة فقط عند الحاجة إلى الرجوع، والسبب أن نقل آلاف القيود القديمة بدقة أصعب بكثير من نقل رصيد واحد صحيح لكل حساب.
- قارن المجاميع: مجموع أرصدة العملاء ومجموع قيمة المخزون في النظام الجديد يجب أن يطابق القديم، وإذا لم يتطابق فارجع إلى التنظيف، ولا تطلق النظام على أمل أن تصلح الفرق لاحقاً.
الفاتورة الإلكترونية في المملكة
إذا كانت شركتك مسجلة في ضريبة القيمة المضافة في المملكة، فأي نظام تختاره يجب أن يكون متوافقاً مع الفوترة الإلكترونية التي تسميها هيئة الزكاة والضريبة والجمارك ZATCA «فاتورة». وصفحة الهيئة تعرف الفوترة الإلكترونية بأنها إجراء يحول إصدار الفواتير والإشعارات الورقية إلى عملية إلكترونية، وتنص على أن الفاتورة الورقية التي تحول إلى شكل إلكتروني بالنسخ أو المسح الضوئي أو ما يشبههما لا تعتبر فاتورة إلكترونية. والتطبيق على مرحلتين كما في صفحة مراحل التطبيق:

- المرحلة الأولى، مرحلة الإصدار Generation Phase: ملزمة منذ 4 ديسمبر 2021 لكل الخاضعين للضريبة عدا غير المقيمين، وتعني أن تصدر الفواتير وتحفظها بحل إلكتروني متوافق. والدليل التفصيلي للفوترة الإلكترونية يذكر أن هذه المرحلة لا تفرض صيغة ملف محددة، وأن رمز QR مطلوب على الفاتورة الضريبية المبسطة Simplified Tax Invoice التي تصدر للأفراد غالباً، وغير مطلوب على الفاتورة الضريبية Tax Invoice بين المنشآت في هذه المرحلة.
- المرحلة الثانية، مرحلة الربط والتكامل Integration Phase: تطبق على موجات بحسب فئات المكلفين منذ 1 يناير 2023، والهيئة تبلغ كل مكلف بموجته قبل ستة أشهر على الأقل. وفيها يجب أن يربط الحل بمنصة فاتورة FATOORA، وأن يصدر الفواتير بصيغة XML أو PDF/A-3 فيه XML مضمن، كما في دليل الاستعداد للمرحلة الثانية.
- الاعتماد Clearance والإبلاغ Reporting: بحسب الدليل التفصيلي، الفاتورة الضريبية بين المنشآت ترسل إلى منصة فاتورة أولاً، فتتحقق منها وتضيف إليها الختم التشفيري Cryptographic Stamp ورمز QR وتعيدها، ثم تصل إلى المشتري. وأما الفاتورة المبسطة فتصل إلى العميل فوراً، وترسل بصيغة XML إلى المنصة خلال 24 ساعة من إصدارها.
وفي الدليل التفصيلي نفسه قائمة بوظائف ممنوعة في أي حل للفوترة من بداية المرحلة الثانية، وهي تفيدك عند تقييم أي نظام، ومنها: الدخول دون اسم مستخدم وكلمة مرور فريدين، والعمل بكلمة المرور الافتراضية، وتعديل الفاتورة أو حذفها بعد إصدارها، فإلغاء الفاتورة يكون بإشعار دائن Credit Note ثم فاتورة جديدة، وتعديل سجلات النظام Logs أو حذفها. ولاحظ أن الهيئة تنشر دليلاً لمزودي الحلول، فإذا اخترت نظاماً مفتوح المصدر وثبته بنفسك فأنت المسؤول عن التحقق من توافقه، وقد اختبرنا ذلك على Odoo Community مع بيئة الاختبار الخاصة بالهيئة في دليل التثبيت.
الخيارات مفتوحة المصدر Open Source
فيما يلي أربعة أنظمة معروفة برخصها كما في مستودعاتها، ولكل منها مقال قادم في صفحة المرحلة، ثم مقارنة بينها بعد أن ننشر أدلة تثبيتها.
Odoo: Community وEnterprise
Odoo مكتوب بلغة Python ويعمل على PostgreSQL، ويأتي بإصدارين: إصدار المجتمع Community Edition، ومصدره مفتوح بترخيص LGPLv3، وإصدار المؤسسات Enterprise Edition، وهو بحسب صفحة الرخص بترخيص خاص لا يسمح باستخدامه إلا باشتراك Enterprise ساري لعدد المستخدمين الصحيح. وهذا النموذج يسمى النواة المفتوحة Open Core، فالإصدار المفتوح كامل في المبيعات والمخزون والفواتير والمشتريات وCRM، وبعض الوحدات والخدمات للمشتركين فقط. وصفحة المقارنة بين الإصدارين تضع في Enterprise وحده المحاسبة الكاملة بما فيها مطابقة كشوف البنك Bank Reconciliation والتقارير المالية، والرواتب Payroll، وأداة التخصيص Studio، وتطبيقات الهاتف، وخدمة الترقية بين الإصدارات، والاستضافة على Odoo.sh.
- نقاط القوة: الوحدات مترابطة وواجهتها حديثة، والتوطين السعودي والربط مع منصة فاتورة موجودان في الإصدار المفتوح، ومجتمع كبير من الوحدات المفتوحة مثل وحدات Odoo Community Association واختصاراً OCA.
- نقاط الضعف: الحد بين المفتوح والمدفوع يتحرك مع الإصدارات، والترقية بين الإصدارات الرئيسية في Community مسؤوليتك أنت، وأقرب أداة مفتوحة لها هي مشروع OpenUpgrade من مجتمع OCA، وصفحة الترقية تذكر أن كل إصدار رئيسي مدعوم ثلاث سنوات.
ERPNext
ERPNext مكتوب بلغة Python على إطار Frappe، ومنشور بترخيص GPL-3.0، وإطار Frappe نفسه بترخيص MIT، ويعمل على MariaDB.
- نقاط القوة: مفتوح بالكامل دون إصدار مدفوع منفصل، ففيه المحاسبة الكاملة والتصنيع وإدارة الجودة وCRM في الكود نفسه، والموارد البشرية والرواتب في تطبيق مستقل مفتوح أيضاً هو Frappe HR بترخيص GPL-3.0.
- نقاط الضعف: طريقة بنائه على إطار Frappe تحتاج تعلماً قبل أي تخصيص، ومجلد التوطين
regionalفي الكود الأساسي ليس فيه توطين سعودي وقت كتابة المقال، فالتوافق مع منصة فاتورة يأتي من تطبيقات إضافية خارج الكود الأساسي، فتحقق من التطبيق الذي تختاره ومن يصونه قبل أن تعتمد عليه.
Dolibarr
Dolibarr مكتوب بلغة PHP، وملف المشروع ينص على أنه منشور بترخيص GPL الإصدار 3 أو أي إصدار أحدث GPL-3+، وهو نظام خفيف للشركات الصغيرة والعاملين لحسابهم، تفعل فيه الوحدات التي تحتاجها فقط.
- نقاط القوة: سهل التثبيت ويعمل على استضافة PHP عادية، وخفيف على السيرفر.
- نقاط الضعف: أبسط من Odoo وERPNext في المخزون والمحاسبة المتقدمة، والتوطين السعودي والفوترة الإلكترونية تحتاج تحققاً من الوحدات المتاحة.
Twenty
Twenty نظام CRM فقط وليس ERP، مكتوب بلغة TypeScript، وملف الرخصة ينص على أن أغلب المشروع بترخيص AGPLv3، مع ملفات محددة عليها تعليق @license Enterprise تخضع لرخصة تجارية، وحزم أدوات تطوير بترخيص MIT.
- نقاط القوة: واجهة حديثة لفريق المبيعات، وواجهات برمجية REST وGraphQL لربطه بغيره.
- نقاط الضعف: لا فواتير ولا مخزون، فيحتاج نظاماً آخر للمحاسبة وربطاً بينهما، وبعض الملفات ليست مفتوحة بالكامل كما ذكرنا.
الأربعة في جدول واحد
| النظام | النوع | الرخصة | اللغة | قاعدة البيانات |
|---|---|---|---|---|
| Odoo Community | ERP وCRM | LGPLv3، وEnterprise رخصة خاصة | Python | PostgreSQL |
| ERPNext | ERP وCRM | GPL-3.0، وإطار Frappe بترخيص MIT | Python وFrappe | MariaDB |
| Dolibarr | ERP وCRM خفيف | GPL-3+ | PHP | MySQL أو MariaDB أو PostgreSQL |
| Twenty | CRM فقط | AGPLv3 أغلبه، وملفات بترخيص تجاري | TypeScript | PostgreSQL |
وإذا كانت الرخص جديدة عليك فقد شرحنا الفرق بين LGPL وGPL وAGPL في ما هي البرمجيات مفتوحة المصدر وتراخيصها، والمهم هنا أن استخدام النظام داخل شركتك دون تعديل كوده لا يلزمك بشيء في أي منها، والفرق يظهر عندما تعدل الكود وتوزعه أو تقدمه لغيرك عبر الشبكة.
على سيرفرك أم مستضاف؟
نظام ERP يحمل أهم بيانات الشركة: العملاء والأسعار والأرباح والرواتب، وتشغيله على سيرفرك يعني أن هذه البيانات تبقى عندك، ولكنه يعني أيضاً أنك المسؤول عن النسخ الاحتياطي والترقية والأمان والتوافق مع الفوترة الإلكترونية. وقد ناقشنا هذا القرار في متى تكون الاستضافة الذاتية قراراً استراتيجياً، والقاعدة: إذا لم يكن لديك شخص مسؤول عن السيرفر ونسخه الاحتياطية واختبار استعادتها كما في النسخ الاحتياطي بقاعدة 3-2-1، فلا تبدأ باستضافة ERP بنفسك.
أخطاء شائعة
- اختيار النظام قبل رسم الدورة: ارسم دورة البيع ودورة الشراء كما تعملان اليوم، ثم اختبر كل نظام عليهما.
- إعطاء الجميع صلاحية المدير: لأنه أسرع في أول أسبوع، ثم لا يعرف أحد من حذف الصنف أو غير السعر.
- اختبار الفاتورة الإلكترونية في آخر يوم: جرب الربط مع بيئة الاختبار في منصة فاتورة من أول شهر، واطبع الفاتورة واقرأها كما سيقرؤها العميل.
- الاعتماد على وحدة من مطور واحد: كل وحدة إضافية يجب أن يكون لها من يرقيها مع كل إصدار جديد.
ما الذي يأتي بعد هذا المقال؟
المقال التالي في المرحلة دليل عملي نثبت فيه Odoo Community على Docker، ونمر فيه بدورة بيع كاملة من أمر البيع إلى الدفع، ونرسل فاتورة إلى بيئة الاختبار في منصة فاتورة، ثم تأتي في صفحة المرحلة مقالات ERPNext وCRM والمحاسبة والموارد البشرية. ومن المقالات المنشورة التي تفيدك الآن:
دليلOdoo Community: نظام ERP لشركتك على سيرفرككيف تثبت Odoo Community على سيرفرك، وتمر بدورة بيع كاملة حتى الدفع، وترسل فاتورة إلى بيئة الاختبار في منصة فاتورة.
دليلالاستضافة الذاتية: متى تكون قراراً استراتيجياً لمؤسستك، ومتى لا تناسبهاماذا تفعل إذا رفع المزود أسعاره فجأة، أو أوقف الخدمة، أو ضاعت بياناتك عنده؟ في هذا المقال نقيس اعتمادك على المزود، ونبين متى تستحق الاستضافة الذاتية الجهد ومتى لا تستحقه، وكيف تبدأ بخدمة واحدة دون مخاطرة.
دليلالنسخ الاحتياطي بقاعدة 3-2-1 واختبار الاستعادةكيف تحدد كم بيانات تقبل أن تخسر، وتبني نسخاً لا يستطيع المخترق حذفها، وتتأكد أنك تستطيع استعادتها فعلاً.
دليلما هي البرمجيات مفتوحة المصدر؟ القصة وأشهر الرخصكيف بدأت البرمجيات الحرة والمفتوحة، وما الفرق بين الحر والمجاني، وكيف تعرف ما تسمح به رخصة أي مشروع قبل أن تبني عليه.
دليلPostgreSQL لكل شيء: متى يكفيك ومتى تحتاج غيره؟كم عملاً يستطيع PostgreSQL واحد أن يقوم به في شركتك الناشئة قبل أن تحتاج Redis أو Elasticsearch، وما الإشارة التي تقول لك إن الوقت قد حان.
دليلAudit Trail: كيف تبني سجل تدقيق لا يقبل العبثكيف تصمم سجلاً يجيب عن سؤال من غير هذه الصلاحية ومتى، وتحميه من الحذف والتعديل بعد كتابته.تدريب عملي
- ارسم دورة البيع في شركتك من أول اتصال بالعميل إلى استلام المبلغ، واكتب أمام كل خطوة الملف أو البرنامج الذي تسجل فيه اليوم، ثم ضع دائرة حول كل خطوة يعيد فيها أحد كتابة بيانات موجودة.
- استخرج قائمة عملائك الحالية واحسب كم اسماً مكرراً فيها بأشكال مختلفة، فهذا مؤشر على حجم عمل التنظيف قبل أي نقل.
الخلاصة
وصلنا لنهاية الموضوع، وأهم ما فيه:
- ERP نظام واحد بقاعدة بيانات واحدة للمبيعات والمخزون والمشتريات والمحاسبة وغيرها، وCRM يتابع العميل قبل أن يشتري.
- تحتاج شركتك ERP عندما تتكرر إعادة الإدخال والأخطاء بين الأقسام، وقد يكفي الشركة الخدمية الصغيرة برنامج فواتير متوافق.
- أكثر أسباب الفشل غير تقنية: تخصيص زائد، وغياب مالك للعملية، وإطلاق دفعة واحدة، وتدريب متأخر، وبيانات قديمة لم تنظف.
- الفاتورة الإلكترونية في المملكة على مرحلتين: الإصدار منذ ديسمبر 2021، والربط مع منصة فاتورة على موجات منذ يناير 2023.
- Odoo Community بترخيص LGPLv3 وEnterprise برخصة خاصة، وERPNext بترخيص GPL-3.0، وDolibarr بترخيص GPL-3+، وTwenty نظام CRM أغلبه بترخيص AGPLv3.
سجل التحديثات
- أكتوبر 2026: كتابة المقال، ومراحل الفوترة الإلكترونية من صفحات هيئة الزكاة والضريبة والجمارك ودليلها التفصيلي، والرخص من مستودعات المشاريع وصفحة رخص Odoo.