EventNotification
Event notifications are sent from the terminal to the POS to inform the POS about different things. They do not require a response message and it is not a must to implement any handeling of them, but it may be helpful and make a nice solution. They will only appear if the implementation has a listener for terminal requests.
The most commonly used event notifications are those informing about parameter updates.
1
2
3
4
5
6
<SaleToPOIRequest>
<MessageHeader MessageClass="Event" MessageCategory="Event" MessageType="Notification" ServiceID="20" SaleID="1" POIID="A-POIID"/>
<EventNotification TimeStamp="2023-10-06T07:24:14.473+02:00" EventToNotify="SaleAdmin" MaintenanceRequiredFlag="true">
<EventDetails>Maintenance Required</EventDetails>
</EventNotification>
</SaleToPOIRequest>
Name | Lev | Attribute | Description |
---|---|---|---|
EventNotification | 1 | TimeStamp | Local time when the event occurred. |
EventToNotify | The essential attribute informing what it is about. Enumeration: SaleAdmin , BeginMaintenance , EndMaintenance , Reject , CardInserted , CardRemoved . |
||
MaintenanceRequired | true or false. If true, there are updates that will be implemented at next logout if maintenance allowed is set. | ||
EventDetails | 2 | Informational text about the event. Note! not always present. | |
RejectedMessage | 2 | If EventToNotify is Reject . |
Example flow
sequenceDiagram
participant POS
participant Terminal
Terminal->>POS: EventNotification SaleAdmin
Note over Terminal: MaintenanceRequired="true"
POS->>Terminal: LogoutRequest
Note over POS: MaintenanceAllowed="true"
Terminal->>POS: LogoutResponse Success
Terminal->>POS: EventNotification BeginMaintenance
Note left of Terminal: Update from TMS is implemented
Terminal->>POS: EventNotification EndMaintenence
POS->>Terminal: LoginRequest