
Overview
A session captures everything that happens during a charge — not just the flow of electricity, but the events around it. It usually begins when a driver plugs in and authenticates (though it can start earlier, for example when a charger is reserved) and ends when the driver unplugs. When the session concludes, the platform generates a CDR: the immutable record of the completed charge, carrying all the data needed for billing, operations, and reporting.Context
What a session and CDR represent depends on which side of the charge you’re on. The CDR is the industry-standard data foundation for invoicing between CPOs and eMSPs over roaming — but it’s the source data an invoice is built from, not an invoice itself.CPO context
Sessions and CDRs represent every charging event on your infrastructure, organised by the EVSE IDs in your network where the charging happened. The goal is to invoice each eMSP that accessed your network during the period.eMSP context
Sessions and CDRs represent every charging event your drivers authorised, organised by the token UIDs they used. The goal is to pay each CPO invoice for the charging your drivers did.Key attributes
Session
Session data is dynamic: while a charge is in progress, it updates as new meter values arrive from the charger.CDR
A CDR carries every session field in its final state, plus the financial data used for billing.
For sessions on chargers in Spirii’s own network, the CDR also attaches contextual platform data for CPO reporting:
States
A session is either ongoing or concluded:A CDR has no states of its own: once generated, it’s immutable.
Used in
Roaming connection
Exchange CDRs with other networks over OCPI.
Transactions API
Read live and completed charging sessions programmatically.
Charge Detail Record API
Retrieve completed CDRs for billing and reporting.