معظم مشاريع التطبيقات الفاشلة لا تفشل تقنياً، بل تفشل عند نقطة الخلاف: تأخر التسليم، أو ميزة يقول العميل إنها متفق عليها ويقول المزوّد إنها خارج النطاق، أو رفض تسليم الكود عند الانتقال لمزوّد آخر.
العقد الجيد لا يمنع الخلاف، لكنه يحدّد من يتحمّل نتيجته. هذا الدليل يشرح البنود التي تحميك، والصياغات التي يجب رفضها، وترتيبها بحسب الأهمية.
تنبيه: هذا محتوى إرشادي عام وليس استشارة قانونية. راجع عقدك مع محامٍ مختص قبل التوقيع، خصوصاً في المشاريع الكبيرة أو العابرة للحدود.
أولاً: البنود الحرجة — لا توقّع بدونها
1. ملكية الكود المصدري
الأهم على الإطلاق. يجب أن ينص العقد صراحةً على أن الكود المصدري وقاعدة البيانات وحسابات المتاجر والنطاق تنتقل ملكيتها بالكامل إليك عند اكتمال الدفع.
صيغة يجب رفضها: «يمنح المزوّد العميل ترخيصاً لاستخدام البرمجية.» — الترخيص ليس ملكية. يعني أنك تستأجر تطبيقك، ولا تستطيع تعديله أو نقله لمزوّد آخر دون إذن.
اطلب أيضاً: آلية تسليم الكود على مستودع تملكه أنت — GitHub أو ما يماثله — (لا حساب المزوّد)، وتسليم وثائق النشر وبيانات الوصول للخدمات الخارجية.
2. نطاق العمل التفصيلي
نطاق العمل يجب أن يكون ملحقاً مفصّلاً لا فقرة عامة. يشمل: قائمة الشاشات بالاسم، والميزات وظيفةً بوظيفة، والمنصات والإصدارات المدعومة، والتكاملات الخارجية، وما هو خارج النطاق صراحةً.
البند الذي يوفّر أكثر الخلافات: قائمة «خارج النطاق». تحديد ما لن يُنفَّذ أهم من تعداد ما سيُنفَّذ.
3. جدول الدفعات المرتبط بالتسليم
لا تدفع مقدماً كاملاً، ولا تدفع بحسب الوقت. اربط كل دفعة بتسليم قابل للتحقق:
| المرحلة | نسبة الدفعة |
|---|---|
| توقيع العقد | 20 – 30% |
| اعتماد التصاميم | 20% |
| تسليم النسخة التجريبية | 25 – 30% |
| القبول النهائي والنشر | 20 – 30% |
احتفظ بـ20% على الأقل للدفعة الأخيرة بعد القبول النهائي. هذه الدفعة هي ضمانك الوحيد لإنهاء التفاصيل الأخيرة.
4. معايير القبول
كيف نتفق على أن العمل «مكتمل»؟ بلا معيار مكتوب، يصبح القبول رأياً متبادلاً.
اطلب معايير قابلة للقياس: التطبيق يعمل على إصدارات نظام محددة، ويجتاز قائمة اختبار متفق عليها، ولا يحتوي أخطاء من فئة «حرجة» أو «عالية»، ويحقق زمن استجابة محدداً. حدّد أيضاً مدة فترة الاختبار لديك (أسبوعان مثلاً) وما يحدث إن لم تردّ خلالها.
ثانياً: بنود تحميك من التكاليف المفاجئة
5. سياسة التعديلات
كل مشروع يشهد طلبات تعديل. العقد يجب أن يحدّد:
- عدد جولات المراجعة المجانية في كل مرحلة.
- ما يُعتبر «تعديلاً» وما يُعتبر «ميزة جديدة» — وهذا أهم تمييز في العقد كله.
- آلية تسعير التعديلات خارج النطاق (سعر ساعة معلن أو تقدير مسبق).
- اشتراط الموافقة الكتابية قبل تنفيذ أي عمل إضافي مدفوع.
بلا هذا البند، ستتفاجأ بفاتورة إضافية أو برفض تنفيذ تعديل تظنّه بديهياً.
6. الضمان وما يغطيه
يجب أن يميّز العقد بين:
- إصلاح الأخطاء (Bug fixing) — عيوب في عمل ما تم تسليمه، ويجب أن تكون مجانية خلال فترة الضمان (3–6 أشهر معتادة).
- الصيانة والتطوير — ميزات جديدة أو تحديثات توافق، وهي مدفوعة.
اسأل صراحةً: هل تحديث التطبيق ليتوافق مع إصدار iOS الجديد يدخل ضمن الضمان أم الصيانة؟ الإجابة تختلف بين المزوّدين، والاتفاق عليها مسبقاً أرخص من التفاوض لاحقاً.
7. التأخير والجزاءات
ما الذي يحدث إن تأخر التسليم؟ العقد المتوازن يتضمن:
- التزاماً بجدول زمني بمراحل محددة التواريخ.
- آلية إشعار مبكر عند توقع التأخير.
- تعويضاً أو خصماً عند التأخير الجوهري غير المبرر.
- وبالمقابل: إعفاء المزوّد إن كان التأخير بسبب تأخرك أنت في تسليم المحتوى أو الموافقات — وهذا بند عادل يجب قبوله.
ثالثاً: بنود تُغفَل غالباً وتُكلِّف كثيراً
السرية وحماية البيانات. التزام المزوّد بسرية بياناتك وبيانات مستخدميك، والامتثال لنظام حماية البيانات المطبّق، وحذف نسخه من البيانات بعد انتهاء المشروع.
التبعية للأدوات الخارجية. أي خدمات خارجية يعتمد عليها التطبيق، ومن يملك حساباتها، ومن يتحمّل رسومها. اكتشاف أن حساب خدمة أساسية باسم المزوّد بعد انتهاء العلاقة مشكلة حقيقية.
استمرارية الفريق. ماذا لو غادر المطوّر الرئيسي؟ اطلب التزاماً بتوثيق الكود وتسليم معرفة منظّم.
حل النزاعات. أي قانون يحكم العقد، وأي جهة تفصل في النزاع. مهم جداً في التعاقد العابر للحدود — عقد بلا بند اختصاص واضح يجعل أي نزاع مكلفاً وبطيئاً.
الإنهاء المبكر. كيف ينتهي التعاقد إن لم ينجح؟ ما المستحق؟ وهل تحصل على ما أُنجز حتى تاريخه؟ اطلب حق الحصول على العمل المنجز مقابل ما دُفع.
بنود يجب رفضها
| الصيغة | لماذا ترفضها |
|---|---|
| «ترخيص استخدام» بدل نقل الملكية | تستأجر تطبيقك ولا تملكه |
| دفع 100% مقدماً | تفقد كل وسيلة ضغط |
| نطاق عمل بفقرة عامة | كل خلاف لاحق سيُحسم ضدك |
| «تسليم خلال مدة معقولة» | لا معنى قانونياً لـ«معقولة» |
| تسجيل النطاق باسم المزوّد | ابتزاز مؤجل |
| بلا بند إنهاء | تعلق في علاقة فاشلة |
| مسؤولية غير محدودة عليك | خطر مفتوح بلا سقف |
قائمة تحقق سريعة قبل التوقيع
- ✅ الكود وقاعدة البيانات وحسابات المتاجر ملكي بالكامل عند اكتمال الدفع.
- ✅ النطاق مسجّل باسمي لا باسم المزوّد.
- ✅ نطاق عمل مفصّل بملحق، يشمل قائمة «خارج النطاق».
- ✅ دفعات مرتبطة بتسليمات، مع 20% محتجزة للنهاية.
- ✅ معايير قبول مكتوبة وقابلة للقياس.
- ✅ سياسة تعديلات واضحة بتمييز «تعديل» عن «ميزة جديدة».
- ✅ ضمان محدد المدة والتغطية.
- ✅ بند تأخير متوازن الطرفين.
- ✅ بند سرية وحماية بيانات.
- ✅ بند إنهاء وحل نزاعات باختصاص واضح.
ماذا يحدث حين تسوء الأمور؟
معظم أدلة العقود تصف المشروع المثالي. لكن البنود الأهم هي التي تحكم الفشل — وهي الأقل قراءةً قبل التوقيع.
إذا تأخر المزوّد عن الموعد. تاريخ تسليم بلا نتيجة مترتبة عليه هو رغبة لا بند. حدّد ما يحدث: غرامة، أو خصم من الأتعاب، أو حق الإنهاء بعد مهلة محددة. وبالمثل كن منصفاً تجاه التأخير الذي تسببه أنت — البند الجيد يوقف العداد حين يتأخر العميل في الاعتماد، وهو أكثر أسباب انزلاق الجدول شيوعاً.
إذا كانت الجودة غير مقبولة. عبارة «يجب أن يكون العمل احترافياً» غير قابلة للتنفيذ لأنها غير قابلة للقياس. حدّد معايير قبول بدلاً منها: التطبيق يعمل على إصدارات نظام محددة بالاسم، ويجتاز قائمة اختبار متفق عليها، ويُحمَّل خلال مدة منصوص عليها. ويجب أن تكون لاختبار القبول مدة محددة — 14 يوماً عادةً — يُعتبر التسليم بعدها مقبولاً.
إذا أردت التوقف. بند الإنهاء يحمي الطرفين. يجب أن ينص على مدة الإشعار، والدفع مقابل العمل المنجز حتى تاريخه، والأهم أنك تستلم كل مخرجات العمل بصرف النظر عن سبب الإنهاء. العقد الذي يسمح للمزوّد بحجز العمل المنجز عند الخروج عقد يُرفض مباشرة.
إذا اختفى المزوّد. هذا السيناريو الذي لا يخطط له أحد ويحدث فعلاً. حمايتك هنا بنيوية لا قانونية: اشترط رفع الكود إلى مستودعك أنت من اليوم الأول، لا تسليمه في النهاية. إن كان الكود موجوداً على أجهزة المزوّد فقط، فالعقد مطالبة بشيء لا تستطيع الوصول إليه.
إذا وقع نزاع. حدّد القانون الحاكم والجهة القضائية. في العمل العابر للحدود — عميل خليجي ومزوّد في بلد آخر — هذا ما يحدد إن كان التنفيذ واقعياً أم نظرياً. التحكيم غالباً أسرع من المحاكم في النزاعات التقنية، لكن اتفق على مقرّه مسبقاً.
الضمان والصيانة ليسا الشيء نفسه
يُخلط بينهما باستمرار، وهذا الخلط ينتج نزاعات حقيقية بعد الإطلاق.
الضمان يغطي عيوباً في عمل دفعتَ ثمنه أصلاً: شيء منصوص عليه ولا يعمل بشكل صحيح. يجب أن يكون مجانياً، لمدة 3 إلى 6 أشهر عادةً، وهو ليس تفضلاً — بل تسليم المزوّد لما تم التعاقد عليه.
الصيانة تغطي عملاً جديداً: تحديثات التوافق مع أنظمة التشغيل، وميزات جديدة، وتغييرات المحتوى، والمراقبة المستمرة. وهي تعاقد مدفوع منفصل.
النزاع يقع دائماً عند الحدّ الفاصل. احسمه في العقد بأمثلة صريحة:
| الحالة | ضمان | صيانة |
|---|---|---|
| ميزة منصوص عليها لا تعمل | ✅ | |
| تعطّل على جهاز كان ضمن النطاق | ✅ | |
| التطبيق يتعطل بعد إصدار iOS جديد | ✅ | |
| تريد شاشة إضافية | ✅ | |
| خدمة خارجية غيّرت واجهتها البرمجية | ✅ (عادةً) | |
| ثغرة أمنية في الكود المُسلَّم | ✅ |
الصف الأخير يستحق الإصرار عليه: الثغرة الأمنية في كود دفعتَ ثمنه عيب لا طلب تغيير.
لكيفية هيكلة الجانب المستمر، راجع الصيانة الداخلية أم عقد صيانة؟.
اقرأ أيضاً
- فريلانسر أم شركة تطوير؟ — الشروط الأربعة التي تحميك مع المستقل.
- صيانة داخلية أم عقد صيانة؟ — ما يجب أن يتضمنه عقد الصيانة.
- MVP أم المنتج الكامل؟ — تجميد النطاق قبل البدء.
الأسئلة الشائعة
من يملك الكود بعد انتهاء المشروع؟
يجب أن تملكه أنت بالكامل — الكود المصدري وقاعدة البيانات وحسابات المتاجر والنطاق — وينتقل عند اكتمال الدفع. احذر صيغة «ترخيص استخدام» فهي ليست ملكية، وتعني أنك لا تستطيع تعديل تطبيقك أو نقله لمزوّد آخر دون إذن.
كم يجب أن أدفع مقدماً؟
بين 20% و30% عند التوقيع، والباقي مرتبطاً بتسليمات قابلة للتحقق. احتفظ بـ20% على الأقل للدفعة الأخيرة بعد القبول النهائي. الدفع الكامل مقدماً يفقدك كل وسيلة ضغط عند التأخير أو ضعف الجودة.
ما الفرق بين الضمان والصيانة؟
الضمان يغطي إصلاح عيوب فيما تم تسليمه، ويكون مجانياً لمدة 3–6 أشهر عادةً. الصيانة تغطي الميزات الجديدة وتحديثات التوافق مع إصدارات أنظمة التشغيل الجديدة، وهي مدفوعة. حدّد صراحةً في أي خانة يقع تحديث التوافق مع إصدار iOS جديد.
ماذا لو تأخر التسليم؟
العقد المتوازن ينص على جدول بمراحل محددة، وإشعار مبكر عند توقع التأخير، وتعويض عند التأخير الجوهري غير المبرر — مع إعفاء المزوّد إن كان التأخير بسبب تأخرك في تسليم المحتوى أو الموافقات. تجنّب صيغة «خلال مدة معقولة» فهي بلا معنى قابل للتنفيذ.
هل أحتاج محامياً لمراجعة العقد؟
للمشاريع الصغيرة، قائمة التحقق أعلاه تغطي معظم المخاطر. للمشاريع التي تتجاوز عشرات الآلاف، أو العابرة للحدود، أو التي تعالج بيانات حساسة — نعم، وتكلفة المراجعة زهيدة مقارنةً بتكلفة نزاع لاحق.
ما أخطر بند يُغفل عادةً؟
تسجيل النطاق وحسابات المتاجر باسم المزوّد. يبدو تفصيلاً إدارياً، لكنه يعني عملياً أنك لا تستطيع الانتقال لمزوّد آخر أو حتى الوصول لتطبيقك المنشور دون موافقته. تحقّق من هذا قبل التوقيع لا بعده.
الخلاصة
العقد الجيد لا يعني انعدام الثقة، بل يعني أن الطرفين اتفقا على القواعد قبل أن يحتاجا إليها.
البنود الثلاثة التي لا تتنازل عنها: ملكية كاملة للكود والنطاق · نطاق عمل مفصّل يشمل «خارج النطاق» · دفعات مرتبطة بتسليمات مع احتجاز 20%.
المزوّد الذي يتحفّظ على هذه الثلاثة تحديداً يخبرك بشيء مهم عن طريقة عمله — استمع إليه.
تريد شريكاً يبدأ بنطاق واضح وعقد عادل؟ تواصل معنا للحصول على تقييم نطاق مجاني وغير ملزم. اطّلع على خدمات تطوير التطبيقات ودليل اختيار شركة تطوير.