When and How to Use the Resume Command
When integrating with Zaptec chargers via the Cloud API, developers often need to automate the pausing and resuming of charging sessions, especially regarding the FinalStopActive and ChargerOperationMode values. This guide explains the correct logic and flow for reliably pausing and resuming charging, and how to avoid common API errors.
This guide explains:
- When and how to send
Pause
andResume
commands - What charger states to check before sending commands
- Permissions and firmware requirements
- Common API rejection cases and troubleshooting tips
Permissions
To execute control commands (
Pause
,Resume
,Restart
,Firmware upgrade
,Deauthorize
), your API caller must have owner or service-level access to the charger.
Supported Command IDs
Command ID | Description |
---|---|
102 | Restart the charger |
200 | Upgrade charger firmware |
506 | Stop or pause charging |
507 | Resume charging |
10001 | Deauthorize and stop charging |
Command Details
Command 10001 Deauthorize and Stop
Purpose: Immediately stops charging and deauthorizes the current session.
Important: Ensure that no new sessions are authorized until this command completes. This prevents unintended re-authorization during the operation.
Command 506: Pause/Stop Charging
Firmware Requirement:
Requires firmware version > 3.2 on Zaptec Pro chargers. Non-PRO chargers do not support Pause/Resume functionality.
Typical Usage:
Used when the charger is actively charging (ChargerOperationMode
= 3
).
Command Rejection Cases:
- Charger already paused (
ChargerOperationMode = 5
andFinalStopActive = 1
) - Charger disconnected (
ChargerOperationMode = 1
)
✅ Best Practice
- Check
ChargerOperationMode = 3
before sending Pause - Do not check
FinalStopActive
before pausing
Example Request
POST /api/chargers/{chargerId}/sendCommand/506
Authorization: Bearer {access_token}
Content-Type: application/json
Response
{
"Code": 200,
"Details": "Charging paused successfully"
}
Command 507: Resume Charging
Firmware RequirementRequires firmware version > 3.2 on Zaptec Pro chargers.
Typical Usage:
Used when the charger is paused (ChargerOperationMode = 5
and FinalStopActive = 1
).
Command Rejection Cases:
- Charger not paused (
ChargerOperationMode != 5
orFinalStopActive != 1
) - A schedule is active (
NextScheduleEvent
is set)
Best Practice
- Check
FinalStopActive = 1
- Check
ChargerOperationMode = 5
- Ensure no schedule is active (
NextScheduleEvent
not set)
Example Request
POST /api/chargers/{chargerId}/sendCommand/507
Authorization: Bearer {access_token}
Content-Type: application/json
Success Response
{
"Code": 200,
"Details": "Charging resumed successfully"
}
Error Response
{
"Code": 528,
"Details": "Charging is not Paused nor Scheduled; Resume command cannot be sent"
}
Understanding Key States
State | Description |
---|---|
ChargerOperationMode (710) |
|
FinalStopActive (718) |
|
NextScheduleEvent (763) | Indicates a scheduled event (e.g., smart charging). If set, Resume commands will be rejected. |
Quick Reference Table
Action | Pre-condition | Command ID | Expected Result |
---|---|---|---|
Pause Charging | ChargerOperationMode = 3 | 506 | Charging paused, FinalStopActive = 1 |
Resume Charging | ChargerOperationMode = 5 , FinalStopActive = 1 , no schedule active | 507 | Charging resumed, FinalStopActive = 0 |
Stop/Deauthorize | Any active session | 10001 | Session ended; EV must reauthorize |
State Transition Flow
%% State Transition Flow stateDiagram-v2 [*] --> Charging Charging --> Paused: Pause (506) Paused --> Charging: Resume (507) state Charging { [*] --> ChargingActive ChargingActive: 710 = 3, 718 = 0 } state Paused { [*] --> PausedActive PausedActive: 710 = 5, 718 = 1 }
Example State Changes
Before Pause
{
"ChargerOperationMode": 3,
"FinalStopActive": 0,
}
After Pause
{
"ChargerOperationMode": 5,
"FinalStopActive": 1,
}
After Resume
{
"ChargerOperationMode": 3,
"FinalStopActive": 0,
}
Common Pitfalls and Troubleshooting
Issue | Likely Cause | Fix |
---|---|---|
Resume command rejected (528 ) | Charger not paused or schedule active | Verify FinalStopActive = 1 and NextScheduleEvent not set |
Pause command rejected | Charger not charging (ChargerOperationMode != 3 ) | Only send Pause when charging |
Charger stays at FinalStopActive = 0 and ChargerOperationMode = 5 | EV fully charged | No action needed |
Charger toggles briefly to “Requesting” | Insufficient site power available | Check power limits or load balancing setup |
HTTP Response Codes
Code | Meaning |
---|---|
200 | Command accepted and executed successfully |
400 | Invalid charger state or malformed request |
403 | Insufficient permissions |
528 | Resume command rejected — charger not paused or scheduled |
Summary
To Pause Charging
- ✅ Check
ChargerOperationMode = 3
- 🚫 Do not check
FinalStopActive
To Resume Charging
- ✅ Check
FinalStopActive = 1
- ✅ Check
ChargerOperationMode = 5
- 🚫 Ensure
NextScheduleEvent
is not set
Requirements
- 🔐 Owner or service-level access
- ⚙️ Firmware version > 3.2 (Zaptec Pro)
Additional Resources
Updated about 4 hours ago