Description
When using the Web UI to authorize an RFID tag on an OCPP 2.0.1 charging station, the operation fails with AUTHORIZE FAILED Request PDU is invalid. The authorize PDU sent by the simulator does not conform to the OCPP 2.0.1 JSON schema expected by the CSMS.
This affects both the modern skin (Authorize dialog) and the classic skin (Start Transaction form with "Authorize RFID tag first" checkbox enabled).
Version
4.5.1
Node.js version
v24.15.0
System
OS: macOS 26.4.1
CPU: (12) arm64 Apple M2 Pro
Memory: 1.46 GB / 32.00 GB
Shell: 5.9 - /bin/zsh
Expected result
The authorize request should be sent with the correct OCPP 2.0.1 AuthorizeRequest payload format ({ idToken: { idToken: "...", type: "..." } }) and the CSMS should respond with Accepted or another valid status.
Actual result
The UI displays: AUTHORIZE FAILED Request PDU is invalid
The authorize request PDU does not pass OCPP 2.0.1 JSON schema validation on the mock CSMS.
Steps to reproduce
- Start the OCPP 2.0.1 mock server:
cd tests/ocpp-server && poetry run python server.py --port 9000
- Configure the simulator with
keba-ocpp2.station-template.json (OCPP 2.0.1) pointing to ws://127.0.0.1:9000/OCPP201
- Start the simulator with
uiServer.enabled: true
- Open the Web UI
- On any OCPP 2.0.1 station, click "Authorize" (modern skin) or "Start Transaction" with authorize checkbox enabled (classic skin)
- Enter any RFID tag value (e.g.,
test_token) and submit
Attachments
Discovered during E2E browser testing of PR #1815. The issue is pre-existing and not introduced by that PR — it relates to how the simulator formats the Authorize OCPP command for 2.0.1 stations when triggered via the UI protocol.
Description
When using the Web UI to authorize an RFID tag on an OCPP 2.0.1 charging station, the operation fails with
AUTHORIZE FAILED Request PDU is invalid. The authorize PDU sent by the simulator does not conform to the OCPP 2.0.1 JSON schema expected by the CSMS.This affects both the modern skin (Authorize dialog) and the classic skin (Start Transaction form with "Authorize RFID tag first" checkbox enabled).
Version
4.5.1
Node.js version
v24.15.0
System
Expected result
The authorize request should be sent with the correct OCPP 2.0.1
AuthorizeRequestpayload format ({ idToken: { idToken: "...", type: "..." } }) and the CSMS should respond withAcceptedor another valid status.Actual result
The UI displays:
AUTHORIZE FAILED Request PDU is invalidThe authorize request PDU does not pass OCPP 2.0.1 JSON schema validation on the mock CSMS.
Steps to reproduce
cd tests/ocpp-server && poetry run python server.py --port 9000keba-ocpp2.station-template.json(OCPP 2.0.1) pointing tows://127.0.0.1:9000/OCPP201uiServer.enabled: truetest_token) and submitAttachments
Discovered during E2E browser testing of PR #1815. The issue is pre-existing and not introduced by that PR — it relates to how the simulator formats the
AuthorizeOCPP command for 2.0.1 stations when triggered via the UI protocol.