ノンカストディアル決済
USDTは加盟店ウォレットへ直接送金され、BoltUtilが資金や秘密鍵を保管することはありません。
BoltUtil は、支払い確認後に注文 ID、ステータス、ネットワーク、金額、確認、トランザクション ハッシュを含む署名付き Webhook ペイロードを送信します。
import crypto from 'node:crypto'
import express from 'express'
const app = express()
app.post('/webhooks/boltutil', express.raw({ type: 'application/json' }), async (req, res) => {
const timestamp = req.get('X-Bolt-Webhook-Timestamp') || ''
const received = req.get('X-Bolt-Webhook-Signature') || ''
const rawBody = req.body.toString('utf8')
const expected = crypto
.createHmac('sha256', process.env.BOLTUTIL_WEBHOOK_SECRET)
.update(`${timestamp}.${rawBody}`)
.digest('hex')
const recent = Number.isFinite(Number(timestamp)) && Math.abs(Date.now() - Number(timestamp)) < 300_000
const wellFormed = /^[0-9a-f]{64}$/i.test(received)
const valid = recent && wellFormed && crypto.timingSafeEqual(
Buffer.from(received, 'hex'),
Buffer.from(expected, 'hex')
)
if (!valid) return res.sendStatus(401)
const event = JSON.parse(rawBody)
await fulfillOnce(event.externalOrderId, event.txHash)
return res.sendStatus(204)
})バックエンドが信頼できる USDT 支払い Webhook
バックエンドから金額、ネットワーク、外部注文IDを指定して決済注文を作成します。
購入者に決済URL、ネットワーク、受取アドレス、QRコード、正確なUSDT金額を表示します。
BoltUtilがネットワーク、トークンコントラクト、宛先、金額、有効期限、承認数を確認します。
支払い確認後、Webhook署名を検証し、冪等に商品やサービスを提供します。
USDTは加盟店ウォレットへ直接送金され、BoltUtilが資金や秘密鍵を保管することはありません。
1つのAPIでTRC20、ERC20、BEP20、Polygon、Solanaを監視し、共通形式のWebhookを受信できます。
HMAC署名、タイムスタンプ、再送ログにより、安全な決済後処理を実装できます。
>統合に関するメモ
APIキーをブラウザーへ公開せず、決済画面を表示する前に外部注文IDを保存します。
アドレスだけでなく、TRC20、ERC20、BEP20、Polygon、Solanaのどれを使うか明示します。
戻り先URLは支払い証明ではありません。署名付きWebhookかサーバー側の状態照会を使用します。
これらの回答は、開発者、創設者、サポート チームが実際の USDT 支払いを受け入れる前に支払いライフサイクルを理解するのに役立ちます。
いいえ。資金は加盟店ウォレットへ直接送られ、BoltUtilは送金を監視して通知します。
ネットワーク、トークン、宛先、正確な金額、注文状態、有効期限を確認します。
TRC20、ERC20、BEP20、Polygon、Solanaです。
顧客にスクリーンショットの送信を依頼することなく、注文を作成し、転送を監視し、バックエンドに通知します。
無料アカウントを作成する