# Kapsama matrisi — `62 Yonetici Muhasebe`

*02.08.2026 · Tasarım: `design/62 Yonetici Muhasebe.dc.html` · Uygulama: `Office/Accounting/{Overview,CustomerLedger}.vue`, `Office/Invoices/{Index,Show}.vue` + `FinancialOverview`, `CustomerLedger`, `InvoiceDetail`*

İşaret **kodun** durumunu söyler: ✓ var · ⚠ kısmen · ❌ yok.

## 1 · Mali tablo (`/muhasebe`)

| # | Tasarım öğesi | ✓/⚠/❌ | Kanıt |
|---|---|---|---|
| 1 | Adres ve başlık "Mali tablo" | ✓ | `office.accounting.overview` |
| 2 | **Ay · Çeyrek · Yıl** anahtarı | ✓ | `FinancialOverview::PERIODS`, dönem adreste (`?donem=`) |
| 3 | **Dışa Aktar** | ✓ | `/muhasebe/disa-aktar` CSV — **erişim logu yazar** (`financial_overview_export`) |
| 4 | **＋ Fatura Kes** | ✓ | Fatura listesine geçiş; kesme ekranı zaten var (`IssueInvoice`) |
| 5 | KPI: **GELİR** | ✓ | Dönem içinde kesilen faturaların brüt toplamı (iptaller hariç) |
| 6 | GELİR'de "▲ %12 önceki çeyrek" | ✓ | `kpi_snapshots` gecelik olarak **gelir · maliyet · vadesi geçen** de yazıyor; mali tabloda ay görünümünde 30 günlük yön rozeti (Sets, 02.08.2026) |
| 7 | KPI: **MALİYET** (eğitmen + seyahat + salon) | ✓ | Hakediş + **onaylı** masraf + eğitim maliyet kalemleri (fiili varsa fiili, yoksa planlanan) |
| 8 | KPI: **BRÜT MARJ** (% ve tutar) | ✓ | Fatura kesilmemişse **null** — %0 değil |
| 9 | KPI: **VADESİ GEÇEN TAHSİLAT** + müşteri sayısı + en eski gün | ✓ | `receivable()` |
| 10 | KPI: **EĞİTMEN BORÇLARI** (hakediş + onaylı masraf) | ✓ | Eğitmen cari formülünün aynısı: kazanılan + onaylı masraf − onaylı ödeme |
| 11 | **Müşteri carileri** tablosu (bakiye · vadesi geçen · gün) | ✓ | `customerBalances()` — en yüksek 5, "Tüm müşteriler →" |
| 12 | "Cari →" bağlantısı | ✓ | `/muhasebe/cari/{token}` |
| 13 | Vadesi geçende kademeli hatırlatma + 30 gün üstü görev | ✓ | Fatura hatırlatma süpürgesi (chunk 7) + not satırı |
| 14 | **Eğitmen carileri** tablosu (ödenecek · kaynak) | ✓ | `instructorBalances()` — "2 hakediş + 1 masraf" satırı |
| 15 | "Öde" düğmesi | ⚠ | Ödeme kaydı **eğitmen finans sayfasında** (dekont + onay akışıyla); mali tablodan kısayol yok — bilinçli, ödeme dekont ister |
| 16 | **Satışçı performansı** (tamamlanan · bekleyen · dönüşüm) | ✓ | `sellerPerformance()` |
| 17 | Satışçı tablosunda **HEDEF** sütunu | ❌ | ⛔ **Bilinçli**: hedef tanımlı bir veri değil (kırmızı çizgi 9). Ekran neden göstermediğini yazıyor — `63` kokpitindeki kararla aynı |
| 18 | "Potansiyel (fırsat)" sütunu | ✓ | **Fırsat** nesnesi yazıldı (`opportunities`): aşama, kaynak, tahmini tutar, beklenen kapanış, kayıp gerekçesi. Mali tabloda potansiyel + fırsat sayısı + tutarı girilmemiş olanların sayısı |
| 19 | Yetki: mali tabloyu kim görür | ✓ | `financial.view` — fatura kesme yetkisinden ayrı, üstelik MFA kapılı |

## 2 · Müşteri cari detayı (`/muhasebe/cari/{id}`)

| # | Tasarım öğesi | ✓/⚠/❌ | Kanıt |
|---|---|---|---|
| 20 | Firma başlığı + cari bakiye + gecikme | ✓ | `CustomerLedger::for()` |
| 21 | **Tek tarihli hareket sütunu** (fatura + · tahsilat −) | ✓ | `movements` — en yeni önce |
| 22 | Ters kayıt satırı ve gerekçesi | ✓ | `kind: reversal` + `note` |
| 23 | "Tahsilat Gir" | ⚠ | Tahsilat girişi **fatura detayında** (dekont zorunluluğu, kalan hesabı ve ters kayıt orada) — cariden fatura satırına tıklanarak gidilir |
| 24 | Silme yok | ✓ | Ekranda yazılı; `InvoicePayment` ters kayıtla düzeltilir (AD-11) |
| 25 | Eğitmen carisi aynı düzende | ✓ | `InstructorLedger` + `Instructors/Finance.vue` (tasarım `67`) |

## 3 · Faturalar (`/muhasebe/faturalar`)

| # | Tasarım öğesi | ✓/⚠/❌ | Kanıt |
|---|---|---|---|
| 26 | Fatura listesi, kaynak teklif, kalan, durum | ✓ | `Invoices/Index.vue` |
| 27 | Durum **hesaplanır**, elle seçilmez (Ödeme Bekliyor → Kısmen → Ödendi) | ✓ | `Invoice::outstanding()` / `collected()` |
| 28 | Kısmi tahsilat, dekont zorunlu, ters kayıt | ✓ | #62 ile yazıldı |
| 29 | "Serbest Kalem" / "Teklifi Faturalandır" | ✓ | `IssueInvoice` iki yoldan da çalışır |
| 30 | **"e-fatura entegratörü bekleniyor — manuel gönderim"** | ✓ | Tasarımın kendi cümlesi; kodda **hiçbir entegratör alan adı, statü değeri veya ucu yok** — doğrulanmamış 3rd-party sözleşmesi yazılmaz (kırmızı çizgi) |
| 31 | Entegratör bağlanınca GİB'e iletim + statü geri yazımı | ❌ | ⛔ **Kapsam dışı, bilinçli**: entegratör seçilmedi. Seçildiğinde resmî dokümandan doğrulanarak yazılacak (62-c) |

## Kapanmamış satırlar

| Kod | Satır | Durum |
|---|---|---|
| **62-c** | #31 e-fatura entegratörü | Entegratör seçilene kadar kapsam dışı. Seçildiğinde alan adları/statüler resmî dokümandan doğrulanacak. |
