Charging, Roaming, and Commercial Model¶
Charging has three linked records:
- a physical energy-transfer episode
- an operational session used for readiness, control, and support
- a commercial record used for billing, settlement, and reporting
Those records often share identifiers, timestamps, meters, charger references, and vehicle references, but they answer different questions.
In the two-axis model:
- problem coordinate:
Roaming & Shared Charging -> Network Access & InteroperabilityorRoaming & Shared Charging -> Commercial Settlement & Shared Charging - physical coordinate: location, charger, EVSE, connector, driver or fleet user, vehicle, token, meter, session, tariff, CDR, payment rail, and time
Physical Session¶
A physical session begins when an EV connects to a charger and energy can flow. Its evidence includes:
- station, EVSE, and connector identity
- plug-in and unplug events
- transaction or transaction-event identifiers
- meter values and sampled measurements
- SoC when available
- status and fault changes
- power limits or charging profiles applied during the session
Operational Session¶
The operational session explains why the physical session matters:
- which vehicle or driver is involved
- which work, route, block, job, or shift the energy supports
- which readiness target applies
- which priority or policy drove charging allocation
- which incidents or degraded states affected the outcome
- whether the session met the operational need before the deadline
Commercial Session¶
The commercial session explains access and money:
- who was allowed to start the session
- which token, user, contract, or roaming group authorised it
- which tariff applied
- what the billable meter delta was
- which taxes, fees, and currency apply
- which CDR is sent to which party
- who invoices whom
flowchart TB
Physical["Physical session<br/>energy transfer and meter evidence"]
Operational["Operational session<br/>readiness and control meaning"]
Commercial["Commercial session<br/>access, tariff, CDR, settlement"]
Physical --> Operational
Physical --> Commercial
Operational --> Commercial
Physical --> P1["OCPP transaction / meter values"]
Operational --> O1["vehicle readiness / dispatch confidence"]
Commercial --> C1["OCPI/OICP CDR / invoice / payout"]
Commercial Actors¶
| Actor | Problem coordinate | Physical coordinate | What they do | Typical evidence |
|---|---|---|---|---|
| CPO | Roaming & Shared Charging -> Network Access & Interoperability | charging location, EVSE, connector, session, tariff, time | owns or operates charging infrastructure and exposes charger availability, sessions, tariffs, and CDRs | locations, EVSEs, connectors, tariffs, sessions, CDRs, invoices |
| eMSP / EMP | Roaming & Shared Charging -> Commercial Settlement & Shared Charging | user, token, contract, session, invoice, time | owns the driver or fleet charging contract and gives users a way to find, authorise, and pay for charging | tokens, app users, contracts, invoices, receipts |
| Roaming hub | Roaming & Shared Charging -> Network Access & Interoperability | partner, credential, EVSE data, CDR, time | brokers network access and data exchange between CPOs and eMSPs | partner IDs, routing, credentials, EVSE data, status, CDR flow |
| Fleet operator | Operations & Dispatch -> Fleet & Vehicle Management | vehicle, depot, route, schedule, readiness target, time | owns the work and vehicle-readiness problem | schedules, vehicles, depots, readiness targets, operational reports |
| Site owner | Energy & Cost Management -> Site Energy & Infrastructure | site, grid connection, circuit, tariff, access rule, time | owns or controls the physical site and electrical constraints | site capacity, circuits, tariffs, access rules |
| Payment provider | Roaming & Shared Charging -> Commercial Settlement & Shared Charging | payment intent, invoice, receipt, session, time | captures or settles payment for a charging session | pre-authorisations, payment intents, captures, refunds |
The same organisation can hold more than one role. For example, a depot operator may act as a private CPO for its own fleet, a shared-charging CPO for visiting fleets, and an eMSP-like access manager for its own drivers.
Roaming Flow¶
sequenceDiagram
participant User as Driver or visiting fleet user
participant EMSP as eMSP / EMP
participant Hub as Roaming hub (optional)
participant CPO as CPO platform
participant Charger as Charging station
EMSP->>CPO: exchange credentials or route via hub
CPO->>EMSP: publish locations, EVSEs, connectors, tariffs
User->>EMSP: request charging with token or app
EMSP->>CPO: authorize or remote start command
CPO->>Charger: start charging through charger protocol
Charger->>CPO: session and meter evidence
CPO->>EMSP: session updates and CDR
EMSP->>User: bill, receipt, or account charge
Tariffs, CDRs, And Settlement¶
A tariff defines how price is calculated. It may include:
- energy price per kWh
- time price per minute or hour
- parking or idle fees
- start fees
- tax rules
- currency
- validity periods
- public, private, or group-specific access rules
A CDR records the charge detail after the session. It usually includes who charged, where they charged, when they charged, how much energy was delivered, which tariff applied, and what the cost was.
Settlement is the business process that turns one or more CDRs into invoices, payouts, or ledger entries. The settlement actor depends on the commercial arrangement. Peer-to-peer OCPI may settle directly between CPO and eMSP. Hub-centered OICP may route through Hubject products and agreements.
BetterFleet Interpretation¶
In BetterFleet:
- OCPP evidence usually enters through
bf-manage-connect - operational charging, vehicle, depot, reporting, and tariff meaning usually lands in Manage domain services
- roaming user journeys sit in
bf-manage-roamingand related Manage configuration - OCPI and OICP concepts map to Roaming & Shared Charging and Commercial Settlement
- reporting must keep physical meter evidence, operational vehicle meaning, and commercial tariff meaning traceable