Aqui, descrevemos como você pode usar um InputRequest para pedir ao cliente ou à sua equipe que insira um valor numérico. Você pode usar isso, por exemplo, para obter o número de telefone de um comprador.
Faça uma solicitação de entrada de dígito
Para usar o terminal de pagamento para solicitar entrada numérica:
1.Faça uma solicitação POST para um endpoint da API Terminais, especificando:
- 
The standard SaleToPOIRequest.MessageHeaderobject, withMessageClassset to Device andMessageCategoryset to Input.| Parameter | Required | Description | | :---- | :----: | :---- | | `ProtocolVersion` | | **3.0** |
| `MessageClass`    | | **3.0** |
| `MessageClass`    | | **Device** |
| `MessageCategory` | | **Device** |
| `MessageCategory` | | **Input** |
| `MessageType`     | | **Input** |
| `MessageType`     | | **Request** |
| `ServiceID`       | | **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 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`           | | 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]*. | | The unique ID of the terminal to send this request to. Format: *[device model]-[serial number]*. |- 
InputRequest.DisplayOutput: Esta parte do corpo da solicitação define o que é mostrado no terminal:Parâmetro Requerimentos Descrição Device CustomerDisplay InfoQualify Display OutputContent.OutputFormat Text OutputContent.PredefinedContent.ReferenceID GetDigit OutputContent.OutputText Uma matriz de um campo Textcontendo seu próprio texto para mostrar no terminal. Em uma tela de retrato, limitada a cerca de 20 caracteres. Além do texto que você especificar, o terminal mostrará uma instrução sobre como confirmar a entrada.
- 
InputRequest.InputData: Esta parte do corpo da solicitação lida com a entrada do usuário:Parâmetro Requerimentos Descrição Device CustomerInput InfoQualify Input InputCommand DigitString MaxInputTime(Integer) Tempo limite em segundos. Este é o momento em que o usuário conclui sua entrada. InputData.DefaultInputStringTexto de espaço reservado para a caixa de entrada, para que o usuário saiba qual formato de entrada você está esperando. 
 O exemplo a seguir pede ao cliente seu número de telefone. Para obter uma lista completa de campos que você pode passar em uma solicitação de entrada numérica, consulte a referência da API Digit InputRequest. 
- 
- 
Aguarde até que o usuário forneça a entrada solicitada. A entrada fornecida não é validada em um formato. -Se a solicitação de entrada expirar, você receberá uma EventNotificationcomEventDetails: message=Did+not+receive+a+response+from+the+POI.- 
Se você fizer uma solicitação de pagamento enquanto a solicitação de entrada está aguardando a entrada no terminal, a solicitação de pagamento substitui a solicitação de entrada. Você recebe uma InputResponseindicando que a solicitação de entrada foi fechada.
- 
Se o usuário se recusou a responder (selecionando a chave Cancel  ), o ), oInputResulttemResponse.Result: Failure,Response.ErrorCondition: Cancel, e um campo vazioDigitInput.
- 
Se a entrada for recebida do terminal, o InputResponse.InputResultcontém:- Input.DigitInput: Os numerais que o usuário inseriu.
 
 Para obter uma lista completa de campos que você pode receber em uma resposta de entrada numérica, consulte a referência da API Digit InputResponse. 
- 
- 
Passe os dados relevantes do InputResultpara o seu sistema para validação e uso posterior.