Circle adiciona taxas antecipadas ao CCTP para USDC

A Circle passou a permitir o pagamento antecipado de taxas no CCTP Fast Transfer. Com a mudança, desenvolvedores podem calcular e cobrar os custos entre redes antes do envio de USDC. Assim, o destinatário recebe exatamente o valor informado na operação. O novo modelo também inclui as cobranças do Forwarding Service.

As taxas podem ser pagas em USDC ou no recurso nativo usado para gás na blockchain de origem. Dessa forma, o valor transferido deixa de se misturar aos custos dos serviços do protocolo. Antes da atualização, o CCTP podia descontar as taxas do USDC emitido na rede de destino.

Transferência preserva o valor integral em USDC

De acordo com a documentação para desenvolvedores da Circle, o aplicativo solicita primeiro uma cotação de taxa assinada. Em seguida, ele envia a cotação junto com a transação de queima do USDC na rede de origem. O contrato inteligente do CCTP valida os dados e recolhe o pagamento. Só então o processo de transferência continua.

Logo depois, o contrato encaminha a operação ao TokenMessengerV2, que conclui a queima do USDC. A Circle verifica a transferência e emite o montante integral na blockchain de destino. Por exemplo, uma pessoa pode enviar 100 USDC e garantir o recebimento de 100 USDC. Nesse caso, ela paga a taxa separadamente.

Os desenvolvedores podem usar o recurso para o Fast Transfer, o Forwarding Service ou ambos. O Fast Transfer permite que o USDC chegue a outra rede antes da finalidade completa da transação original. Enquanto isso, o Forwarding Service pode entregar os recursos e executar uma ação na rede receptora. Cada serviço mantém sua cobrança separada do valor enviado.

O CCTP movimenta USDC nativo por meio de um processo de queima e emissão. Primeiro, o protocolo destrói o valor correspondente na rede inicial. Depois, ele emite a mesma quantidade na blockchain de destino. Com isso, o sistema evita representações encapsuladas comuns em pontes convencionais.

API combina custos dos dois serviços

Pela API de cotações do CCTP, o aplicativo informa o valor, os domínios envolvidos e o recurso usado no pagamento. Além disso, o desenvolvedor seleciona quais taxas deseja calcular. A requisição PRE_FINALITY cobre o Fast Transfer. Já a opção FORWARD inclui o Forwarding Service.

Os dois pedidos podem seguir na mesma chamada de API. Como resultado, a resposta apresenta a taxa total e os valores de cada serviço. Ela também identifica o recurso de pagamento e fornece uma cotação assinada. Essa cotação deve acompanhar a transação registrada na blockchain.

A Circle vincula a cotação ao montante transferido e ao destino escolhido. Nas operações do Forwarding Service, ela também considera o chamador no destino e os dados de hook. Caso o desenvolvedor altere qualquer informação vinculada, o contrato reverte a transação. Esse controle impede o uso da cotação em condições diferentes das aprovadas.

Cada cotação possui prazo de expiração ou limite de blocos na rede de origem. Na maioria das redes compatíveis, o período estimado é de dois minutos. No Ethereum, a janela aproximada chega a dois minutos e 30 segundos. Contudo, a Circle informa que essa duração pode mudar.

Taxas podem ser pagas em USDC ou recurso nativo

O pagamento com o recurso nativo da rede é a opção padrão do CCTP. Nesse modelo, o valor cotado segue anexado à transação como valor nativo. Por outro lado, o aplicativo pode selecionar USDC para manter os custos denominados em dólares. A escolha depende da experiência oferecida por cada aplicação.

Ao escolher USDC, o desenvolvedor precisa informar o endereço da stablecoin na rede de origem. O usuário também deve autorizar o contrato TokenMessengerWithFees a movimentar o valor enviado e a taxa adicional. Ainda assim, o contrato trata os dois montantes separadamente. Apenas a quantia destinada ao recebedor participa da queima e da emissão.

A taxa antecipada é recolhida antes da queima do USDC. Portanto, o pagamento com o recurso nativo pode preservar o saldo da stablecoin, exceto pela quantia definida para transferência. Em ambos os casos, o destinatário recebe o valor integral informado no início da operação.

Em operações do Forwarding Service, o contrato atualizado pode criar automaticamente o hook cctp-forward. Isso acontece quando o desenvolvedor solicita uma cotação de encaminhamento sem fornecer dados personalizados. Entretanto, aplicações com instruções próprias precisam enviar os mesmos dados usados na cotação assinada. Qualquer divergência pode provocar a reversão da transação.

Origem da operação precisa ser compatível com EVM

As taxas antecipadas exigem que a operação comece em uma blockchain compatível com EVM. A rede de origem também precisa oferecer o recurso e atender às condições de cada serviço solicitado. Atualmente, a Solana não pode atuar como origem nesse modelo. Porém, aplicações ainda podem enviar USDC para a rede quando a rota escolhida for compatível.

As cotações de Fast Transfer estão disponíveis somente onde existe liquidação antes da finalidade completa. Da mesma maneira, a taxa de encaminhamento depende da compatibilidade do destino com o Forwarding Service. O exemplo da Circle transfere 10 USDC da Base Sepolia para a Arc Testnet. Nesse fluxo, a aplicação antecipa as duas taxas.

O mesmo processo vale para redes EVM de origem elegíveis e destinos aceitos pelo serviço. Com a atualização, a Circle busca dar previsibilidade ao custo e ao valor final das transferências entre blockchains. Usuários nos Estados Unidos, entretanto, continuam sujeitos aos termos das plataformas usadas para acessar o CCTP.

Os termos do USDC da Circle classificam a stablecoin emitida no país como valor armazenado ou acesso pré-pago. Essa classificação segue as leis estaduais aplicáveis. A empresa também afirma que o suporte de terceiros ao USDC não representa aprovação desses serviços.