Tratamento de erros
Durante a integração haverá algumas exceções que podem ser levantas por algum erro interno, validação de dados ou mesmo algum problema de implementação, por exemplo, não realizar a inicialização, ou informar valores inválidos para transacionar.
Caso haja algum problema durante o processo temos os seguintes erros:
enum TapOnPhoneErrors: Error {
case getSaleDetail //Erro ao tentar pegar os detalhes de uma venda
case getSaleList //Erro ao tentar carregar as lista de vendas do usuario
case deviceCheckError //Erro relacionado a verificação do device para uso do SDK
case deviceIncompatibleException //Erro relacionado a um device incompátivel com o SDK
case invalidAppleToken //Erro ao tentar pegar o token da Apple (Fingerprint)
case invalidDeviceId //Erro ao tentar pegar o id do device
case noAvailableSpace //Erro relacionado ao verificar se o device tem espaço em disco para usar o SDK
case invalidPaymentData //Dados de pagamento informados são invalidos
case unableToConfirmTransaction //Erro ao tentar salvar uma transação
case appleTapPrepareError //Erro ao inicializar o AppleTap
case cancelationException //Erro no Cancelamento
case invalidInitialData //Dados de configuração inicial incorretos
case invalidMerchantNumber //Erro no número do Comerciante
case invalidPaymentMethod //Erro do método de pagamento inválido
case invalidReceiptData //Dados do comprovante inválidos
case unableToGetPaymentInfo //Erro ao recuperar dados do pagamento
case unspecifiedError(Error) //Erro genérico
case paymentError //Erro no pagamento
case errorPreparingDevice //Erro ao prepar o aparelho
case documentNotProvided(InitialDataNotProvided?) //Documento não informado
case initializerFailure(InicializerFailure?) // Quando ocorrer um erro no initialize, será retornado um struct com informações de error(code, title, message)
case osVersionNotSupported // Quando o sistema operacional do aparelho não ter suporte ao card reader.
case fileNotFound // Quando um arquivo de whitelabel informado não exitir
case conversionFailed // Quando o arquivo de whitelabel tiver no padrão de JSON.
case invalidJson // Quando o arquivo de whitelabel estiver algum algum problema
case genericError(Error) //Erro genérico
case accountAlreadyLinked //Um erro que indica já aceitou os Termos e Condições.
case errorLinkingAccount(Error) // Erro durante o processo de linkar a conta
case accountLinkingCancelled // Quando o usuário cancela o processo de linkar a conta
}Sabendo disso, passamos o controle para o parceiro integrador se adequar aos erros, e notificar o usuário conforme necessidade.
Os erros podem ser levantados diretamente pelos métodos através de um throw ou retornados pelo failure dos métodos de retorno. Verifique a documentação de cada método para preparar a sua chamada de acordo.
Updated 3 months ago
Did this page help you?