Integração

Segurança e homologação

As regras obrigatórias da integração e o que testar antes de pedir a liberação de produção.

Regras obrigatórias

  • !clientSecret e segredo do webhook só no servidor (secret manager / variável de ambiente). Nunca no navegador, app mobile, Git ou logs.
  • !Seu backend autoriza: cada usuário logado só alcança o próprio externalUserId; telas de backoffice só para sua equipe.
  • !Nunca peça ao cliente chave de API, segredo, seed ou chave privada no seu app: use a página hospedada.
  • !Não registre connectUrl nem paymentUrl em log.
  • !Valide a assinatura de todo webhook e deduplique por eventId.
  • !Nunca marque fatura paga sozinho; nunca recalcule PnL, taxa ou cobrança.
  • !Sem retry cego em escrita: repita com a mesma Idempotency-Key.

Checklist de homologação

  1. 1GET /v1/health e GET /v1/tenants → 200 com a credencial de QA
  2. 2Cadastro cria o cliente (created:true); repetir não duplica (created:false)
  3. 3Estratégia selecionada
  4. 4Hosted Connect Binance e Hyperliquid abrem a página FINAUTON; status acompanhado
  5. 5Prévia de risco mostra alertas; acima do contrato mostra RISK_ENVELOPE_EXCEEDED
  6. 6Setup gravado com riskAcknowledgement (depois de conectar)
  7. 7Automação liga e pausa; blockReason exibido
  8. 8Posições/proteção e ordens exibidas
  9. 9Performance e extratos exibidos sem recálculo
  10. 10Fatura → Pagar → instrução EVM exibida (sem enviar em QA); confirm com 202 tratado
  11. 11Webhook validado (assinatura, janela, dedup) e feed com cursor
  12. 12Cliente A não acessa dados do cliente B (sua autorização)
  13. 13Erros exibidos com code + requestId

O app modelo tem a tela Validação B2B (perfil admin), que roda as checagens básicas contra a credencial configurada.

Onde ver no código do app modelo

AssuntoArquivo
Cliente REST (Basic, Idempotency-Key, timeout, erros)src/lib/server/finauton.ts
Endpoints usados e quem pode chamar (cliente × backoffice)src/lib/server/routes.ts
Cadastro do cliente → POST /v1/userssrc/app/api/auth/signup/route.ts
Webhook (HMAC, janela, dedup)src/app/api/webhooks/finauton/route.ts · src/lib/server/crypto.ts
Telas do clientesrc/app/(app)/risco · conexao · operacao · cobranca
Backofficesrc/app/(app)/clientes · eventos · validacao · configuracoes