Esta página descreve contratos sugeridos entre o navegador e o backend da aplicação. Ela não é uma implementação obrigatória de rotas e não reproduz a API FortCard. O objetivo é mostrar o formato de troca esperado pela interface para que o backend possa adaptar a operação real com segurança.

Regra base

O navegador fala somente com o backend da aplicação. O backend valida host, sessão, origem comercial, produto e regras antes de chamar FortCard ou qualquer provedor. Campos operacionais como strLojista, strLoja, strProduto, strPlano, usuário, senha, token e credenciais não devem aparecer nos exemplos de request do browser.

Configuração pública por host

Entrada esperada:
  • host observado pelo servidor ou proxy confiável;
  • headers de origem suficientes para auditoria;
  • nenhum campo operacional enviado pelo browser.
Resposta sugerida:
Se o host não estiver permitido, o backend deve retornar uma configuração segura de fallback ou erro seguro, conforme a estratégia operacional definida.

Início de jornada

Request do navegador:
Resposta sugerida:
O backend deve comparar sourceDomain com o host observado, validar a allowlist e resolver no servidor lojista, loja, produto operacional, condição comercial e demais parâmetros.

Simulação e oferta

Request do navegador:
Resposta sugerida:
Valores monetários devem chegar ao front já normalizados para exibição e cálculo visual. A precisão operacional permanece no backend.

OTP e sessão

Request de envio:
Resposta de envio:
Request de validação:
Resposta de validação:
OTP bruto não deve ser persistido como dado de negócio nem registrado em log.

Proposta, status e pendências

Resposta de proposta:
Resposta de pendências:

Erro normalizado

Erros técnicos e erros de negócio devem virar um contrato seguro para tela.
O backend pode guardar diagnóstico técnico sanitizado, mas o front recebe apenas mensagem segura, campo relacionado quando houver e ação possível.

Lacunas que precisam de decisão

Consulte campos operacionais FortCard para separar o que é público do que deve permanecer no backend.