Pular para o conteúdo principal

Registro do Terminal (Ativação)

Há dois fluxos de credenciamento. O fluxo atual é CNPJ + Código de Verificação (register); o fluxo email + senha (authenticate) é mantido para reuso futuro.

Registro (CNPJ + Token)

Os fields são preenchidos pelo operador conforme o registrationSchema retornado em getTerminalConfig. A chave de cada campo é o id definido no schema (ex.: "cnpj", "token"). O registro vincula o terminal a um único merchant e retorna o merchantId usado na inicialização.

val registration = posPinpad.register(
fields = mapOf(
"cnpj" to operatorCnpj,
"token" to operatorToken
),
partnerSlug = "partner-slug"
)

if (!registration.success || registration.merchantId.isNullOrBlank()) {
showError(registration.error?.message ?: "Falha no registro do terminal.")
return
}

val merchantId = registration.merchantId!!

Autenticação (email/CNPJ + senha)

val response = posPinpad.authenticate(
AuthenticationRequest(
identifier = "email-ou-cnpj", // o SDK detecta o tipo automaticamente
password = "<senha>"
)
)

if (response.success) {
val user = response.user
}

Logout

posPinpad.logout()