> For the complete documentation index, see [llms.txt](https://novacont.gitbook.io/nova-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://novacont.gitbook.io/nova-docs/novacont-docs/portugues/seguranca-e-desenvolvedores/tokens-suportados-e-oraculos.md).

# Tokens suportados e oráculos

O NovaCont suporta múltiplos tokens de pagamento e usa feeds de preços da Chainlink para determinar valores em USD em tempo real para cálculos de depósito.

<figure><img src="/files/Lu9PmD2n7f0x6lRkqvWi" alt=""><figcaption></figcaption></figure>

### Tokens de pagamento suportados

Por padrão, o NovaCont suporta dois tokens de pagamento:

**ETH nativo.** Representado internamente como `address(0)`. ETH é o token de pagamento principal e não requer uma etapa de aprovação — o depósito é enviado diretamente com a transação.

**USDT.** A stablecoin ERC-20 usada nativamente dentro do sistema NovaJury para staking e taxas de disputa. Os pagamentos em USDT em contratos de depósito em garantia requerem uma aprovação ERC-20 padrão antes da transação de depósito.

Tokens ERC-20 adicionais podem ser adicionados pelo proprietário do contrato via `addSupportedToken()`, desde que exista um feed de preços válido da Chainlink para esse token. Os tokens também podem ser removidos — com exceção do ETH nativo e USDT, que são fundamentais para o protocolo e não podem ser desregistrados.

### Integração de oráculos

O NovaCont usa feeds de preços da Chainlink para converter preços acordados em USD para os valores corretos de tokens no momento da criação do contrato. Isso garante que o requisito de depósito reflita com precisão o valor do mundo real do acordo independentemente das condições de mercado no momento do financiamento.

**Proteção contra preços obsoletos:** Cada chamada ao oráculo valida que os dados de preço retornados não tenham mais de 24 horas. Se o feed de preços não foi atualizado dentro desta janela, a transação é revertida com um erro de preço obsoleto. Isso evita que contratos sejam financiados a taxas de câmbio significativamente desatualizadas durante períodos de inatividade do oráculo. Além disso, o contrato verifica que o preço é maior que zero, garantindo que respostas inválidas do oráculo não afetem os cálculos de depósito.

**Comportamento de fallback:** Se nenhum feed de preços estiver registrado para um determinado token, o contrato não pode determinar seu valor em USD e por padrão requer um depósito adicional de 1,25x como medida de segurança conservadora. USDT é uma exceção — está codificado para retornar um valor de $1 USD já que sua paridade está bem estabelecida e um feed dedicado não é estritamente necessário.

**Requisitos de feed:** Todos os feeds de preços registrados devem retornar valores com 8 casas decimais, consistente com o formato padrão de feed USD da Chainlink. Feeds com configurações de decimais não padrão são rejeitados no momento do registro.
