要求的金額和貨幣
本文件描述付款 SDK 中更新的功能,特別是 getDepositAddress 和 getDepositUrl 方法,它們現在支援兩個額外的可選參數: requestedAmount 和 requestedCurrency。這些參數可讓客戶指定所需的存款金額和貨幣。如果在開發者設定中啟用,存款會與這些請求進行匹配,無論是否發生匹配,都會發送回調。
概述
SDK 現在支援 requestedAmount 和 requestedCurrency 作為產生存款地址或 URL 時的可選參數。當開發者設定中啟用匹配功能時,收到的存款會使用提供的匯率(最多小數點後 2 位)與這些請求進行比較。回調會一直傳送到客戶端的後台:
匹配的存款: 包括 requestedAmount、 requestedCurrency 和 exchangeRate。
不匹配的存款: 排除這些欄位,但仍會通知存款事件。
新參數
requestedAmount: 所需的存款金額(字串格式,例如「100」)。
requestedCurrency (要求的貨幣): 存款所需的貨幣 (例如:USDT、ETH、TRX)。
匹配行為
匹配是可選的,必須在開發者設置中啟用。
啟用後,存款會根據請求金額、請求貨幣和匯率與請求進行匹配。
匹配會執行到小數點後 2 位。
所有存款都會傳送回調,只有匹配的請求才會包含額外的資料。
存款配對設定
啟用匹配
配對預設為停用。
請在付款閘道儀表板的開發人員設定頁面中啟用。
啟用後,存款會使用 requestedAmount、 requestedCurrency 和匯率與存款請求進行比較。
匹配邏輯
存款會使用提供的匯率轉換為要求的貨幣。
轉換後的金額與 requestedAmount 進行比較(最多小數點後兩位)。
每筆存款都會傳送回調,只有找到匹配時才會包含其他欄位。
匯率範例
存款要求 1:
requestedAmount: 「100」
requestedCurrency: USDT
exchangeRate: { TRX: 0.1, ETH: 0.01 }
匹配:10 TRX (10 × 0.1 = 1 USDT) 或 100 ETH (100 × 0.01 = 1 USDT)。
存款請求 2:
requestedAmount: 「200」
requestedCurrency: USDT
exchangeRate: { TRX: 0.2, ETH: 0.02 }
匹配:1000 TRX (1000 × 0.2 = 200 USDT) 或 10000 ETH (10000 × 0.02 = 200 USDT)。
情況
存款:10 TRX
結果: 匹配存款請求 1 (10 × 0.1 = 1 USDT,小數點後 2 位內)。回調包括 requestedAmount、 requestedCurrency 和 exchangeRate。
存款:15 TRX
結果: 不匹配。發送的回調不包括 requestedAmount、 requestedCurrency 或 exchangeRate。
最佳實務
使用 referenceId 將存款與特定訂單或請求相關聯。
將 requestedAmount 指定為字串,以避免浮點精確度問題。
在測試網路環境中使用各種存款金額和貨幣測試匹配邏輯。
在您的後端適當地處理匹配和未匹配的回調有效載荷。
錯誤處理
KeyCreationFailure: 如果網路上的位址產生失敗,則產生此錯誤。
UnHealthyKey: 如果差分共識檢查失敗,則產生此錯誤。
使用 SDK 的記錄器擷取並除錯。
Last updated
Was this helpful?