Request confirmation

Outlines requesting input from the customer in the form of confirmation/agreement.


 The input request allows merchants to request some input from the shoppers outside of a payment transaction This allows you to send text, for example  terms and conditions, and allow the shopper to confirm.

We provide templates with specific fields for you to populate with your own text. For example, for 'shopper agreement' requests, there are four inputs to send. One for a title, one for a main text area, and one for each button. We provide guidelines on intended use, and the templates are customizable; you choose the text to display.

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

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

For a list of InputRequest fields, see InputRequest fields.

InputRequest - Confirmation
{
   "SaleToPOIRequest":{
      "MessageHeader":{
         "ProtocolVersion":"3.0",
         "MessageClass":"Device",
         "MessageCategory":"Input",
         "MessageType":"Request",
         "ServiceID":"9264",
         "SaleID":"John",
         "POIID":"MX925-260193322"
      },
      "InputRequest":{
         "DisplayOutput":{
            "Device":"CustomerDisplay",
            "InfoQualify":"Display",
            "OutputContent":{
               "OutputFormat":"Text",
               "PredefinedContent":{
                  "ReferenceID":"GetConfirmation"
               },
               "OutputText":[
                  {
                     "Text":"Title"
                  },
                  {
                     "Text":"This text can be long and is scrollable."
                  },
                  {
                     "Text":"Button 1 Label"
                  },
                  {
                     "Text":"Button 2 Label"
                  }
               ]
            }
         },
         "InputData":{
            "Device":"CustomerInput",
            "InfoQualify":"Input",
            "InputCommand":"GetConfirmation",
            "MaxInputTime":30
         }
      }
   }
}

The first Text field represents the title, the second Text field represents text to display to the shopper. The third and fourth Text fields represent the text displayed in the buttons on screen. The third Text field represents the text displayed in the left button. The fourth Text field represents the text displayed in the right button.

Use our POS test card numbers to test your integration.

Response

For a list of InputResponse fields, see InputResponse fields.

InputResponse - Confirmation
{
   "SaleToPOIResponse":{
      "InputResponse":{
         "InputResult":{
            "Device":"CustomerInput",
            "InfoQualify":"Input",
            "Response":{
               "Result":"Success",
               "AdditionalResponse":"note=Direct%20API%20REQUIRES%20payload%20crypto%20on%20live%2c%20cleartext%20allowed%20for%20testing%20only"
            },
            "Input":{
               "ConfirmedFlag":true,
               "InputCommand":"GetConfirmation"
            }
         },
         "OutputResult":{
            "Device":"CustomerDisplay",
            "InfoQualify":"Display",
            "Response":{
               "Result":"Success"
            }
         }
      },
      "MessageHeader":{
         "SaleID":"John",
         "MessageClass":"Device",
         "MessageCategory":"Input",
         "ServiceID":"9264",
         "POIID":"MX925-260193322",
         "MessageType":"Response"
      }
   }
}

The ConfirmedFlag parameter identifies which button was selected. True means the right button was selected, False means the left button was selected.