Authorize
Source: OCPP 1.6 Specification — Section 4.1 (Operation), Sections 6.1 / 6.2 (Messages)
Overview
Before the owner of an electric vehicle can start or stop charging, the Charge Point has to authorize the operation. The Charge Point SHALL only supply energy after authorization. When stopping a Transaction, the Charge Point SHALL only send an Authorize.req when the identifier used for stopping the transaction is different from the identifier that started the transaction.
Authorize.req SHOULD only be used for the authorization of an identifier for charging.
A Charge Point MAY authorize an identifier locally without involving the Central System, as described in Local Authorization List. If an idTag presented by the user is not present in the Local Authorization List or Authorization Cache, then the Charge Point SHALL send an Authorize.req PDU to the Central System to request authorization. If the idTag is present in the Local Authorization List or Authorization Cache, then the Charge Point MAY send an Authorize.req PDU to the Central System.
Upon receipt of an Authorize.req PDU, the Central System SHALL respond with an Authorize.conf PDU. This response PDU SHALL indicate whether or not the idTag is accepted by the Central System. If the Central System accepts the idTag then the response PDU MAY include a parentIdTag and MUST include an authorization status value indicating acceptance or a reason for rejection.
If a Charge Point has implemented an Authorization Cache, then upon receipt of an Authorize.conf PDU the Charge Point SHALL update the cache entry, if the idTag is not in the Local Authorization List, with the IdTagInfo value from the response as described under Authorization Cache.
Sequence Diagram
Figure 12. Sequence Diagram: Authorize
Charge Point ──── Authorize.req ────▶ Central System
(idTag)
Charge Point ◀─── Authorize.conf ──── Central System
(idTagInfo)
Initiator
Charge Point → Central System
Fields
This contains the field definition of the Authorize.req PDU sent by the Charge Point to the Central System.
| Field Name | Field Type | Card. | Description |
|---|---|---|---|
| idTag | IdToken | 1..1 | Required. This contains the identifier that needs to be authorized. |
This contains the field definition of the Authorize.conf PDU sent by the Central System to the Charge Point in response to an Authorize.req PDU.
| Field Name | Field Type | Card. | Description |
|---|---|---|---|
| idTagInfo | IdTagInfo | 1..1 | Required. This contains information about authorization status, expiry and parent id. |
Examples
{
"idTag": "044943121F1A80"
}{
"idTagInfo": {
"status": "Accepted",
"expiryDate": "2026-12-31T23:59:59Z",
"parentIdTag": "PARENT001"
}
}AuthorizationStatus values
Accepted, Blocked, Expired, Invalid, ConcurrentTx.
Schema
Source:
schemas/Authorize.json,schemas/AuthorizeResponse.json(OCPP 1.6, JSON Schema draft-04)