Pular para o conteúdo
Clinford Jordano Valencia
Todos os projetos
PlataformaWebMobile

KYC Studio, fluxos guiados por schema

Uma plataforma de interface guiada por configuração, com configuração como código no Git, para que mudanças de conformidade sejam publicadas em horas, sem deploy do frontend.

Papel
Senior Frontend Engineer
Período
2025–atual
Stack
TypeScript · jsonform · Mini Program · Git · CI/CD · Schema validation

O problema

Os fluxos de verificação para mais de 100 países significavam código duplicado e um ticket de engenharia toda vez que a área de conformidade ou de produto queria mudar uma regra regional.

A abordagem

  • Formulários gerados a partir do schema. A interface lê configuração em JSON ou YAML pelo jsonform: o schema gera os campos e as regras de validação. Ações sob medida, como iniciar a ponte NFC nativa ou uma verificação de liveness, continuam no código.
  • Uma etapa, resultados diferentes. A configuração decide o que uma etapa faz em cada país e plataforma (web, celular ou Mini Program). Onde há NFC, a etapa mostra instruções de leitura e um botão “Ler com NFC”; nos demais casos, os campos de formulário comuns e um botão “Continuar”. Produto e conformidade mudam isso na configuração, não no código.
  • Configuração como código. Responsáveis por conformidade e produto enviam mudanças pelo Git. Cada mudança abre automaticamente uma pull request e roda a CI com validação de schema estrita baseada em tipos do TypeScript, de modo que uma configuração malformada falha antes de chegar à produção.

Duas decisões que valem explicação

jsonform para exibir, código para as ações. Uma interface totalmente guiada pelo servidor, que executa lógica arbitrária enviada por ele, abre caminho para execução remota de código e problemas de desempenho. Exibir a partir de dados, com as ações ligadas a handlers pré-compilados, mantém a flexibilidade sem esse risco.

Git em vez de um formulário de administração. Edições fáceis sem governança quebram fluxos em produção. Pull requests, checagem de tipos e CI deixam cada mudança com autoria conhecida, revisada e fácil de reverter.

O resultado

As publicações de configuração deixaram de depender do deploy do frontend, então as atualizações de conformidade em vários mercados passaram de semanas para horas, e a duplicação de código por região parou de crescer.