Mahsuplaşma — Genel Bakış
Bu bölüm, Zeus 2.0'daki Mahsuplaşma (netting) modülünün ne yaptığını, hangi mevzuata dayandığını ve modülün parçalarının nasıl birbirine bağlandığını anlatır. Ayrıntılı kurulum akışı, uygunluk kuralları, limit hesapları ve regüle tarife yönetimi ayrı sayfalarda ele alınır (soldaki menü).
Mahsuplaşma nedir?
Lisanssız üretim mahsuplaşması, bir tüketicinin kendi lisanssız üretim tesisinden (çoğunlukla çatı/arazi GES — Güneş Enerjisi Santrali) ürettiği enerjiyi, aynı gerçek/tüzel kişiye ait tüketim tesislerinin tüketimiyle karşılıklı olarak netleştirme (mahsup etme) sürecidir. Kısaca: ürettiğiniz enerji, faturanızda tükettiğiniz enerjiden düşülür; artan (ihtiyaç fazlası) üretim için ayrı kurallar işler.
Bu süreç Türkiye'de EPDK (Enerji Piyasası Düzenleme Kurumu)'nın Lisanssız Elektrik Üretim Yönetmeliği ve EPDK Kurul Kararı No 14531 (Mahsuplaşma İşlemlerine İlişkin Usul ve Esaslar — RG 5 Mayıs 2026) ile düzenlenir. Resmî mahsuplaşmayı yapan taraflar; ilgili şebeke işletmecisi, piyasa işletmecisi (EPİAŞ — Enerji Piyasaları İşletme A.Ş.), görevli tedarik şirketi (GTŞ — Görevli Tedarik Şirketi) ve EPİAŞ bünyesindeki LÜM (Lisanssız Üretim Modülü)'dür.
Zeus, resmî mahsuplaşmayı yapan kurum değildir. Zeus'un rolü; izleme,
tahmin, yerel mahsuplaşma simülasyonu, uygunluk kontrolü, bedelli üretim
limiti takibi, risk uyarısı ve LÜM/GTŞ verisiyle mutabakattır. Zeus'un
ürettiği hesaplar yerel tahmindir — resmî sonuç değildir. Bu yüzden
arayüzde her kaydın bir kaynak alanı vardır (Zeus tahmini, Müşteri beyanlı, LÜM resmî veriyle mutabık vb.); "kesin ödeme tutarı" veya "resmî
mahsuplaşma sonucu" gibi ifadeler kullanılmaz.
Nereden başlamalıyım? (kısa yol haritası)
Mahsuplaşmayı ilk kez mi kuruyorsunuz? En kısa ve en güvenli yol Grup Kurulum Sihirbazıdır: tek bir ekran akışında, kapsam beyanından son uygunluk önizlemesine kadar 7 adımda sizi yönlendirir. Her adım anında kaydedilir — yarıda bırakıp sonra kaldığınız yerden devam edebilirsiniz (tarayıcıya bir şey yazılmaz, hiçbir veri kaybolmaz).
- Grup Kurulum Sihirbazı — kurulumu baştan
sona yapacağınız 7 adımlık ekran akışı. Yeni başlayan herkes buradan
başlamalı. Sihirbaza Mahsuplaşma → Gruplar → "Grup kurulumunu başlat"
butonundan girilir (bu buton yalnızca
manage:nettingyetkisiyle görünür). - Alan Sözlüğü — "Bu alan ne? Değerini nereden bulurum? Boş bırakırsam ne olur?" sorularının tek merkezî cevabı. Sihirbazda takıldığınız her form alanını (EIC kodu, sözleşme gücü, başlangıç limiti, abone grubu…) burada adımdan bağımsız arayabilirsiniz.
Önerilen sıra (her adım bir önceki adımın çıktısına dayanır):
- Kapsam — mahsuplaşma tarafınızı temsil eden bir kapsam açın (Zeus içi takma ad; VKN (Vergi Kimlik Numarası) girmezsiniz).
- Tesisler + grup — üretim/tüketim tesislerinizi ekleyip bir fatura dönemi grubunda toplayın.
- Ek-1 bilgileri — tüm tesisler aynı şebeke işletmecisi bölgesindeyse bu adım koşulludur (muaf olabilirsiniz).
- Özel kurallar — mevzuat sınıflandırması, abone grubu, tesis tipi.
- Sayaç + ESS — hangi cihaz hangi ölçüm rolünü (ana üretim / ana tüketim…) üstleniyor; varsa ESS (Enerji Depolama Sistemi — batarya) bilgileri.
- Bedelli limit — tüketim tesisleri için yıllık bedelli üretim limiti (mesken gruplarında bu adım atlanır).
- Önizleme + uygunluk — R001–R013 uygunluk sonucu; kurulumu tamamlayın.
Kurulum bittikten sonra izleme başlar: ana dashboard Mahsuplaşma sekmesi, grup detayındaki 7 sekme, bedelli limit takibi ve sistem alarmları.
Bu kılavuz boyunca her form alanı için beş soruyu yanıtlıyoruz: (1) bu alan ne, (2) zorunlu mu, (3) ne yazacağım, (4) değeri nereden bulunur, (5) boş bırakır / yanlış seçersem ne olur. Tüm alanların bu beş cevabı toplu hâlde Alan Sözlüğü sayfasındadır.
Modül haritası — parçalar nasıl bağlanır?
Mahsuplaşma, aşağıdaki katmanların üst üste kurulmasıyla çalışır. Her adım bir önceki adımın çıktısına dayanır:
Kapsam (scope)
└─▶ Resmî tesis (official facility) [üretim / tüketim / karma]
└─▶ Ölçüm noktası (metering point)
└─▶ Sayaç eşleme (cihaz → ölçüm rolü) [ana üretim / ana tüketim / ...]
└─▶ Grup (group) ──▶ Üyeler (grup üyesi tesisler)
└─▶ Uygunluk değerlendirmesi (R001–R013)
└─▶ eligibility_status: valid / valid_with_warnings / blocked / not_checked
└─▶ Bedelli limit hesabı (tesis × yıl) ──▶ Hareket defteri (ledger) → kalan limit
└─▶ Regüle tarife (ulusal; superadmin) ──▶ saatlik tutar hesabı (PR-6)
Aşağıdaki tabloda her katmanı ekrandan nasıl yapacağınız (önerilen yol) ve onun teknik/API karşılığı yan yana verilmiştir. Yeni başlıyorsanız "Nasıl yaparım? (ekran)" sütununu izleyin; API sütunu ileri düzey / otomasyon senaryoları içindir.
| Katman | Ne yapar? | Nasıl yaparım? (ekran) | Teknik karşılığı (API) |
|---|---|---|---|
| Kapsam (scope) | Resmî mahsuplaşma tarafınızı temsil eder (Zeus içi takma ad; VKN istenmez) | Sihirbaz Adım 1 · Kapsam · veya Mahsuplaşma → Kapsamlar | POST /api/mahsuplasma/scopes |
| Resmî tesis | Üretim/tüketim tesisinin resmî bilgilerini tutar (bent tipi, abone grubu, kurulu güç, ESS meta vb.) | Sihirbaz Adım 2 · Tesisler · veya Mahsuplaşma → Resmî Tesisler | POST /api/mahsuplasma/facilities |
| Ölçüm noktası | Bir tesise bağlı resmî/mantıksal sayaç okuma noktasını tanımlar (OSOS köprüsü opsiyonel) | Sayaç Atama Sihirbazı Adım 1 · Ölçüm Noktası | POST /api/mahsuplasma/facilities/{id}/meters |
| Sayaç eşleme | Fiziksel cihazı bir ölçüm rolüne (ana üretim / ana tüketim / PCC = şebeke bağlantı noktası…) dönemsel bağlar | Sihirbaz Adım 5 · Sayaç + ESS (Sayaç Atama & Kanal Eşleme) | POST /api/mahsuplasma/meters/assign |
| Grup | Bir fatura dönemi bağlamında tesisleri bir araya getirir | Sihirbaz Adım 2 · Tesisler · veya Mahsuplaşma → Gruplar | POST /api/mahsuplasma/groups |
| Üye | Bir resmî tesisi bir gruba (tarihçeli) ekler | Sihirbaz Adım 2 (tesis ekle) | POST /api/mahsuplasma/groups/{id}/members |
| Uygunluk | R001–R013 kural motorunu çalıştırır ve grubun eligibility_status'unu üretir | Sihirbaz Adım 7 · Önizleme · veya grup detayı | POST /api/mahsuplasma/groups/{id}/evaluate |
| Bedelli limit | Tesis × yıl bazında bedelli üretim limiti hesabı + hareket defteri | Sihirbaz Adım 6 · Limit · veya Mahsuplaşma → Bedelli Limitler | POST /api/mahsuplasma/limits/accounts |
| Regüle tarife | EPDK tarife fiyatlarını dönem bazında (ulusal) yönetir — superadmin | Konsol: /console/regulated-tariffs (yalnız süper yönetici) | /api/v1/admin/regulated-tariffs/* |
| Hesap çekirdeği | Saatlik mahsuplaşma hesabı + sanal sayaçlar + tutar satırları + düzeltme (PR-6) | Otomatik görevler · grup detayında elle "Hesapla" | POST /api/mahsuplasma/groups/{id}/calculate |
Bu kurulumun tamamı ekran üzerinden Grup Kurulum Sihirbazı ile (7 adım; PR-7b) yapılır. API düzeyindeki adım adım referans için Kurulum Akışı sayfasına bakın. Sayaç eşleme adımı için tesis bazlı Sayaç Atama ve Kanal Eşleme sihirbazı (PR-5) kullanılır — cihazları ölçüm rollerine bağlar, ölçüm kanallarını enerji anlamlarına (çekiş/veriş/güç/batarya) eşler ve son adımda kaynak-başına saatlik enerji önizlemesi gösterir; aynı sihirbaz Grup Kurulum Sihirbazı'nın 5. adımına gömülü olarak da açılır.
İki ayrı yüzey: Mahsuplaşma vs Regüle Tarife
Modül iki farklı yetki yüzeyine ayrılır:
- Mahsuplaşma (tenant) — kapsam, tesis, sayaç, grup, uygunluk ve limit
işlemleri her firmanın (tenant) kendi verisi üzerinde çalışır. Yetkiler:
read:netting— okuma (admin + operatör + görüntüleyici),manage:netting— yazma (yalnızca admin).
- Regüle tarife (superadmin) — EPDK tarife fiyatları ulusal veridir
(tüm firmalar için aynı). Yalnızca süper yönetici girer ve düzenler.
Firmalar (tenant) bu veriyi salt-okunur bilgi olarak görür: ana
Dashboard → Tesis görünümündeki Tarife Kırılımı kartının Regüle
bedeller bölümünde — tesisin abone grubuna göre Dağıtım (TL/kWh),
Güç (kr/kW/ay) ve Reaktif (kr/kVArh) bilgi satırları olarak. Bu
satırlar "Tahmini aylık fatura" toplamına eklenmez (güç/reaktif sözleşme
gücü modellenmediği için yalnız bilgi; dağıtım "nihai fiyat" tarifelerde
çifte-sayım korumasıyla gizlenir). Yönetim ekranı ayrı bir izin
tüketmez — konsol deseniyle
require_superuserkorumasındadır:/console/regulated-tariffs.
Faz durumu — neler CANLI, neler YAKINDA?
Modül fazlar hâlinde geliştirilmektedir. Aşağıdaki tablo, bu dokümantasyonun
yazıldığı sürümdeki gerçek durumu gösterir. "Yakında" işaretli özellikler
henüz üretimde davranış üretmez; ilgili API/ekranlar mevcut olsa bile
sonuç dönmez veya not_checked döner.
| Faz | Kapsam | Durum |
|---|---|---|
| PR-1 | Kapsam + resmî tesis + kurum kataloğu CRUD + RBAC izinleri | ✅ CANLI |
| PR-2 | Metering (ölçüm noktası + sayaç eşleme) + inverter_type + dönem-çakışma engeli (EXCLUDE) | ✅ CANLI |
| PR-3 | Gruplar + üyeler + uygunluk motoru (R001–R013) | ✅ CANLI |
| PR-4 | Bedelli limit ledger + regüle tarife yönetimi + R007 aktivasyonu | ✅ CANLI |
| PR-5 | Saatlik enerji resolver (kaynak öncelik zinciri) + saatlik enerji fact tablosu + Sayaç Atama & Kanal Eşleme Sihirbazı | ✅ CANLI (sihirbaza PR-7a ile menüden erişilir: Mahsuplaşma → Resmî Tesisler → tesis satırı) |
| PR-6 | Hesap çekirdeği: saatlik mahsuplaşma hesabı (Md.9) + limit dağıtımı/ledger entegrasyonu (Md.7) + sanal sayaçlar (Md.10) + tutar motoru (Md.11 üç dallı) + düzeltme cascade (Md.15) + aylık ön-kapanış + R00T & R010 aktivasyonu | ✅ CANLI (UI PR-7a ile geldi; M5.1-ç/d + OSB-EB özel hesapları iskelet; R008/R009/R011 hâlâ not_checked) |
| PR-7a | UI temel katmanı: /mahsuplasma sayfa ağacı (genel bakış + kapsamlar + resmî tesisler + gruplar + 7 sekmeli grup detayı + bedelli limitler) + sol menüde "Mahsuplaşma" + 5 UI-destek GET endpoint'i (tekil grup/tesis, üye listesi, koşum listesi, dashboard özeti) | ✅ CANLI (izleme + limit yönetimi; bkz. Web Arayüzü) |
| PR-7b | Grup Kurulum Sihirbazı (7 adım: kapsam beyanı + tesis/üye + Ek-1 + özel kurallar + sayaç/ESS + limit + önizleme) + inverter_type öneri/onay ekranı (Adım 5) + hesap uyarılarının arayüz dilinde gösterimi (uyarı kodu → çeviri) | ✅ CANLI (bkz. Grup Kurulum Sihirbazı) |
| PR-7c | Ana dashboard Mahsuplaşma sekmesi gerçek veriye bağlandı (DEMO içerik kaldırıldı; sekme izni artık read:netting) + alt bölge panoları için "Mahsuplaşma Bakiyesi" widget'ı (Widget Ekle → Mahsuplaşma) | ✅ CANLI (bkz. Web Arayüzü — "Ana dashboard" bölümü; EPİAŞ fiyat + LÜM/GTŞ kartları PR-8'de beslenir) |
| PR-7d | Sistem alarmları aktivasyonu: 33 alarm tipi (29 mahsuplaşma + 4 EPİAŞ) otomatik izleme + cihazsız sistem alarmı altyapısı + alarm listesinde "Sistem" rozeti | ✅ CANLI (21 mahsuplaşma tipi üreticili; 8 tip + 4 EPİAŞ sonraki fazda; bkz. Sistem Alarmları) |
| PR-8 | LÜM/GTŞ mutabakat + resmî rapor import + resmî-sonrası ikinci ay kapanışı + EPİAŞ Şeffaflık entegrasyonu (4 EPİAŞ alarmı) | 🔜 YAKINDA |
Sayaç Atama ve Kanal Eşleme Sihirbazı (PR-5), PR-7a ile birlikte menüden erişilebilir: Mahsuplaşma → Resmî Tesisler listesinde tesis satırına tıklayın. Ayrıntı: Sayaç Atama ve Kanal Eşleme.
Bir özelliğin API'si mevcut olabilir ama henüz gerçek sonuç üretmez. Örneğin
uygunluk motoru çalışır (R001–R007 ve R00T gerçek PASS/FAIL, R010 warning
düzeyinde sonuç üretir), ancak R008/R009/R011 gibi kurallar ilgili faz gelene
kadar not_checked döner. not_checked, "kural henüz doğrulanamadı" demektir
ve asla valid sayılmaz
(bkz. Uygunluk Kuralları).
İlgili sayfalar
- Web Arayüzü —
/mahsuplasmasayfa ağacı ve ekran açıklamaları (PR-7a). - Grup Kurulum Sihirbazı — grup kurulumunun 7 adımlık ekran akışı (PR-7b). Yeni başlayanlar buradan başlamalı.
- Alan Sözlüğü — her form alanı için "bu ne / zorunlu mu / ne yazarım / nereden bulunur / boş bırakırsam ne olur" toplu referansı.
- Kurulum Akışı — uçtan uca ilk kurulum adımları (API düzeyi referans).
- Uygunluk Kuralları — R001–R013 tam katalog.
- Limit Hesapları — bedelli limit ledger ve transfer.
- Hesap Çekirdeği — saatlik mahsuplaşma hesabı, run kavramı, sanal sayaçlar, düzeltme akışı (PR-6).
- Regüle Tarifeler — superadmin operatör kılavuzu.
- EPİAŞ Piyasa Fiyatları — PTF/SMF piyasa fiyatları (Md.4-l advisory).
- Sistem Alarmları — cihazsız mahsuplaşma/EPİAŞ alarmları (33 tip; otomatik izleme + "Sistem" rozeti + auto-close).
- SSS ve Sorun Giderme — hata kodları ve çözümler.
- Sayaç Atama ve Kanal Eşleme — cihaz → ölçüm rolü sihirbazı + saatlik enerji önizlemesi (PR-5).
- Teknik: Mahsuplaşma Mimarisi · Veri Modeli
- API Referansı — Mahsuplaşma endpoint'leri