Json-Rpc

在 RPC api 上收聽付款的最佳做法是什麼?

  • June 25, 2021

我有一個執行比特幣節點的 docker 實例,並且想監聽存款,每次使用者請求存款時生成一個新地址,然後在成功時增加使用者帳戶餘額。

比特幣具有walletnotify這樣的功能,當您在錢包中擁有的地址收到交易時會通知您,並在交易確認時發出第二次通知。

你可以在你的bitcoin.conf

walletnotify= curl http://yoururl.com/endpoint.php?tx=%s

%s將包含交易ID。你從那裡做什麼取決於你。

除了walletnotify回調之外,這些是您將使用的 JSON RPC 呼叫:

  • <https://developer.bitcoin.org/reference/rpc/getreceivedbyaddress.html>
  • <https://developer.bitcoin.org/reference/rpc/listreceivedbyaddress.html>
  • <https://developer.bitcoin.org/reference/rpc/gettransaction.html>

要使這些呼叫生效,您需要創建相應的錢包或將其導入比特幣核心。設置它也是一個好主意,txindex=1這樣您就可以將預先存在的錢包添加到 Core add hoc。

PS 根據您的具體案例,最好使用現有的開源、自託管解決方案,如傳奇的BTCPay 伺服器或更新的CypherpunkPay(披露:作者)。

引用自:https://bitcoin.stackexchange.com/questions/96223