Pular para o conteúdo principal
Versão: 2.4.x

PIN Pad

Exibição de mensagem

É possível exibir uma mensagem personalizada no PIN pad. Para isto é necessário que o PIN pad esteja aberto, estado no qual ele se encontra após toda transação (pagamento ou estorno) finalizada com aprovação.

É por meio da função ScopeProvider.displayOnPinpadScreen() que uma solicitação de exibição de texto ocorre.

ScopeProvider.displayOnPinpadScreen()

fun ScopeProvider.displayOnPinpadScreen(context: Context, message: String): ScopeReturnCodes

Parâmetros

ParâmetroTipoDescrição
contextContextContexto para execução da função.
messageStringMensagem de até 32 caracteres, sendo 16 caracteres por linha, que será exibida no visor do PIN pad.

Retorno

data class ScopeReturnCodes(
val code: Int,
val message: String,
val operationStatus: OperationStatus
)
CampoTipoDescrição
codeIntCódigo de retorno.
messageStringMensagem descrevendo o resultado da operação.
operationStatusOperationStatusEnumeração indicando sucesso ou falha da operação.
Possíveis códigos de retorno
CódigoMensagemOperationStatus
0Sucesso na operação!OperationStatus.SUCCESS
209PIN-Pad não configurado.OperationStatus.SUCCESS
210Display não permitido neste momento ou situação.OperationStatus.SUCCESS
211PinPad não foi aberto pela aplicação.OperationStatus.FAILED
outrosErro desconhecidoOperationStatus.FAILED

Exemplo de uso

class MainActivity : AppCompatActivity() {

private val scopeProvider = ScopeProvider(/* Configurações */)

override fun onCreate() {
//...

binding.btnDisplayMessageOnPinpad.setOnClickListener {
lifecycleScope.launch {
val resultCode = scopeProvider.displayOnPinpadScreen(this@MainActivity, " UPDATE SCREEN ")
Log.d("MainActivity", resultCode.toString())
Toast.makeText(
this@MainActivity,
"'displayOnPinpadScreen()' retornou $resultCode",
Toast.LENGTH_LONG
).show()
}
}
}
}