Step 4: Verify NEM3 Export Rates
Retrieve NEM3 hourly export rates and compare them against post-solar export intervals from Account Cost Calculations.
Verify NEM3 (Net Billing Tariff) export rates by comparing hourly export-rate lookups against post-solar cost calculation behavior.
Use this step when the post-solar tariff uses NEM3 export-rate logic. You will retrieve hourly export rates for the same validation period and compare them against post-solar intervals where itemQuantity is negative.
NEM3 export-rate workflow
- Identify the export intervals from Step 3.
- Retrieve the hourly export-rate property lookups for the same date range.
- Match each export interval by
fromDateTimeandtoDateTime. - Compare the export-rate lookup value against the post-solar
rateAmount. - Account for any applicable export savings adder.
- Repeat the comparison for any other export intervals you want to validate.
Retrieve hourly export rates
Use the export-rate property key for the post-solar tariff and territory. This example retrieves the hourly export rates for July 1, 2023:
GET /rest/public/properties/avoidedCostCalculatorHourlyExportRate2023PGECZ3B/lookups?fromDateTime=2023-07-01&toDateTime=2023-07-02&pageCount=100&pageStart=0The following response has been shortened to show the hourly lookup values around the first export interval:
{
"status": "success",
"count": 24,
"type": "PropertyLookup",
"results": [
{
"lookupId": 51326706,
"propertyKey": "avoidedCostCalculatorHourlyExportRate2023PGECZ3B",
"fromDateTime": "2023-07-01T07:00:00",
"toDateTime": "2023-07-01T08:00:00",
"bestValue": -0.050028220,
"bestAccuracy": 0,
"actualValue": -0.050028220,
"lseForecastValue": -0.050028220,
"lseForecastAccuracy": null,
"forecastValue": null,
"forecastAccuracy": null
},
{
"lookupId": 51326707,
"propertyKey": "avoidedCostCalculatorHourlyExportRate2023PGECZ3B",
"fromDateTime": "2023-07-01T08:00:00",
"toDateTime": "2023-07-01T09:00:00",
"bestValue": -0.049879550,
"bestAccuracy": 0,
"actualValue": -0.049879550,
"lseForecastValue": -0.049879550,
"lseForecastAccuracy": null,
"forecastValue": null,
"forecastAccuracy": null
},
{
"lookupId": 51326708,
"propertyKey": "avoidedCostCalculatorHourlyExportRate2023PGECZ3B",
"fromDateTime": "2023-07-01T09:00:00",
"toDateTime": "2023-07-01T10:00:00",
"bestValue": -0.051117190,
"bestAccuracy": 0,
"actualValue": -0.051117190,
"lseForecastValue": -0.051117190,
"lseForecastAccuracy": null,
"forecastValue": null,
"forecastAccuracy": null
}
],
"pageCount": 100,
"pageStart": 0
}| Field | Purpose |
|---|---|
propertyKey | Identifies the export-rate property being queried. |
fromDateTime / toDateTime | Defines the hourly interval for the export rate. |
actualValue | Export-rate value used for validation. |
bestValue | Best available export-rate value for the interval. |
lseForecastValue | Load-serving entity forecast value when available. |
Match the export interval
In Step 3, the first export interval occurred between 8 AM and 9 AM:
{
"fromDateTime": "2023-07-01T08:00:00-07:00",
"toDateTime": "2023-07-01T09:00:00-07:00",
"quantityKey": "consumption",
"rateAmount": 0.07187955,
"itemQuantity": -1.46189600,
"cost": -0.10508043,
"chargeType": "CONSUMPTION_BASED"
}The matching export-rate lookup is:
{
"lookupId": 51326707,
"propertyKey": "avoidedCostCalculatorHourlyExportRate2023PGECZ3B",
"fromDateTime": "2023-07-01T08:00:00",
"toDateTime": "2023-07-01T09:00:00",
"bestValue": -0.049879550,
"bestAccuracy": 0,
"actualValue": -0.049879550,
"lseForecastValue": -0.049879550,
"lseForecastAccuracy": null,
"forecastValue": null,
"forecastAccuracy": null
}Match intervals by hour. The calculation response includes the account time-zone offset, while the property lookup response shows the local timestamp without the offset.
Validate the export-rate relationship
For the 8 AM–9 AM interval, validate the export-rate relationship with this formula:
rateAmount + actualValue + adder = $0
Using the values above:
0.07187955 + (-0.049879550) = 0.022
The remaining $0.022 is the additional export savings adder for PGE Residential, non-CARE.
The original example identifies this adder in the tariff data:
Repeat for other export intervals
Repeat this comparison for each export interval you want to validate.
| Validation item | What to check |
|---|---|
| Hourly timestamp | The cost calculation interval and export-rate lookup interval match. |
itemQuantity | The value is negative, indicating export. |
rateAmount | The rate in the post-solar calculation reflects export-rate behavior. |
actualValue | The lookup value matches the expected export rate for the hour. |
| Adder | Any applicable adder reconciles the difference between rateAmount and actualValue. |
Next step
After you verify export-rate behavior, reconcile the hourly calculations with the Savings Analysis response.
Updated about 5 hours ago
