Dataeksport fra varmeregnskab — til Excel, Power BI og regnskabssystemer
Eksportér aflæsninger, fordelingsgrundlag og afregningslinjer fra varmeregnskabssystemet til Excel, Power BI, e-conomic eller Business Central. Komplet guide.
Af M-Bus Gateway
Varmeregnskabsdata har værdi langt ud over den lovpligtige årsafregning. Her er how du eksporterer og anvender data i dine foretrukne systemer.
Hvad kan eksporteres?
Platformen understøtter eksport af alle primære datatyper:
| Datatype | Format | Indhold |
|---|---|---|
| Aflæsninger | CSV, JSON | Tidsstempel, måler-ID, type, enhed, værdi, RSSI |
| Fordelingsgrundlag | CSV | Areal, HCA-enheder, 30/70-split pr. lejlighed pr. periode |
| Afregningslinjer | CSV | Á conto, faktisk forbrug, difference, slut-beløb pr. lejer |
| Årsafregning | Færdig afregning klar til udsendelse | |
| OIOUBL-faktura | XML | UBL 2.1 Invoice til NemHandel/e-conomic/Business Central |
| Audit-log | CSV | Alle handlinger med tidsstempel og bruger |
CSV-eksport til Excel
Aflæsninger
REST API:
GET /api/v1/export/readings?property_id=EJD-001&from_date=2025-06-01&to_date=2026-05-31
Authorization: Bearer YOUR_API_KEY
CSV-format (UTF-8 BOM for dansk Excel):
timestamp,meter_id,meter_type,unit_label,value,unit,rssi
2026-01-15T06:01:23Z,12345678,heat,Lejl. 1,1234.56,kWh,-78
...
UTF-8 BOM er inkluderet automatisk — Excel åbner korrekt med æøå og kommaseparering direkte.
Afregningslinjer
GET /api/v1/export/settlement-lines?settlement_id=SLT-2025-001
CSV-format:
unit_label,tenant_name,area_m2,hca_units,heat_share,area_share,total_due,a_conto_paid,balance
Lejl. 1,Anders Hansen,75,120,8500,3200,11700,9600,2100
...
Power BI integration
Direkte via REST API
Power BI understøtter REST API som datakilde via Power Query:
- Hent data → Web → Angiv URL:
https://api.mbus-gateway.dk/api/v1/readings/monthly?property_id=EJD-001 - Under Avanceret → tilføj header:
Authorization: Bearer YOUR_API_KEY - Transform JSON-response med Power Query M-script
Automatisk opdatering
Konfigurér Planlagt opdatering i Power BI Service til daglig synk — data opdateres automatisk hver morgen efter gateway-send kl. 06:00.
Anbefalede Power BI-visualiseringer
| Visualisering | Data | Formål |
|---|---|---|
| Line chart | Monthly consumption pr. property | Trend-analyse |
| Bar chart | Per-unit HCA comparison | Sammenlign lejligheder |
| Map | RSSI pr. gateway | Dækning-overblik |
| KPI-card | Active meters / Silent meters | Drift-status |
| Table | Settlement lines | Afregnings-detail |
e-conomic integration
Via OIOUBL-faktura (anbefalet for almene/kommunale)
For ejendomme med EAN-nummer kan årsafregninger eksporteres som OIOUBL NemHandel-fakturaer:
GET /api/v1/settlements/{id}/oioubl
→ UBL 2.1 Invoice XML
→ Upload til e-conomic via NemHandel-modtagerboks
Via CSV-import
GET /api/v1/export/settlement-lines?settlement_id=SLT-2025-001&format=csv
→ Importér i e-conomic via Bankafstemning eller Journalbilag
Feltkortlægning til e-conomic:
| CSV-felt | e-conomic felt |
|---|---|
tenant_name | Debitornavn |
total_due | Beløb inkl. moms |
unit_label | Tekst/reference |
settlement_id | Bilagsnummer |
Business Central (Microsoft)
Business Central underst��tter to metoder:
1. OIOUBL-import
Identisk med e-conomic — via NemHandel-konnektoren.
2. REST API via Power Automate
Power Automate flow:
Trigger: Planlagt (daglig kl. 07:00)
Handling: HTTP GET /api/v1/readings/latest
Handling: Parse JSON
Handling: Business Central → Opret finansbilag
Grafana + InfluxDB til driftsmonitoring
For tekniske administratorer der vil visualisere gateway-performance:
# Python script til InfluxDB-injektion
import requests, influxdb_client
readings = requests.get(
"https://api.mbus-gateway.dk/api/v1/readings/latest",
headers={"Authorization": f"Bearer {API_KEY}"}
).json()
client = influxdb_client.InfluxDBClient(url=INFLUX_URL, token=INFLUX_TOKEN, org=ORG)
write_api = client.write_api()
for r in readings:
point = (
influxdb_client.Point("meter_reading")
.tag("meter_id", r["meter_id"])
.tag("meter_type", r["meter_type"])
.field("value", r["latest_value"])
.field("rssi", r["rssi"])
.time(r["latest_ts"])
)
write_api.write(bucket=BUCKET, record=point)
Automatisér via webhooks
I stedet for polling kan du abonnere på events:
// POST /api/v1/api-keys/webhooks
{
"url": "https://dit-system.dk/webhook/varme",
"events": ["reading.new", "settlement.sent", "alarm.created"],
"secret": "din-webhook-secret"
}
Tilgængelige events:
| Event | Hvornår | Payload |
|---|---|---|
reading.new | Ny aflæsning modtaget | meter_id, value, timestamp |
settlement.sent | Afregning sendt til lejer | settlement_id, unit_id, tenant_email |
alarm.created | Ny alarm | alarm_type, meter_id, severity |
gateway.offline | Gateway ikke set i 24t | gateway_id, last_seen |
Datamodel til eget regnskabssystem
Fuld OpenAPI 3.0 spec tilgængeligt på /api — alle endpoints er dokumenterede med request/response-schemas. Understøtter JWT Bearer-token auth.
Konklusion
Aflæsningsdata er ikke låst inde i systemet — alt kan eksporteres via CSV, JSON, OIOUBL eller webhooks. Fra Excel til Power BI til Business Central: vælg den integration der passer til dit regnskabsworkflow.