OCPI 2.3.0 | Booking 1.0

OCPI Implementation Guides

Comprehensive developer documentation for implementing the Open Charge Point Interface (OCPI) 2.3.0-booking-1.0 specification. Each guide covers a specific chapter — foundational concepts and core modules used to exchange data between CPO, eMSP, Hub, SCSP, and PTP platforms.

Content attribution: EVRoaming Foundation . This documentation is a reformat of the official OCPI 2.3.0-booking-1.0 protocol specification.

20 guides 119 total topics 20 of 20 available
5 topics Available

Front Matter

Protocol overview, copyright information, complete version history, document revision policy, and the full table of contents for all 19 chapters of the OCPI 2.3.0 specification.

FM.1FM.2FM.3FM.4FM.5
4 topics Available

OCPI - Open Charge Point Interface

Protocol overview and version history from OCPI 2.2 through 2.3.0, introduction and background of the Open Charge Point Interface, and its main functionality.

1.11.21.31.4
9 topics Available

Terminology and Definitions

Key terms, abbreviations, market roles, provider/operator distinctions, charging topology, variable naming conventions, cardinality, and data retention rules used throughout the OCPI protocol.

2.12.22.32.42.52.62.72.82.9
9 topics Available

Supported Topologies

Network topologies supported by OCPI, from simple peer-to-peer connections through dual and mixed-role configurations to Hub-based architectures with message routing.

3.13.23.33.43.53.63.73.83.9
11 topics Available

Transport and Format

JSON/HTTP transport layer, authentication, pull/push models, request and response formats, message routing, unique message IDs, interface endpoints, and offline behaviour.

4.14.24.34.44.54.64.74.84.94.104.11
5 topics Available

Status Codes

HTTP transport status codes and OCPI content-level status codes covering the success (1xxx), client error (2xxx), server error (3xxx), and hub error (4xxx) ranges.

5.15.25.35.45.5
5 topics Available

Versions Module

Required base module for any OCPI connection. Clients use it to learn which versions of OCPI a server supports, and which modules are available for each version.

6.16.26.36.46.5
5 topics Available

Credentials Module

Exchange of credentials tokens used for authorisation of requests between OCPI parties. Every OCPI request must contain a credentials token in the HTTP Authorization header.

7.17.27.37.47.5
5 topics Available

Locations Module

Charging Location objects describing the operator's charging sites, including EVSEs, Connectors, and Parking information. Owned by the CPO back-end system.

8.18.28.38.48.5
4 topics Available

Sessions Module

The Session object describes one charging session. Sessions are owned by the CPO back-end and can be retrieved via GET or pushed by the CPO to another system.

9.19.29.39.4
5 topics Available

CDRs Module

Charge Detail Record describing a concluded charging session — the only billing-relevant object. Covers the CDR lifecycle, sender and receiver interfaces, object descriptions, and data types.

10.110.210.310.410.5
5 topics Available

Tariffs Module

Provides eMSPs with information about tariffs used by the CPO. Covers flow and lifecycle, sender and receiver interfaces, the Tariff object structure with examples, and related data types.

11.111.211.311.411.5
4 topics Available

Tokens Module

Gives CPOs knowledge of token information from eMSPs. eMSPs push Token information so CPOs can build a cache to authorise charging sessions and route CDRs to the right party.

12.112.212.312.4
4 topics Available

Commands Module

Enables remote commands to be sent to a Location/EVSE: cancelling reservations, reserving charge points, starting and stopping sessions, and unlocking connectors. Processed asynchronously.

13.113.213.313.4
5 topics Available

ChargingProfiles Module

Allows SCSPs and MSPs to send (Smart) Charging Profiles to a Location/EVSE. Also supports requesting the ActiveChargingProfile from a Location/EVSE.

14.114.214.314.414.5
6 topics Available

HubClientInfo Module

Provides parties connected to a Hub with the connection status of other parties, enabling CPOs and eMSPs to know which parties are currently online.

15.115.215.315.415.515.6
5 topics Available

Payments Module

Supports the Payment Terminal use case for direct payment in the roaming world. Consists of two main objects: Terminal and Financial Advice Confirmation.

16.116.216.316.416.5
4 topics Available

Bookings Module

Gives eMSPs information about available booking options the CPO offers. eMSPs can request time slots to reserve charging sessions for EV drivers. Introduced in OCPI 2.3.0-booking-1.0.

17.117.217.317.4
12 topics Available

Types

Fundamental data types: primitive types (class, enum, OpenEnum, string, number), formatting rules (CiString, DateTime, URL), and common reusable classes (DisplayText, Price, TaxAmount, Role).

18.118.218.318.418.518.618.718.818.918.1018.1118.12
7 topics Available

Changelog

Complete changelog documenting all changes across OCPI versions, from 2.1.1 through 2.3.0-booking-1.0. Includes detailed impact assessments for eMSP and CPO implementations.

19.119.219.319.419.519.619.7

Guides marked Coming Soon are actively being developed. Check back for updates as more implementation guides are published.