Rastreabilidade na cadeia de abastecimento e provas de custódia
Combine metadados por perfil, linhas do tempo chainId, eventos de conectores e relatórios de rastre exportáveis em logística, QA, alfândega e fornecedores.
Solução
Validação de metadados guiada por perfil
Use `supply-chain-v1` ou perfis rígidos personalizados para validar campos obrigatórios (lote, partida, metadados de handoff) antes do upload.
Separe metadados buscáveis e sensíveis
Os campos operacionais continuam consultáveis em tags (`Biz-*`, tags de rastreio). Os campos sensíveis são embalados em payloads criptografados.
Contexto de rastreio em cada evento
Anexe `Trace-Chain-Id`, `Trace-Event-Type`, `Trace-Step` e `Trace-Actor` para que cada TX entre em uma cronologia determinística.
Entrega de conectores em tempo real
Difunda eventos da cadeia via Webhooks + PubSub + endpoint de stream para que os sistemas ERP/WMS recebam atualizações sem polling.
Tags de rastreio + TX IDs imutáveis criam uma linha do tempo verificável.
Em vez de confiar em um único banco interno, cada evento é referenciável externamente e ancorado criptograficamente.
- Contratos de perfil: Regras rígidas de campos forçam metadados consistentes antes de cada evento de upload/versão.
- Tags de rastreio: Chain ID, tipo de evento, etapa e ator ficam consultáveis entre documentos e versões.
- Envelope sensível: Metadados confidenciais permanecem criptografados enquanto os campos operacionais continuam descobríveis.
- Escolha de provedor: Vincule cada tenant a um provedor PostgreSQL (compartilhado ou dedicado) sem mudar os contratos de API.
Podemos executar diferentes provedores de armazenamento por tenant?
Sim. O vínculo de armazenamento é por tenant (`1 provider per tenant`) com provedores PostgreSQL. O PostgreSQL gerenciado pela Encore continua sendo o principal e os provedores ligados ao tenant espelham gravações.
Como consultamos uma cronologia completa da cadeia?
Use `GET /trace/chains/:chainId` ou `/trace/chains/:chainId/events` e correlacione com `Parent-TX` para o histórico de versões quando necessário.
Precisamos da console para integrar?
Não. Você pode integrar diretamente com o SDK TypeScript (`@evercore/sdk-ts`) usando API keys e helpers aware de perfil.