# Códigos de Resultado e Erros

Esta referência lista os códigos de status e campos de erro retornados pela aplicação Get Smart. Use estes valores para determinar o desfecho de uma transação e diagnosticar erros de processamento.

## Códigos de Resultado da Activity

O sistema Android retorna um `resultCode` padrão no callback `onActivityResult`. Isso indica se a atividade do Get Smart concluiu seu fluxo de trabalho.

| Constante do Código | Valor | Descrição |
| :---- | :---- | :---- |
| `RESULT_OK` | `-1` | A aplicação Get Smart concluiu o fluxo. Isso **não** implica autorização de pagamento. Verifique o extra `RESULT` para determinar o desfecho da transação. |
| `RESULT_CANCELED` | `0` | O usuário abortou o processo ou a aplicação encontrou um erro crítico de inicialização. |

<Callout type="warning">

`RESULT_OK` significa apenas que a aplicação Get Smart concluiu seu fluxo de trabalho. Você deve verificar o extra de Intent `RESULT` para determinar se o pagamento foi realmente autorizado.

</Callout>

## Campos de Resposta do Intent

Quando o `resultCode` é `RESULT_OK`, os seguintes extras estão disponíveis no Intent retornado. Todos os nomes de campos diferenciam maiúsculas de minúsculas.

| Nome do Campo | Tipo | Descrição |
| :---- | :---- | :---- |
| `RESULT` | String | Desfecho da transação. Valores: `"AUTORIZADA"` (sucesso) ou `"DENEGADA"` (negada). |
| `RESPCODE` | int | Código numérico que identifica o motivo específico para a autorização ou denegação. |
| `ERROR_MSG` | String | Descrição legível por humanos do erro ou motivo da denegação. Presente quando a transação falha. |
| `ORDER` | String | Identificador de pedido exclusivo atribuído pelo Get Smart. Obrigatório para operações de estorno. |
| `AUTORIZATION_NUMBER` | String | Código de autorização fornecido pelo emissor. Presente apenas para transações bem-sucedidas. Note a grafia (falta o 'H'). |
| `IDENTIFIER_RTS` | String | Identificador exclusivo da transação atribuído pelo sistema Get Smart. |
| `CARDBRAND` | String | Rede do cartão utilizada para o pagamento (ex: VISA, MASTERCARD, AMEX). Presente para transações bem-sucedidas. |

## Categorias de RESPCODE

O número inteiro `RESPCODE` fornece o resultado específico do gateway de pagamento. Embora existam centenas de códigos, eles são agrupados nas seguintes categorias funcionais.

| Faixa de Códigos | Categoria | Descrição |
| :---- | :---- | :---- |
| 0000 a 0099 | **Sucesso** | Transação autorizada com sucesso. Tipicamente código `0` para transações aprovadas. |
| 0100 a 0199 | **Denegação** | Denegação genérica pelo emissor (ex: saldo insuficiente, limite excedido). |
| 0200 a 0299 | **Problema com o Cartão** | Problemas com o cartão físico ou segurança (ex: cartão expirado, cartão bloqueado, número de cartão inválido). |
| 0900 a 0999 | **Erro de Sistema** | Erro de comunicação ou configuração entre o terminal e o host de pagamento. |
| 9000+ | **Técnico** | Erros locais dentro da lógica da aplicação Get Smart ou configuração do estabelecimento. |

<Callout type="note">

Os valores específicos de RESPCODE são definidos pelo gateway de pagamento e podem variar de acordo com o adquirente e a configuração do estabelecimento. Entre em contato com o suporte do Get Smart para mapeamentos de códigos detalhados relevantes para sua implementação.

</Callout>

## Mensagens de Erro Comuns

O campo `ERROR_MSG` fornece contexto para transações negadas ou que falharam. Valores comuns incluem:

| Mensagem | Contexto |
| :---- | :---- |
| OPERACION CANCELADA | O usuário pressionou o botão de cancelamento no terminal ou na interface de pagamento. |
| ERROR LECTURA TARJETA | O chip ou a tarja magnética não puderam ser lidos pelo terminal. |
| DENEGADA | A transação foi rejeitada pelo host bancário ou emissor. |
| ERROR DE CONEXIÓN | O terminal não consegue alcançar os servidores de autorização do Get Smart. Problema de conectividade de rede. |
| TARJETA NO SOPORTADA | A conta do estabelecimento não aceita essa bandeira de cartão ou tipo de cartão específico. |
| TARJETA CADUCADA | O cartão expirou. A data de validade passou. |
| SALDO INSUFICIENTE | Saldo insuficiente ou limite de crédito excedido. |

<Callout type="tip">

Sempre exiba o valor de `ERROR_MSG` aos usuários quando uma transação falhar. Estas mensagens são localizadas e fornecem orientações claras sobre o motivo da falha.

</Callout>

## Recursos Relacionados

* [Referência de Parâmetros de Resposta](https://docs.globalgetnet.com/pt/products/local-processor-spain/get-smart-app2app?doc=getsmart-app2app-response-api-reference)
* [Tratar Resultados de Transação](/pt/get-smart/get-smart-app2app/transaction-guides/transactions/handle-transaction-results)
* [Parâmetros da Requisição](https://docs.globalgetnet.com/pt/products/local-processor-spain/get-smart-app2app?doc=getsmart-app2app-request-reference)