Docs
ProtocolBlockchain InfrastructureSmart Contracts

Categorias de Contratos

As cinco categorias de contratos inteligentes do Carrot — controladores, custodiantes, NFTs, tokens e registros.

Visão geral

Os contratos inteligentes do Ecossistema Carrot são organizados em cinco categorias, cada uma com uma responsabilidade distinta. Esse design modular mantém os contratos individuais focados e auditáveis, enquanto o ContractRegistry os conecta em tempo de execução.

CategoriaContratosResponsabilidade
ControladoresInventoryManager, CreditPurchaseManager, CreditRetirementManagerLógica de negócio e orquestração
CustodiantesVault, RewardsVaultCustódia de ativos e distribuição
NFTsMassID, Certificate, CreditPurchaseReceipt, CreditRetirementReceiptTokens de prova soulbound (ERC-721)
TokensCreditTokens de crédito fungíveis (ERC-20)
RegistrosContractRegistry, CertificateRegistryDescoberta e rastreamento de relações

Controladores

Os controladores são os pontos de entrada para todas as operações principais. Eles orquestram fluxos de trabalho que abrangem múltiplos contratos, garantindo que cada operação seja executada atomicamente — ou todos os passos são bem-sucedidos ou nenhum deles é.

InventoryManager

Cria os ativos on-chain fundamentais. Quando os dados verificados estão prontos para minting, o InventoryManager minta NFTs de MassID, NFTs de Certificado e tokens de Crédito em uma única operação coordenada. Ele também registra os relacionamentos entre esses ativos por meio do CertificateRegistry. Todos os ativos mintados são depositados no Vault.

CreditPurchaseManager

Executa compras de créditos atômicas. Em uma única transação, o CreditPurchaseManager:

  • Valida a ordem de compra usando uma assinatura de dados tipados EIP-712
  • Processa o pagamento em USDC
  • Atualiza os registros de certificados de lastro
  • Transfere os tokens de crédito para o comprador
  • Minta um CreditPurchaseReceipt como prova permanente
  • Registra as alocações de recompensas para os participantes

O CreditPurchaseManager também suporta aposentadoria integrada — comprar e aposentar créditos em uma única transação, o que elimina a necessidade de uma etapa separada de aposentadoria.

CreditRetirementManager

Realiza a aposentadoria de créditos standalone para detentores que desejam remover permanentemente créditos de circulação. O CreditRetirementManager queima os tokens de crédito, atualiza o rastreamento de certificados de lastro e minta um CreditRetirementReceipt como prova permanente da aposentadoria.

Custodiantes

Os custodiantes mantêm e gerenciam ativos em nome do ecossistema. Eles aplicam controles de acesso rigorosos — apenas contratos autorizados (controladores) podem transferir ou queimar ativos sob custódia.

Vault

O custodiante central para todos os NFTs soulbound (MassIDs, Certificados, NFTs de CreditPurchaseReceipt e CreditRetirementReceipt) e saldos de tokens de crédito antes da compra. O Vault é o lar permanente de todos os tokens não transferíveis do sistema, garantindo que permaneçam imutáveis e rastreáveis. Os tokens de crédito também são mantidos aqui como inventário disponível até que um comprador os adquira.

RewardsVault

Gerencia o sistema de distribuição de recompensas com preservação de privacidade. Durante as compras de créditos, os pagamentos em USDC são depositados no RewardsVault, e compromissos criptográficos (Merkle roots) representando a distribuição de recompensas são registrados on-chain. Isso mantém as identidades dos participantes e os detalhes individuais de recompensa privados — apenas compromissos hasheados são armazenados publicamente. Os participantes reivindicam suas recompensas fornecendo Merkle proofs que são verificadas contra as roots armazenadas. O RewardsVault mantém USDC alocado para recompensas até que os participantes os reivindiquem.

NFTs (Soulbound ERC-721)

Todos os NFTs no Ecossistema Carrot são soulbound — não transferíveis e mantidos permanentemente pelo Vault. Isso garante uma trilha de auditoria imutável e à prova de adulteração. Nenhum NFT pode ser movido, vendido ou ocultado após o minting.

MassID

Representa um lote verificado de material residual. Cada MassID registra o tipo de material, peso e a cadeia completa de custódia desde a geração do resíduo até a coleta e triagem. Os MassIDs são a base do ciclo de vida dos créditos — cada certificado pode ser rastreado até um único MassID.

Certificate

Representa um resultado ambiental verificado — seja reciclagem (RecycledID) ou prevenção de carbono (GasID). Os Certificados são vinculados aos seus MassIDs de origem por meio do CertificateRegistry e rastreiam seu ciclo de vida por meio de quatro quantidades: o montante total (definido no minting), o montante comprado (atualizado a cada venda), o montante aposentado (atualizado a cada aposentadoria) e o montante disponível (derivado dos outros três). Esse modelo contábil é central para a prevenção de dupla contagem — o contrato garante que créditos não possam ser vendidos ou aposentados além do saldo disponível.

CreditPurchaseReceipt

Prova imutável de que uma compra de crédito ocorreu. Cada recibo registra quais certificados estavam envolvidos, o endereço do comprador, o montante comprado e os detalhes do pagamento. Os recibos de compra são visíveis no Carrot Explorer e fornecem um registro permanente para conformidade e relatórios.

CreditRetirementReceipt

Prova permanente de que créditos foram aposentados (queimados). Os recibos de aposentadoria registram os certificados envolvidos, o montante aposentado e a parte que realizou a aposentadoria. São utilizados para relatórios ESG e conformidade regulatória, e podem ser visualizados no Carrot Explorer ou em qualquer explorador de blockchain (ex.: PolygonScan).

Tokens (Fungíveis ERC-20)

Credit

Tokens de crédito ambiental fungíveis. O Ecossistema Carrot emite dois tipos de crédito:

SímboloNomeRepresenta
C-BIOWTokenized Recycling Credit (TRC), ex.: do BOLD Recycling1 tonelada métrica de material reciclado certificado
C-CARB.CH4Tokenized Carbon Credit (TCC), ex.: do BOLD Carbon (CH₄) (metano)1 tonelada métrica de CO₂ equivalente evitada

Os créditos são os únicos tokens transferíveis do sistema. São projetados para atividade de mercado — compra, custódia e aposentadoria de compensações ambientais. Todos os outros tokens (MassIDs, certificados, recibos) são soulbound e não podem ser transferidos. O sistema de créditos é projetado para suportar tipos de crédito adicionais além dos atuais C-BIOW e C-CARB.CH4 conforme novas metodologias ambientais forem validadas.

Registros

Os registros fornecem a infraestrutura para coordenação de contratos e rastreamento de relacionamentos. Eles não contêm lógica de negócio, mas são essenciais para a capacidade de atualização e a rastreabilidade do sistema.

ContractRegistry

O registro central que mapeia nomes lógicos de contratos para seus endereços implantados on-chain. Em vez de codificar endereços diretamente, os contratos consultam o ContractRegistry para descobrir uns aos outros em tempo de execução. Isso é fundamental para o modelo de atualização — quando um contrato é atualizado para uma nova implementação, apenas a entrada no registro precisa ser alterada. Todos os contratos dependentes descobrem automaticamente o novo endereço sem necessidade de reimplantação.

CertificateRegistry

Rastreia o relacionamento pai-filho entre tokens MassID e seus certificados vinculados. Cada certificado pode ser rastreado até os lotes específicos de resíduos que ele representa por meio deste registro. O CertificateRegistry é o que torna a rastreabilidade de ponta a ponta possível — de um crédito aposentado, passando por seu certificado, até o resíduo físico.

Relacionamentos entre tokens

Os ativos on-chain formam um grafo direcionado de relacionamentos:

  • MassID → Certificate — Vinculados por meio do CertificateRegistry. Um ou mais MassIDs lastreiam cada certificado.
  • Certificate → Credit — Os tokens de crédito são gerados no momento do minting em quantidades correspondentes aos seus certificados de lastro.
  • CreditPurchaseReceipt e CreditRetirementReceipt — Registram transações contra certificados específicos, fornecendo a trilha de auditoria para cada compra e aposentadoria.

Essa estrutura garante que cada crédito em circulação possa ser rastreado, por meio de seu certificado, até os lotes específicos de resíduos que o produziram.

Próximos passos

  • Fluxos On-Chain — Passo a passo de como esses contratos interagem durante o minting, compra e aposentadoria.
  • Segurança — Controle de acesso, pausabilidade e proteções de governança.
  • Ciclo de Vida dos Créditos — O ciclo de vida MassID → Certificate → Credit.

On this page