---
title: "Transações internas: notifique seus usuários sobre todas as suas transações de cripto"
description: "O conjunto do Alchemy Notify agora inclui notificações para transações internas (smart contract)."
---

# Transações internas: notifique seus usuários sobre todas as suas transações de cripto

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](https://www.alchemy.com/blog/introducing-ethereum-address-activity-notifications).

## O que são transações internas?
<ImageBlock
  src="https://media.alchemy.com/1704458111-illustration-of-user-receiving-push-notifications-on-mobile-for-my-ether-wallet-dapp.jpg"
  alt="Ilustração de usuário recebendo notificações push no mobile para o DApp My Ether Wallet."
  width={2540}
  height={1624}
  caption="Com o Alchemy Notify, usuários podem receber notificações push para transações internas da aplicação."
  priority
/>

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](https://www.alchemy.com/blog/introducing-ethereum-address-activity-notifications), que monitoram[ transfers](https://docs.alchemy.com/docs/reference/transfers-api) \(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](https://www.alchemy.com/docs/deep-dive-into-eth_getlogs) 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](https://www.alchemy.com/dapps/sushi) por ETH usando o Sushiswap. Este é um processo de várias etapas que envolve uma variedade de transfers.

1. Primeiro, ela interage com o smart contract do Sushi, enviando ao smart contract seus tokens Sushi, por meio de um token transfer.
1. 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.
1. 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.
1. 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](https://dashboard.alchemy.com/signup?referral=affiliate:cae22cbb-7cbf-49ab-8ee9-619191f0e318).

## 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.

1. [Cadastre-se na Alchemy](https://dashboard.alchemy.com/signup?referral=affiliate:cae22cbb-7cbf-49ab-8ee9-619191f0e318)
1. [Crie um webhook](https://dashboard.alchemy.com/notify) com uma URL e os endereços relevantes \(também temos uma [API para criar novos webhooks](https://www.alchemy.com/docs/reference/custom-webhooks-quickstart)\)
1. A Alchemy envia notificações para você
1. Seus usuários param de se preocupar com o estado de suas negociações de cripto
