Point-of-sale icon

Peça entrada de texto

Use uma solicitação de entrada para pedir a um cliente a entrada de texto.

Aqui, descrevemos como você pode usar um InputRequest para pedir ao cliente ou à sua equipe que insira um texto. Você pode usar isso, por exemplo, para obter o endereço de e-mail de um comprador.

Faça uma solicitação de entrada de texto

Para usar o terminal de pagamento para solicitar a entrada de texto:

  1. Faça uma solicitação POST para um endpoint da API de Terminais, especificando:

    • MessageHeader: the standard SaleToPOIRequest.MessageHeader object. Specify:

      Parameter Required Description
      ProtocolVersion -white_check_mark- 3.0
      MessageClass -white_check_mark- Device
      MessageCategory -white_check_mark- Input
      MessageType -white_check_mark- Request
      ServiceID -white_check_mark- 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 -white_check_mark- Your unique ID for the system where you send this request from.
      POIID -white_check_mark- 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 -white_check_mark- CustomerDisplay
      InfoQualify -white_check_mark- Display
      OutputContent.OutputFormat -white_check_mark- Text
      OutputContent.PredefinedContent.ReferenceID -white_check_mark- GetText
      OutputContent.OutputText -white_check_mark- Uma matriz de um campo Text contendo seu próprio texto para mostrar no terminal.
    • InputRequest.InputData: Esta parte do corpo da solicitação lida com a entrada do usuário:

      Parâmetro Requerimentos Descrição
      Device -white_check_mark- CustomerInput
      InfoQualify -white_check_mark- Input
      InputCommand -white_check_mark- TextString
      MaxInputTime (Integer) Tempo limite em segundos. Este é o momento em que o usuário conclui sua entrada.
      InputData.DefaultInputString Texto 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 o endereço de e-mail.

    Para obter uma lista completa de campos que você pode passar em uma solicitação de entrada de texto, consulte a referência da API Text InputRequest.

  2. 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 EventNotification com EventDetails: 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 InputResponse indicando que a solicitação de entrada foi fechada.

    • Se o usuário se recusou a responder (selecionado a chave Cancel ), o InputResult tem Response.Result: Failure, Response.ErrorCondition: Cancel, e um campo vazio TextInput.

    • Se a entrada for recebida do terminal, o InputResponse.InputResult contém:

      • Input.TextInput: The text that the user entered.

    Para obter uma lista completa de campos que você pode receber em uma resposta de entrada de texto, consulte a referência da API Text InputResponse.

  3. Passe os dados relevantes do InputResult para o seu sistema para validação e uso posterior.

Veja também