Request diagnosis

Endpoint

The URL used to send  Terminal API  messages depends on your type of implementation. For more information on the architectures available, see the Terminal API Overview .

Request

For a list of Diagnosis Request fields, see DiagnosisRequest fields. The elements of a payment request are wrapped in a DiagnosisRequest envelope.

The SaleID and ServiceID in the MessageHeader should be unique. SaleID and ServiceID combinations are rejected if used recently, within 48 hours.

The fields described below are the basic fields you specify when making a DiagnosisRequest call to the Terminal API.

LoginRequest
{
   "SaleToPOIRequest":{
      "MessageHeader":{
         "ProtocolVersion":"3.0",
         "MessageClass":"Service",
         "MessageCategory":"Diagnosis",
         "MessageType":"Request",
         "ServiceID":"0403104624",
         "SaleID":"POSSystemID12345",
         "POIID":"P400Plus-275008565"
      },
      "DiagnosisRequest":{
         "HostDiagnosisFlag":true
      }
   }
}

Response

For a list of DiagnosisResponse fields, see DiagnosisResponse fields.

A request is attempted and you receive a response with the following fields:

LoginResponse
{
  "SaleToPOIResponse": {
    "MessageHeader": {
      "ProtocolVersion": "3.0",
      "SaleID": "POSSystemID12345",
      "MessageClass": "Service",
      "MessageCategory": "Diagnosis",
      "ServiceID": "0403104624",
      "POIID": "P400Plus-275008565",
      "MessageType": "Response"
    },
    "DiagnosisResponse": {
      "POIStatus": {
        "CommunicationOKFlag": true,
        "GlobalStatus": "OK"
      },
      "Response": {
        "Result": "Success"
      },
      "HostStatus": [
        {
          "IsReachableFlag": true,
          "AcquirerID": "0"
        }
      ]
    }
  }
}