跳至內容
0%

內部交易:通知使用者所有加密貨幣交易

作者:Elan Halpern

最後更新:2021年3月30日1 分鐘閱讀

Alchemy Notify 套件現在支援所有 ETH 和 Token 轉帳的通知,包括我們最新加入的內部(智能合約)交易——讓使用者對自己的交易有完整的透明度,每一步都能掌握。

如果想快速了解 Ethereum 地址活動通知,可以參考這篇部落格文章。

什麼是內部交易?

使用者在手機上接收 My Ether Wallet DApp 推播通知的示意圖。
透過 Alchemy Notify,使用者可以接收應用程式內部交易的推播通知。

內部交易通知

要理解什麼是內部交易,最好先退一步,看看 Ethereum 上有哪些交易類型。交易是對 Ethereum 鏈的狀態變更,也就是說它們不是在讀取資料,而是在向鏈上_寫入_資料。

Ethereum 上會發生許多種狀態變更,不過使用者通常最關心的是交易。為了通知使用者他們的交易情況,開發者可以接入地址活動通知,這會監控轉帳(兩個 Ethereum 帳戶之間的價值交換)。

Ethereum 上有三種轉帳類型:

ETH 轉帳

ETH 轉帳是最基本的交易類型,使用 Ethereum 的原生貨幣。

範例轉帳: Rishub 傳送 0.5 ETH 給 Paul。

取得這類轉帳的方式是掃描每個新區塊中的交易物件。

Token (ERC-20 與 ERC-721) 轉帳

Token 轉帳包含任何與 ERC-20 token 或非同質化 ERC-721 token (NFT) 相關的轉帳。

範例轉帳: Omar 從交易所(智能合約)或另一位使用者那裡購買 10 個 AAVE。

一般取得這類轉帳的方式,是查看你關心的 token 合約的事件日誌。

內部轉帳

內部轉帳是指發送方(fromAddress)為內部(智能合約)地址的 Eth 轉帳。這包括一個智能合約傳送 Eth 給另一個智能合約,或智能合約傳送 Eth 給外部地址。

範例轉帳: 內部轉帳非常複雜,但開發者和使用者關心的是他們的錢從哪裡開始、最終流向何處,這正是內部轉帳重要的原因。以下範例展示兩筆內部交易:

Elan 想用 Sushiswap 將一些 Sushi token 換成 ETH。這是一個涉及多種轉帳的多步驟流程。

  1. 首先,她與 Sushi 智能合約互動,透過 token 轉帳將她的 Sushi token 傳送給該智能合約。
  2. 接著,智能合約將她的 Sushi 存入 SUSHI/WETH 資金池,這是另一個智能合約,因此這是一筆 token 轉帳。作為交換,合約取得等值的 WETH。
  3. 因為 Elan 想要的是 ETH 而非 WETH,Sushi 智能合約接著與 WETH 智能合約互動,將 WETH 換成 ETH(解包),這會產生一筆內部交易,因為是 WETH 智能合約傳送 ETH 給 Sushi 智能合約。
  4. 接下來,Sushi 合約將這筆 ETH 送回給 Elan,這是另一筆內部交易(Sushi 智能合約傳送 ETH 給外部地址 Elan)。

(3)和(4)屬於內部交易而非 token 轉帳,因為交換的是 ETH(而非 ERC-20 token);它們也不是外部轉帳,因為這是_智能合約_在傳送 ETH(而非帳戶地址)。

現在你應該能體會,光是_解釋_什麼是內部轉帳就已經這麼複雜,那麼想像一下要即時取得這些資料會是什麼情況。聽起來並不輕鬆。

雖然內部交易影響重大,但要取得它們卻相當棘手。智能合約可能在底層觸發多層內部合約呼叫,其中有些甚至沒有任何價值轉移。

此外,內部交易並不像 ETH 和 token 交易那樣以相同方式儲存在鏈上,這表示使用者必須從父交易一路追蹤到每一個子交易,才能取得這些資料。更麻煩的是,要執行這種追蹤,開發者需要用到一種昂貴且容易出錯的特殊軟體,叫做 Parity Trace node,而它的同步需要花費數週時間。

讓使用者即時掌握交易的每一步動態

透過對外部、token 與內部交易的通知,使用者可以隨時完整掌握資金的去向。現在錢包能夠在每次發生與帳戶相關的轉帳時通知使用者,即使是複雜的內部交易也不例外。這些通知同時也讓開發者對自己所建構、互動的智能合約有更多資訊。

使用 Alchemy 設定這三種交易類型的通知非常簡單。在這裡建立免費帳戶,幾分鐘內就能解鎖 Alchemy Notify 的使用權限。

花 3 分鐘開始接收交易通知(而不是 3 週)

不用自行同步 Parity Trace node、苦等數週才能使用,只要花 3 分鐘整合 Alchemy 即可。

  1. 註冊 Alchemy
  2. 使用網址和相關地址建立 webhook(我們也提供建立新 webhook 的 API)
  3. Alchemy 傳送通知給你
  4. 你的使用者不再需要擔心加密貨幣交易的狀態

Alchemy 電子報

搶先掌握最新發布消息

訂閱我們的電子報

取得 Alchemy 最新產品更新與資源

A
O
D
+
超過 80,000 名訂閱者

輸入您的電子郵件地址,即表示您同意接收我們的行銷通訊與產品更新。您了解 Alchemy 會依照我們的隱私權聲明處理所收到的資訊。您可以隨時取消訂閱。