Login

Create a session between the ECR and the terminal

A login message creates a session between the ECR and the terminal, and allows the ECR and terminal to exchange information about capabilities. Login must be performed before any other requests are sent from ECR.

Example request

{
  "SaleToPOIRequest": {
    "MessageHeader": {
      "ProtocolVersion": "3.1",
      "ServiceID": "1",
      "MessageClass": "Service",
      "MessageCategory": "Login",
      "MessageType": "Request",
      "SaleID": "ECR123",
      "POIID": "AT12345"
    },
    "LoginRequest": {
      "DateTime": "2024-04-18T19:14:02.441Z",
      "SaleSoftware": {
        "ProviderIdentification": "ECR Provider Inc",
        "ApplicationName": "BestECR",
        "SoftwareVersion": "1.3.4"
      }
    }
  }
}
PropertyDescriptionMandatory / Optional
LoginRequestMandatory
DateTimeRequest timestampMandatory
SaleSoftwareInformation about the ECR software. Used for troubleshooting purposesMandatory
ProviderIdentificationName of ECR providerMandatory
ApplicationNameName of ECR applicationMandatory
SoftwareVersionECR application versionMandatory

Example response

{
  "SaleToPOIResponse": {
    "MessageHeader": {
      "MessageCategory": "Login",
      "MessageClass": "Service",
      "MessageType": "Response",
      "POIID": "AT12345",
      "ProtocolVersion": "3.1",
      "SaleID": "ECR123",
      "ServiceID": "1"
    },
    "LoginResponse": {
      "Response": {
        "Result": "Success"
      },
      "AeAllowedPaymentBrand": [
        "VISA",
        "MASTERCARD",
        "MAESTRO",
        "BANCONTACT"
      ],
      "AeAllowedPaymentBrandCategory": [
        "NORMAL",
        "VOUCHER"
      ],
      "POISystemData": {
        "DateTime": "2026-05-28T10:47:50.679+02:00",
        "POISoftware": {
          "ProviderIdentification": "Aera",
          "ApplicationName": "Aera Payment App",
          "SoftwareVersion": "2026.2.3"
        },
        "POITerminalData": {
          "POISerialNumber": "236TKR500040"
        }
      }
    }
  }
}
PropertyDescriptionMandatory / Optional
LoginResponseMandatory
ResponseMandatory
ResultSuccess or FailureMandatory
AeAllowedPaymentBrandList of card brands that are enabled locally in the terminal. See [4] for supported valuesOptional
AeAllowedPaymentBrandCategoryList of card brand categories configured locally in the terminal. See [4] for supported valuesOptional

Example of error response

{
  "SaleToPOIResponse": {
    "MessageHeader": {
      "MessageCategory": "Login",
      "MessageClass": "Service",
      "MessageType": "Response",
      "POIID": "AT12345",
      "ProtocolVersion": "3.1",
      "SaleID": "ECR123",
      "ServiceID": "1"
    },
    "LoginResponse": {
      "Response": {
        "AdditionalResponse": "'AE123456' not connected.",
        "Result": "Failure",
        "ErrorCondition": "UnavailableDevice"
      }
    }
  }
}
PropertyDescriptionMandatory / Optional
LoginResponseMandatory
ResponseMandatory
ResultSuccess or FailureMandatory
AdditionalResponseTextString. Additional information related to processing status of a message request .Optional
ErrorCondition

Enum. Condition that has produced an error on the processing of a message request.

Please see the Error section for general error handling and all the enum values for this field.

Optional

Note: The layout of the Response object with "Result, ErrorCondition and AddionalResponse" is the same in case of error for all messages and will therefore not be repeated for the other messages below.


Did this page help you?