Transações internas: notifique seus usuários sobre todas as suas transações de cripto
Autor: Elan Halpern
A suite Alchemy Notify agora inclui notificações para todas as transferências de ETH e Token, incluindo nossa adição mais recente: transações internas (smart contract) — dando aos usuários total transparência sobre suas transações, em cada etapa.
Para uma visão geral das notificações de Ethereum Address Activity, confira este blog post.
O que são transações internas?

Internal Transaction Notification
Para entender o que são transações internas, é útil dar um passo atrás e observar os tipos de transações que temos na Ethereum. Transações são mudanças de estado na chain da Ethereum, ou seja, elas não estão lendo dados, elas estão escrevendo dados na chain.
Existem várias mudanças de estado que podem ocorrer na Ethereum, no entanto, transações costumam ser o que mais importa aos usuários. Para notificar os usuários sobre suas transações, desenvolvedores podem se conectar às notificações de Address Activity, que monitoram transfers (troca de valor entre duas contas Ethereum).
Existem três tipos de transfers na Ethereum:
Transfers de ETH
Transfers de ETH são o tipo mais básico de transação, usando a moeda nativa da Ethereum.
Exemplo de transfer: Rishub enviou 0.5 ETH para Paul.
A forma de obtê-los é escaneando cada novo bloco em busca de objetos de transação.
Transfers de Token (ERC-20 e ERC-721)
Transfers de token incluem qualquer transfer associado a um token ERC-20 ou a um token não fungível ERC-721 (NFT).
Exemplo de transfer: Omar compra 10 AAVE de uma exchange (smart contract) ou de outro usuário.
A forma normal de obter esses transfers é olhando os event logs do contrato do token que interessa.
Transfers internos
Transfers internos são transfers de Eth em que o remetente (fromAddress) é um endereço interno (smart contract). Isso inclui um smart contract enviando Eth para outro smart contract, ou um smart contract enviando Eth para um endereço externo.
Exemplo de transfer: Transfers internos são bem complicados, mas desenvolvedores e usuários se importam com onde seu dinheiro começa e onde termina, e é por isso que eles são importantes. Aqui está um exemplo que mostra duas transações internas:
Elan quer trocar alguns de seus tokens Sushi por ETH usando o Sushiswap. Este é um processo de várias etapas que envolve uma variedade de transfers.
- Primeiro, ela interage com o smart contract do Sushi, enviando ao smart contract seus tokens Sushi, por meio de um token transfer.
- Em seguida, o smart contract pega o Sushi dela e o deposita no pool SUSHI/WETH, que é outro smart contract, tornando isso um token transfer. Em troca, o contrato recebe de volta um valor equivalente em WETH.
- Como Elan quer ETH e não WETH, o smart contract do Sushi então interage com o smart contract do WETH e troca o WETH por ETH (desembrulhando-o), criando uma transação interna, já que o smart contract do WETH enviou ETH para o smart contract do Sushi.
- Em seguida, o contrato do Sushi envia esse ETH de volta para Elan, como outra transação interna (o smart contract do Sushi enviou ETH para um endereço externo, Elan).
(3) e (4) são transações internas e não token transfers porque ETH (não um token ERC-20) está sendo trocado, e não são transfers externos porque são smart contracts enviando o ETH (não endereços de conta).
Agora que você tem uma ideia de como é complexo apenas explicar o que é um transfer interno, imagine tentar obtê-los, em tempo real. Não parece nada simples.
Apesar de terem implicações significativas, quando se trata de obter transações internas, as coisas podem ficar bem complicadas. Smart contracts podem disparar várias camadas de chamadas internas de contrato por baixo dos panos, algumas que nem sequer têm valor associado a elas.
Além disso, transações internas não são armazenadas on-chain da mesma forma que transações de ETH e token, exigindo que os usuários rastreiem cada chamada, da transação pai até cada filho, para obtê-las. Pior ainda, para executar esse tipo de trace, desenvolvedores precisam de acesso a um tipo específico de software caro e propenso a erros chamado Parity Trace node, que leva semanas para sincronizar.
Dê aos usuários insights em tempo real sobre suas transações, em cada etapa
Com notificações para transações externas, de token e internas, os usuários podem ter o quadro completo de onde seu dinheiro está, o tempo todo. Wallets agora têm o poder de notificar seus usuários cada vez que ocorre um transfer relacionado à sua conta, mesmo para transações internas complexas. Essas notificações também dão aos desenvolvedores mais informações sobre os smart contracts que estão construindo e com os quais estão interagindo.
Configurar notificações para os três tipos de transações é fácil quando você usa a Alchemy. Desbloqueie o acesso ao Alchemy Notify em minutos criando uma conta gratuita aqui.
Leve 3 minutos para começar a receber notificações de transações (em vez de 3 semanas)
Em vez de sincronizar seus próprios Parity Trace nodes e esperar semanas para poder usá-los, basta integrar com a Alchemy em 3 minutos.
- Cadastre-se na Alchemy
- Crie um webhook com uma URL e os endereços relevantes (também temos uma API para criar novos webhooks)
- A Alchemy envia notificações para você
- Seus usuários param de se preocupar com o estado de suas negociações de cripto
Newsletter da Alchemy
Seja o primeiro a saber sobre lançamentos
Assine nossa newsletter
Receba as últimas atualizações de produtos e recursos da Alchemy
Ao inserir seu endereço de e-mail, você concorda em receber nossas comunicações de marketing e atualizações de produtos. Você reconhece que a Alchemy processa as informações que recebemos de acordo com nosso Aviso de Privacidade. Você pode cancelar a inscrição a qualquer momento.
Artigos relacionados

Glamsterdam: o guia completo para desenvolvedores de Ethereum
Glamsterdam já está na Sepolia. O guia completo sobre o que isso significa para desenvolvedores e como a Alchemy se preparou para a atualização da rede.

Em qual provedor de RPC você deve construir em Tóquio?
Comparamos cinco dos provedores de RPC que atendem Tóquio em cinco chains. Veja como eles se comparam e onde as diferenças importam para equipes sensíveis à latência.

Arquitetando leituras Solana RPC para velocidade e confiabilidade líderes do setor
A Alchemy tem a menor latência de leitura Solana: 9,21 ms, cerca de 26% mais rápido que o próximo provedor.