-
-
Notifications
You must be signed in to change notification settings - Fork 16
Electricity Providers
| Provider | Country | Pricing Type | API Auth Required |
|---|---|---|---|
| Amber Electric | Australia | Dynamic 5-min & 30-min | API Token |
| Localvolts | Australia | Dynamic 5-min (real-time wholesale) | API Key + Partner ID |
| Flow Power | Australia | AEMO Wholesale | No |
| Globird / AEMO VPP | Australia | Static + Spike Detection | No |
| Octopus Energy | UK | Dynamic 30-min | No (public API) |
| EPEX Day-Ahead | EU (DE, AT, BE, NL, DK, SE) | Hourly day-ahead | No (free API) |
| NZ TOU | New Zealand | Static TOU (3-tier) | No |
Dynamic pricing with 5-minute and 30-minute resolution. Current prices update every 5 minutes; forecasts are available at 30-minute resolution.
Setup:
- Get an API token from app.amber.com.au/developers
- Select Amber Electric during PowerSync setup
- Enter your API token
- Select your Amber site
Amber provides three price forecasts for each interval. PowerSync uses this to build the TOU tariff that gets uploaded to your battery system and fed into the LP optimizer.
| Setting | Amber API Field | Description | Effect on Optimizer |
|---|---|---|---|
| Predicted (Default) | advancedPrice.predicted |
Amber's best estimate of the actual price | Balanced — charges and exports based on most likely prices |
| Low | advancedPrice.low |
Lower bound (P10) — prices expected to be low | Optimizer sees cheap future prices → current prices look relatively better → more willing to export now, less eager to charge |
| High | advancedPrice.high |
Upper bound (P90) — prices expected to be high | Optimizer sees expensive future prices → holds charge for anticipated peaks → more conservative with exports, more eager to charge at current prices |
How it works:
Amber's API returns an advancedPrice object for each forecast interval with three values:
-
predicted— Amber's central forecast -
low— lower bound (P10 estimate) -
high— upper bound (P90 estimate)
The forecast type setting determines which value PowerSync uses when:
- Building the TOU tariff schedule sent to your battery system (Tesla, Sigenergy, FoxESS, GoodWe, Sungrow)
- Feeding prices into the LP optimizer for charge/discharge scheduling
- Calculating cost projections and savings estimates
When to change it:
- If the optimizer is not exporting during peaks (holding battery when it should sell), try Low — it sees lower future prices, making current peak prices look better by comparison, encouraging export now
- If the optimizer is exporting too early (selling before peak arrives), try High — it sees higher future prices, so it holds charge expecting even better prices later
- If you're happy with the optimizer's decisions, leave it on Predicted
Configure in: Settings > Electricity Provider > Amber > Amber Forecast Type
You can use PowerSync automations to switch the Amber forecast type automatically based on time of day. This is useful for adapting your strategy to different conditions:
Example: Hold charge during solar, export aggressively at peak
Create two automations in the mobile app:
-
Morning switch to High — Trigger: Time 7:00 AM → Action: Set Amber Forecast Type → High
- During solar hours, the optimizer sees future peak prices as high, so it holds battery charge from solar rather than exporting at low midday prices. This builds up stored energy for the evening peak.
-
Afternoon switch to Low — Trigger: Time 3:00 PM → Action: Set Amber Forecast Type → Low
- Before evening peak, the optimizer now sees future prices as low, making the current peak prices look relatively more attractive. This encourages the optimizer to export stored energy now rather than holding for later.
The forecast type change takes effect immediately — PowerSync triggers a TOU sync after updating the setting, so your battery system receives the new pricing within seconds.
Action: Automations > Add Action > Amber Forecast Type → select Predicted, Low, or High
Real-time wholesale pricing with native 5-minute NEM interval resolution. Localvolts provides marginal import and export prices (costsFlexUp / earningsFlexUp) with up to 24 hours of forward forecast data.
Setup:
- Obtain your API Key and Partner ID from Localvolts
- Select Localvolts during PowerSync setup
- Enter your API Key, Partner ID, and NMI (National Meter Identifier)
- Configure export boost and chip mode settings (optional)
| Option | Description |
|---|---|
| API Key | Your Localvolts API key (keep this secret) |
| Partner ID | Your Localvolts Partner ID |
| NMI | Your 10-digit National Meter Identifier. Use * for all authorized NMIs. |
- Prices are fetched every 5 minutes from the Localvolts API
- Import prices come from the
costsFlexUpfield (c/kWh) - Export prices come from the
earningsFlexUpfield (c/kWh) - Data is converted to Amber-compatible format internally, so all features work seamlessly:
- Smart Optimization (LP optimizer) with native 5-min resolution
- TOU tariff sync to Tesla/Sigenergy/FoxESS/GoodWe/Sungrow
- Battery export curtailment at negative prices
- Export boost and chip mode
- Forward forecast is limited to ~24 hours (the LP optimizer pads beyond this with the last known price)
- AEMO spike detection can be configured independently for price spike exports
- Localvolts does not provide Amber's
spikeStatusfield. If you want automatic battery discharge during NEM price spikes, enable the AEMO Spike Detection feature separately. -
'N/A'values in the API response (e.g. when no imports/exports in a forecast period) are treated as 0.0 c/kWh.
Uses AEMO wholesale pricing directly — no API token required. Prices update every 5 minutes from the AEMO NEM dispatch feed. You can optionally provide an Amber API token as an alternative price source.
| Source | Description |
|---|---|
| AEMO Direct (default) | Fetches wholesale prices directly from AEMO NEMWeb. No API key needed. |
| Amber API | Uses your Amber Electric API token for pricing data. Useful if you also have an Amber account. |
| Region | Export Rate (Happy Hour) |
|---|---|
| NSW1 — New South Wales | 45 c/kWh |
| QLD1 — Queensland | 45 c/kWh |
| SA1 — South Australia | 45 c/kWh |
| VIC1 — Victoria | 35 c/kWh |
| TAS1 — Tasmania | No Happy Hour |
Flow Power bills using: Final Rate = Base Rate + PEA
PEA adjusts your rate based on when you consume relative to wholesale prices:
- Cheap wholesale (e.g. midday solar) → negative PEA → you pay less than the base rate
- Average wholesale → PEA near zero → you pay roughly the base rate
- Expensive wholesale (e.g. evening peak) → positive PEA → you pay more than the base rate
When a network tariff is configured (recommended), the full PEA formula accounts for GST and network charges:
PEA = GST × Spot + Tariff - GST × TWAP - AvgDailyTariff - BPEA
Final Rate = Base Rate + PEA
Where:
- GST = 1.1 (10%)
- Spot = Current wholesale price (c/kWh) from AEMO or Amber
- Tariff = Current period's network charge from your DNSP (c/kWh)
- TWAP = 30-day Time Weighted Average Price (c/kWh)
- AvgDailyTariff = 24-hour average network tariff (c/kWh)
- BPEA = Benchmark Performance Efficiency Adjustment (1.7 c/kWh)
If no network tariff is configured, the simpler legacy formula is used:
PEA = Spot - TWAP - BPEA
Final Rate = Base Rate + PEA
PowerSync calculates the TWAP dynamically from actual wholesale prices using a rolling 30-day window. Samples are recorded every 4 minutes (with deduplication) and persisted to storage so the history survives HA restarts.
On a fresh install, TWAP falls back to 8.0 c/kWh until enough data is collected (~1 hour / 12 samples). You can also set a manual TWAP override in the options flow if you know your current TWAP from your Flow Power bill.
Flow Power pays a fixed export rate during Happy Hour (5:30pm - 7:30pm daily). Outside Happy Hour, export is valued at 0 c/kWh.
The optimizer uses these rates automatically — it will prefer to export battery power during the Happy Hour window and avoid exporting at other times.
PowerSync can look up your DNSP network tariff rates automatically using the aemo_to_tariff library. This is used for:
- The v2 PEA formula (more accurate pricing)
- The Network Tariff sensor (shows current TOU network charge)
- The Amber Comparison sensor (see below)
During setup, select your DNSP (Distribution Network Service Provider) and tariff code:
| Region | Available DNSPs |
|---|---|
| NSW1 | Ausgrid, Endeavour, Essential |
| QLD1 | Energex, Ergon |
| SA1 | SAPN |
| VIC1 | Powercor, CitiPower, AusNet, Jemena, United |
| TAS1 | TasNetworks |
If your tariff isn't available in the library, you can enter manual rates (flat or TOU) with peak/shoulder/off-peak periods and other fees.
Connect your Flow Power kWatch portal account to get actual billing metrics directly from Flow Power. This requires your portal email, password, and SMS MFA verification.
Once connected, PowerSync creates sensors for your actual account PEA, LWAP, TWAP, demand, and DLF — updated every 30 minutes from the portal.
Setup:
- In PowerSync options, select Connect Flow Power Portal
- Enter your Flow Power portal email and password
- Enter the SMS MFA code sent to your phone
- Portal data will appear as sensors within a few minutes
Portal sessions are persisted across HA restarts. If the session expires, you'll need to re-authenticate via the options flow.
When network tariff is configured, PowerSync creates an Amber Comparison sensor that shows what you would be paying on Amber Electric for the same wholesale price:
Amber Equivalent = GST × Spot + Tariff + Markup
The default markup varies by region (NSW: 4.2c, QLD: 4.0c, SA: 4.2c, VIC: 4.0c) and can be customised in the options flow.
| Option | Description | Default |
|---|---|---|
| NEM Region | Your grid region (NSW1, QLD1, VIC1, SA1) | NSW1 |
| Price Source | AEMO Direct or Amber API | AEMO |
| Network Tariff | Your DNSP and tariff code | — |
| Base Rate | Your Flow Power base rate in c/kWh (from your plan) | 34.0 |
| PEA Enabled | Enable dynamic PEA pricing adjustment | Yes |
| Custom PEA | Override the calculated PEA with a fixed value from your bill | Auto |
| TWAP Override | Manually set TWAP instead of dynamic tracking (c/kWh) | Auto |
| Amber Markup | Markup used in Amber Comparison sensor (c/kWh) | Region default |
| Manual Network Rates | Enter flat or TOU rates manually instead of using the tariff library | Off |
| Sensor | Unit | Description |
|---|---|---|
| Flow Power Import Price | $/kWh | Current import rate (Base Rate + PEA) |
| Flow Power Export Price | $/kWh | Export rate — Happy Hour rate or 0 |
| Flow Power TWAP 30-Day Average | c/kWh | Rolling 30-day wholesale average |
| Flow Power Network Tariff | c/kWh | Current TOU network charge (v2 only) |
| Flow Power Amber Comparison | $/kWh | Equivalent Amber Electric price (v2 only) |
The TWAP sensor includes attributes: days_of_data, sample_count, using_fallback, and twap_dollars.
These sensors are only available when the Flow Power portal is connected:
| Sensor | Unit | Description |
|---|---|---|
| Flow Power PEA (Actual) | c/kWh | Your actual PEA from Flow Power billing |
| Flow Power PEA 30-Day | c/kWh | 30-day rolling PEA |
| Flow Power BPEA (Benchmark) | c/kWh | The benchmark PEA target |
| Flow Power CPEA (Customer) | c/kWh | Your customer PEA (LWAP - TWAP) |
| Flow Power PEA Import | c/kWh | Import-only PEA |
| Flow Power LWAP | c/kWh | Load Weighted Average Price |
| Flow Power LWAP (Actual) | c/kWh | Actual LWAP from billing period |
| Flow Power TWAP (Portal) | c/kWh | TWAP from portal (compare with dynamic TWAP) |
| Flow Power Avg Spot Price | c/kWh | Average Regional Reference Price |
| Flow Power DLF (Site Losses) | — | Distribution Loss Factor for your site |
| Flow Power Avg Demand | kW | Your average demand |
| Flow Power Max Demand | kW | Your maximum demand |
Static pricing with AEMO spike detection for VPP participation. No API token required. See Advanced Features for details on automatic discharge during price spikes.
Static time-of-use pricing for NZ electricity retailers. No API token required — rates are entered during setup from your plan details. All rates in NZD cents per kWh.
NZ TOU pricing follows the Electricity Authority's mandated TOU structure: 3-tier pricing (Peak, Shoulder, Off-Peak) with weekday-only peaks and weekends typically off-peak or shoulder.
| Retailer | Plan | Key Feature |
|---|---|---|
| Octopus Energy NZ | Standard TOU | 3-tier peak/shoulder/off-peak with TOU export rates |
| Electric Kiwi | Standard TOU | 3-tier pricing (Hour of Power selected via Electric Kiwi app) |
| Contact Energy | Good Weekends | Free electricity on weekends |
| Contact Energy | Good Nights | Free electricity 9pm-midnight every night |
| Contact Energy | Good Charge | EV-focused with cheap overnight rate |
| Custom NZ TOU | Any plan | Enter your own rates for any NZ retailer |
Standard NZ TOU periods (used by most retailers):
| Period | Weekdays | Weekends |
|---|---|---|
| Peak | 7-9am, 5-9pm | — |
| Shoulder | 9am-5pm | 7am-9pm |
| Off-Peak | 9pm-7am | 9pm-7am |
- Select New Zealand TOU as your electricity provider
- Choose your retailer (or Custom for any NZ plan)
- Select your distribution zone (Vector, Wellington, Orion, Powerco, Unison, Aurora, or Other)
- Review and adjust the pre-filled rates for your plan (or enter rates manually for Custom)
- Peak, Shoulder, Off-Peak import rates (NZD c/kWh)
- Peak and Off-Peak export rates (NZD c/kWh)
- Daily supply charge (NZD c/day)
| Zone | Region |
|---|---|
| Vector | Auckland |
| Wellington Electricity | Wellington |
| Orion | Canterbury |
| Powerco | Waikato / Taranaki / Manawatu |
| Unison | Hawke's Bay / Rotorua / Taupo |
| Aurora | Otago / Southland |
| Other | Any other network area |
- Rates are stored as a TOU tariff schedule — the same format used by all other providers
- The LP optimizer uses your TOU rates to calculate optimal charge/discharge schedules, with weekday-only peaks handled automatically
- If you have a Tesla Powerwall, the TOU schedule is synced to the Powerwall for native tariff-aware behaviour
- Rates can be updated anytime via the integration options flow (Settings > Devices & Services > PowerSync > Configure)
- Electric Kiwi Hour of Power is not modelled in the TOU schedule — select your free hour via the Electric Kiwi app as usual
- Contact Good Weekends uses a 0 c/kWh rate for all weekend hours — the optimizer will prefer weekend consumption
- Contact Good Nights uses a 0 c/kWh rate for 9pm-midnight — the optimizer may shift load to this window
- Template rates are approximate starting points — always verify against your actual plan rates
Hourly day-ahead electricity pricing for European markets. Uses the free EPEX Predictor API which sources data from ENTSO-E and Energy-charts.info. No API key or account required.
| Code | Region |
|---|---|
| DE | Germany |
| AT | Austria |
| BE | Belgium |
| NL | Netherlands |
| SE1 | Sweden (Zone 1) |
| SE2 | Sweden (Zone 2) |
| SE3 | Sweden (Zone 3) |
| SE4 | Sweden (Zone 4) |
| DK1 | Denmark (Zone 1) |
| DK2 | Denmark (Zone 2) |
- Select EPEX Day-Ahead (EU) as your electricity provider
- Choose your bidding zone (e.g. BE for Belgium, DE for Germany)
- Enter your surcharge — fixed network fees, levies, and other per-kWh charges (ct/kWh)
- Enter your tax percentage — VAT applied on top of the total price (e.g. 21 for Belgium, 19 for Germany)
- Optionally set a fixed export rate — your feed-in tariff in ct/kWh. Leave at 0 to use the wholesale price for export valuation.
| Option | Description | Default |
|---|---|---|
| Bidding Zone | Your EPEX electricity market region | DE |
| Surcharge | Fixed additional charges per kWh (network fees, levies, etc.) | 0 ct/kWh |
| Tax % | VAT percentage applied to the total price | 0% |
| Fixed Export Rate | Feed-in tariff in ct/kWh (0 = use wholesale) | 0 ct/kWh |
- Prices are fetched every 30 minutes from the EPEX Predictor API
- The API applies surcharges and tax server-side, so returned prices are the final consumer price
- Hourly intervals are automatically expanded to 5-minute resolution for the LP optimizer
- Data is converted to the standard internal format, so all features work seamlessly:
- Smart Optimization (LP optimizer) with full 24-48 hour forecast
- TOU tariff sync to Tesla/Sigenergy/FoxESS/GoodWe/Sungrow
- Battery export curtailment at negative prices
- Export boost and chip mode
- Day-ahead prices are typically published around 12:00-13:00 CET for the following day
- The API includes both known (published) and predicted prices — predictions are updated as new data becomes available
- If you have a fixed feed-in tariff from your energy supplier, enter it as the Fixed Export Rate so the optimizer accurately values exports
- All prices are in euro cents per kWh (ct/kWh), which maps directly to the internal pricing format
- This provider does not include AEMO spike detection (that is an Australian NEM feature)
Full support for UK users with Octopus Energy dynamic tariffs.
| Product | Description |
|---|---|
| Agile Octopus | Dynamic half-hourly pricing based on wholesale rates |
| Octopus Go | EV tariff with cheap overnight rates (00:30-05:30) |
| Intelligent Octopus Go | Smart EV/battery tariff with dispatch-aware off-peak |
| Octopus Flux | Solar/battery optimized import/export tariff |
| Intelligent Octopus Flux | Smart battery optimized tariff |
| Octopus Tracker | Daily wholesale price tracking |
- Half-hourly pricing (same 30-minute resolution as Amber)
- Automatic TOU sync to all supported battery systems
- Regional pricing via GSP (Grid Supply Point) selection
- Negative price handling
- Export rates: auto-discovered from your Octopus account, or uses Outgoing Octopus as default
- BottlecapDave integration bridge (v2.4.1+): When HomeAssistant-OctopusEnergy is installed, PowerSync reads rates directly from it — avoiding double API calls and getting your actual export tariff automatically
-
Saving Sessions auto-join (v2.4.6+): Works with both Direct API mode and BottlecapDave's integration. When using Dave's integration, PowerSync calls his
join_octoplus_saving_session_eventservice automatically
- Select Octopus Energy (UK) as your electricity provider
- Choose your product (Agile, Go, Intelligent Go, Flux, Tracker)
- Select your GSP region (A-P) — find this on your Octopus bill
- (Optional) Configure Saving Sessions — choose Direct or Entity (Dave's integration) as source
| Code | Region |
|---|---|
| A | Eastern England |
| B | East Midlands |
| C | London |
| D | Merseyside and North Wales |
| E | Midlands |
| F | North Eastern |
| G | North Western |
| H | Southern |
| J | South Eastern |
| K | South Wales |
| L | South Western |
| M | Yorkshire |
| N | South Scotland |
| P | North Scotland |