The signed meter values of one session
The record in stop 06 showed 38.20 kWh. Behind that number stands a dataset the meter inside the charger signed: two readings, the identification of the card, and a signature over all of it.
This is that dataset, in the Open Charge Metering Format that German chargers use under measuring law, as a verification tool reads it.
The questionWhat did the meter sign, what did it not, and how can anyone check that the 38.20 kWh are genuine?
Guess firstThe dataset carries no price and no name. What makes it worth signing?RevealHide
Two readings, their times, the register they came from and the identifier of the card. Everything a bill rests on, and nothing that a backend could want to change later.
What you are looking at
Where measuring law asks for it, as in Germany, the meter signs its readings so that a driver can check them later (stop 06). The common container for that is , the Open Charge Metering Format, kept by SAFE e.V. and used by meters and charge controllers across manufacturers: a JSON section with gateway, meter, identification and readings, followed by the signature. carries the dataset from the charger to the backend, passes it on to the provider, and the invoice links to it.
Select the lines to read them as a verification tool does.
Charge point DE*SMP*E004417*1, Monday 12:31 to 1:30 PM. Shown with line breaks; the charger hands it out as one string.
- Line 1A format with three parts
OCMF, the Open Charge Metering Format, is what German chargers hand out as proof: the word OCMF, then the data as JSON, then the signature, separated by vertical bars. The meter signs the middle part.
"GS": "CPC-4417-A","GV": "2.3.1","MM": "DCM-500","MS": "DCM500-00318842","MF": "1.2.0","IL": "VERIFIED","ID": "04E7A9C21B6F80","CI": "DE*SMP*E004417*1",{"RU": "kWh",},{"TM": "2026-10-05T13:30:55,000+0200 S", "TX": "E","RI": "01-0B:01.08.00*FF","RU": "kWh","RT": "DC","EF": "","ST": "G"}]}
ocmf-T2113.txt: the whole file, to copy
OCMF|{
"FV": "1.0",
"GI": "Metertec CP-Controller",
"GS": "CPC-4417-A",
"GV": "2.3.1",
"PG": "T2113",
"MV": "Metertec",
"MM": "DCM-500",
"MS": "DCM500-00318842",
"MF": "1.2.0",
"IS": true,
"IL": "VERIFIED",
"IF": ["RFID_PLAIN", "OCPP_AUTH_TLS"],
"IT": "ISO14443",
"ID": "04E7A9C21B6F80",
"CT": "EVSEID",
"CI": "DE*SMP*E004417*1",
"RD": [
{
"TM": "2026-10-05T12:31:40,000+0200 S",
"TX": "B",
"RV": 1234.5678,
"RI": "01-0B:01.08.00*FF",
"RU": "kWh",
"RT": "DC",
"EF": "",
"ST": "G"
},
{
"TM": "2026-10-05T13:30:55,000+0200 S",
"TX": "E",
"RV": 1272.7678,
"RI": "01-0B:01.08.00*FF",
"RU": "kWh",
"RT": "DC",
"EF": "",
"ST": "G"
}
]
}|{
"SA": "ECDSA-secp256r1-SHA256",
"SD": "3045022100d4c1a7f3e9b2c6d8a1f4e7b0c3d6a9f2e5b8c1d4a7f0e3b6c9d2a5f8e1b4c7d0022075e2b8d1c4a7f0e3b6c9d2a5f8e1b4c7d0a3f6e9b2c5d8a1f4e7b0c3d6a9f2e5b8"
}A composed dataset in the structure of OCMF: format and gateway, meter, identification, readings and signature, with the field codes and values the specification defines.
Published for the meter, not for the session. One key verifies every dataset the meter ever signed.
- Line 1Where the key comes from
The public key belongs to the meter and is published with the charge point: on a sticker, through the operator, and in Germany in the charge point registry of the Bundesnetzagentur. It changes only when the meter is replaced.
Verification pairs the public key of the meter with the signed dataset; the key travels in OCPP as well, so backends can check the data on arrival.
What the signature covers, and what it leaves out
- Covered. The readings, their times, the register, the meter's identity and the identification of the user, all in one hash. A changed digit anywhere breaks the signature.
- Not covered. The price, the tariff, the driver's name and the invoice. Those come from the backend and the provider; measuring law protects the measurement, contract law the price.
- The step in between. The charge controller assembles the dataset, but the meter signs it. That is why the gateway and the meter are named separately: the signature belongs to the meter's serial number.
From dataset to invoice line
The backend reads the two signed values from the OCPP messages, builds the record with 38.20 kWh, and the provider's invoice carries the dataset or a link to it, so that the commuter's employer can verify the line with a public tool. From October 2028 the EU rules add accuracy classes for the meter itself; the signed dataset stays the way to prove that a stated reading is the meter's own. The meter inside the charger is the subject of Charging hardware, stop 07.
Check your understanding
3 questions. Answer all of them to complete this stop. Each answer explains itself.
What does ST with the value G say about the reading?
ST is the meter status at the time of the reading; G stands for good. Other letters report a timeout, a missing or an exchanged meter.
What lets anyone prove that the two readings are the meter's own and unaltered?
The meter signed the data section with its private key; the public key, published for the meter, verifies it.
What did the session deliver according to the dataset?
1272.7678 minus 1234.5678 kWh. The register counts up for the life of the meter; the session is a difference.
- OCPP Open Charge Point Protocol: the open protocol between a charger and its operator's backend. EV charging fundamentals, stop 03 Glossary
- OCPI Open Charge Point Interface: an open protocol for roaming between operators and e-mobility service providers. EV charging fundamentals, stop 03 Glossary
- OCMF Open Charge Metering Format: the common container for signed meter readings of a charging session, with gateway, meter, identification, readings and signature, kept by SAFE e.V. Glossary
- Open Charge Alliance: Signed Meter Values (Eichrecht paper), version 1.0, February 2025. https://openchargealliance.org/wp-content/uploads/2025/05/signed_meter_values-v10-1.pdf. Checked 09 Oct 2026. Licence: CC BY-ND 4.0.
- SAFE e.V.: OCMF, Open Charge Metering Format: specification on GitHub. https://github.com/SAFE-eV/OCMF-Open-Charge-Metering-Format. Checked 11 Oct 2026.
- Open Charge Alliance: Signed Meter Values (Eichrecht paper), version 1.0, February 2025. https://openchargealliance.org/wp-content/uploads/2025/05/signed_meter_values-v10-1.pdf. Checked 09 Oct 2026. Licence: CC BY-ND 4.0.
- SAFE e.V.: OCMF, Open Charge Metering Format: specification on GitHub. https://github.com/SAFE-eV/OCMF-Open-Charge-Metering-Format. Checked 11 Oct 2026.
- Open Charge Alliance: Signed Meter Values (Eichrecht paper), version 1.0, February 2025. https://openchargealliance.org/wp-content/uploads/2025/05/signed_meter_values-v10-1.pdf. Checked 09 Oct 2026. Licence: CC BY-ND 4.0.
- Open Charge Alliance: Signed Meter Values (Eichrecht paper), version 1.0, February 2025. https://openchargealliance.org/wp-content/uploads/2025/05/signed_meter_values-v10-1.pdf. Checked 09 Oct 2026. Licence: CC BY-ND 4.0.
- EUR-Lex: Directive (EU) 2026/706 amending Directive 2014/32/EU, Annex Va (MI-011). https://eur-lex.europa.eu/eli/dir/2026/706/oj. Checked 09 Oct 2026. © European Union, reused under Commission Decision 2011/833/EU.