Documentación para desarrolladores

Guía de integración de pagos USDT

Acepta USDT en seis redes. Verifica las versiones, contratos o Mint y decimales admitidos antes de crear pedidos firmados y gestionar confirmaciones.

Identidades de tokens de la red principal

Los contratos y Mint son valores preconfigurados, no el estado actual del servicio. Crear pedidos requiere una red y un activo habilitados y una cartera válida. Envía siempre a payment.address devuelto por la API, nunca al contrato o Mint.

Identidades de tokens de la red principal
RedMonedaContrato / MintDecimales del token
TRC20 network logoTRC20USDTTR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t6
ERC20 network logoERC20USDT0xdAC17F958D2ee523a2206206994597C13D831ec76
BEP20 network logoBEP20USDT0x55d398326f99059fF775485246999027B319795518
POLYGON network logoPOLYGONUSDT0xc2132D05D31c914a87C6611C10748AEb04B58e8F6
SOLANA network logoSOLANAUSDTEs9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB6
BASE network logoBASEUSDT0xfde4c96c8593536e31f229ea8f37b2ada2699bb26

Configuración del comerciante

  1. Configura una cartera receptora para la red y un Webhook habilitado con URL y clave. Guarda la API Key y la clave HMAC solo en el servidor.
  2. Comprueba la disponibilidad de network / currency. El administrador gestiona RPC, redes y activos; el comerciante no necesita desplegar escáneres.
  3. Muestra payment.amount, payment.address, currency, network y vencimiento de la respuesta. Los datos QR no son una imagen.
  4. Verifica la firma, elimina duplicados y guarda el evento de forma duradera antes de responder HTTP 2xx. Entrega el pedido de forma idempotente.

Notas sobre redes y activos

USDT se admite en seis redes. El token configurado en BNB Smart Chain usa 18 decimales; las otras cinco redes usan 6. Estos decimales difieren de la precisión del importe del pedido. Base usa el USDT puenteado configurado; BoltUtil no transfiere fondos entre redes. Elige la red del pedido y la versión exacta indicada: compartir símbolo o dirección no hace intercambiables las redes ni los tokens.

  • TRC20 es el código API para TRON y solo admite USDT, no currency=USDC. USDT tiene 6 decimales de token; conserva el importe devuelto por la API. La confirmación sigue la configuración y el escaneo, sin garantía de segundos.

Ejemplos de solicitud firmada y respuesta

25.00 es un importe de ejemplo. Usa el importe real del pedido y respeta el mínimo del activo. Direcciones, pedidos y hashes son ficticios. El cURL o programa Java copiado envía una solicitud: configura tus propias claves antes de ejecutarlo.

create / cURL
# Run against your account only when ready; this sends an API request.
: "${BOLTUTIL_API_KEY:?Set your complete API Key}"
: "${BOLTUTIL_WEBHOOK_SECRET:?Set your Webhook secret}"
timestamp=$(python3 -c 'import time; print(int(time.time()*1000))')
body='{"amount":"25.00","currency":"USDT","network":"TRC20","externalOrderId":"INV-20260209-99281"}'
signature=$(printf '%s.%s' "$timestamp" "$body" | openssl dgst -sha256 -hmac "$BOLTUTIL_WEBHOOK_SECRET" | awk '{print $NF}')

curl --request POST "https://api.boltutil.com/api/v1/order/create" \
  --header 'Content-Type: application/json' \
  --header "X-Bolt-Key: $BOLTUTIL_API_KEY" \
  --header "X-Bolt-Timestamp: $timestamp" \
  --header "X-Bolt-Signature: $signature" \
  --data-binary "$body"

Direcciones, hashes de transacciones y pedidos son ejemplos. Reemplácelos con su propia prueba data.

Base URL

PROD
https://api.boltutil.com
Parámetros completos del pedido →

Confirmación y notificaciones

Detectar no es confirmar. Usa el estado y los callbacks verificados: PAID espera confirmación. CONFIRMED / COMPLETED también pueden resultar de aceptación manual; revisa paidAmount, shortfallAmount y settlementType. COMPLETED no demuestra la entrega del pedido.

Preguntas de integración

¿Una moneda admitida está disponible ahora?

No necesariamente. Deben estar habilitados la red y el activo, con cartera y Webhook válidos. La tabla estática no muestra disponibilidad actual.

¿Puede el cliente redondear el importe?

Paga payment.amount completo. El sistema puede redondear hacia arriba y añadir un pequeño ajuste para distinguir pedidos de la misma cartera. No trunques ni redondees por tu cuenta.

¿Puedo entregar al aumentar el saldo?

Verifica el resultado confirmado y la autenticidad de la notificación. Redes, versiones o importes incorrectos y eventos duplicados requieren tratamiento. El saldo no sustituye al resultado del pedido.