canonical: https://jentic.com/apis/corrently.io/corrently-io

# Corrently.io

Jentic publishes the only available OpenAPI specification for Corrently.io, keeping it validated and agent-ready. The Corrently.io API is the broader STROMDAO platform that covers metering reads, electricity receipts (Strom-Quittung) with German fiscal TSE signatures, energy tariff lookups, customer Stromkonto registration and balances, and green-power scheduling primitives. It also exposes data from public shared smart meters (OpenMeter), OCPP charging sessions, and easee wallbox sessions for prosumer and grid-operator workflows.

## For AI agents

Read smart meter data, generate fiscal-grade electricity receipts with TSE signatures, manage Stromkonto customer accounts, and access green-energy dispatch and tariff data on the Corrently.io platform.

## Scope

Does not handle non-German grid operations, retail tariff selling, or generic IoT device control beyond easee/OCPP/OpenMeter - use for STROMDAO Corrently metering, receipts, Stromkonto, and green-energy data only.

## Capabilities

- Read and submit meter readings to the metering endpoint for prosumer and grid-operator workflows
- Create and finalise an electricity receipt (Strom-Quittung) with TSE-compliant signatures and ZUGFeRD XML output
- Register a new Stromkonto customer, log them in via email, and prepare a transaction against the account
- Look up energy tariff information and price components used to bill customers
- Pull last-session data from easee wallboxes and OCPP charging stations for which the user has access
- Query public OpenMeter shared smart meters for activities, meter inventory, and recent readings in Germany
- Get the green-energy dispatch schedule and best-hour windows by postal code

## Use cases

### TSE-Compliant Electricity Receipts

German energy resellers prepare, finalise, and archive electricity receipts (Strom-Quittung) that meet TSE fiscal requirements. The API offers a prepare/commit pattern with a separate signature-retrieval step plus ZUGFeRD XML output for downstream accounting systems.

Example prompt: Call POST /quittung/prepare with the receipt fields, POST /quittung/commit to finalise, then POST /quittung/tsesignature for the TSE signature and GET /quittung/zugferd for the archival XML.

### Smart Meter and Wallbox Aggregation

Aggregate readings from a customer's smart meter, easee wallbox, and any OCPP-based charger into a single dashboard. The OpenMeter endpoints add public meter data for benchmarking, while the metering endpoint accepts new readings from a connected device.

Example prompt: Call GET /alternative/easee/lastSessions for wallbox sessions, GET /alternative/ocpp/lastSessions for public chargers, GET /metering/reading for the customer's meter, and merge the data into the dashboard.

### Stromkonto Customer Lifecycle

Onboard new energy customers and manage their Stromkonto account end-to-end: register, log in via email, prepare a transaction such as a tariff change, and read balances on demand. The choices endpoint surfaces what options the customer can pick from at each step.

Example prompt: Call POST /stromkonto/register to create the account, POST /stromkonto/login to authenticate the user, GET /stromkonto/choices to render available options, and POST /stromkonto/prepareTransaction when the customer chooses one.

### AI Agent for Prosumer Energy Operations via Jentic

An assistant for a German prosumer answers operational questions like 'when did my wallbox last charge?' or 'is my receipt registered with the TSE?' by routing each question to the right Corrently.io operation. The agent reasons over capabilities rather than memorising 26 endpoints.

Example prompt: Search Jentic for 'last easee wallbox session' or 'finalise Strom-Quittung receipt', load the matching operation, and execute it with the requested customer or receipt ID.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /quittung/prepare | Prepare a Strom-Quittung receipt |
| POST | /quittung/commit | Finalise a prepared receipt |
| POST | /quittung/tsesignature | Retrieve the TSE signature for a receipt |
| POST | /stromkonto/register | Register a new Stromkonto |
| POST | /stromkonto/login | Log in via email |
| GET | /metering/reading | Read a smart meter |
| GET | /gsi/bestHour | Find the best hour for green-energy consumption |
| GET | /tariff/components | List energy tariff price components |

## Key resources

- **Metering** — Read and submit smart meter readings.
- **Quittung (Receipts)** — Prepare, commit, and retrieve TSE-signed electricity receipts plus ZUGFeRD XML.
- **Stromkonto** — Register, log in, prepare transactions, and read balances and choices for customers.
- **GSI** — GrünstromIndex prediction, dispatch schedule, market data, and best-hour selection.
- **Tariffs** — Energy tariff lookup with price components.
- **Alternative** — easee wallbox, OCPP charger, and OpenMeter public smart meter data.
- **WiM** — WiM (Wechselprozesse im Messwesen) process status.

## Why Jentic

- **Setup:** Wiring the full Corrently.io API by hand means coding against its STROMDAO receipt (Quittung), Stromkonto, and metering endpoints yourself and pinning the German-grid v2.0 host. Through Jentic you install once, import Corrently.io from the API Directory, and your agent calls it.
- **Permission scoping:** The Corrently.io operations post to collection paths like /quittung/prepare and /stromkonto/register with no resource id in the URL, so scope by operation: limit the agent to the operations it needs, such as preparing a receipt or reading a meter value. You choose the operations it may call, so state-changing ones like committing a receipt or registering a Stromkonto are not included unless you add them.
- **Credential handling:** This Corrently.io surface takes no credential; where a call needs a session, that value is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'prepare an energy receipt' or 'read the latest meter value', and Jentic returns the matching Corrently.io operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Corrently Energy API** — Focused green-energy forecast surface (GrünstromIndex, CO2, solar) of the Corrently platform.
- **Octopus Energy API** — UK retail energy API with smart-tariff and consumption endpoints.
- **Climatiq API** — Emission factor API that can convert Corrently meter readings into auditable CO2 numbers.

## FAQ

### Why is there no official OpenAPI spec for Corrently.io?

STROMDAO publishes Corrently documentation but not a single OpenAPI specification covering the full platform. Jentic generates and maintains this spec so that AI agents and developers can call Corrently.io via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Corrently.io API use?

The OpenAPI spec for this surface declares no global security scheme - endpoints are reached either anonymously or with a token tied to the customer Stromkonto, established via POST /stromkonto/login. Through Jentic the customer credential is stored encrypted and injected only on the operations that need it.

### Can I create a TSE-signed electricity receipt with this API?

Yes. The /quittung group implements a prepare/commit/sign flow: POST /quittung/prepare collects data, POST /quittung/commit finalises the receipt, and POST /quittung/tsesignature plus POST /quittung/tsedata return the TSE artefacts, with GET /quittung/zugferd providing the archival XML.

### How do I onboard a new Stromkonto customer?

Call POST /stromkonto/register with the customer details, then POST /stromkonto/login when the customer needs an authenticated session. GET /stromkonto/choices renders the options available to that customer and POST /stromkonto/prepareTransaction stages a chosen action.

### What are the rate limits for the Corrently.io API?

The OpenAPI spec does not declare numeric rate limits. Treat HTTP 429 responses as authoritative, back off using the Retry-After header where present, and consult console.corrently.io for plan-specific limits.

### How do I read a customer's smart meter through Jentic?

Search Jentic for 'read smart meter' or 'meter reading', load GET /metering/reading, and execute with the meter identifier. Jentic returns the operation schema so the agent does not need to parse Corrently documentation.

### Can I limit what my agent is allowed to do with the Corrently.io API?

Yes. Because you run Jentic One yourself, your own rules decide which Corrently.io operations the agent may call, and the credentials it may use. Since these operations post to collection paths like /quittung/prepare and /stromkonto/register with no resource id in the URL, you scope by operation: allow only what the agent needs, such as reading a meter value or preparing a receipt. State-changing operations like committing a receipt with POST /quittung/commit or registering a customer with POST /stromkonto/register stay out of reach unless you add them.
