OCPP compliance testing
OCPP compliance testing is how you prove a CSMS and a station speak the version you claim — framed WebSocket messages, not a lab certificate. Teams mix that job with OCA certification and hardware commissioning, then every backend change waits on a bench or a third-party harness.
Chargeflux covers the software layer: a hosted EVSE simulator that speaks OCPP 1.6J / 2.0.1 so you can run OCPP compliance testing against a real CSMS without booking a lab EVSE.
Launch the simulator · Getting started · Test CSMS without hardware
What OCPP compliance testing is (and is not)
Analogy: it is like checking a payment API against the documented request/response contract in a sandbox. Passing that check does not mean Visa certified your POS terminal.
| Job | Question it answers | Typical tool |
|---|---|---|
| OCPP compliance testing (this page) | Does our CSMS handle the messages we advertise for 1.6 / 2.0.1? | Hosted OCPP charge point simulator |
| OCA certification | Does this implementation pass official Open Charge Alliance conformance? | OCA process + dedicated certification harness |
| Hardware / firmware lab | Plug, lock, metering, power-stage faults, vendor quirks | Physical EVSE |
| Electrical / install | Safety, earthing, cable rating, site code | Licensed electrician + vendor commissioning |
Broader layering (electrical vs firmware vs protocol vs OCPI): EV charger testing. Protocol primer: what is OCPP.
What “OCPP compliant” should mean in QA
Write the claim down before you test. A useful CSMS contract is version + required flows, not a marketing adjective.
- Version and subprotocol —
ocpp1.6and/or OCPP 2.0.1, TLS, station identity. Guide: connect your CSMS. - Registration — BootNotification Accepted / Pending / Rejected and the Heartbeat interval the backend set. Sample: BootNotification.
- Session lifecycle — Authorize, StartTransaction or TransactionEvent, MeterValues, Stop. Version guides: OCPP 1.6 simulator and OCPP 2.0.1 simulator.
- CSMS → station commands — RemoteStart/Stop or RequestStart, availability.
Resetis acknowledgement-only here: the station returns Accepted and does not reboot, reconnect, or send a follow-up BootNotification. Configuration reads (GetConfiguration) are OCPP 1.6-only; OCPP 2.0.1GetVariablesis not implemented yet. - Failure paths — socket drop, stale identity, rejected boot, reconnect. See WebSocket troubleshooting.
Simulator vs certification harness
| Approach | Use it when | Do not use it as |
|---|---|---|
| Hosted OCPP simulator | Daily CSMS QA, partner demos, CI-friendly regression, multi-station scenarios | Proof of OCA certification or metering accuracy |
| OCA certification lab | Official protocol conformance against OCA tools | A substitute for product QA on your CSMS |
| Physical EVSE lab | Firmware edge cases, cable/lock, energy accuracy, field RF/network | The only seat for every software change |
A 30-minute OCPP compliance testing path
- Open getting started and create a virtual station for the version you claim.
- Point it at a non-production CSMS URL (connect your CSMS).
- Confirm BootNotification is accepted and Heartbeat continues.
- Run one local start and one remote start; watch meter frames land on the backend.
- Force a disconnect and confirm the CSMS recovers station state.
Full software-only checklist: test CSMS without hardware. API control for CI: API.
FAQ
What is OCPP compliance testing?
OCPP compliance testing is proving a charge point and a CSMS exchange the right framed messages for a claimed version and profile: identity, BootNotification, sessions, remote commands, and reconnect. It is product QA against your contract — not an Open Charge Alliance certificate.
Is OCPP compliance testing the same as OCA certification?
No. Official OCPP certification uses Open Charge Alliance processes and dedicated harnesses. Chargeflux is an OCPP test tool for development and QA. A green simulator session is evidence for your CSMS, not a certificate.
Can I do OCPP compliance testing without hardware?
Yes for protocol and CSMS software paths. A hosted virtual charge point speaks OCPP 1.6J / 2.0.1 over WebSocket so your backend sees production-shaped CALL/CALLRESULT traffic. You still need a physical EVSE for plug behaviour, metering accuracy, and field network issues.
What does “OCPP compliant” mean on a CSMS team?
It means the backend accepts the version it advertises, handles required Core (1.6) or equivalent 2.0.1 flows, and recovers from rejected boots and dropped sockets. It does not mean every optional profile, ISO 15118, or vendor quirk is covered.
Which OCPP versions should compliance testing cover?
Cover every version your CSMS claims. Most commercial fleets still boot on OCPP 1.6J; dual-stack products also need 2.0.1 TransactionEvent and RequestStart. Chargeflux hosts both. OCPP 2.1 is on the public roadmap without a promised date.
Next step: run OCPP compliance testing in the simulator, follow getting started, or check pricing.
Last reviewed September 2026 · Chargeflux.io