---
title: "Savings calculator"
method: POST
path: "/api/v2/savings-calculator"
tags: ["Calculator"]
---

# Savings calculator

`POST /api/v2/savings-calculator`

Calculates savings for Basic PV, smart PV and No PV installations.

## Request body

- SavingCalculatorRequestModel
  - `periodType` string, nullable, required
  - `yearlyConsumptionKWh` number, float
  - `totalKWp` number, float, required
  - `battery` SavingCalculatorBatteryRequestModel, required
    - `batterySizeKwh` number, float, required
    - `reservedBatteryCapacityPercentage` integer, required
    - `maximumBatteryChargingPowerWatt` integer, nullable
    - `maximumBatteryDischargingPowerWatt` integer, nullable
  - `distribution` SavingCaluclatorDistributionRequestModel, required
    - `distributor` string, required
    - `distributionRate` string, required
    - `lowTariffCommand` string, required
    - `distributorFeeHighPerMWh` number, double, required
    - `distributorFeeLowPerMWh` number, double
    - `renewableEnergyFeePerMWh` number, double, required
    - `systemServicesFeePerMWh` number, double, required
    - `circuitBreakerMonthlyFee` number, double, required
  - `electricityBuyingSettings` union, required
    - FixBuyingSettings
      - `fixedBuyPriceCzkPerMWh` number, double, required
      - `fixedBuyPriceCzkPerMwhInLowTariff` number, double
    - SpotBuyingSettings
      - `feeType` string, required
      - `fee` number, double, required
      - `spotPriceMinZero` boolean, required
  - `electricitySellingSettings` union
    - FixSellingSettings
      - `fixedSellPriceCzkPerMWh` number, double, required
    - SpotSellingSettings
      - `feeType` string, required
      - `fee` number, double, required
      - `spotPriceMinZero` boolean, required
  - `customProductionConsumptionData` CustomProductionConsumptionDataModel[], nullable
    - `time` string, date-time
    - `productionWh` integer
    - `consumptionWh` integer

## Response `200`

OK

- SavingsCalculatorResultModel
  - `withoutPV` EnergyDataSet
    - `energyProducedKWh` number, double
    - `energyConsumedKWh` number, double
    - `energyPurchasedKWh` number, double
    - `energySoldKWh` number, double
    - `costOfPurchasedEnergy` number, double
    - `revenueFromSoldEnergy` number, double
    - `netEnergyCost` number, double
    - `averagePurchasePricePerMWh` number, double
    - `averageSellPricePerMWh` number, double
  - `basicPV` EnergyDataSet
    - `energyProducedKWh` number, double
    - `energyConsumedKWh` number, double
    - `energyPurchasedKWh` number, double
    - `energySoldKWh` number, double
    - `costOfPurchasedEnergy` number, double
    - `revenueFromSoldEnergy` number, double
    - `netEnergyCost` number, double
    - `averagePurchasePricePerMWh` number, double
    - `averageSellPricePerMWh` number, double
  - `smartPV` EnergyDataSet
    - `energyProducedKWh` number, double
    - `energyConsumedKWh` number, double
    - `energyPurchasedKWh` number, double
    - `energySoldKWh` number, double
    - `costOfPurchasedEnergy` number, double
    - `revenueFromSoldEnergy` number, double
    - `netEnergyCost` number, double
    - `averagePurchasePricePerMWh` number, double
    - `averageSellPricePerMWh` number, double
  - `savingsComparedToBasicPV` number, double
  - `months` SavingsCalculatorMonthlyResultModel[], nullable
    - `withoutPV` EnergyDataSet
      - `energyProducedKWh` number, double
      - `energyConsumedKWh` number, double
      - `energyPurchasedKWh` number, double
      - `energySoldKWh` number, double
      - `costOfPurchasedEnergy` number, double
      - `revenueFromSoldEnergy` number, double
      - `netEnergyCost` number, double
      - `averagePurchasePricePerMWh` number, double
      - `averageSellPricePerMWh` number, double
    - `basicPV` EnergyDataSet
      - `energyProducedKWh` number, double
      - `energyConsumedKWh` number, double
      - `energyPurchasedKWh` number, double
      - `energySoldKWh` number, double
      - `costOfPurchasedEnergy` number, double
      - `revenueFromSoldEnergy` number, double
      - `netEnergyCost` number, double
      - `averagePurchasePricePerMWh` number, double
      - `averageSellPricePerMWh` number, double
    - `smartPV` EnergyDataSet
      - `energyProducedKWh` number, double
      - `energyConsumedKWh` number, double
      - `energyPurchasedKWh` number, double
      - `energySoldKWh` number, double
      - `costOfPurchasedEnergy` number, double
      - `revenueFromSoldEnergy` number, double
      - `netEnergyCost` number, double
      - `averagePurchasePricePerMWh` number, double
      - `averageSellPricePerMWh` number, double
    - `savingsComparedToBasicPV` number, double
    - `month` string, date

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `500` — Internal Server Error

---

[API](https://skmtc.dev/cubee/apis/partner-api.md) · [All operations](https://skmtc.dev/cubee/apis/partner-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cubee/partner-api/revisions/d5db975189bb/schema)
