Token único por cartão

Token Único por Cartão

Faz-se uso da classe SmartPOSCardFingerprintRequestBuilder.

Este request retorna um identificador único do cartão criptografado (hash).

Dica

Esta requisição não tem aplicação prática para o fluxo transacional, sendo apenas uma ferramenta para caso a sua aplicação faça alguma métrica baseada em cliente.

O mesmo dado é retornado ao fim de uma transação no objeto TransactionData.

Exemplo
val request = SmartPOSPlugin.createCardFingerprintRequestBuilder()
    .callback(object: Callback<SmartPOSCardFingerprintResponse>() {
        override fun onFail(error: Throwable) {
            // Falha ao solicitar o dado
        }

        override fun onSuccess(response: SmartPOSCardFingerprintResponse) {
            response.fingerprint // Token
        }
    })
    .messageCallback(object: Callback<MessageCallbackRequestField.MessageData>() {
        override fun onFail(error: Throwable) {
            // Falha no fluxo de mensagens
        }

        override fun onSuccess(response: MessageCallbackRequestField.MessageData) {
            // Pode ser uma mensagem solicitando a inserção do cartão
            response.message
        }
    })
    .build()

Zoop.post(request)

Retorno

data class SmartPOSCardFingerprintResponse(
    val fingerprint: String,         // Fingerprint do cartão.
    val cardBrand: CardBrand? = null // Bandeira do cartão (pode ser inconsistente caso não identificado corretamente no bin).
)