3.8 Start Transaction
The StartTransaction message in OCPP 1.6J is sent by a charge point to the central system when a charging session begins. It includes details like the user’s ID tag, connector ID, timestamp, and initial meter reading. This message allows the central system to log the session, track energy usage, and ensure accurate billing or reporting for the user.
|
API Syntax |
Description |
Input Params |
Return Value |
|---|---|---|---|
SendStartTransactionRequest | Sends the StartTransaction request to the server. Creates an OCPP frame for the request and sends it using “sendframe”. | void | STARTTRANSACTIONERROR_T |
Example:
void UpdateAndSendStartTransaction(char* IdTag, int meterStart, int connectorId, int reservationId)
{
UpdateStartTransactionRequestConnectorId(connectorId);
UpdateStartTransactionRequestIdTag(IdTag);
UpdateStartTransactionRequestMeterStart(meterStart);
UpdateStartTransactionRequestReservationId(reservationId);
(void)SendStartTransactionRequest();
}
|
API Syntax |
Description |
Input Params |
Return Value |
|---|---|---|---|
UpdateStartTransactionRequestConnectorId | Updates the connector ID in the StartTransaction request. | int connectorid | void |
Example:
void UpdateAndSendStartTransaction(char* IdTag, int meterStart, int connectorId, int reservationId)
{
UpdateStartTransactionRequestConnectorId(connectorId);
UpdateStartTransactionRequestIdTag(IdTag);
UpdateStartTransactionRequestMeterStart(meterStart);
UpdateStartTransactionRequestReservationId(reservationId);
SendStartTransactionRequest();
}
|
API Syntax |
Description |
Input Params |
Return Value |
|---|---|---|---|
UpdateStartTransactionRequestIdTag | Updates the ID tag in the StartTransaction request. | const char *idTag | void |
Example:
void UpdateAndSendStartTransaction(char* IdTag, int meterStart, int connectorId, int reservationId)
{
UpdateStartTransactionRequestConnectorId(connectorId);
UpdateStartTransactionRequestIdTag(IdTag);
UpdateStartTransactionRequestMeterStart(meterStart);
UpdateStartTransactionRequestReservationId(reservationId);
SendStartTransactionRequest();
}
|
API Syntax |
Description |
Input Params |
Return Value |
|---|---|---|---|
UpdateStartTransactionRequestMeterStart | Updates the meter start value in the StartTransaction request. | int meterstart | void |
Example:
void UpdateAndSendStartTransaction(char* IdTag, int meterStart, int connectorId, int reservationId)
{
UpdateStartTransactionRequestConnectorId(connectorId);
UpdateStartTransactionRequestIdTag(IdTag);
UpdateStartTransactionRequestMeterStart(meterStart);
UpdateStartTransactionRequestReservationId(reservationId);
SendStartTransactionRequest();
}
|
Syntax |
Description |
Constants/Members |
|---|---|---|
STARTTRANSACTION_REQUEST_T | Structure holds the parameters required to initiate a StartTransaction request. | char uuid[]; int connectorId; idToken idTag[]; int meterStart; char timeStamp[]; int reservationId; |
STARTTRANSACTION_RESPONSE_T | Structure holds the information received in response to a StartTransaction request. | AUTHORIZATIONSTATUS_T enumState; IDTAG_INFO_T idTagInfo; int transactionId; |
STARTTRANSACTIONERROR_T | Enumeration for StartTransaction error codes | STARTTRANSACTION_SUCCESS STARTTRANSACTION_FAILED STARTTRANSACTION_RESPONSE_SUCCESS, STARTTRANSACTION_RESPONSE_FAILED |
