Open Source • Apache 2.0

OpenCPO

The first complete open source EV charging platform

Everything you need to run a Charge Point Operator — from protocol to driver app.

5 Components
OCPP 2.0.1 Latest Protocol
Apache 2.0 License
Production Battle-tested

The Complete Stack

Five purpose-built components. One platform. No gaps.

OpenCPO Core

OCPP 1.6 + 2.0.1 Central System with profile-driven charger compatibility. The engine everything else runs on.

View repo

OpenCPO Admin

Network management dashboard — chargers, sessions, tariffs, and a live OCPP message viewer.

View repo

OpenCPO Charge

Driver-facing PWA — scan QR, charge, pay. No app store needed. Works on any device with a browser.

View repo

OpenCPO Tester

Automated OCPP compliance testing with branded reports and a web UI. Test chargers before production.

View repo

OpenCPO Farm

Virtual charger simulator with 17 stress test scenarios. Simulate entire networks without hardware.

View repo

Built Different

Most EV projects give you a library. We give you a platform.

Complete

Not a library. Not a framework. A full platform. Backend, admin panel, driver app, testing tools, simulator. Deploy and run. No missing pieces, no "build the rest yourself."

Open

Apache 2.0. No vendor lock-in, ever. Bring your own payment provider, branding, and chargers. Fork it, modify it, deploy it commercially. Your infrastructure, your rules.

Battle-tested

Built by an actual CPO, tested against real hardware across multiple charger manufacturers. Not theoretical — production-proven code that handles the edge cases that kill other implementations.

Up in 3 Commands

No complex setup. No configuration maze. Clone, setup, compose.

Clone the repository
The mono-repo includes all five components and a shared docker-compose.
Run setup
The setup script generates your config, creates secrets, and checks dependencies.
Compose up
Docker pulls images and starts all services. Core, Admin, Charge — everything.
Open http://localhost:8080 — your CPO admin panel is ready.
bash
# Clone OpenCPO
$ git clone https://github.com/opencpo/opencpo
 
# Run setup
$ cd opencpo && ./setup.sh
✓ Checking dependencies...
✓ Generating config...
✓ Setup complete
 
# Launch the platform
$ docker compose up
⚡ opencpo-core started on :9000
🖥 opencpo-admin started on :8080
📱 opencpo-charge started on :3000
🧪 opencpo-tester started on :8081
 
# Your CPO platform is live ✓

How It Connects

Clean separation. Event-driven. Built to scale.

Everything Included

No premium tier. No feature flags. Everything in the open source release.

OCPP 1.6j + 2.0.1
Full protocol support including security extensions
Profile-driven compatibility
Quirk profiles for real-world charger behaviour
V2G PKI & Plug&Charge
ISO 15118 certificate management built in
OCPI 2.2.1 roaming
Connect to roaming networks and eMSPs
Real-time OCPP viewer
Live message stream in the admin panel
Smart Charging
OCPP Smart Charging profile with dynamic limits
Payment providers
Mollie, Stripe, Adyen — or bring your own
Custom skins & plugins
White-label ready, plugin architecture
Automated compliance testing
OCPP test suites with branded HTML reports
Stress testing & simulation
17 scenarios, simulate hundreds of chargers
Docker one-command deploy
Production-ready compose stack included
Full documentation
Architecture docs, API reference, deployment guides

Join the Network

Build the open EV charging ecosystem together.

"Finally — an EV charging backend that doesn't lock you in. We deployed OpenCPO on our first 20 chargers and it just worked. The live OCPP viewer alone saved us hours of debugging."

Early Adopter
Charge Point Operator, Netherlands
Open Source, Open Governance.
We welcome contributions to all repos. See CONTRIBUTING.md in any repository to get started.