EIP-681 付款請求

又稱: ethereum: URI, 以太坊付款 URI, ERC-681, 以太坊付款連結

定義

EIP-681 是以太坊的提案,定義用於付款請求的 ethereum: URI,攜帶收款位址、選填的鏈 ID、金額或代幣轉帳,常以 QR Code 呈現。

EIP-681 定義了什麼

EIP-681 是以太坊改進提案(Ethereum Improvement Proposal),發布在 EIP 儲存庫,描述一種 URI 格式,用來請求別人發送以太幣或呼叫合約函式。這個 URI 以 ethereum: 開頭,然後是目標位址、選填的 @ 與鏈 ID、選填的函式名稱與查詢參數。掃描這種 QR Code 的錢包,可以建立交易供使用者檢視。

簡單的以太幣請求看起來像 ethereum:0x...@1?value=1e18。金額 value 以 wei 為單位,這是以太幣最小的單位,並允許使用科學記號,所以 1e18 代表一個以太幣。鏈 ID 告訴錢包預期的是哪個網路,例如 1 代表以太坊主網。

代幣轉帳

EIP-681 也能描述對代幣合約的呼叫。對代幣轉帳來說,目標位址是代幣合約,函式是 transfer,參數則給出收款人與金額,如 ethereum:0xTokenContract@1/transfer?address=0xRecipient&uint256=1e6。金額以代幣最小的單位計算,取決於代幣的小數位數。

各錢包對完整格式的支援不一。有些錢包只讀取位址,有些會忽略鏈 ID 或函式呼叫,所以值得用付款人使用的錢包測試 QR Code。付款人在確認前,務必檢查網路、代幣與收款人。

常見問題

ethereum: 付款連結中的 value 是什麼單位?

value 參數以 wei 為單位,這是以太幣最小的單位。一個以太幣是 1e18 wei。

EIP-681 QR Code 能請求代幣而不是以太幣嗎?

可以。它可以搭配 transfer 函式指向代幣合約,並把收款人與金額當成參數。

為什麼加密貨幣 QR Code 裡的鏈 ID 很重要?

同一個位址可以存在於多個網路,所以鏈 ID 告訴錢包這筆付款是針對哪個網路。

來源與標準

所有名詞