Message header

The header fields that every Nexo message starts with.

📘

Used in these guides

Connect your ECR

The message header is mandatory and contains the following properties:

FieldDescription
ProtocolVersionAlways "3.1"
MessageClassEnum: Service, Device, or Event
MessageCategoryEnum: Login, Logout, CardAcquisition, Payment, StoredValue, BalanceInquiry, Reconciliation, TransactionStatus, Diagnosis, Abort, EnableService, Reversal, Display, PIN, Event, Input
MessageTypeEnum: Request, Response, Notification
ServiceIDIdentification of a service message pair
DeviceIDIdentification of a device message pair. Only used for messages with MessageClass=Device
SaleIDIdentification of the ECR system. Note: the value used in this field must match the value used in the 'saleName' parameter in the connection string.
POIIDTerminal ID

Message identification

Messages are identified by the data elements ServiceID and DeviceID of the MessageHeader. See section 2.2.5, Identification of Message Exchanges, in the Nexo Sale to POI specification for additional information.

ServiceID and DeviceID is of type string with length: 1-10. It should be unique per service or device dialogue (request+response pair). As a practical recommendation to make log reading and troubleshooting easier, is to use a sequential numeric ID. This makes it easy to spot mismatches when reading logs.

Message extensions

Aera has made some extensions (additional fields) to the Nexo messages in cases where no suitable fields exist in standard Nexo. Such extensions are prefixed with 'Ae' to make them easily recognisable.