Payment
比特幣 API - 我如何辨識新的收款?
下午好,
在我的線上商店接收比特幣付款時,我有點掙扎。到目前為止,我已經在我的系統中安裝了 bitcoind 並創建了一組接收地址,現在我面臨檢查新付款的問題。
我正在使用以下資源:
- <https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_Calls_list>
- <http://code.gogulski.com/bitcoin-php/class_bitcoin_client.html>
我想做一個 cron 工作來搜尋新的付款並將它們中的每一個儲存到一個關係數據庫中,每個事務由以下內容標識:
- 交易編號
- 寄件人地址
- 金額為 64 位整數
一切都很簡單,但我找不到從我的比特幣守護程序中提取新傳入交易的有效方法。例如,我能夠提取每個地址的餘額,但我沒有找到一種可行的方法來獲取包含所有必需數據的傳入交易集合。這會產生另一個問題,因為我不想處理事務兩次。
使用 API 的最佳方法是什麼?
非常感謝。
如果您想辨識收款,推薦的方法是為每個請求創建一個新的接收地址。當給定地址的交易確認足夠高時,您可以認為付款已確認。
使用“發件人地址”並不能為您提供可靠的資訊——它只能辨識以前控制硬幣的(其中一個)地址。無法保證這些對應於付款的發送者(例如,它可能是一個共享硬幣的網路錢包)。
不重複使用地址還有其他好處,比如讓比特幣整體上更不容易追踪。