Skip to content
Documentation Menu

OCPP 2.0.1

Source: OCPP 2.0.1 Specification

OCPP 2.0.1 is a version of the Open Charge Point Protocol that reworks the protocol around a structured device model, replacing flat configuration keys with components and variables readable via GetVariables and GetBaseReport. It consolidates the 1.6 StartTransaction and StopTransaction messages into the single TransactionEvent message with Started, Updated, and Ended event types, and supports security profiles 1 through 3.

OCPP 2.0.1 reworks the protocol around a structured device model and consolidates the 1.6 start/stop messages into a single TransactionEvent. The emulator supports the core functional blocks plus security profiles 1–3.

What changed from 1.6

  • Device model — components and variables replace the flat configuration keys. Read with GetVariables / GetBaseReport, write with SetVariables.
  • TransactionEventStarted, Updated, and Ended events replace StartTransaction / StopTransaction and carry richer context.
  • Security profiles — from basic auth (profile 1) to mutual TLS (profile 3).

Transaction events

A session is a stream of TransactionEvent messages:

[2, "msg-010", "TransactionEvent", {
  "eventType": "Started",
  "timestamp": "2026-01-01T00:00:00Z",
  "triggerReason": "Authorized",
  "seqNo": 0,
  "transactionInfo": { "transactionId": "tx-001" }
}]

Reporting

Use GetBaseReport to pull the full device model, then SetVariableMonitoring and NotifyEvent to test monitoring and alerting paths in your CPMS.

Go deeper