Insights
The complete guide to automated PPA billing for C&I solar
How operators turn meter, inverter and tariff data into billing-grade savings reports and PPA invoices across many sites, without spreadsheets.
Andreas Lehner, CCO · 3 min read
Published

Every month, an operator selling power under a PPA has to turn raw data into an invoice someone will pay. On five sites, a spreadsheet works. On fifty or more commercial and industrial (C&I) sites across different inverter brands, meters and tariffs, the spreadsheet becomes the risk. One wrong cell, one missing week of meter data or one outdated tariff, and the invoice is disputed.
Automated PPA billing means the same steps happen the same way every month, for every site, with a record of where each number came from. This guide covers those steps.
1. Start from the right data sources
Billing needs three kinds of data:
- Meter data: the billing meter is the reference wherever one exists. It measures what was actually delivered to the customer.
- Inverter data: the backup when a meter drops out, and the way to check that meter readings make sense.
- Tariff data: the price per kWh, which can change by time of day, season or contract year.
A multi-brand monitoring platform pulls meter and inverter data into one place, so billing doesn't depend on logging into each vendor portal.
2. Check data quality before anything is billed
Before a number goes on an invoice, run checks on it:
- Gaps: missing intervals, a meter that was offline, an API that stopped sending.
- Spikes and flat lines: values that are physically impossible, or a meter stuck on the same reading.
- Meter vs inverter: if the two disagree by more than the expected losses, look at it before billing.
Flag each issue on the site and the month it affects, so someone reviews it before the invoice goes out, not after the customer calls.
3. Freeze the month
Data keeps arriving after the month ends. A vendor API comes back and fills a gap, or a meter uploads late. To keep invoices stable, set a monthly data freeze: a fixed day after month-end when that month's data is locked for billing. Changes after the freeze go into the next invoice as a correction, with a note. They don't silently change an invoice that has already been sent.
4. Write estimation rules down
Some gaps can't be filled. The contract should say what happens then, and the billing process should follow it the same way every time. Common rules:
- Use inverter data, adjusted for typical losses, when the meter is missing.
- Use irradiance-based expected yield when both are missing.
- Mark every estimated value on the invoice or in its backup report.
The key word is *marked*. Estimated values are fine when both sides agreed how to calculate them and can see where they were used.
5. Model the tariff structure properly
PPA tariffs are rarely one flat price. Common structures:
- Flat rate, often with yearly escalation.
- Time-of-use, with different prices for peak, standard and off-peak hours.
- Discount to grid, where the PPA price is set as a percentage below the utility tariff the customer would otherwise pay.
Discount-to-grid and savings reports both need the utility tariff for each site. AMMP keeps a tariff database for this, so the comparison uses the tariff that actually applies to the site.
6. Separate savings reports from invoices
Two documents, two audiences:
- The PPA invoice says how many kWh were delivered and what is owed.
- The savings report shows the customer what they saved compared with the grid. It's often what keeps them happy with the contract.
Both should come from the same frozen data, so the numbers always match.
7. Deliver on a schedule, in the format people use
Billing runs to a calendar. Schedule reports to go out automatically after the freeze, in Word, PowerPoint or PDF, and with your own branding on reports where customers expect it. Nobody should need to log in to get their invoice.
Where Ray helps
Ray, AMMP's AI coworker, checks every site daily. He flags data gaps and meter-versus-inverter differences before month-end, so they are fixed before the freeze rather than found during billing. He also drafts the monthly reports for a person to review and send.
See how this works across a portfolio on investor and PPA reporting.
Questions about your own portfolio? Write to sales@ammp.io.
