تسوية غير احتجازية
تصل USDT / USDC مباشرة إلى محفظة التاجر ولا يحتفظ BoltUtil بالأموال أو المفاتيح الخاصة.
تكامل الدفع
أنشئ الطلبات واستعلم عن حالة الدفع وتحقق من توقيع Webhook على خادمك. اربط الدفع بالمحفظة أو التحويل اليدوي بعملتَي USDT وUSDC بنظامك.
لا ندعم USDC على TRON. يجب تفعيل المسار وإعداد محفظة استقبال نشطة. لا تحل USDbC أو USDC.e أو العقود الأخرى محل الأصول المدرجة.
USDC صادر عن Circle على Ethereum وPolygon وSolana وBase. تستخدم BNB Smart Chain عملة Binance-Peg USDC بدقة 18 منزلة عشرية. ليست USDC الأصلية الصادرة عن Circle. USDC الأصلي وUSDT المجسّر على شبكة Base الرئيسية. يعتمد التوفر على مسارات الدفع المفعّلة ومحفظة استقبال نشطة.
الخطوات
Best for developers integrating crypto payments into SaaS, marketplaces, membership systems, or custom checkout flows.
أنشئ طلب الدفع من الخادم وحدد المبلغ والشبكة ومعرّف الطلب الخارجي.
اعرض رابط الدفع والشبكة وعنوان الاستلام ورمز QR ومبلغ USDT / USDC الدقيق.
يتحقق BoltUtil من الشبكة وعقد الرمز والعنوان والمبلغ ومدة الطلب والتأكيدات.
بعد التأكيد، تحقق من توقيع Webhook ونفّذ الطلب بطريقة تمنع التكرار.
يتحقق BoltUtil من الدفع ويرسل إشعارات موقعة. يتحقق خادمك من التوقيع وحالة الطلب ويمنع التكرار قبل التسليم أو تفعيل الخدمة أو إضافة الرصيد.
ملاحظات التكامل
تصل USDT / USDC مباشرة إلى محفظة التاجر ولا يحتفظ BoltUtil بالأموال أو المفاتيح الخاصة.
TRON وEthereum وBNB Smart Chain وPolygon وSolana وBase. تدعم TRON عملة USDT / USDC فقط؛ تتطلب مسارات USDT / USDC الأخرى تفعيل الأصل وإعداد محفظة استلام صالحة.
تساعد توقيعات HMAC والطابع الزمني وسجلات إعادة الإرسال على أتمتة التنفيذ بأمان.
import crypto from 'node:crypto'
// Node.js 20+ server module. Call only after authenticating the buyer.
// order must come from your database, with ownership and price checked.
// Never pass req.body directly; persist externalOrderId before calling.
export async function createStablecoinCheckout(order) {
const key = process.env.BOLTUTIL_API_KEY
const secret = process.env.BOLTUTIL_API_SECRET
if (!key || !secret) throw new Error('Missing server credentials')
const payload = JSON.stringify({
externalOrderId: order.externalOrderId,
amount: order.amount,
currency: 'USDC',
network: 'BASE',
notifyUrl: 'https://merchant.com/webhooks/boltutil',
returnUrl: 'https://merchant.com/orders/complete'
})
const timestamp = Date.now().toString()
const signature = crypto.createHmac('sha256', secret)
.update(`${timestamp}.${payload}`).digest('hex')
// A timeout does not prove creation failed. Query order/status using
// the SAME externalOrderId before deciding whether to retry.
const response = await fetch('https://api.boltutil.com/api/v1/order/create', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-Bolt-Key': key,
'X-Bolt-Timestamp': timestamp,
'X-Bolt-Signature': signature
},
body: payload,
signal: AbortSignal.timeout(10000)
})
const result = await response.json()
if (!response.ok || result.code !== 200 || !result.data?.checkoutUrl) {
throw new Error('Create order failed; reconcile the saved order')
}
// Save result.data on the server. Return only checkout data to the buyer.
return result.data
}أمثلة للتكامل واستكشاف الأخطاء فقط. لا تُرسل طلبات. راجع بيانات الطلب وإعدادات الشبكة ووثائق API.
اقرأ مستندات APIلا تكشف مفتاح API في المتصفح واحفظ معرّف الطلب قبل عرض صفحة الدفع.
يجب توضيح TRC20 وERC20 وBEP20 وPolygon أو Solana إلى جانب العنوان.
رابط العودة ليس دليلاً على الدفع؛ استخدم Webhook موقعاً أو استعلام الحالة من الخادم.
تكامل الدفع
لا. تصل الأموال مباشرة إلى محفظة التاجر، بينما يراقب BoltUtil التحويلات ويرسل الإشعارات.
يتحقق النظام من الشبكة والرمز والعنوان والمبلغ الدقيق وحالة الطلب ومدة صلاحيته.
تدعم TRON عملة USDT فقط. تستخدم Ethereum وBNB Smart Chain وPolygon وSolana وBase نسخ USDT / USDC المحددة. يعتمد التوافر على القنوات المفعلة ومحافظ التاجر.
يمكنك إنشاء الطلبات ومراقبة عمليات النقل وإخطار الواجهة الخلفية لديك دون مطالبة العملاء بإرسال لقطات شاشة.