Meters¶
RECreation considers two types of meters:
- DSO meters (CPE) — visible to the DSO. These provide all the data required to operate and manage the REC.
- Internal meters — visible only to the asset owner(s) and the REC manager. They provide dedicated measurements per resource and always sit behind a DSO meter.
A CPE must be created first; internal meters are then linked to it via the cpe_id field.
Meter Fields¶
| Field | Required | Description |
|---|---|---|
identifier |
✅ | Unique meter code, up to 20 characters. Portuguese CPEs start with PT followed by 0002 for E-Redes (e.g. PT0002000000000000000000001234) |
production_identifier |
— | Identifying code for the generation (injection) point of the meter. Mandatory for Prosumer (IAC) meters, where consumption and generation are metered under separate identifiers by the DSO |
type |
✅ | Meter type — see table below |
installation_type |
✅ | Type of installation behind the CPE — see table below |
status |
✅ | Whether this meter is active and should be included in market and settlement processes |
ord |
— | Name of the DSO (e.g. E-Redes) |
cpe_id |
— | Internal UUID of the parent CPE meter (required only for Internal type meters) |
start_date |
✅ | First day (inclusive, Europe/Lisbon) on which this meter version applies |
end_date |
— | Last day (inclusive) on which this meter version applies. null = open-ended |
Meter Validity¶
identifier and type are fixed when the meter is created. All other fields are dated: an
update with PUT /meters/{meter_id} requires start_date and applies only from that day (or
for [start_date, end_date]), keeping the meter's earlier history. This lets an internal meter
move to a different parent CPE, or a meter become inactive, from a given day.
- Replacing a physical meter or changing its
typemeans ending the old meter and creating a new one. Anidentifiercan never be reused in the same community, even after the old meter has ended. GET /meters?effective_at=YYYY-MM-DDreturns the meters valid on that day.DELETE /meters/{meter_id}?effective_at=YYYY-MM-DDends the meter from that day. It is refused while a resource is still assigned to the meter on or after that day.
See Business Validity.
Meter Types¶
| Type | Description |
|---|---|
CPE |
Standard DSO consumption/production point — the primary measurement point for market and settlement |
Internal |
Resource-dedicated meter sitting behind a CPE, used for complex structures with multiple assets per CPE |
Aggregator |
"Virtual" meter that the DSO sends aggregated allocation data for. The DSO does have a code for this meter so despite it not physically existing and measuring anything, it is for all intents and purposes a real entity in the community. |
Installation Types¶
The installation_type identifies what kind of energy installation is behind the meter:
| Installation Type | Code | Description |
|---|---|---|
| Self-Consumption | IAC |
Self-consumption installation (prosumer with generation + consumption) |
| Consumption | IC |
Consumption-only installation |
| Generation | IPR |
Production/generation-only installation |
| Storage | IA |
Storage installation |
RESP (Public Grid) Configuration¶
By default, the platform assumes every pair of CPEs is interconnected through the public grid (RESP). Some pairs — such as those within an industrial park — may also be connected through a private grid.
When two CPEs are connected only through RESP, any energy exchanged between them is subject to the self-consumption grid access tariff. It is important to correctly identify which pairs rely solely on the public grid.
RESP state is dated. Each CPE pair has an is_active value per period, with start_date and
an optional inclusive end_date. Change it for a period with
PUT /resp/{resp_id}?effective_at=YYYY-MM-DD[&end_date=YYYY-MM-DD] and is_active in the
body. GET /resp?effective_at=YYYY-MM-DD returns the state on that day.