> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.rabot.energy/llms.txt
> Use this file to discover all available pages before exploring further.

# Tariff Calculator

# Price Components Response

All monetary values are returned **gross (including 19% VAT)** unless otherwise noted.

## §41a EnWG Compliance Note

> Under the §41a EnWG pre-contractual information requirements, all fields marked **§41a Required** must
> be displayed to the customer before contract conclusion. For **fixed-price (Fix) tariffs**, the total
> price must additionally be disclosed as an **annual figure** (`pricePerMonth × 12`) based on the
> stated annual consumption.

## RABOT Recommended Breakdown display

### workPriceComponents / Geschätzter Arbeitspreis pro kWh brutto

* averageExchangePrice / Energiebeschaffung
* greenCertificateSurcharge + workPriceAdjustment + serviceFee / Sonstige Beschaffungskosten
* powerFee / Stromsteuer
* gridFee / Netznutzungsentgelt
* powerHeatCouplingFee / KWKG-Umlage
* concessionFee / Konzessionsabgabe
* offshoreFee / Offshore-Umlage
* p19Fee / §19 StromNEV-Umlage

#### basePriceComponents / Grundpreis brutto

* gridFee / Netznutzung
* meteringFee / Messstellenbetrieb
* baseServiceFee / Servicegebühr

***

## Top-Level Fields

| Field                  | Type   | Unit      | Description                                                                                                                                                                                                            | §41a Required        |
| ---------------------- | ------ | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- |
| `pricePerMonth`        | number | €/Monat   | The estimated average monthly pre-payment amount to be quoted to the customer. Calculated as `(estimatedWorkPrice × estimatedConsumption) + basePricePerMonth`.                                                        | ✅ Yes                |
| `unitPrice`            | number | ct/kWh    | The working price per kWh to be quoted to the customer. Equivalent to `effectiveWorkPrice` when no price cap is active.                                                                                                | ✅ Yes                |
| `basePricePerMonth`    | number | €/Monat   | The total monthly base price (Grundpreis), inclusive of grid fixed fee, metering fee, and the Rabot/WL partner service fee.                                                                                            | ✅ Yes                |
| `estimatedConsumption` | number | kWh/Monat | The `yearlyConsumptionKwh` from the request body divided by 12. Used to calculate `pricePerMonth`.                                                                                                                     | ⚙️ Calculation input |
| `estimatedWorkPrice`   | number | ct/kWh    | The working price per kWh before any price cap is applied. Equals `unitPrice` when no price cap campaign is active.                                                                                                    | ✅ Yes                |
| `expectedWorkPrice`    | number | €/Monat   | `estimatedWorkPrice × estimatedConsumption`. The estimated monthly electricity cost before base price. Displayed as *Arbeitspreis gesamt*.                                                                             | ✅ Yes                |
| `effectiveWorkPrice`   | number | ct/kWh    | The final working price per kWh after any price cap discount is applied. Equals `estimatedWorkPrice` when no cap is active. Use this value — not `estimatedWorkPrice` — when displaying the Arbeitspreis to customers. | ✅ Yes                |
| `baseServiceFee`       | number | €/Monat   | The Rabot + WL partner margin component of the base price (Servicegebühr). Displayed separately in the Grundpreis breakdown.                                                                                           | ✅ Yes                |
| `variableServiceFee`   | number | ct/kWh    | The Rabot + WL partner margin component of the working price, expressed in ct/kWh. Repeated as `workPriceDetails.serviceFee`. Zero for fix tariffs where the margin is captured in the fixed-price reconciliation.     | ✅ Yes (if non-zero)  |

***

## `basePriceDetail.fees`

Breakdown of the components that make up `basePricePerMonth`, excluding the `baseServiceFee`.

| Field                 | Type           | Unit    | Description                                                                                                                                     | §41a Required       |
| --------------------- | -------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- |
| `gridFee`             | number         | €/Monat | Fixed monthly grid usage fee (*Netznutzung*) charged by the Verteilnetzbetreiber (DSO) for access to the distribution grid. Location-dependent. | ✅ Yes               |
| `meteringFee`         | number         | €/Monat | Fixed monthly metering/meter operation fee (*Messstellenbetrieb*) charged by the Verteilnetzbetreiber, gMSB, or wMSB.                           | ✅ Yes               |
| `basePriceAdjustment` | number \| null | €/Monat | Additional base price adjustment (*Sonstige Verrechnungskosten*). `null` when no adjustment applies.                                            | ✅ Yes (if non-null) |

***

## `workPriceDetails`

Full per-kWh breakdown of all components making up `estimatedWorkPrice` / `effectiveWorkPrice`.

| Field                  | Type   | Unit   | Description                                                                                                                                         | §41a Required       |
| ---------------------- | ------ | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- |
| `serviceFee`           | number | ct/kWh | Variable Rabot + WL partner margin component of the working price (*Servicegebühr*). Identical to `variableServiceFee` above. Zero for fix tariffs. | ✅ Yes (if non-zero) |
| `averageExchangePrice` | number | ct/kWh | EPEX Spot Day-Ahead Market average price used to generate the quote (*Energiebeschaffung*). Typically the average of the last 3, 6, or 12 months.   | ✅ Yes               |

### `workPriceDetails.fees`

| Field                          | Type           | Unit   | German Display Label            | Description                                                                                                                                                                                                          | §41a Required                |
| ------------------------------ | -------------- | ------ | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
| `greenCertificateSurcharge`    | number         | ct/kWh | *sonstige Beschaffungskosten*   | Cost of the HKN (Herkunftsnachweis) green electricity certificate, certifying the power as coming from renewable sources. Combined with `workPriceAdjustment` and `serviceFee` for display.                          | ✅ Yes (grouped)              |
| `powerFee`                     | number         | ct/kWh | *Stromsteuer*                   | German federal electricity excise tax (*Stromsteuergesetz*). Fixed federal levy; currently \~2.05 ct/kWh net / \~2.44 ct/kWh gross (incl. VAT).                                                                      | ✅ Yes                        |
| `gridFee`                      | number         | ct/kWh | *Netznutzungsentgelt*           | Variable per-kWh grid usage fee charged by the Verteilnetzbetreiber (DSO). Location-dependent (varies by postal code / grid area).                                                                                   | ✅ Yes                        |
| `powerHeatCouplingFee`         | number         | ct/kWh | *KWKG-Umlage*                   | Surcharge under the Combined Heat and Power Act (*Kraft-Wärme-Kopplungsgesetz*) to fund CHP plant operators.                                                                                                         | ✅ Yes                        |
| `concessionFee`                | number         | ct/kWh | *Konzessionsabgabe*             | Municipal concession levy paid by the grid operator to municipalities for use of public rights-of-way for power lines. Varies by municipality size (1.32–2.39 ct/kWh, capped by *Konzessionsabgabenverordnung* KAV). | ✅ Yes                        |
| `offshoreFee`                  | number         | ct/kWh | *Offshore-Umlage*               | Surcharge to fund costs and liabilities for offshore wind farm grid connections (*Offshore-Netzumlage*).                                                                                                             | ✅ Yes                        |
| `p19Fee`                       | number         | ct/kWh | *§19 StromNEV-Umlage*           | Surcharge to compensate grid operators for revenue lost from customers granted individual reduced grid fees under §19(2) of the Electricity Network Charges Ordinance (*Stromnetzentgeltverordnung*).                | ✅ Yes                        |
| `workPriceAdjustment`          | number \| null | ct/kWh | *sonstige Beschaffungskosten*   | Additional working price procurement cost adjustment. Combined with `greenCertificateSurcharge` and `serviceFee` for display. `null` when no adjustment applies.                                                     | ✅ Yes (if non-null, grouped) |
| `effectiveWorkPriceAdjustment` | number \| null | ct/kWh | *Differenz zur Preisobergrenze* | Discount delta applied when an active price cap campaign reduces the `effectiveWorkPrice` below the `estimatedWorkPrice`. `null` when no price cap is active.                                                        | ✅ Yes (if non-null)          |

***

## RabotShare

<Note>
  rabotShare is not required to be displayed for whitelabel or affiliate tariffs.
</Note>

## Display Notes

### Dynamic tariffs

Display all components individually as shown in the funnel. The `sonstige Beschaffungskosten` line is computed as:

```
sonstige Beschaffungskosten = greenCertificateSurcharge + workPriceAdjustment + serviceFee
```

### Fix tariffs (additional §41a requirement)

In addition to the per-component breakdown, the total price must be disclosed as an **annual figure** based on the stated annual consumption:

| Display Label                       | Computation                                                |
| ----------------------------------- | ---------------------------------------------------------- |
| Gesamtpreis pro Jahr (Arbeitspreis) | `effectiveWorkPrice (ct/kWh) × yearlyConsumptionKwh / 100` |
| Gesamtpreis pro Jahr (Grundpreis)   | `basePricePerMonth × 12`                                   |
| **Gesamtpreis pro Jahr (Brutto)**   | `pricePerMonth × 12`                                       |
