Varmeregnskab i kommunale ejendomme og almenboliger
Varmeregnskab i almene boliger og kommunale ejendomme: almenboliglovens særregler, BEK 563 vs. driftsbekendtgørelsen, OIOUBL/EAN krav, beboerdemokrati og platform-compliance.
Af M-Bus Gateway
Almene boliger og kommunale ejendomme er underlagt almenboligloven og driftsbekendtgørelsen — med egne krav der supplerer BEK 563. Her er skæringspunkterne.
Retsgrundlag — almene boliger
Almene boliger: Juridisk ramme (2026):
Almenboligloven (ABL):
→ Gælder for almene boligorganisationer (AAB, FSB, KAB m.fl.)
→ Kommunale udlejningsejendomme: Delvist underlagt ABL
→ § 10: Beboerdemokrati — afdelingsbestyrelse med reelle beføjelser
→ § 43: Driftsbudget godkendes af afdelingsbestyrelse
Driftsbekendtgørelsen (BEK 1191/2018):
→ Supplerer ABL med detaljerede regnskabskrav
→ § 25: Varmeregnskabet er separat fra huslejeregnskabet
→ § 28: Á conto fastlægges af boligorganisationen
→ Kræver godkendelse hos kommunalbestyrelsen ved budgetoverskridelse
BEK 563 (Varmefordelingsloven):
→ Gælder fuldt ud for almene boliger
→ Suppleres af driftsbekendtgørelsens § 25-30
→ Konflikt: Driftsbekendtgørelse går forud for BEK 563
EU EED 2023/1791:
→ Gælder identisk for almene boliger
→ Kommunale ejendomme: EU-forordning direkte anvendelig
→ 2027: Månedlige forbrugsdata til beboer
OIOUBL og EAN — krav til kommunale ejendomme
Elektronisk fakturering (OIOUBL):
Hvem kræver OIOUBL:
→ Alle kommunale og statslige enheder: EAN-nummer krævet
→ Almene boligorganisationer: Anbefalet, ikke obligatorisk
→ Private udlejere: Ikke krævet
EAN-numre i praksis:
Boligorganisation (faktureringsafdeling):
EAN: 5790001234567 ← 13-cifret GLN-nummer
Faktura fra: Fjernvarmeselskab → Boligorganisation
Videredistribution: Fra boligorganisation til afdeling
Afdeling (decentral fakturering):
EAN: 5790007654321 ← Afdelingsspecifik EAN
Faktura fra: Service-leverandører → Afdeling direkte
Platform OIOUBL-eksport:
→ Settlement → OIOUBL UBL 2.1 XML
→ EAN pr. ejendom/afdeling (Property.ean_number)
→ NemHandel-kompatibel levering via API-webhook
→ GET /api/v1/settlements/{id}/oioubl → XML-download
Beboerdemokrati og varmeregnskab
Beboerdemokratiets rolle (ABL § 10):
Afdelingsbestyrelsens beføjelser ved varme:
✅ Godkende á conto-ændringer
✅ Indsigelse mod varmeregnskabet (§ 18 BEK 563)
✅ Kræve redegørelse for højt varmeforbrug
✅ Foreslå energirenovering (varmepumpe, isolering)
✅ Kræve ekstern revision af varmeregnskabet
Beboermøde-dokumentation:
→ Platform: Eksport af "Beboermøde-pakke"
1. Aggregeret varmeforbrug (alle lejligheder anonymiseret)
2. Á conto-niveau og begrundelse
3. Gateway og måler-status (RSSI, dækning)
4. Sammenligning med lignende afdelinger (national benchmark)
5. EU EED 2027 plan for afdelingen
Afdelingsbestyrelsens mandat:
→ KAN ikke unilateralt ændre fordelingsmetoden
→ Kræver generalforsamlingsgodkendelse (ABL § 10 stk. 5)
→ Kan INDSTILLE til boligorganisation om at skifte system
Driftsbudget og varmeregnskab
# server/src/distribution/almen_budget.py
from decimal import Decimal
from dataclasses import dataclass
@dataclass
class AlmenHeatBudget:
"""
Driftsbekendtgørelsen § 25: Varmebudget for almen afdeling.
Godkendes af afdelingsbestyrelse og indsendes til kommunen.
"""
afdeling_id: str
budget_year: int
# Forventet fjernvarme-udgift
expected_heat_cost: Decimal
# Forventet á conto-indtægt
expected_aconto_income: Decimal
# Forventet forbrug (graddage-normaliseret)
expected_kwh: Decimal
@property
def expected_balance(self) -> Decimal:
return self.expected_aconto_income - self.expected_heat_cost
@property
def aconto_per_unit_monthly(self) -> Decimal:
"""Gennemsnitlig á conto pr. enhed pr. måned."""
return self.expected_aconto_income / 12
def variance_from_actual(self, actual_cost: Decimal) -> Decimal:
"""Afvigelse fra budget — rapporteres til kommunen ved > 15%."""
return (actual_cost - self.expected_heat_cost) / self.expected_heat_cost
def check_budget_variance(
budget: AlmenHeatBudget,
actual_cost: Decimal,
) -> dict:
"""
Driftsbekendtgørelsen § 28:
Afvigelse > 15% → Obligatorisk rapportering til kommunalbestyrelsen.
"""
variance = budget.variance_from_actual(actual_cost)
requires_reporting = abs(variance) > Decimal("0.15")
return {
"budget_cost": budget.expected_heat_cost,
"actual_cost": actual_cost,
"variance_pct": float(variance * 100),
"requires_municipal_reporting": requires_reporting,
"action": "Indsend redegørelse til kommunen" if requires_reporting else "Ingen handling krævet",
}
Kommunal ejendom — særlige krav
Kommunale udlejningsejendomme (2026):
Hvad er kommunal ejendom:
→ Ejet af kommunen, udlejet til sociale formål
→ Plejeboliger, midlertidige boliger, flygtningeboliger
→ Underlagt kommunalfuldmagten og offentlighedslov
Særkrav:
→ Offentlighedslov: Afregninger er offentlige dokumenter
→ Forvaltningsloven: Partshøring ved ændringer (á conto++)
→ GDPR: Særlig forsigtig ved persondata (kommunalt ansvar)
→ Udbud: Hardware og software-kontrakter over tærskelværdi → EU-udbud
Platform-compliance for kommunal ejendom:
→ Audit log: Alle handlinger sporbare (FOB-sikret)
→ OIOUBL: Obligatorisk for kommunale fakturaer
→ Data retention: Kommunale regnskaber: 5 år (offentlig arkivering)
→ Persondata: Datatilsynet-compliance kræver DPA med platform
EU EED og kommunale ejendomme:
→ Kommunen som offentlig bygherre: Skærpede krav fra 2025
→ Energimærkning A-D krævet inden 2027 (offentlige bygninger)
→ Platform: Generer energimærke-kompatible kWh/m²-rapporter
Konklusion
Almene boliger og kommunale ejendomme er underlagt BEK 563 fuldt ud — suppleret af driftsbekendtgørelsen (§ 25-30) og almenboligloven (§ 10 beboerdemokrati). OIOUBL og EAN-nummer er obligatorisk for kommunale ejendomme og anbefalet for almene boligorganisationer. Beboerdemokratiet har reel indsigt i varmeregnskabet men kan ikke unilateralt ændre fordelingsmetoden — det kræver generalforsamling. Driftsbekendtgørelsen § 28: budgetafvigelse over 15 % kræver kommunal rapportering. Platform "beboermøde-pakke" (anonymiseret forbrug, á conto-begrundelse, EU EED 2027 plan) styrker afdelingsbestyrelsens arbejde.
Se EU 2027 fjernaflæsning lovkrav eller varmeregnskab andelsbolig guide.