# Processo de Certificação

## O que é o Processo de Certificação?

Antes de entrar em produção com a sua integração de pagamento, você deve concluir um processo de certificação para garantir que a sua implementação atenda aos padrões técnicos, de segurança e de experiência do usuário da GetNet, bem como aos requisitos regulatórios. Após finalizar os acordos comerciais com a equipe de vendas da GetNet, o processo de certificação começa quando a equipe de integrações da GetNet entra em contato com você para orientá-lo na validação técnica. Esse processo valida se a sua integração processa pagamentos de forma segura, fornece uma boa experiência ao usuário e está em conformidade com as melhores práticas do setor.

## Passo 1: Requisitos de Segurança

**Certificação PCI DSS**

Um certificado PCI DSS ativo é obrigatório. Este documento deve ser obtido da parte responsável pela captura dos dados do portador do cartão — seja a sua organização ou um provedor terceirizado. Assim que estiver disponível, envie o certificado para a Equipe de Suporte à Integração para aprovação via e-mail.

**Proteção de Dados Sensíveis**

Os dados do portador do cartão devem ser tratados com medidas de segurança rigorosas:

  - Nunca exiba o número completo do cartão em nenhum momento do fluxo de transação
  - Nunca armazene ou exiba os dados do CVV em nenhuma etapa, incluindo em recibos de transação
  - Em comprovantes ou recibos, exiba apenas o BIN e os quatro últimos dígitos do número do cartão
  - Certifique-se de que todos os dados sensíveis sejam criptografados em trânsito e em repouso

## Passo 2: Requisitos de Interface do Usuário

Para garantir uma experiência de pagamento fluida e transparente para os seus usuários, a sua integração deve atender aos seguintes requisitos de interface do usuário:

**Iniciação do Pagamento e Branding**

Antes de enviar um pagamento, exiba um resumo claro e conciso da transação para o usuário. Inclua a marca apropriada do gateway de pagamento (como o logotipo da GetNet) dependendo do contexto da sua integração.

**Termos e Condições**

Forneça um link claramente visível permitindo que os usuários leiam e aceitem os termos e condições antes de concluir o pagamento.

**Perguntas Frequentes (FAQ)**

Inclua uma seção com perguntas frequentes relacionadas a pagamentos eletrônicos. Um documento de FAQ sugerido é fornecido durante o processo de onboarding.

**Histórico de Transações**

Os usuários devem ter acesso a um resumo de suas compras anteriores, que deve incluir os seguintes detalhes:

  - Número de referência
  - Data da transação
  - Valor (incluindo moeda)
  - Status da transação

## Passo 3: Requisitos Técnicos de Segurança

Sua integração deve implementar medidas técnicas de segurança para proteger dados sensíveis, evitar transações duplicadas e garantir o processamento confiável de pagamentos. Esses requisitos são essenciais para manter a conformidade de segurança e fornecer uma experiência de pagamento segura.

**Armazenamento Seguro de Credenciais**

As credenciais devem ser armazenadas com segurança, seja em um banco de dados protegido com criptografia ou como variáveis de ambiente. Sistemas de gerenciamento de configuração seguros também podem ser usados. Sob nenhuma circunstância essas credenciais devem ser expostas no código-fonte, sistemas de controle de versão ou código do lado do cliente.

**Manipulação do Botão de Pagamento**

Para evitar cobranças múltiplas acidentais, medidas devem ser implementadas para evitar envios repetidos causados por cliques duplos no botão de pagamento, atrasos na rede ou problemas de navegação de voltar/avançar no navegador.

**Controle de Idempotência**

O uso do campo `idempotency_key` deve ser implementado para garantir que tentativas de pagamento duplicadas não sejam processadas mais de uma vez. Isso evita cobranças duplicadas acidentais quando ocorrem problemas de rede.

**Tratamento de Transações Pendentes**

Se uma transação permanecer em estado pendente, o sistema deverá notificar o usuário adequadamente antes de permitir que uma nova tentativa de pagamento seja iniciada. Implemente o rastreamento de status adequado e a comunicação com o usuário para transações pendentes.

## Passo 4: Requisitos de Validação de Dados

A validação de dados adequada garante que as informações de pagamento sejam coletadas de forma precisa, segura e em conformidade com os requisitos de autenticação. Sua integração deve validar todos os campos de entrada antes do envio e coletar os dados necessários para a autenticação 3D Secure quando aplicável.

**Campos Obrigatórios para Autenticação 3DS (se Aplicável)**

Ao implementar a autenticação 3D Secure, colete os seguintes campos obrigatórios:

  - Endereço de e-mail do portador do cartão
  - Nome completo
  - Número de telefone
  - Endereço IP do dispositivo usado durante a transação

**Campos Recomendados para Autenticação 3DS**

Para aumentar a segurança e melhorar a precisão da autenticação, inclua também os detalhes do endereço de cobrança:

  - Cidade
  - País
  - Linha de endereço
  - Código postal
  - Estado

**Algoritmo de Luhn e Validação de CVV**

Os números dos cartões devem ser validados usando o Algoritmo de Luhn (uma fórmula matemática usada para validar números de identificação, como números de cartão de crédito, números IMEI, números de Previdência Social e outros). O campo CVV deve aceitar apenas entrada numérica e deve ser renderizado como um campo do tipo senha para proteger dados sensíveis.

**Regras de Validação de Campos**

  - Nome e sobrenome: Não devem conter caracteres especiais ou valores numéricos
  - Endereços de e-mail: Devem aderir a um formato de e-mail válido
  - Todos os campos obrigatórios: Devem ser validados antes do envio

## Passo 5: Teste de Fluxo de Transação

Você deve executar e documentar os seguintes cenários de transação:

| Tipo de Transação | O que Validar | Evidência Necessária |
| :--------------- | :--------------- | :---------------- |
| **Aprovada / Aceita** | Exibir status, mensagem, descrição, data, valor total e moeda | Capturas de tela do painel e do frontend |
| **Rejeitada / Negada / Erro** | Os mesmos dados de uma transação aprovada | Capturas de tela do painel e do frontend |
| **Pendente** | Validar a correspondência do status inicial e final | Evidência antes e depois da mudança de status |

**Logs de Integração**

Mantenha logs de todas as requisições enviadas ao gateway de pagamento. Esses logs são essenciais para solução de problemas, auditoria e validação do comportamento da sua integração.

## Passo 6: Integrações Adicionais

**Webhook (Notificações de Status)**

Você deve expor 4 URLs durante o credenciamento na Plataforma Digital para receber notificações de status de transação assíncronas. Esses webhooks permitem atualizações em tempo real quando os status das transações mudam.

**Probe / Cronjob**

Implemente um mecanismo para lidar com transações pendentes:

  - Simule uma transação pendente.
  - Atualize manualmente o status dela no painel de administração.
  - Verifique se o seu site reflete automaticamente a alteração de status.

## Passo 7: Requisitos de Dados da Transação

Sua integração deve incluir dados de transação completos e precisos para garantir o processamento adequado, a conformidade com os requisitos regionais e o tratamento de pagamentos bem-sucedido. Isso inclui informações do pagador e do comprador, referências de transação exclusivas e quaisquer detalhes exigidos de impostos ou modificadores de pagamento.

**Informações do Pagador e do Comprador**

Inclua dados para as entidades pagadora e compradora no fluxo da transação, quando aplicável.

**Referência Exclusiva de Transação**

Cada transação deve ter um identificador de referência exclusivo para evitar duplicatas e permitir o rastreamento adequado.

**Tratamento de Impostos**

Verifique se algum dos países disponíveis exige que os impostos sejam detalhados separadamente nos dados da transação.

**Modificadores de Pagamento**

Valide se os campos obrigatórios estão incluídos com base no tipo de financiamento ou nos impostos aplicáveis para o seu mercado.

## Passo 8: Estorno de Transação

Se a sua integração suporta estornos ou cancelamentos de transações, essas operações devem ser devidamente implementadas e validadas durante o processo de certificação. Isso garante que as solicitações de cancelamento sejam tratadas corretamente e que as atualizações de status sejam refletidas com precisão em seu sistema.

**Processo de Cancelamento**

Se você implementou estornos de transações via API, este fluxo também deve ser validado durante a certificação. Certifique-se de que as solicitações de cancelamento sejam tratadas corretamente e as atualizações de status sejam refletidas em seu sistema.

## Checklist de Validação

Ao longo do processo de certificação, você deverá fornecer evidências de conformidade. Isso pode ser enviado via:

  - Documentação por e-mail
  - Capturas de tela demonstrando a funcionalidade
  - Gravações de vídeo dos fluxos de usuários
  - Logs de integração

Se algum requisito não for implementado, você deverá fornecer uma justificativa explicando o motivo. Todas as informações enviadas são revisadas e validadas pelas equipes de Garantia de Qualidade e Segurança da Informação.

## Veja Também

Para obter informações sobre os requisitos de conformidade com o PCI DSS, consulte [Conformidade PCI (PCI DSS)](https://www.google.com/search?q=/en/products/online-payments/regional-api%3Fdoc%3Dpci-compliance). Para obter detalhes sobre o manuseio seguro de dados, consulte [Tokenização](https://www.google.com/search?q=/en/products/online-payments/regional-api%3Fdoc%3Dtokenization). Para entender os requisitos de autenticação, consulte [Autenticação 3DS 2.0](https://www.google.com/search?q=/en/products/online-payments/regional-api%3Fdoc%3D3dSecure).