Back to resources
GuideEN

EV charging software at a glance: CPMS, eMSP, OCPP and OCPI

Which systems work together at a public charging station, which market roles stand behind them, and what OCPP and OCPI connect.

Philip Müller
Philip MüllerCo-Founder & CEO
Published
Read Time
5 min read

Behind every public charging session, several systems work together. The charging station charges the car. Running the station is the job of the Charge Point Management System (CPMS). The backend of the E-Mobility Service Provider (eMSP) looks after customers, prices and invoices, and the app or web app is what drivers actually see. Two open protocols connect these systems: OCPP between station and CPMS, OCPI between CPMS and eMSP backend.

Overview
HardwareCharging stationCPOCharges the vehicle and measures the energy
OCPP
OperationsCPMSCPOMonitors and controls the stations
OCPI
CustomerseMSP backendeMSPCustomers, prices, payment, invoices
API
FrontendApp & web appeMSPStart, stop, charging history
One company can hold both roles. The systems still stay separate.

One charging session, step by step

Ad hoc charging shows the split of work most clearly: scan the QR code on the station, pay, charge.

Ad hoc charging
01Driver → web appScan the QR code and payThe web app shows the price. Payment works with Apple Pay or a card, for example.
02eMSP backend → CPMSOCPIRequest the startThe eMSP backend asks the CPMS to start the session.
03CPMS → stationOCPPUnlock the stationThe CPMS passes the command on, and the station releases the power.
04Station → CPMS → eMSP backendOCPP · OCPICharging runsEnergy and duration flow live all the way to the app.
05CPMS → eMSP backendOCPIBilling recordAfter charging, the CPMS sends a record with energy, duration and price.
06eMSP backend → driverReceipt and invoiceThe eMSP backend charges the amount and sends the receipt.

None of the parties has to rebuild the other's systems for this. The station stays on the CPMS, and the CPMS stays with whoever runs the station. What this looks like in practice is shown on the ad hoc charging page.

CPO and eMSP: two market roles

Behind the systems are two market roles, defined by the German energy association BDEW in its paper on market roles in charging infrastructure.

The Charge Point Operator (CPO) runs charge points. It keeps the stations working, records every session and reports its sites to the authorities.

The E-Mobility Service Provider (eMSP) sells charging to drivers: by contract, charging card, app or ad hoc. According to the BDEW, customers agree the price with the eMSP, and the eMSP sends them the invoice.

Often one company holds both roles, such as an energy supplier that runs its own stations and sells charging under its own brand. There are also eMSPs without stations of their own, and CPOs that sell access to their stations only through other providers.

What is OCPP?

OCPP (Open Charge Point Protocol) is the common language of charging station and CPMS. Through it the station reports whether it is free, how much energy has flowed and whether there is a fault. In return it receives start and stop commands and new settings.

The standard comes from the Open Charge Alliance, which says it is widely implemented worldwide. Because it is open, station and CPMS can be chosen independently of each other.

An eMSP backend does not speak OCPP. It sends its commands to the CPMS, and the CPMS passes them on to the station.

What is a CPMS?

The CPMS is the CPO's control room. It keeps every station connected, reports faults, installs updates and manages charging power where needed. Session data originates here, and this is where the CPO sets its prices.

What a CPMS usually does not focus on is the end customer: sign-up, contracts, payment methods and an app under the operator's own brand. Some CPMS ship their own end-customer frontend for this, others leave that part to an eMSP.

What is OCPI?

OCPI (Open Charge Point Interface) connects CPO and eMSP, which in practice means the CPMS and the eMSP backend. It is published by the EVRoaming Foundation. The connection runs directly between two partners or through a roaming hub that brings many partners together. Through such a hub, an eMSP's customers can also charge at other operators' stations.

OCPI is split into modules. Each has one job and one direction:

OCPI modules
CPMS → eMSP backendLocationsSites, charge points and whether they are freeTariffsPrices, so customers see them before the startSessionsEnergy and duration while chargingCDRsThe billing record after charging
eMSP backend → CPMSTokensWhich charging cards and apps may chargeCommandsStart and stop sessions

How OB7 uses these modules with existing CPMS platforms is shown on the page CPMS and roaming hubs.

What does an eMSP backend do?

The eMSP backend is the system behind the customer relationship. It manages customer accounts and contracts, issues charging cards and app access, sets end-customer prices, takes payments and writes invoices. It gets the data for this from the CPMS over OCPI.

Everything drivers see therefore lives in the eMSP backend: brand, price, payment method, charging history. Whoever runs it, or uses it under their own brand, owns the customer relationship. More on the eMSP backend page.

Where AFIR and ad hoc charging fit in

The European AFIR, Regulation (EU) 2023/1804, requires that public charge points allow charging without a contract and show the price before the start. Responsibility lies with the CPO. It does not have to handle the payment itself, though: according to the BDEW, it can commission an eMSP to do so.

In practice the CPMS supplies the charge point, the price and the start; the eMSP backend supplies the payment page, the payment and the receipt. On top of that, the CPO reports its sites to the Mobilithek, Germany's national platform for mobility data. More on the DATEX II reporting page.

Why separate systems are practical

Because the systems are linked by open protocols, each one can be replaced on its own. A new CPMS leaves the customer relationship untouched, and a new offer for drivers needs no work at the station.

Operators can therefore keep their CPMS and add an eMSP backend that connects over OCPI and covers ad hoc charging, charging cards, an app and billing under their own brand. That is the part OB7 takes on.