CustomerInformation
Asks the station to report or erase the data it holds about a specific customer. Built for GDPR requests.
- Version
- OCPP 2.0.1
- Direction
- CSMS → Charge Point
- Functional block
- Diagnostics
There is no 1.6 equivalent, and its existence is a compliance requirement rather than an operational one. A charging station caches authorization tokens and transaction records, which are personal data.
report asks what the station holds; clear erases it. Both can be set in one request.
Request
| Field | Type | Required | Description |
|---|---|---|---|
requestId | integer | Required | Correlation id, echoed in NotifyCustomerInformation. |
report | boolean | Required | Report the data the station holds. |
clear | boolean | Required | Erase the data the station holds. |
customerIdentifier | string | Optional | An opaque customer identifier. |
idToken | IdTokenType | Optional | Identify the customer by token. |
customerCertificate | CertificateHashDataType | Optional | Identify the customer by certificate. |
json
[2, "19223201", "CustomerInformation", {
"requestId": 1101,
"report": true,
"clear": false,
"idToken": { "idToken": "04A1B2C3D4E580", "type": "ISO14443" }
}]Response
| Field | Type | Required | Description |
|---|---|---|---|
status | CustomerInformationStatusEnumType | Required | Result. |
statusInfo | StatusInfoType | Optional | Reason code. |
json
[3, "19223201", {
"status": "Accepted"
}]Values
CustomerInformationStatusEnumType
| Value | Meaning |
|---|---|
Accepted | The request will be processed. |
Rejected | Refused. |
Invalid | The customer could not be identified from what was supplied. |
Implementation notes
At least one identifier is required. Sending neither idToken, customerIdentifier nor customerCertificate gets Invalid.
`clear: true` is irreversible. Run the report first, keep it, then erase — an erasure request you cannot evidence is worse than one you have not run.
Erasing at the station does not erase anything in the CSMS. That is a separate job.