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.