Boas Práticas
Esta página consolida as principais diretrizes para integrar e manter os SDKs da Unico. Seguir essas práticas reduz erros de integração, previne incidentes de segurança e garante uma implantação em produção tranquila.
Primeiros passos
A Unico oferece um aplicativo de referência para cada SDK no repositório reference-apps. Cada aplicativo implementa a jornada completa do usuário.
Os SDKs evoluem continuamente para oferecer maior segurança e novos recursos. Aplicar atualizações prontamente — especialmente as críticas — é essencial. Consulte a Política de Atualização para prazos e obrigações.
Verifique a versão atual de cada plataforma nas respectivas notas de versão:
- Notas de versão Android
- Notas de versão iOS
- Notas de versão Flutter
- Web — Notas de versão do SDK de Jornadas
Estratégia de atualização
Seu aplicativo provavelmente carrega múltiplas bibliotecas junto com o SDK da Unico. Atualizar várias dependências ao mesmo tempo dificulta a identificação da causa raiz de falhas. Atualize o SDK de forma isolada e valide-o em um ambiente de homologação antes de combiná-lo com outras mudanças.
Ao abrir um ticket de suporte para problemas de atualização, inclua:
- Linguagem do SDK e tipo de implementação (nativa ou híbrida)
- Framework utilizado
- Versão atual e versão alvo
- API Key
- Descrição das alterações e passos para reproduzir
- Resultados, erros, logs, capturas de tela ou vídeos
Segurança do JWT
O JWT retornado após uma captura bem-sucedida é criptografado. Não o abra, analise nem serialize. Sua estrutura interna pode mudar sem aviso prévio. Use-o exclusivamente ao enviar imagens para as APIs da Unico.
Para pré-visualizações de imagem, use o atributo Base64 fornecido junto ao JWT — nunca decodifique o próprio JWT.
Por razões de segurança, o JWT deve ser enviado ao backend da Unico dentro de 10 minutos após a captura. Pacotes enviados após esse prazo são invalidados.
O JWT deve ser submetido apenas uma vez. Se ocorrer um erro durante o envio, uma nova captura biométrica deve ser realizada — não reutilize o mesmo JWT.
Diretrizes de teste
Executar o SDK em máquinas virtuais ou emuladores aciona códigos de erro de segurança (73006, 73600, 73400). Sempre teste em dispositivos físicos para evitar a identificação equivocada de erros e retrabalho desnecessário.
O SDK Web detecta o DevTools aberto como um possível sinal de fraude e invalida o envio. Feche o DevTools antes de executar testes de captura de ponta a ponta.
Realize testes no ambiente de homologação da Unico
Antes de ir para produção, execute testes completos no ambiente de homologação da Unico com cenários realistas. Use API Keys e configurações específicas do ambiente de homologação — nunca use credenciais de produção em testes.
O ambiente de homologação (UAT) do IDCloud aplica os mesmos critérios de segurança da produção. As diretrizes abaixo explicam por quê e como testar sem interrupções.
Antes — detectava, mas não recusava Condições fora do padrão de um uso real eram identificadas, mas não impediam a captura.
Agora — detecta e recusa As mesmas condições passam a gerar recusa de prova de vida, com o mesmo rigor da produção.
Fidelidade — similaridade com a produção O que passa em homologação deve funcionar da mesma forma em produção — evitando que uma integração aprovada em testes falhe de forma inesperada depois do go-live.
Testando em condições próximas ao uso real, as camadas de segurança não impactam seu desenvolvimento.
Ferramentas de desenvolvimento que não sejam as padrões utilizadas pelo mercado acionam validações de segurança, e a transação pode ser barrada.
| Cenário | Situação |
|---|---|
| Fluxo completo da integração — captura, envio, resposta da API e retorno | ✅ Pode |
| Cenários funcionais: UI/UX, performance, erros de negócio | ✅ Pode |
| Dispositivo na configuração padrão de um usuário final | ✅ Pode |
| Integração com backend, APIs e processamento de dados | ✅ Pode |
| Dispositivo com root/jailbreak | ❌ Não pode |
| Modo debug / depuração USB ativa | ❌ Não pode |
| Emuladores ou virtualização | ❌ Não pode |
| Câmeras virtuais ou ferramentas de automação de captura | ❌ Não pode |
| Ferramentas que alterem a conexão | ❌ Não pode |
| MDM corporativo ou monitoramento ativo no dispositivo | ❌ Não pode |
| Sandbox em container ou máquina virtual | ❌ Não pode |
Qualquer uma dessas condições pode gerar recusa de prova de vida.
Fale com o time de suporte para orientação sobre a configuração do seu ambiente. Não há exceção, liberação pontual ou flexibilização temporária — a Unico mantém a homologação equalizada à produção enquanto entender necessário.
Diretrizes específicas por plataforma
Não tente fazer bridge dos SDKs nativos Android ou iOS dentro de um aplicativo Flutter. Bridges nativos frequentemente produzem erros não mapeados. Sempre use o plugin Flutter dedicado da Unico.
Ao atualizar o SDK Web, exclua os arquivos de recursos antigos da sua pasta public antes de inserir os novos. Arquivos com nomes idênticos não serão sobrescritos automaticamente e podem causar conflitos de versão.
Artefatos de compilação de versões anteriores do SDK podem causar erros de dependência após uma atualização. Antes de compilar uma nova versão:
- Flutter: exclua
pubspec.locke executeflutter pub get - iOS: execute
pod cache clean --allepod install - Android: execute
./gradlew clean
Exclua o código do SDK da Unico da sua configuração de ofuscação. Ofuscar o SDK comumente causa falhas em builds de release que não aparecem em builds de debug. Consulte a documentação específica da plataforma para as regras de exceção necessárias.
UX e performance
Estruture o fluxo do SDK em duas etapas distintas:
- Preparar — inicialize o SDK enquanto a página está carregando (antes da interação do usuário).
- Abrir — abra a câmera somente quando o usuário acionar a ação explicitamente.
Preparar o SDK com antecedência reduz a latência percebida e melhora significativamente a experiência do usuário.
Implantação em produção
Antes de implantar em produção, verifique:
- API Keys de produção e configurações de ambiente estão corretas
- Plano de rollback está definido e testado
- Protocolo de coleta de logs está implementado
- Procedimentos de ticket de suporte estão documentados para tratamento de falhas
- Todas as validações passaram no ambiente de homologação