Here we describe how you can use an InputRequest to ask the shopper to enter their phone number. The country code is prefilled based on the location of the terminal, but can be changed on the terminal.
The following illustrations show a digit input screen on a portrait, small portrait, and landscape display.



The terminal continues to show your input request until one of these events occurs:
- The user has provided input.
- The maximum input time expires. You can set this time in the request.
- On the terminal, Cancel
is selected. - The terminal receives a request to cancel collecting input or any other request from the POS app.
Make a PhoneNumber input request
To use the payment terminal to ask for a phone number:
-
Make a Terminal API input request, specifying:
-
The standard
SaleToPOIRequest.MessageHeaderobject, withMessageClassset to Device andMessageCategoryset to Input.Parameter Required Description ProtocolVersion
3.0 MessageClass
Device MessageCategory
Input MessageType
Request ServiceID
Your unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal ( POIID) being used.SaleID
Your unique ID for the system where you send this request from. POIID
The unique ID of the terminal to send this request to. Format: [device model]-[serial number].
-
InputRequest.DisplayOutput: This object defines what is shown on the terminal.Parameter Description DeviceCustomerDisplay InfoQualifyDisplay OutputContent.OutputFormatText OutputContent.PredefinedContent.ReferenceIDGetPhoneNumber OutputContent.OutputTextAn array of one Textfield containing your own text to show on the terminal. Apart from the text you specify, the terminal will show an instruction for how to confirm the input. -
InputRequest.InputData: This object handles the user input.Parameter Description DeviceCustomerInput InfoQualifyInput InputCommandDigitString MaxInputTime(Integer) Time-out in seconds. This is the time that the user gets to finish their input. DefaultInputStringPlaceholder text for the input box, to let the user know what input format you are expecting. MaskChararctersFlagMask user input. Allowed values are true and false.
The following example asks the shopper for their phone number.
-
-
Wait for the user to supply the requested input.
The provided input is not validated against a format.
- If input is received from the terminal, the
InputResult.Inputcontains:DigitInput: the numerals (phone number) that the user entered.
-
If the input request times out, the
InputResult.ResponsehasAdditionalResponse: message=Screen%20timeout,Result: Failure, andErrorCondition: Cancel. -
If you make a payment request while the input request is waiting for input on the terminal, the payment request overrides the input request. The
InputResult.ResponsehasAdditionalResponse: message=A%20higher%20priority%20request%20has%20been%20received,Result: Failure, andErrorCondition: Busy. -
If the user declined to respond (selected the Cancel key
), the InputResult.Input.DigitInputfield is empty. TheInputResult.ResponsehasResult: Failure andErrorCondition: Cancel.
- If input is received from the terminal, the
-
Pass the phone number from the
DigitInputfield to your system for validation and further use.