Commit dbf2ca59 authored by Mahmoud Aglan's avatar Mahmoud Aglan

docs: step-by-step accounting guide for the finance review

Terminology, screen-by-screen walkthrough, a demo running order, and — most
importantly — an honest status matrix: 267 money paths mapped across 67 modules,
71 of which actually reach the ledger.

Section 6 lists what must NOT be demoed or claimed. Being caught overstating in
front of accountants is far worse than a known, quantified gap, so the guide
leads with the exclusions and gives the exact wording for the hard question.
Co-Authored-By: 's avatarClaude Opus 5 (1M context) <noreply@anthropic.com>
parent cd771856
# دليل المحاسبة — تشغيل واستعراض
> اقرأ **القسم ٦ (ما لا تفتحه)** قبل أي شيء آخر. الباقي يشرح ما تفتحه وكيف.
---
## ١ — الفكرة في ثلاث جمل
كل قيد محاسبي آلي في النظام صار يمر من **محرك واحد** بدل أكواد ثابتة في البرنامج.
المحرك ده بيحدد: المبلغ ده يروح لأنهي حساب، ولو بيتقسم يتقسم إزاي، وعليه ضريبة ولا لأ،
وهل هو إيراد النهارده ولا إيراد مؤجل على شهور.
اللي كان قبل كده مكتوب في الكود وميتغيرش إلا بمبرمج — بقى شاشة يفتحها المحاسب ويغيّره بنفسه،
والتغيير بيتسجّل بإصدار وتاريخ سريان ومين عمله.
---
## ٢ — المصطلحات (لازم تكون مالكها قبل ما تدخل)
الجدول ده هو اللي هيخليك تتكلم بلغتهم. اقراه مرتين.
| المصطلح | معناه بالظبط | ليه يهمّهم |
|---|---|---|
| **دليل الحسابات** (Chart of Accounts) | شجرة كل الحسابات في النادي، كل حساب له كود رقمي | ده «القاموس» — أي رقم لازم يقع في حساب منه |
| **حساب رئيسي** (Header) | حساب تجميعي له حسابات فرعية تحته | **ممنوع الترحيل عليه.** لو الكود بيحاول، القيد بيفشل |
| **حساب فرعي/جزئي** (Leaf) | آخر مستوى — عليه بيتم الترحيل فعليًا | الحسابات دي بس اللي بتقبل قيود |
| **قيد يومية** (Journal Entry) | سطرين على الأقل: مدين ودائن، ومجموعهم متساوي | وحدة التسجيل المحاسبي |
| **مدين / دائن** (Debit / Credit) | جانبا القيد | الأصول والمصروفات تزيد بالمدين؛ الالتزامات والإيرادات تزيد بالدائن |
| **الترحيل** (Posting) | تثبيت القيد في الدفاتر | بعد الترحيل ما بيتعدلش — بيتعكس بقيد مضاد |
| **العكس** (Reversal) | قيد مضاد يلغي أثر قيد مرحّل | ده الأسلوب القانوني للتصحيح، مش الحذف |
| **الاستحقاق** (Accrual) | تسجيل الحق أو الالتزام وقت نشأته مش وقت الفلوس | أساس المحاسبة السليمة |
| **المدينون** (AR) | فلوس مستحقة **لنا** على الأعضاء | أصل في الميزانية |
| **الدائنون** (AP) | فلوس مستحقة **علينا** للموردين | التزام في الميزانية |
| **الإيراد المؤجل** (Deferred Revenue) | فلوس اتحصّلت عن خدمة لسه ما اتقدمتش | **التزام** مش إيراد — معيار ٤٨ |
| **ميزان المراجعة** (Trial Balance) | كل الحسابات بأرصدتها، والمدين لازم يساوي الدائن | أول حاجة أي محاسب بيفتحها |
| **قائمة الدخل** (Income Statement) | إيرادات ناقص مصروفات عن فترة | بتقيس الأداء |
| **الميزانية العمومية** (Balance Sheet) | أصول = التزامات + حقوق ملكية في تاريخ معيّن | بتقيس المركز المالي |
| **مركز التكلفة** (Cost Center) | تصنيف إضافي (فرع، نشاط) للتحليل | بيسمح بتقارير مقسّمة |
| **السنة المالية** (Fiscal Year) | فترة الحسابات | القيد لازم يقع في سنة مفتوحة |
| **إقفال الفترة** (Period Closing) | قفل شهر أو سنة ضد أي قيود جديدة | بيحمي الأرقام المعتمدة |
### مصطلحات المحرك الجديد
| المصطلح | معناه |
|---|---|
| **مسار قيد** (Stream) | أي حاجة في النظام بتحرّك فلوس — رسوم استمارة، اشتراك، فاتورة مورد، مرتب |
| **مرحلة** (Stage) | فين في عمر المستند بيتم القيد — استحقاق / تحصيل / صرف / ارتجاع / إعدام / تحويل |
| **اتجاه** (Direction) | وارد (فلوس داخلة) أو صادر (فلوس خارجة) — بيحدد أي جانب مدين وأي جانب دائن |
| **قاعدة توزيع** (Rule) | إعدادات مرحلة واحدة: الحسابات + النسب + الضريبة |
| **بند** (Line) | جزء من التوزيع: نسبة، أو مبلغ ثابت، أو «الباقي» |
| **الباقي** (Remainder) | البند اللي بياخد المتبقي بعد باقي البنود — **إجباري وواحد فقط**، وهو اللي بيستوعب كسور القرش |
| **مؤشر حساب** (Account Pointer) | قاعدة من سطر واحد بتحدد حساب فقط — للقيود اللي مبالغها محسوبة من مكان تاني (المرتبات، الخزنة) |
| **ملف ضريبي** (Tax Profile) | نسبة + شامل/مضاف + المعالجة (خاضعة، جدول، معفاة، خارج النطاق) |
### الفرق اللي هيسألوك عليه
**«شامل الضريبة» ولا «الضريبة تُضاف»؟** ده مش تفصيلة، ده رقم مختلف:
- مبلغ **١١٤٠ شامل ١٤٪** → الإيراد **١٠٠٠** والضريبة **١٤٠**
- لو حسبت ١٤٪ من ١١٤٠ غلطًا → **١٥٩٫٦٠** — فرق ١٩٫٦٠ في كل عملية
**«معفاة» ولا «بسعر صفر»؟** الاتنين ضريبتهم صفر، لكن **المعفاة تمنع خصم ضريبة المدخلات**
والـ«صفر» بتسمح بيه. الفرق بيبان في الإقرار الضريبي مش في الفاتورة.
---
## ٣ — الشاشات: أين كل شيء
```
المحاسبة والدفتر العام
├── دليل الحسابات /accounting/chart-of-accounts
├── توزيع الإيرادات ★ /accounting/revenue-mapping ← المحرك
├── الإيراد المؤجل ★ /accounting/revenue-mapping/recognition
├── قيود اليومية /accounting/journal-entries
├── ميزان المراجعة /accounting/reports/trial-balance
├── قائمة الدخل /accounting/reports/income-statement
├── الميزانية العمومية /accounting/reports/balance-sheet
├── دفتر الأستاذ /accounting/reports/general-ledger
└── السنوات المالية /accounting/fiscal-years
```
★ = جديد
داخل شاشة توزيع الإيرادات فيه ٤ صفحات:
| الصفحة | الرابط | وظيفتها |
|---|---|---|
| القائمة | `/accounting/revenue-mapping` | كل مسارات القيد وحالتها |
| **فحص الحالة** | `.../diagnostics` | كل اللي مكسور أو مجمّع أو غير مربوط |
| الملفات الضريبية | `.../tax-profiles` | نسب الضريبة ومعالجاتها |
| الإيراد المؤجل | `.../recognition` | جدول الاستحقاق وزر الترحيل الشهري |
---
## ٤ — خطوة بخطوة
### أ. تغيير الحساب اللي يروح له إيراد
الموقف: محاسب بيقولك «رسوم التنازل دي ما بتخشش في إيرادات متنوعة».
1. `المحاسبة ← توزيع الإيرادات`
2. اكتب «تنازل» في خانة البحث
3. اضغط زر المرحلة اللي عايز تعدّلها (غالبًا **تحصيل** أو **استحقاق**)
4. في **بنود التوزيع**، البند الموجود طريقته «الباقي» — غيّر حسابه: امسح الخانة واكتب اسم أو كود الحساب الجديد واختر من القائمة
5. بص على **محاكاة القيد** على اليسار — بيتحدث وانت بتكتب. اتأكد إن مكتوب **✓ القيد متوازن**
6. اكتب سبب التغيير في خانة الملاحظة
7. **حفظ كإصدار جديد وتفعيله**
> التاريخ في «ساري اعتبارًا من» بيحدد من إمتى القاعدة الجديدة تشتغل. **القيود المرحّلة قبله ما بتتغيرش.**
### ب. تقسيم مبلغ على أكثر من حساب
الموقف: «المبلغ ده جزء منه قيمة عضوية وجزء رسوم إدارية».
1. نفس الشاشة، اضغط **+ إضافة بند**
2. اختار طريقة التوزيع:
- **نسبة %** — مثلاً ٣٠٪
- **مبلغ ثابت** — مثلاً ٥ جنيه
- **الباقي** — المتبقي (موجود بالفعل، لا تضف تاني)
3. اختار الحساب
4. رتّب البنود بأسهم ▲▼ لو حبيت
5. راقب المحاكاة — لازم تفضل متوازنة
**ترتيب التطبيق ثابت ومعلن على الشاشة:**
> الضريبة تُفصل أولًا ← المبالغ الثابتة ← النسب ← «الباقي»
مثال: ١١٤٠ بضريبة ١٤٪ شاملة + طابع ٥ ثابتة + عمولة ١٠٪:
| الحساب | مدين | دائن |
|---|---:|---:|
| الصندوق | ١٬١٤٠٫٠٠ | |
| ضريبة القيمة المضافة `23080404` | | ١٤٠٫٠٠ |
| الدمغة `23080405` | | ٥٫٠٠ |
| عمولة نشاط (١٠٪ من ٩٩٥) | | ٩٩٫٥٠ |
| الإيراد — الباقي | | ٨٩٥٫٥٠ |
| **الإجمالي** | **١٬١٤٠٫٠٠** | **١٬١٤٠٫٠٠** |
لاحظ إن الـ١٠٪ اتحسبت على **٩٩٥** (الصافي بعد الخمسة الثابتة) مش على ١٠٠٠ — وده معروض في خانة «النسبة تُحسب على».
### ج. إضافة ضريبة على خدمة
1. في نفس شاشة المسار، خانة **المعالجة الضريبية**
2. اختار الملف المناسب:
- `ضريبة قيمة مضافة 14% (شاملة السعر)` — السعر المعلن شامل الضريبة
- `ضريبة قيمة مضافة 14% (تُضاف على السعر)` — الضريبة فوق السعر
- `معفاة` / `خارج نطاق الضريبة`
3. المحاكاة هتفصل الضريبة فورًا وتوريك الإيراد الصافي
4. حفظ
### د. إيراد مؤجل (الاشتراك السنوي)
1. في بنود التوزيع، غيّر **نوع البند** لـ **إيراد مؤجل (يُستحق على فترة)**
2. هيظهر صندوق بنفسجي: حدد **عدد الشهور** (١٢) و**حساب الإيراد الذي يُرحَّل إليه**
3. حساب البند نفسه يبقى `230809 ايرادات مدفوعة مقدما`
4. حفظ
بعد كده كل شهر:
1. `المحاسبة ← الإيراد المؤجل`
2. اختار الفترة → **معاينة**
3. **ترحيل تحقق الإيراد** — بيعمل قيد واحد مجمّع
### هـ. قراءة «فحص الحالة»
`/accounting/revenue-mapping/diagnostics` — أربع جداول:
1. **حسابات مُعرَّفة في الكود ولا تقبل الترحيل** — العمود الأخير بيقول «مُعالَج عبر المحرك» يعني اتصلح
2. **قواعد تشير إلى حسابات لا تقبل الترحيل** — لازم تكون فاضية
3. **ما هو مُرحَّل إلى «إيرادات متنوعه»** — الحساب المجمّع وتفصيله
4. **أنواع المدفوعات وحالة ربطها** — كل نوع في البيانات الفعلية
---
## ٥ — سيناريو الاجتماع (بالترتيب)
**١. ابدأ بميزان المراجعة.** `تقارير ← ميزان المراجعة`. أول حاجة أي محاسب بيدوّر عليها:
هل المدين يساوي الدائن. آه، بالقرش.
**٢. اتنقل لقائمة الدخل.** وقول إن إجمالي الإيراد فيها **مطابق تمامًا** لإجمالي الإيراد في
ميزان المراجعة. ده اسمه تطابق (reconciliation) وهو اللي بيدّي ثقة.
**٣. افتح الميزانية العمومية.** أصول = التزامات + حقوق ملكية.
**٤. ادخل على دليل الحسابات** وورّي إن الأرصدة المعروضة مطابقة لميزان المراجعة.
**٥. دلوقتي المحرك.** `توزيع الإيرادات`. ورّي القائمة والمراحل الستة.
**٦. اعمل تعديل حي.** خد أي مسار، غيّر نسبة، ورّيهم المحاكاة بتتحدث. **ما تحفظش**
إلا لو اتفقتم على التغيير.
**٧. اقفل بـ«فحص الحالة».** ده أقوى جزء — لأنه بيعرض المشاكل بدل ما يخبّيها.
قول الجملة دي بالنص:
> «الشاشة دي بتقولنا إحنا مش عارفين إيه. الحاجات اللي عليها علامة حمراء دي معروفة ومترصدة،
> والخطة إن نقفلها واحدة واحدة.»
---
## ٦ — ما لا تفتحه ولا تدّعيه
**دي أهم صفحة في الملف.** الادعاء اللي يتكشف أسوأ ألف مرة من نقص معروف.
انظر القسم ٧ للجدول التفصيلي بالأرقام. القاعدة العامة:
-**اعرض**: التقارير المالية، دليل الحسابات، قيود اليومية، محرك التوزيع، فحص الحالة،
دورة الأعضاء (استمارة، عضوية، إضافة، اشتراك سنوي، أقساط)
- ⚠️ **اذكرها كخطة، لا تفتحها**: الحجوزات، الأكاديميات، الإيجارات، المخزون والمشتريات، اللوكرات
-**لا تدّعي إطلاقًا**: إن كل إيراد في النادي بيوصل للدفاتر آليًا. **مش صحيح.**
### الجملة اللي تقولها لو سألوك السؤال الصعب
> «الدورة المحاسبية نفسها — الدفاتر والقيود والتقارير — دي مبنية وشغالة ومتطابقة.
> اللي لسه بيتوصّل هو بعض مسارات التحصيل التشغيلية اللي بتتسجل في وحداتها ولسه ما بتغذّيش
> الدفاتر آليًا. عندي كشف بيها بالاسم والمبلغ، وده أول بند في خطة الشهر الجاي.»
الجملة دي صح، ومحترمة، وبتخليك تبان إنك عارف نظامك — بدل ما تتمسك في ادعاء.
---
---
## ٧ — الحالة التفصيلية (الرقم الحقيقي)
تم مسح **٦٧ وحدة** في النظام ورصد **٢٦٧ مسار** بيحرّك فلوس، وكل خلل مرصود اتراجع
مراجعة عكسية (مدقق تاني وظيفته يثبت إن الخلل غلط) قبل ما يتسجّل هنا.
### الرقم اللي لازم تعرفه قبل ما تدخل
| | العدد |
|---|---:|
| مسارات بتحرّك فلوس | **٢٦٧** |
| **بتوصل للدفاتر فعليًا** | **٧١** |
| ما بتوصلش أو غير مؤكدة | ١٩٦ |
| منها أخطاء حرجة | ٤٣ |
| أخطاء مرتفعة الأهمية | ٧٣ |
| مسارات سليمة تمامًا | ٥٣ |
**لو حد سألك «كل الإيرادات بتدخل الدفاتر؟» الإجابة الصادقة: لأ — ٧١ من ٢٦٧.**
وده مش تناقض مع إن الدفاتر سليمة. الدفاتر سليمة ومتوازنة ومتطابقة —
اللي ناقص إن مسارات تشغيلية كتير بتسجّل الفلوس في جداولها الخاصة وما بتبلّغش المحاسبة.
### ✅ شغال ومتحقق منه — اعرضه بثقة
| المسار | الدليل |
|---|---|
| ميزان المراجعة | متوازن بالقرش: ١٧٣٬٨٧١٬٥٦٨٫٩٧ الطرفين |
| قائمة الدخل | إيرادها مطابق تمامًا لميزان المراجعة |
| الميزانية العمومية | متوازنة: ١٢٤٬٠٥١٬٨٩٥٫٢٩ الطرفين |
| دفتر الأستاذ | افتتاحي + حركات + ختامي صحيحة |
| دليل الحسابات | أرصدته مطابقة للدفاتر (بعد إعادة البناء) |
| دفعة عضو مباشرة | ١٬١١٦ دفعة، ٩٣٥ إيصال |
| إلغاء دفعة (٢٤ ساعة) | يعكس القيد صح |
| طابور الخزنة + الوردية | يعمل مع العهدة |
| الإيداع البنكي وتسوية الخزنة | يعملان |
| محرك التوزيع | ٥٨ مسار × ٦ مراحل |
| الإيراد المؤجل | ١٢ شهر تجمع للمبلغ بالظبط |
### ⚠️ اذكرها كخطة — لا تفتح الشاشة
المبالغ دي **مرصودة في النظام لكنها لم تصل الدفاتر**:
| المسار | المبلغ (ج.م) | المشكلة |
|---|---:|---|
| حجز الملاعب بالساعة | **١٤٤٬٠٦٤** | ٢٢٩ حجز مسعّر بدون أي مطالبة أو تحصيل |
| الفصل الوجوبي عند ٢٥ سنة | **١١٧٬٠٠٠** | الكرون بيغيّر الحالة ويتخطى الرسوم |
| اشتراكات النشاط الشهرية | **١٠١٬٢٢٥** | ١٣٣ اشتراك متأخر بلا مسار تحصيل |
| عقود الأكاديميات (تأمين + إيجار) | **١٠٠٬٠٠٠** | التأمين يُعلَّم «مدفوع» من قائمة منسدلة |
| العضوية الرياضية | ٧٥٬٠٠٠ | تُصنَّف في «إيرادات متنوعه» |
| الإدخال بأثر رجعي | ٣٧٬٥٠٠ | دفعات لم تُبلَّغ للمحاسبة |
| استلام أمر شراء | ٥٠٬٠٠٠ | مخزون دخل بلا قيد مقابل |
| باقي البنود | متفرقة | الحجوزات، اللوكرات، البطولات، الإيجارات |
> **ملاحظة**: مبلغ الـ١٤٤٬٠٦٤ ظاهر ٣ مرات في التقرير لأنه نفس المال من ٣ مداخل مختلفة
> (شاشة الحجوزات، شاشة المرآة، كود التحصيل غير الموصول). هو مبلغ واحد مش تلاتة.
### 🔧 اتصلح الليلة — تقدر تتكلم عنه
| الخلل | الأثر قبل الإصلاح |
|---|---|
| ازدواج الرصيد الافتتاحي | ميزان المراجعة والميزانية كانوا **بيضاعفوا** ٢٤ حساب |
| الميزانية لا تتوازن | فرق ٣٩٬١٠١٬٧٥٨٫٧١ |
| أرصدة دليل الحسابات | ٢٤ حساب مخالف للدفاتر (الأرباح المرحلة كانت صفر بدل ٧٣ مليون) |
| المرتبات لا تُرحَّل إطلاقًا | ٣ أعمدة غير موجودة — القيد كان بيموت صامت |
| دورة المشتريات كلها | «الموردون» حساب رئيسي — لا تقبل الترحيل |
| تكلفة البضاعة المباعة | عمود غير موجود — لم تُرحَّل ولا مرة |
| ضريبة الإيجارات | حساب رئيسي — لم تُرحَّل |
| دخول ضيوف الكارنيه | اسم الحدث مختلف بين المُرسِل والمستمع |
| ٥ شاشات تعطي خطأ ٥٠٠ | عمود `booker_id` غير موجود في `reservations` |
| الكرون متوقف بالكامل | جدول `cron_job_log` غير موجود — ٤٣ مهمة لم تعمل قط |
| سنتان ماليتان «حالية» | تعارض في تحديد السنة |
### ❌ لا تفتح هذه الشاشات
- لوحات الملاعب وحمام السباحة والمرافق (اتصلحت الليلة لكن ما اتجربتش بحمل حقيقي)
- شاشات الأكاديميات المالية والتسويات
- شاشات الإيجارات
- شاشات المبيعات والمشتريات
- إعدادات المهام المجدولة
### 🔒 الكرون — نقطة تحتاج قرار
٤٣ مهمة مجدولة لم تعمل ولا مرة (جدول السجل مش موجود). أنشأت الجدول **لكن تركت
المفتاح مقفول** عمدًا، لأن تشغيلهم فجأة قبل الاجتماع كان هيسقط مديونيات ويوقّع
غرامات ويغيّر حالة عضويات من غير حد واقف. يتفعّل من الإعدادات (`cron_enabled`)
وقت ما تكون قاعد تتفرج على أول دورة.
---
## ٨ — أسئلة صعبة وإجاباتها
**«الأرقام دي مضمونة؟»**
> ميزان المراجعة متوازن بالقرش، وإيراد قائمة الدخل مطابق لميزان المراجعة،
> والميزانية متوازنة. التطابق ده محسوب من الدفاتر نفسها مش من جدول مساعد.
**«لو غيّرنا حساب دلوقتي، القديم هيتغير؟»**
> لأ. كل حفظ إصدار جديد بتاريخ سريان. المُرحَّل قبله ثابت، ومسجّل مين غيّر وإمتى وليه.
**«الأربع مليون في إيرادات متنوعه دي إيه؟»**
> حساب مجمّع. عندي تفصيلها بند بند في شاشة فحص الحالة. الربط الصح بيتظبط من الشاشة،
> والأرقام التاريخية محتاجة قيد تسوية بعد ما تعتمدوا التوزيع الصحيح — وده قراركم مش قراري.
**«الحجوزات والأكاديميات فين من الدفاتر؟»**
> لسه مش موصولة. مرصودة عندي بالاسم والمبلغ، وده أول بند في الخطة.
> ما حبتش أوصلها الليلة من غير مراجعتكم لأن التوصيل هيبدأ يولّد قيود على أرقام قديمة.
**«مين ضامن إن مفيش حاجة تانية مكسورة؟»**
> عملت مسح شامل: ٢٦٧ مسار في ٦٧ وحدة، وكل خلل مراجَع مرتين. الكشف موجود ومفتوح،
> والشاشة نفسها بتعرض المشاكل بدل ما تخبّيها.
**«ليه ما تعملوش إقفال سنة؟»**
> لأن الإقفال لم يُنفَّذ ولا مرة — حسابات الإيراد والمصروف شايلة أرصدة من ٢٠١٨.
> الميزانية بتتعامل مع ده صح دلوقتي، لكن الإقفال السنوي محتاج قراركم على تاريخه.
---
## ٩ — قبل ما تدخل بربع ساعة
1. افتح `المحاسبة ← ميزان المراجعة` واتأكد إنه متوازن
2. افتح `الميزانية العمومية` واتأكد إنها متوازنة
3. افتح `توزيع الإيرادات` وشوف القائمة بتفتح
4. افتح `فحص الحالة` واقرا الجداول الأربعة
5. **اقرا القسم ٦ تاني**
الحاجة الوحيدة اللي ممكن تبوّظ الاجتماع هي ادعاء يتكشف.
النقص المعروف والمرصود بيدّي ثقة، مش العكس.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment