GetTransactionStatus
Core CSMS->CS
OCPP 2.0.1
Sent by the CSMS to check whether a specific transaction is still ongoing and whether any transaction-related messages are still pending delivery.
Quick Reference
Optional Fields
transactionId string(36) ID of the transaction to check. If omitted, reports on any ongoing transactions.
Example Payload
{
"transactionId": "txn-abc123"
} Example Full Frame
[
2,
"msg-001",
"GetTransactionStatus",
{
"transactionId": "txn-abc123"
}
]
Format: [MessageType, MessageId, Action, Payload]
Overview
GetTransactionStatus lets the CSMS query the live status of a transaction — whether it is still active and whether any messages for it are queued but not yet sent.
Expected Response
ongoingIndicator: Boolean —trueif the transaction is still in progressmessagesInQueue: Boolean —trueif there are pendingTransactionEventmessages not yet delivered
Usage Notes
- Useful for reconciliation after a connectivity interruption
- If
messagesInQueue: true, wait for the Charging Station to deliver them before closing the transaction - Can be sent without
transactionIdto check if any transaction is ongoing
Testing Tips
- Query during an active session and verify
ongoingIndicator: true - Query after a session ends and verify
ongoingIndicator: false - Test after a reconnect to check if offline messages are still queued
Common Errors
TypeConstraintViolation
Cause: transactionId is an integer
Solution: transactionId is a string in OCPP 2.0.1