OCPI 2.3.0

Last updated: September 15, 2025

Everything you need to know about OCPI 2.3.0 and the ENAPI platform

The ENAPI Transaction Broker supports OCPI 2.3.0. Note that the following modules are not yet implemented:

  • ChargingProfiles

  • Booking

  • Payments

Furthermore, the CANCEL_RESERVATION command is not yet implemented.

We plan on supporting them soon, but please let us know if you have an urgent need for these modules.

Functionally OCPI 2.3.0 performs very similarly to OCPI 2.2.1. If you already have a connection with ENAPI using 2.2.1, the switch to 2.3.0 is straight-forward. Please contact us if you would like to upgrade your OCPI connection.

🔑 Token Encoding

OCPI 2.2 introduced base64 token encoding of authorization tokens. However, not all platforms support token encoding. ENAPI provides configuration to each platform, allowing you to define whether tokens should be encoded or not.

🔌 Roaming Partners

ENAPI's Credentials

As part of the Credentials handshake, ENAPI will provide your system with its hub_party_id (DEENA).

Receiving Roaming Partner's Credentials

ENAPI will also provide your active roaming partners in the Credentials data. Data received from roaming partners via ENAPI will have the country_code and party_id of the roaming partner in the data object.

A Credentials PUT request will be made by ENAPI upon agreement with a new roaming partner.

Hub Client Info is implemented as a means of discovering OCPI parties that you have a roaming agreement with. ENAPI sends a request to both sides when an agreement is made. Currently ENAPI only tracks CONNECTED and SUSPENDED statuses.

🌐 Version Interoperability

Roaming with a 2.1.1 Partner

  • Unless explicitly back-ported by ENAPI, your partner will not receive data fields and enumeration values that were added in OCPI 2.2.1 or later.

Roaming with a 2.2.1 Partner

  • Unless explicitly back-ported by ENAPI, your partner will not receive data fields and enumeration values that were added in OCPI 2.3.0.

Open Enums

ENAPI does not automatically register new enumeration values. Please contact us if you have an enumeration value you would like to register with us. We will be happy to support your use case.