Startseite › Bibliothek › Zähler

Zähler

Verfolgen Sie Nebenkostenzählerstände für Ihre Objekte

Was sind Zähler?

Zähler ermöglichen die Verfolgung der Zählerstände von Messgeräten für Ihre Objekte: Strom, Wasser, Gas, Heizung und andere Nebenkosten. Jeder Zähler speichert Seriennummer, Anfangszählerstand und Historie aller Zählerstände.

Hauptfunktionen

  • Verknüpft mit Ausgabentypen (Strom, Wasser, Gas usw.)
  • Dokumentanhänge für Zähler und Ablesungen (Fotos, PDFs, bis 20 MB)
  • Vollständige Zählerstandshistorie mit Daten
  • Automatische Validierung: neue Zählerstände müssen größer oder gleich den vorherigen sein
  • Unterstützung für Mehrzonen-Stromtarife (Einzonen, Zweizonen, Dreizonen)

Stromtarifzonen

Für Stromzähler können Sie verschiedene Tariftypen je nach den Fähigkeiten Ihres Zählers auswählen.

Tariftyp Zonen Beschreibung
Einzonen 1 Zone Standard-Zähler mit einem Zählerstand. Standard für alle Ausgabentypen.
Zweizonen T1 (Tag (T1)), T2 (Nacht (T2)) Tag-/Nacht-Zähler. Geben Sie beide Zonen ein, die Summe wird automatisch berechnet.
Dreizonen T1 (Spitze (T1)), T2 (Halbspitze (T2)), T3 (Nacht (T3)) Spitzen-/Halbspitzen-/Nacht-Zähler. Alle Zonen erforderlich.

Wichtig

Mehrzonen-Tarife sind nur für Ausgabentypen verfügbar, die sie unterstützen (z.B. Elektrizität). Beim Hinzufügen eines Zählerstands für einen Mehrzonen-Zähler müssen Werte für alle Zonen eingegeben werden.

Wie erstelle ich einen Zähler?

1

Gehen Sie zu Ihrem Objekt

Öffnen Sie die Objektseite, auf der Sie einen Zähler hinzufügen möchten.

2

Zähler-Abschnitt öffnen

Klicken Sie auf "Zähler" im Objektmenü, um vorhandene Zähler zu sehen oder einen neuen hinzuzufügen.

3

Zählerdaten ausfüllen

Wählen Sie den Ausgabentyp, geben Sie die Seriennummer, den Anfangszählerstand ein und laden Sie optional ein Foto des Zählers hoch.

Zählerstände hinzufügen

Nach dem Erstellen eines Zählers können Sie Zählerstände hinzufügen, um den Verbrauch im Zeitverlauf zu verfolgen.

Validierungsregeln

Neue Zählerstände müssen größer oder gleich den vorherigen sein. Das System akzeptiert keine kleineren Werte, um die Datenintegrität zu gewährleisten.

Dokumente anhängen

Laden Sie Fotos des Zählerdisplays oder PDF-Dokumente mit jeder Ablesung als Nachweis und Referenz hoch.

Verfolgen Sie Daten

Geben Sie immer das genaue Datum der Zählerstandsablesung ein, um den Verbrauch genau zu verfolgen.

Regelmäßige Updates

Fügen Sie regelmäßig (monatlich) Zählerstände hinzu, um Verbrauchsmuster zu verfolgen und Probleme frühzeitig zu erkennen.

Anpassungen und Korrekturen

Manchmal müssen Zählerstände aufgrund von Zählerrückstellung, Austausch oder Korrektur vom Dienstleister angepasst werden.

Verbrauch

Normale Zählerstände. Der neue Wert muss größer oder gleich dem vorherigen Zählerstand sein.

Anpassung

Korrekturzählerstände. Verwenden Sie dies, wenn der Zähler ausgetauscht, zurückgesetzt oder vom Dienstleister korrigiert wurde.

Wann sollte eine Anpassung verwendet werden?

  • Zähleraustausch - neuer Zähler beginnt mit einem niedrigeren Wert
  • Zählerrückstellung nach Erreichen des Maximalwertes
  • Korrektur vom Dienstleister nach Neuberechnung
  • Korrektur eines Fehlers in einem zuvor eingegebenen Zählerstand

Wichtig

Korrekturzählerstände werden als negative Werte gespeichert und von automatischen Abrechnungsberechnungen ausgeschlossen.

Mit Abrechnungen verknüpfte Zählerstände

Wenn eine Abrechnung basierend auf Zählerständen erstellt wird, verknüpft das System automatisch den Zählerstand mit der Abrechnung.

Nicht verknüpft

Zählerstand ist mit keiner Abrechnung verknüpft. Kann vom Eigentümer/Vertreter bearbeitet oder gelöscht werden.

Verknüpft

Zählerstand ist mit einer Abrechnung verknüpft. Kann nicht bearbeitet oder gelöscht werden, um die Datenintegrität zu gewährleisten.

Automatische Verknüpfung

Bei der Erstellung einer Abrechnung für zählerbasierte Ausgaben findet und verknüpft das System automatisch den letzten nicht verknüpften Zählerstand.

Verknüpfungsregeln

Zählerstandstyp Kann verknüpft werden Grund
Normaler Verbrauch Ja Normale Zählerstände zeigen tatsächlichen Verbrauch
Anpassung/Korrektur Nein Negative Werte können keinen Verbrauch für die Zahlung darstellen
Anfangszählerstand Nein Anfangszählerstände sind Startpunkte, kein Verbrauch

Abrechnungen erstellen

Bei der Erstellung einer Abrechnung für zählerbasierte Ausgaben wählen Sie einen vorhandenen Zählerstand anstatt Werte manuell einzugeben. Dies gewährleistet Datenintegrität und korrekte Erfassung.

1

Zählerstand hinzufügen

Fügen Sie zunächst einen neuen Zählerstand mit dem aktuellen Wert hinzu.

2

Abrechnung erstellen

Gehen Sie zur Ausgabe und erstellen Sie eine neue Abrechnung. Wählen Sie den Zählerstand aus der Liste.

3

Automatische Berechnung

Das System berechnet automatisch den Verbrauch basierend auf der Differenz zwischen dem ausgewählten und dem vorherigen Zählerstand.

Keine unverknüpften Zählerstände?

Wenn keine unverknüpften Zählerstände verfügbar sind, können Sie keine Abrechnung erstellen. Fügen Sie zunächst einen neuen Zählerstand hinzu und kehren Sie dann zurück, um die Abrechnung zu erstellen.

Abrechnungen über API erstellen

# 1. Get available unlinked readings:
GET /api/v1/properties/{propertyId}/expenses/{expenseId}/unlinked-readings

# Response:
{
  "has_counters": true,
  "has_unlinked_readings": true,
  "counters": [
    {
      "counter_id": 5,
      "serial_number": "ABC-123456",
      "unlinked_readings": [
        {
          "id": 12,
          "date": "2026-01-15",
          "value": "1500.00",
          "previous_value": "1350.00",
          "consumption": "150.0000"
        }
      ]
    }
  ]
}

# 2. Create charge with selected reading:
POST /api/v1/properties/{propertyId}/expenses/{expenseId}/charges
{
  "charge_date": "2026-01-21",
  "period_start": "2025-12-01",
  "period_end": "2025-12-31",
  "counter_value_ids": [12]
}

Zugriffsrechte

Verschiedene Objektteilnehmer haben unterschiedliche Rechte für Zähler und Zählerstände.

Rechte für Zähler

Aktion Wer kann dies tun
Zähler anzeigen Alle Objektteilnehmer
Zähler erstellen Alle Objektteilnehmer
Zähler bearbeiten Alle Objektteilnehmer
Zähler löschen Nur Eigentümer und Vertreter

Rechte für Zählerstände

Aktion Wer kann dies tun
Zählerstände anzeigen Alle Objektteilnehmer
Zählerstände hinzufügen Alle Objektteilnehmer
Zählerstände bearbeiten Nur Eigentümer und Vertreter
Zählerstände löschen Nur Eigentümer und Vertreter

Rollen im Objekt

  • Eigentümer (PROPERTY_LANDLORD): Voller Zugriff auf alle Operationen
  • Vertreter (PROPERTY_LANDLORD_AGENT): Kann Zähler und Zählerstände bearbeiten und löschen
  • Andere Teilnehmer: Können anzeigen, Zähler erstellen und neue Zählerstände hinzufügen

Zählerstatus

Zähler können je nachdem, ob sie derzeit verwendet werden, aktiviert oder deaktiviert werden.

Aktiv

Zähler wird verwendet. Neue Zählerstände können hinzugefügt werden, und der Zähler wird für automatische Abrechnungsberechnungen verwendet.

Inaktiv

Zähler ist deaktiviert. Er bleibt im System für historische Aufzeichnungen, wird aber nicht für neue Berechnungen verwendet.

Wann sollte ein Zähler deaktiviert werden?

  • Zähler wurde durch einen neuen ersetzt
  • Zähler funktioniert vorübergehend nicht
  • Zähler ist für das Objekt nicht mehr relevant

Wichtig

Inaktive Zähler werden von der automatischen Abrechnungsberechnung ausgeschlossen. Wenn Sie den Zähler wieder verwenden müssen, aktivieren Sie ihn einfach.

Zähler löschen

Um die Datenintegrität zu wahren, können Zähler mit verknüpften Abrechnungen nicht gelöscht werden.

Kann gelöscht werden

Der Zähler hat keine Zählerstände, die mit Abrechnungen verknüpft sind. Die gesamte Historie wird endgültig gelöscht.

Kann nicht gelöscht werden

Der Zähler hat Zählerstände, die mit Abrechnungen verknüpft sind. Deaktivieren Sie stattdessen den Zähler, um historische Daten zu bewahren.

Alternative zum Löschen

Wenn Sie einen Zähler nicht löschen können, deaktivieren Sie ihn. Deaktivierte Zähler verbleiben im System zur Referenz, werden aber nicht in neuen Berechnungen verwendet.

REST API

Alle API-Endpunkte erfordern JWT-Authentifizierung.

Service-Layer-Hinweis

Zähler-API

GET    /api/v1/properties/{propertyId}/counters              # List counters for property
POST   /api/v1/properties/{propertyId}/counters              # Create counter
GET    /api/v1/properties/{propertyId}/counters/{id}         # Counter details with readings
PUT    /api/v1/properties/{propertyId}/counters/{id}         # Update counter
DELETE /api/v1/properties/{propertyId}/counters/{id}         # Delete counter (if no linked charges)
POST   /api/v1/properties/{propertyId}/counters/{id}/toggle  # Toggle active/inactive status

Zählerstände-API

POST   /api/v1/properties/{propertyId}/counters/{counterId}/values          # Add reading
PUT    /api/v1/properties/{propertyId}/counters/{counterId}/values/{id}     # Edit reading
DELETE /api/v1/properties/{propertyId}/counters/{counterId}/values/{id}     # Delete reading

Zählerdokumente

POST   /properties/{propertyId}/counters/{id}/documents/upload                          # Upload document (multipart/form-data)
POST   /properties/{propertyId}/counters/{id}/documents/{documentId}/delete             # Delete document

Ablesungsdokumente

POST   /properties/{propertyId}/counters/{id}/values/{valueId}/documents/upload          # Upload document (multipart/form-data)
POST   /properties/{propertyId}/counters/{id}/values/{valueId}/documents/{documentId}/delete  # Delete document

Dateilimits

Maximale Dateigröße: 20 MB. Unterstützte Formate: JPEG, PNG, GIF, WebP, HEIC, PDF. Mehrere Dateien können an jeden Zähler oder jede Ablesung angehängt werden.

Beispiel: Zähler erstellen

POST /api/v1/properties/1/counters
Content-Type: application/json
Authorization: Bearer <token>

{
  "expense_type_id": 1,
  "serial_number": "ABC-123456",
  "tariff_type": "TWO_ZONE",
  "initial_value": "100.500",
  "initial_value_t1": "60.300",
  "initial_value_t2": "40.200",
  "initial_value_date": "2026-01-01"
}

Beispiel: Zählerstand hinzufügen

POST /api/v1/properties/1/counters/5/values
Content-Type: application/json
Authorization: Bearer <token>

# Single-zone counter (regular consumption):
{ "value": "1350.75", "date": "2026-01-07" }

# Multi-zone counter (total auto-calculated):
{
  "value_t1": "150.300",
  "value_t2": "80.200",
  "date": "2026-01-07"
}

# Adjustment reading (correction):
{
  "value": "50.000",
  "date": "2026-01-07",
  "is_adjustment": true
}

Zählerdokumente: Upload

POST /properties/1/counters/5/documents/upload
Content-Type: multipart/form-data

documents[]    — file (jpg, jpeg, png, gif, webp, heic, pdf), max 20 MB
comment        — string (optional)

# Response:
{ "success": true, "uploaded": 1 }

Ablesungsdokumente: Upload

POST /properties/1/counters/5/values/12/documents/upload
Content-Type: multipart/form-data

documents[]    — file (jpg, jpeg, png, gif, webp, heic, pdf), max 20 MB
comment        — string (optional)

# Response:
{ "success": true, "uploaded": 2 }

Beispielantwort

{
  "id": 12,
  "value": "230.500",
  "value_t1": "150.300",
  "value_t2": "80.200",
  "value_t3": null,
  "date": "2026-01-07",
  "is_initial": false,
  "is_adjustment": false,
  "has_linked_charge": true,
  "expense_charge_id": 45,
  "can_edit": false,
  "can_delete": false,
  "documents_count": 2,
  "created_at": "2026-01-07T10:30:00+00:00"
}

Verwandte Abschnitte

Swagger / OpenAPI

Vollständige API-Dokumentation ist in Swagger UI verfügbar: /api/v1/doc