OCPP vs OCPI: Which Protocol Does Your Project Need?
Understand where OCPP and OCPI belong, how charger operations connect to roaming services, and what to verify before choosing an integration architecture.
6 min readEV CHARGING DATA / BATTERY INTELLIGENCE / DEVELOPER RESOURCES
API field guide / 07
Connect the wider charging workflow. Explore how location data, authorized vehicle information, sessions, and operational systems fit together in an EV charging application.
An EV charging application can span discovery, authorization, session tracking, and operational control. Those capabilities often come from different systems. Map the workflow before selecting an API, and record which party owns each piece of information or action. A clear boundary between systems is more useful than assuming one endpoint can cover the entire experience.
Station discovery answers where and how a driver might charge. Vehicle telemetry can describe an authorized vehicle’s reported state. Session data explains a charging event. Operational commands request a change from a system that is allowed to control equipment. Give each responsibility its own contract, access assumptions, and failure behavior.
OCPP supports communication between charging stations and charging management systems. OCPI supports information exchange between charging ecosystem parties. These interfaces solve different problems, so the presence of one does not imply support for the other. Confirm the versions, modules, and features supported by every actual participant in a planned integration.
Model a charging session as a sequence of observations and transitions rather than a single success flag. Define how your product handles a session that has been requested, started, interrupted, ended, or reconciled later. Retain the identifiers needed to match records across systems, and allow delayed information to update the view without duplicating the event.
A command response can acknowledge a request without proving that the intended physical outcome has happened. Establish what observation counts as confirmation, what happens when it never arrives, and how a person can understand the current state. Avoid automatic retries for consequential actions unless the provider’s behavior and idempotency guarantees support them.
Use this as an evaluation framework for your own data contract. Field names and actual availability remain provider-specific.
| Area | What to examine | Design consideration |
|---|---|---|
| Discovery | Location, EVSE, connector | Identify the place and equipment independently. |
| Access | Owner consent and operator permissions | Request only the capabilities your workflow needs. |
| Sessions | Session ID, lifecycle, energy | Keep observations and reconciled records traceable. |
| Operations | Requested action and confirmed outcome | Represent timeouts and uncertain completion honestly. |
Open Charge Alliance’s OCPP overview
OCA describes OCPP’s station-to-management role. For roaming interoperability, also consult the EVRoaming Foundation’s OCPI documentation.
Let’s connect