OCPI 2.2.1 · CPO-Simulator
Kein echter CPO.Echte Ladevorgänge.
Registriere dein eMSP-Backend bei einem OCPI-2.2.1-CPO. Verbinde ein E-Auto, starte eine Session, sieh der Energie beim Fließen zu und hol dir den CDR — in der Entwicklung, in der CI und im Livebetrieb.
- Kein Partner-CPO nötig
- Kein Auto an der Säule
- Deterministisch in der CI
$ curl -H "Authorization: Token $TOKEN" \ https://acme.sandbox.plugbench.dev/ocpi/versions { "data": [ { "version": "2.2.1", "url": "…/ocpi/2.2.1" } ], "status_code": 1000, "timestamp": "2026-08-02T09:14:22Z" }
Was nicht antwortet, lässt sich nicht testen.
- Deine Integration hängt an einem Partnervertrag.
- Dein Test braucht ein Auto an einer echten Säule.
- Dein Callback-Bug passiert nur nachts um drei, in Produktion.
So läuft's
Drei Schritte bis zum CDR.
- 01
Auf die Versions-URL zeigen
GET /ocpi/versions mit deinem Bootstrap-Token. Discovery liefert absolute Modul-URLs und Interface-Rollen — genau wie ein echter CPO.
- 02
Den Handshake durchziehen
POST mit deinen Credentials, generiertes Token zurück. Mit PUT rotieren, mit DELETE abmelden. Und dann von vorn.
- 03
Und dann laden
E-Auto verbinden, RFID-Token swipen oder START_SESSION schicken. Die Leistung fällt ab, während der Akku voller wird. Am Ende steht genau ein unveränderlicher CDR.
Was es kann
Ein Backend, das widerspricht.
Callbacks kommen in der falschen Reihenfolge. Mit Absicht.
Die Reihenfolge der Requests sagt nichts über die Reihenfolge der Callbacks. Du merkst also heute, ob du wirklich über response_url korrelierst — und nicht erst nächsten Februar um drei Uhr nachts.
Neun Module, kein Stub
Versions, Credentials, Locations, Tariffs, Sessions, CDRs, Tokens, Commands und Charging Profiles. Echte Envelopes, echte X-Total-Count- und Link-Header, echte vierstellige Status-Codes.
Kaputtmachen mit Absicht
Lehne jedes Remote-Command ab, verzögere es um bis zu 60 Sekunden, lass es fehlschlagen — oder lass den Callback ganz ausbleiben.
Deterministisch, mit System
Szenarien sind JSON. Ein Reset stellt byte-identischen Zustand und dieselben IDs wieder her. Gleicher Test, gleiches Ergebnis, jedes Mal.
Laden, das sich benimmt
Fahrzeugprofile mit echten Akkugrößen, AC- und DC-Grenzen und Steckerkompatibilität. Start- und Ziel-SOC setzen; die Leistung fällt ab, während der Akku voller wird; beim Ziel-SOC endet die Energieabgabe.
In voller Größe öffnenDer Handshake, komplett
Registrieren, rotieren, abmelden — der Teil, der zuerst bricht, und der Teil, den kein handgeschriebener Mock je abdeckt.
In voller Größe öffnenJeder Request, in beide Richtungen
Ein- und ausgehende Versuche mit exponentiellem Backoff, Laufzeiten und OCPI-Status-Codes. Credentials immer geschwärzt.
In voller Größe öffnen
Wo es läuft
Entwicklung, CI und Prod.
In der Entwicklung
Ein Sandbox-Endpunkt, bei dem sich dein lokaler Stack registriert. Keine Infrastruktur zu betreiben, keine Datenbank zu betreuen.
In der Pipeline
Deterministische Fixtures hinter einem Reset. Ein roter Build heißt: dein Code hat sich geändert — nicht die Welt.
Auf Prod
Ein dauerhafter Peer, bei dem sich dein Live-Stack registriert. Für End-to-End-Checks über den echten Pfad.
Wer dahintersteht
Gebaut von einem EMP, der es in Produktion einsetzt.
EV-Freaks baut ChargEV FleX, einen aktiven E-Mobility Provider. plugbench ist das, womit wir ihn testen — jeden Tag. Keine Kundenlogos, keine Testimonials: Das Protokoll funktioniert oder es funktioniert nicht.
Bereit, was kaputtzumachen?
Sag uns, was du integrierst. Du bekommst einen Sandbox-Endpunkt und ein Bootstrap-Token.