Contratos mínimos · Negócio e arquitetura

Contratos transacionais

As decisões que precisam estar fechadas antes de implementar compras, integração ERP e recomendações de IA: identidade, responsabilidade, revisão, parcelas, controle e prova.

v1.0 · 09/09/2026Especificado · implementação pendente20º documento do acervo

Contrato vigente · revisão consolidada

Produto e primeira versão

SaaS de compras e controle de gastos para médias empresas brasileiras, com compras indiretas e insumos de produção desde a v1. O ciclo utilizável inclui demanda, aprovação, cotação, pedido oficial Nexio, recebimento/aceite, conferência de nota e integração com ERP. IA será consultiva: recomenda quando e de quem comprar, explica limitações e registra decisão humana.

Este documento fixa contratos mínimos entre módulos. Não especifica integralmente telas ou endpoints de Requisição, Cotação, Pedido, Contrato, Recebimento e Nota/Conferência. Esses seis módulos ainda precisam de suas especificações transacionais completas e implementação.

Começar com importação validada de cadastros, orçamento e demanda, configuração guiada por empresa e política simples de aprovação. Governança avançada é progressiva; controles explicitamente habilitados continuam obrigatórios. O piloto deve medir tempo até primeira compra, esforço de cadastro, taxa de devolução por configuração e fechamento do ciclo com ERP.

Contrato vigente · revisão consolidada

Responsabilidade pelos dados

Dado / fatoResponsávelIntegração mínima
Tenant, identidade interna, catálogo de papéis/permissõesGrydAuthNexio usa teto de permissão vigente; concessões e alçadas por empresa são do Nexio.
Empresas, estabelecimentos, contas contábeis e cadastros existentes no clienteSistema mestre escolhido por entidade no onboarding; normalmente ERPMapeamento externo obrigatório, versão e fonte. Nexio valida e mantém projeção; não aceitar dois escritores silenciosos do mesmo campo.
Catálogo de compras, qualificação, ofertas e cotaçãoNexio, com vínculos para material/fornecedor ERPSeparar identidade compartilhada de atributos fiscais/contábeis dominados pelo ERP. Promoção de novo cadastro tem confirmação de vínculo.
Orçamento autorizado e consumo de comprasValor autorizado importado ou aprovado no Nexio; razão gerencial NexioNão replicar reserva integral no ERP como outro saldo independente sem regra de reconciliação. Contabilidade oficial permanece no ERP.
Demanda de produção, estoque, consumo, BOM/MRPERP ou planejamento externoFeed ou importação validada com fonte, versão e horário. Nexio não explode BOM nem mantém estoque contábil.
Pedido oficial e alteraçõesNexioEmissão e revisão efetiva no Nexio; ERP recebe/aplica a revisão. Documento externo vinculado não substitui o pedido oficial silenciosamente.
Recebimento físico e aceiteNexio ou fonte operacional explicitamente configurada por fluxoUm fato tem uma identidade; reimportação e confirmação no outro sistema não criam segundo recebimento. Manter origem e responsável.
Nota fiscal, tributos, contabilização, estoque e pagamentoERP/fiscalNexio importa documento e status para conferência e ajuste gerencial; não emite parecer tributário ou baixa pagamento por ACK de integração.

Contrato vigente · revisão consolidada

Identidades e referências externas

Raiz, linha e fatia têm IDs estáveis e independentes: documentId, lineId, allocationId. Reordenar não troca identidade. Remover preserva a linha histórica; reinserir outro item cria nova linha. Dividir/combinar cria novas identidades e relações de origem, sem reaproveitar ID de conteúdo incompatível.

ContratoCampos mínimos / restrições
ExternalReferencetenantId, sourceSystem, sourceCompany, entityType, externalId, nexioEntityId, sourceVersion, observedAt. Chave única (tenantId, sourceSystem, sourceCompany, entityType, externalId); escopo global usa valor explícito, nunca nulo permissivo.
DocumentRevisiondocumentId, revisionId, revisionNumber, expectedVersion, relevantContentHash, createdAt/by, reason, effectiveAt?. Conteúdo aprovado imutável. Separar candidateRevisionId e effectiveRevisionId.
LineSnapshotlineId, revisionId, item/offer/price revisions, descrição, quantidade original, unidade, base, fatores em ambas as direções, preço, componentes, moeda, taxa, datas, destino, rateio e evidências.
BusinessOperationtenantId, operationId, operationType, payloadHash, state, result, correlationId, causationId. Chave estável por ato externo ou comando do cliente. Mesmo ID/conteúdo devolve resultado; mesmo ID/conteúdo diferente é conflito.
TraceAllocationid, sourceDocumentId/revisionId/lineId/allocationId, targetDocumentId/revisionId/lineId/allocationId, quantityOriginal, uomId, conversionSnapshot, amount, operationId. Suporta N:M com parcela explícita.
DeliverySchedulescheduleId, lineId, revisionId, quantity, neededAt, originalPromisedAt, currentPromisedAt, changeReason, sourceRef. Recebimentos vinculam parcelas à programação.

Mapear referência externa uma vez; conflito de mapeamento é pendência humana, não upsert arbitrário. Atualização compara versão e rejeita mensagem atrasada ou fora de ordem. Integração sem versão fornece chave de evento estável e política de reconciliação por fonte. Todo join, chave de dedupe e consulta aplica tenant e empresa; supplierId restringe portal, sem depender do id informado pelo cliente.

Contrato vigente · revisão consolidada

Ciclo e rastreabilidade mínima

TransiçãoContrato necessário
Demanda → requisiçãoOrigem, data necessária, quantidade, restrições e versão da fonte. Demanda externa repetida não duplica requisição.
Requisição → aprovaçãoSnapshot de revisão, valor autorizado, rateio, política, evidências e autoridade. Último voto e desfecho financeiro são atômicos.
Requisição → cotaçãoN linhas e parcelas de origem; preservar solicitações agregadas e empresas envolvidas. Não perder demanda remanescente ao cotar parcialmente.
Cotação → adjudicação → pedidosGuardar todas as propostas, alternativas, não cotadas, retiradas, revisões e motivos de escolha. Divisão entre fornecedores gera pedidos/linhas com quantidades rastreáveis; soma adjudicada não excede quantidade autorizada sem alteração.
Pedido → entregas / aceitesProgramações estáveis e parcelas recebidas, aceitas e rejeitadas, com data e autor. Divergência abre pendência; fato físico não desaparece.
Recebimento / aceite → notaN:M entre linhas de nota e fatos aceitos, com quantidade/valor associado. Impedir dupla conferência além da parcela disponível; diferença ajusta o Actual referenciado.
Cancelamento / devolução / créditoVínculo explícito à parcela original. Cancelar saldo aberto não estorna entrega; devolução não reabre demanda automaticamente. Reposição, encerramento e crédito são desfechos distintos.

Contrato vigente · revisão consolidada

Pedido oficial e integração ERP

O Nexio numera, aprova e emite o pedido oficial, incluindo destinatário fiscal, revisão e conteúdo enviado ao fornecedor. O ERP recebe a mesma revisão, com referência e identidade da operação. Falha do ERP deixa pendência de integração, sem apagar pedido já emitido. Se o cliente exigir aplicação prévia como pré-condição de emissão, isso precisa ser uma política explícita antes da primeira emissão e não uma suposição do adaptador.

Estado de integraçãoO que comprova
PendingSendIntenção durável gravada junto da versão efetiva.
SentTransporte aceitou a mensagem; não comprova aplicação.
ReceivedERP reconheceu a operação e sua identidade.
AppliedERP confirmou aplicação da revisão e devolveu referência/versão, com data.
RejectedERP recusou com motivo estruturado e possibilidade de correção/reprocessamento.
ReconciliationRequiredResultado incerto, referência conflitante, timeout após possível aplicação ou versão divergente; consultar antes de repetir.

Preservar histórico de tentativas e acknowledgements, sem regredir estado por resposta atrasada. Envio de revisão n+1 depende da aplicação ou resolução explícita da n quando o destino exige sequência. Dedupe no ERP usa chave de origem; sem suporte, o adaptador precisa consultar resultado e encaminhar ambiguidades, sem prometer exactly-once.

Alteração de pedido circula como revisão candidata. A efetiva continua exigível, recebe entregas e conserva obrigação. Na efetivação da alteração, reavaliar controles e aplicar apenas delta líquido de valor/quantidade/data por parcela, com reclassificações quando necessário. Rejeitar candidata mantém versão anterior. Retorno do ERP não edita conteúdo aprovado silenciosamente.

Compra centralizada pode ter uma negociação comum, mas gera pedidos separados por destinatário fiscal. Rateio é sempre dentro da Company do pedido. Transferência intercompany física/contábil exige processo ERP e referências próprias.

Contrato vigente · revisão consolidada

Razão, datas e conservação

Regras canônicas em Orçamento, Fluxo de Aprovação, Moeda e Unidade de Medida. Novos compromissos sem verba em escopo controlado são impedidos; RequireApproval precisa da aprovação correspondente; autoridade ausente não cria alçada.

Necessidade planejada, entrega prometida, recebimento/aceite, período de prestação e contabilização são fatos distintos. Nota não substitui data de recebimento. Nota mais cara ajusta o Actual correspondente; não liquida de novo Obligation já recebida e não usa Adjustment para aumentar orçamento.

postingGroupId identifica a operação e entryOrdinal cada entrada. Liquidação e reversão apontam a entrada e a parcela; backfill, reorçamento e virada transferem por pares balanceados. A soma econômica consolidada é conservada nas reclassificações. Somente mudanças de valor econômico ou verba autorizada alteram os totais respectivos.

Último voto sem verba: guardar voto e Returned com motivo na mesma transação, sem Approved nem lançamento adicional. Falha técnica reverte tudo. Alteração de política ou cadastro não reescreve fatos; qualquer reclassificação registra origem, antes/depois e justificativa.

Fechamento impede novas intenções no período fechado, mas fatos tardios continuam registráveis: período aberto com competência original referenciada quando a janela de lançamento tardio encerrou. CancelOpen não extingue obrigação jurídica vigente. Reconciliação deve explicar diferenças entre razão gerencial, documento fiscal e contabilidade ERP.

Contrato vigente · revisão consolidada

Materiais, serviços, assinaturas e contratos

TipoContrato mínimo
Material / insumoQuantidade e unidade, qualidade/especificação, MOQ, múltiplo, lead time, programação e recebimento parcial. Lote/série/certificado quando exigidos vêm do sistema operacional, sem criar estoque no Nexio.
Serviço por mediçãoPeríodo, unidade ou marco, quantidade/valor medido, responsável pelo aceite e evidência. Actual nasce do aceite/período prestado, não de uma entrega física fictícia. Limites acumulados impedem medir duas vezes a mesma parcela.
Assinatura recorrenteVigência, recorrência, janela de renovação/cancelamento, quantidade de licenças, moeda, reajuste e período de serviço. Cada ocorrência tem ID estável; job repetido não gera cobrança/obrigação duplicada.
Contrato com mínimo obrigatórioNa ativação efetiva, Obligation do mínimo por programação/competência. Liberações liquidam/transferem esse saldo para pedidos; não somam o mínimo outra vez. Obrigação não consumida permanece até extinção válida.
Contrato sem mínimoTeto comercial é visibilidade. Obrigações nas liberações efetivas, com controle de saldo contratual e orçamento.
Compra de produçãoDepende de demanda, estoque disponível/reservado, ordens abertas e planejamento externos atualizados. Sem integração automatizada, importação validada e datada é o mínimo operacional.

MRP, estoque e custeio industrial continuam externos. A v1 deve aceitar a demanda e programação desses sistemas e informar pedidos, confirmações e recebimentos com identidade consistente. O cliente precisa conhecer o atraso da sincronização; não apresentar saldo de estoque importado como disponibilidade em tempo real.

Contrato vigente · revisão consolidada

Dados mínimos para recomendação

DadoOrigem / informação necessária
Demanda futuraQuantidade, data, prioridade, versão do plano, fonte, responsável e intervalo de incerteza quando existir.
Estoque externoDisponível, reservado, em inspeção/bloqueado, trânsito e estoque de segurança, unidade/local e instante da observação. Definir se ordens abertas já estão incluídas para não somar duas vezes.
ConsumoSérie por período, sazonalidade conhecida, rupturas e substituições; ausência de consumo por falta de estoque não é demanda zero.
FornecimentoPromessas originais/renegociadas, lead time observado, OTIF com abertas vencidas, devoluções, rejeições e tamanho da amostra.
Alternativas comerciaisTodas as propostas, perdedoras, NotQuoted, prazo, validade, quantidade, MOQ, múltiplo, embalagem, capacidade declarada, condições e restrições.
Custo totalPreço, frete, seguro, tributos não recuperáveis confirmados, câmbio, embalagem/ferramental, armazenagem/financiamento e custo de atraso quando estimados com método explícito. Não tratar custo evitado estimado como economia realizada.
RestriçõesOrçamento, aprovação, fornecedores qualificados, item substituto permitido, contrato, capacidade, prazo, risco, empresa e local.
ResultadoO que foi comprado, quando, quantidade, custo efetivo, prazo/qualidade real, estoque/ruptura informado, cancelamento e razões humanas.

Contrato vigente · revisão consolidada

Explicação, decisão humana e avaliação

Cada Recommendation registra id, instante, empresas/escopo autorizados, tipo (quando/de quem), alternativas elegíveis, versão de regra/modelo/prompt, objetivo, restrições, estimativas, unidades/moedas e evidenceSnapshotId. O snapshot referencia cada fonte, versão, observedAt, período de validade, transformações e lacunas. Dados fornecidos por terceiros são conteúdo, nunca instrução para executar ação.

A explicação apresenta por que uma alternativa atende melhor ao objetivo e quais fatores mudariam o resultado. Fornecedor de R$ 1.050 pode superar o de R$ 1.000 se frete e atraso estimados forem menores; mostrar as parcelas, hipótese de atraso e incerteza, sem esconder o preço maior. Recomendação nunca dispensa alçada ou controle.

Compra antecipada exige demanda, posição de estoque, trânsito, prazo e custo de manter capital/estoque suficientemente atuais. Sem isso, devolver InsufficientData ou recomendação limitada ao que os dados sustentam, listando dados ausentes/vencidos; não inventar data ótima nem confiança numérica sem avaliação. Limiares de atualidade variam por fonte e caso de uso, definidos com o cliente.

Registrar HumanDecision com recomendação/revisão, autor autorizado, opção escolhida, aceitação/rejeição/alteração, motivo e data. Emitir pedido continua sendo ação humana autorizada nos controles normais. Resultados posteriores se ligam à decisão, sem mudar retroativamente a recomendação.

Avaliar contra baseline explícito (por exemplo, menor custo elegível e política atual), com separação temporal de treino/avaliação, prevenção de vazamento de resultados futuros e métricas de custo total observado, prazo, ruptura e adoção. Usar replay histórico e modo sombra antes de orientar operação; aceitar recomendação não prova benefício causal. Monitorar cobertura, erro e degradação por segmento, com opção de desligar recomendações sem interromper compras.

Preparar identidades, snapshots e resultados agora. Feature store, banco vetorial, treinamento próprio, agentes autônomos e infraestrutura dedicada podem esperar evidência de volume e ganho. Não há autorização para IA comprar ou aprovar sozinha.

Contrato vigente · revisão consolidada

Contratos de execução e recuperação

Chamadas obrigatórias na transação; eventos em memória após o commit produtor; reações essenciais com outbox do produtor e inbox do consumidor. Tabela/migração pertence ao contexto, mecanismo à plataforma. Arquivos exigem versão imutável, veredito e download dos mesmos bytes; desfecho GrydFiles/Nexio atômico exige DbConnection e DbTransaction compartilhadas.

A implementação deve verificar a composição de API, Portal, Worker e Migrator por execução. Todo comando de worker deve declarar tenant/empresa e credencial de serviço; testes de revogação e limpeza de contexto são requisitos pendentes. Migração cobre todos os módulos usados, com trava exclusiva, versões compatíveis, retomada e restore ensaiado. Operadores têm fila de pendências, retry idempotente, reconciliação e trilha.

Definir RPO/RTO, retenção e responsáveis no onboarding operacional e medir restauração antes do piloto. Distinguir restauração técnica do banco de reconciliação de efeitos já enviados ao fornecedor/ERP. Não declarar prontidão com base somente em testes de estrutura.

Contrato vigente · revisão consolidada

Cenários obrigatórios de aceitação

CenárioResultado esperado
Duas aprovações disputam R$ 100 no mesmo paiUma consome; a outra preserva voto em Returned por falta de verba. Travas cobrem ambos os filhos e o pai.
Retry após commit sem respostaMesma operação retorna resultado original, sem novo grupo/entrada, pedido, recebimento ou envio lógico.
100 un requisitadas; 60 compradas; 55 recebidasCommitment 400 + Obligation 55 + Actual 605 = 1.060 no exemplo de Orçamento. Encerrar remanescentes reduz somente as parcelas abertas.
Duas propostas vencedoras parciaisTraceAllocation preserva quantidades adjudicadas, fornecedores e demanda remanescente, sem repetir a totalidade em cada pedido.
Devolução parcial e nota mais caraReverter parcela recebida efetivamente devolvida; ajuste de nota referencia Actual correto; não aumenta verba.
Alteração de pedido em aprovaçãoVersão anterior recebe entregas e mantém obrigação; aprovação da candidata aplica delta apenas uma vez.
Mudança de fornecedor ou política com total igualReavaliar conteúdo material e versão da política; não preservar assinatura apenas porque o valor não aumentou.
Compra centralizada e multimoedaSeparar destinatários fiscais; rateio em sua empresa; taxas e casas por moeda; nenhum saldo corporativo agrega moedas sem conversão explícita.
Virada e realizado tardioTransportar saldos abertos por pares; entrega posterior liquida imputação vigente, preservando competência original.
Serviço e assinaturaMedição/ocorrência com período e ID; repetição não duplica Actual ou mínimo contratual.
Ana aprova na Fábrica, solicita na DistribuidoraMesmo token não autoriza aprovação na Distribuidora; ausência de concessão bloqueia operação.
Fornecedor abre anexo próprio após envioConsulta disponível com vínculo de leitura vigente; anexo concorrente inacessível.
Upload sobrescrito após scan / queda de workerDownload mantém bytes examinados; lease recupera processamento, sem referência parcial.
Recomendação com estoque vencidoLimitação explícita/InsufficientData para data de compra; nenhuma precisão ou decisão automática inventada.

Estes são requisitos para testes de domínio, integração e operação quando os módulos existirem. Verificação numérica dos exemplos e links nesta revisão documental não equivale à implementação desses cenários.

Contrato vigente · revisão consolidada

Ordem de implementação e hipóteses

  1. Antes das transações: identidades/revisões/parcelas, autoridade empresarial, arredondamento, razão e coordenação explícita. Publicar contratos e dependências da plataforma.
  2. Primeiro ciclo utilizável: importação, demanda, aprovação, cotação, pedido, recebimento/aceite e nota/ERP, com pendências e reconciliação. Validar direto e indireto no mesmo piloto.
  3. Antes do primeiro cliente: isolamento real, restore, migração, retries, revogação, arquivos e observabilidade demonstrados; configuração guiada com responsáveis.
  4. Antes da IA: cobertura/qualidade de dados e resultados, baseline e avaliação temporal. Começar por recomendação explicável em modo sombra.

Hipóteses ainda sem validação: disposição a pagar, ganho de produtividade, esforço de implantação e manutenção de cadastros, cobertura de ERP e benefício da recomendação. Preservar monolito e quatro perfis; não adicionar infraestrutura física ou de ML para compensar ausência de evidência de produto.