Consultar chave transacional

Consulte se o terminal SmartPOS possui a chave transacional necessária para executar pagamentos com cartão no Plugin SmartPOS.

Consulte se o terminal possui a chave transacional necessária para executar pagamentos com cartão no Plugin SmartPOS.

A ausência da chave transacional impede transações com cartão. Se o terminal não possuir a chave, envie o dispositivo ao fabricante para gravação ou correção da chave.

Quando consultar a chave

Recomenda-se consultar a chave transacional na inicialização do plugin, antes de permitir pagamentos com cartão.

Use essa validação para:

  • bloquear o fluxo de pagamento quando o terminal não tiver chave;
  • exibir uma mensagem clara para o operador;
  • evitar tentativas de transação que falhariam no terminal;
  • identificar terminais que precisam ser corrigidos pelo fabricante.

Não é necessário inicializar o plugin previamente para consultar a chave transacional.


Classe utilizada

Para consultar a chave transacional, use a classe SmartPOSZoopKeyValidationRequestBuilder.

A requisição é criada por:

SmartPOSPlugin.createZoopKeyValidationRequestBuilder()

Exemplo

val keyValidationRequest = SmartPOSPlugin.createZoopKeyValidationRequestBuilder()
    .callback(object: Callback<SmartPOSZoopKeyValidationResponse>() \{
        override fun onSuccess(response: SmartPOSZoopKeyValidationResponse) {
            if (response.hasKey) {
                handleTerminalHasTransactionKey()
            } else {
                // Terminal doesn't have transactional key
            }
        }

        override fun onFail(error: Throwable){
            // Terminal doesn't have transactional key
        }
    })
    .build()

Zoop.post(keyValidationRequest)

Retorno

A resposta contém a propriedade hasKey, que indica se a chave transacional está presente no terminal.

data class SmartPOSZoopKeyValidationResponse(
    val hasKey: Boolean
)
CampoTipoDescrição
hasKeyBooleanRetorna true quando o terminal possui chave transacional e false quando não possui.

Callbacks

.callback

Responsável pelo fluxo da consulta: início, sucesso, falha e conclusão.

MétodoQuando ocorreAção recomendada
onStartA consulta foi iniciada.Exiba um estado de carregamento, se necessário.
onSuccessA consulta foi concluída.Verifique response.hasKey antes de liberar pagamentos com cartão.
onFailA consulta falhou.Trate como terminal sem chave ou exiba uma mensagem de erro operacional.
onCompleteA consulta terminou, com sucesso ou falha.Remova estados de carregamento.

Tratamento recomendado

Ao receber o resultado da consulta, trate os estados explicitamente:

    1. Se response.hasKey for true, permita pagamentos com cartão.

    2. Se response.hasKey for false, bloqueie pagamentos com cartão e oriente o envio do terminal ao fabricante.

    3. Se onFail for chamado, exiba uma mensagem informando que não foi possível validar a chave transacional.

Não há correção do lado da Zoop quando a chave transacional está ausente. A correção deve ser feita pelo fabricante do terminal.


Checklist antes de pagamentos com cartão

Antes de chamar a requisição de pagamento com cartão, confirme:

  • O terminal foi ativado.
  • O SDK foi inicializado corretamente.
  • O SmartPOSPlugin foi conectado ao SDK.
  • A chave transacional foi consultada.
  • response.hasKey retornou true.
  • O app exibe uma orientação clara quando a chave está ausente.

Próximo passo

Depois de validar a chave transacional, siga para Pagamento via cartão.


Did this page help you?