Message header
Properties
The message header is mandatory and contains the following properties:
| Property | Description |
|---|---|
| ProtocolVersion | ECR performs terminal discovery to get a list of terminals it has access to, using synchronous request. |
| MessageClass | Enum: Service, Device, or Event |
| MessageCategory | Enum: Login, Logout, CardAcquisition, Payment, StoredValue, BalanceInquiry, Reconciliation, TransactionStatus, Diagnosis, Abort, EnableService, Reversal, Display, PIN, Event, Input |
| MessageType | Enum: Request, Response, Notification |
| ServiceID | Identification of a service message pair message pair |
| DeviceID | Identification of a device message pair. Only used for messages with MessageClass=Device |
| SaleID | Identification of the ECR system. Note: the value used in this field must match the value used in the 'saleName' parameter in the connection string. |
| POIID | Terminal ID |
Message identification
Messages are identified by the data elements ServiceID and DeviceID of the MessageHeader. See 2.2.5 Identification of Message Exchanges in [1] 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 reccommendation 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.
Updated 13 days ago