Pular para conteúdo

Contexto do sistema (C4 nível 1)

flowchart TB
    subgraph Pessoas
        U1["Usuário da garantidora\n(ADMIN_TENANT, ANALYST,\nOPERATOR, VIEWER)"]
        U2["Usuário de imobiliária\n(AGENCY_USER, AGENCY_MANAGER)"]
        U3["Admin da plataforma\n(ADMIN_GLOBAL)"]
    end

    G["Garantora\n(SaaS de gestão de\ngarantias imobiliárias)"]

    U1 -->|"opera análises, garantias,\ncobranças, acertos, cadastros"| G
    U2 -->|"origina inquilino/imóvel, acompanha\nanálise, declara pagamentos do acerto,\no responsável administra a equipe da imobiliária"| G
    U3 -->|"administra garantidoras, convites,\ncatálogo de consultas, plataforma"| G

    G -->|"e-mail transacional\n(convite, recuperação de senha,\nverificação)"| MAIL["Servidor de e-mail\n(Mailpit em dev, AWS SES em produção)"]
    G -->|"consultas de crédito\n(bureaus via API Full),\nextrato de créditos"| APIFULL["API Full\n(api.apifull.com.br)"]
    G -->|"endereço por CEP"| VIACEP["ViaCEP"]
    G -.->|"assinatura digital + biometria\n(planejado — não integrado)"| AUT["Autentique"]
    G -.->|"emissão de boleto\n(planejado — não integrado)"| BOL["Emissor de boleto"]

Integrações que existem hoje:

  • API Full (specs 0050 e 0052) — a garantidora cadastra o próprio token da API Full (guardado cifrado, por tenant), e as consultas de crédito do inquilino (Boa Vista, Quod, Cadin, Protesto Nacional, SCR, dados financeiros) são feitas por ela, fora da requisição, pelo worker da fila. O mesmo worker sincroniza diariamente o extrato de créditos de cada garantidora. Há um modo sandbox que devolve respostas fixas, sem gastar crédito.
  • E-mail — envio SMTP. Em local e no dev-remote vai para um Mailpit; em produção, para o AWS SES (configuração em infra/prd/.env.example).
  • ViaCEP — preenchimento de endereço a partir do CEP (/api/v1/cep).

Linhas tracejadas marcam integrações previstas pelo contrato de negócio mas ainda não implementadas — ver o roadmap, seção "❌ Ausente" (emissão de boleto e assinatura eletrônica). Hoje "boleto" existe só como rótulo de canal da cobrança, e o pagamento é registrado à mão (com o comprovante anexável à cobrança); a assinatura da garantia é registrada no sistema com o documento assinado fora dele. Não inventar detalhe de protocolo para elas até existirem de fato.

O sistema é multi-tenant: cada garantidora é um tenant lógico isolado dentro da mesma instalação — não há um deploy por cliente. Dentro de cada garantidora, a imobiliária parceira é um segundo eixo de escopo: o usuário de imobiliária só enxerga o que é da própria imobiliária (ver data-model.md).