Guía completa para amantes de WordPress. Instala WordPress, configura WooCommerce, conecta el plugin Trondealer Payments y empieza a cobrar USDT y USDC en 8 blockchains sin escribir una línea de código. Desde el dominio hasta el primer cobro confirmado.
Esta es la guía paso a paso que necesitabas para convertir tu sitio WordPress en una tienda que acepta pagos con stablecoins. Al terminar tendrás un WooCommerce funcional cobrando USDT y USDC en 8 blockchains (TRON, Ethereum, BSC, Polygon, Arbitrum, Base, Avalanche y Solana) usando el plugin oficial Trondealer Payments, sin tocar una sola línea de código y sin levantar nodos.
Está pensada para el comerciante que ya conoce WordPress y WooCommerce —o quiere aprenderlo desde cero— y busca una alternativa real a Stripe, PayPal, Coinbase Commerce o BitPay para mercados hispanos donde las stablecoins ya son la forma natural de pagar online.
Las stablecoins (USDT, USDC) resuelven los tres problemas crónicos de aceptar cripto en una tienda online:
El plugin Trondealer Payments es una pasarela WooCommerce de código abierto (GPL v2) mantenida por QvaPay/TronDealer. Genera una dirección de depósito por pedido, recibe los pagos, los detecta on-chain y marca tu pedido como pagado automáticamente vía webhook firmado con HMAC. Si vienes de leer la guía de integración por API, este tutorial es el equivalente "no-code" para tiendas WooCommerce.
Para una tienda WooCommerce productiva necesitas:
mitienda.000webhostapp.com para una tienda real: el SEO sufre y muchas pasarelas no aceptan dominios compartidos.| Hosting | Plan recomendado | Auto-install WordPress | SSL gratis |
|---|---|---|---|
| Hostinger | Premium Web Hosting | Sí (Hostinger Auto Installer) | Sí |
| SiteGround | StartUp | Sí (asistente nativo) | Sí |
| DigitalOcean (managed) | Droplet 2 GB + Ploi/RunCloud | Sí (vía panel) |
El plugin etiqueta cada wallet con wc_<order_id>, que es idempotente: si el cliente refresca el checkout, el plugin reutiliza la misma dirección en lugar de generar otra. Esto te da un match 1:1 entre dirección y pedido para conciliación, y evita confundir pagos entre pedidos del mismo cliente.
min_confirmations sin necesidad. Por defecto es seguro (15 en BSC, 19 en TRON, 12 en ETH). Subirlo solo retrasa la marca de "completed" sin reducir riesgo material en stablecoins.on-hold. Espera a processing/completed para liberar la descarga. WooCommerce ya hace esto por defecto.withdraw con auth x-api-key en el backend de TronDealer.| Plugin | Modelo | Comisión | Settlement | KYC | Multi-chain |
|---|---|---|---|---|---|
| Trondealer Payments | Self-custody / QvaPay | 0% (QvaPay) · 0.4% o $0.30 (wallet) | Wallet propia o QvaPay | No | 8 redes |
| Coinbase Commerce for WC | Custodia Coinbase | 1% | Solo cripto desde 2024 | Sí (Coinbase) | Limitado |
| BitPay Payments | Custodia BitPay | ~1% + fees red | USD/EUR a banco (países soportados) | KYC empresarial | Limitado |
| NOWPayments | Self-custody | ~0.5% | Cripto, fiat opcional | Opcional | Sí (160+ cripto, no solo stablecoins) |
Si vienes de Coinbase Commerce o BitPay y tu cliente medio paga $5–$50 USD en stablecoins desde LatAm/Caribe, el cambio a Trondealer Payments suele bajar la comisión efectiva del 1% al 0.4% (o $0.30 fijo) — y al 0% si liquidas vía QvaPay. Tienes una comparativa detallada de las tres pasarelas si quieres profundizar.
Con la tienda en producción, el siguiente nivel es:
purchase de WooCommerce — los pagos en stablecoins emiten el mismo hook que los pagos con tarjeta.Si tienes un equipo técnico y quieres entender por dentro cómo el plugin habla con TronDealer, lee la guía de integración por API. Si dudas entre Trondealer Payments y otras opciones del mercado, la comparativa Coinbase Commerce vs BitPay vs TronDealer cubre el detalle.
Y cuando estés listo para aceptar tu primer pago real, regístrate en trondealer.com/onboard.
| Sí |
| cPanel genérico (Namecheap, Bluehost) | Plan básico | Sí (Softaculous) | Sí |
WordPress local con XAMPP o LocalWP es perfecto para aprender, pero los webhooks de TronDealer necesitan una URL HTTPS pública para llegar a tu sitio. Si quieres probar en local usa ngrok o cloudflared tunnel para exponer tu instalación temporalmente.
Tienes dos caminos según tu hosting:
Opción A — Instalador en un click (recomendado para principiantes):
admin literal, es el primero que prueban los bots), una contraseña fuerte y un email de recuperación.https://tudominio.com/wp-admin.Opción B — Instalación manual (cuando tu hosting no trae auto-installer):
# 1. Descarga la última versión
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
# 2. Sube el contenido de wordpress/ a public_html/ vía FTP/SFTP
# (tu cliente FTP: FileZilla, Cyberduck, etc.)
# 3. Crea la base de datos desde phpMyAdmin:
# - Nombre: wp_tienda
# - Usuario: wp_user
# - Contraseña: una larga y aleatoria
# 4. Visita https://tudominio.com y completa el wizard de WordPress
# pegando los datos de la base de datos.Una vez dentro del wp-admin:
https://./wp-json/tdp/v1/webhook) responda correctamente.Antes de añadir plugins instala estos esenciales: Wordfence o iThemes Security (firewall + 2FA), UpdraftPlus (backups automáticos a Google Drive/Dropbox) y WP Mail SMTP (para que las notificaciones de WooCommerce lleguen a tus clientes). Una tienda sin backups y sin 2FA es una bomba de tiempo.
WooCommerce es el plugin de e-commerce más usado del mundo (potencia ~30% de todas las tiendas online). Es gratuito, mantenido por Automattic y tiene la mayor oferta de extensiones.
Después del wizard, ve a WooCommerce > Ajustes > General y confirma:
| Campo | Valor |
|---|---|
| País / Región | Tu país real |
| Moneda de la tienda | United States (US) dollar (USD) |
| Posición de la moneda | Izquierda con espacio |
| Separador de miles | Coma (,) |
| Separador decimal | Punto (.) |
| Número de decimales | 2 |
El plugin Trondealer Payments cobra USDT/USDC 1:1 contra el total del pedido en USD. Si tu tienda está en EUR, MXN, ARS o cualquier otra moneda, la pasarela se ocultará automáticamente del checkout. Soporte para EUR está en la roadmap (versión futura). Si vendes en una moneda local, configura WooCommerce con USD como moneda principal y muestra precios convertidos en el frontend con un plugin de switcher.
Ahora la parte cripto. Vas a registrar el negocio en TronDealer para que te entregue una API key (la credencial que el plugin de WordPress usará para pedir direcciones de depósito).
Entra a https://trondealer.com/es/onboard (registro público, sin KYC para empezar).
Completa el formulario:
| Payout method | Para quién | Comisión TronDealer |
|---|---|---|
wallet | Comerciante con wallet propia (Trust, MetaMask, Phantom, TronLink) | 0.4% por transacción o $0.30 fijo si el monto es menor a $10 USD |
qvapay | Comerciante que quiere recibir en USD/CUP/EUR vía QvaPay | 0% (gratis) |
zelle | Comerciante con Zelle activo en EE.UU. | Según QvaPay |
Si elegiste wallet, define sweep_wallet_evm (tu dirección EVM, ej: 0xABC...), sweep_wallet_tron (Base58, ej: TXX...) y sweep_wallet_sol (Base58 Solana). Solo necesitas configurar las redes que vas a habilitar en el plugin.
Resuelve el captcha Cloudflare Turnstile y pulsa Crear cuenta.
Vas directo al dashboard. En la barra superior verás tu API key con prefijo td_ seguido de 64 caracteres hexadecimales. Cópiala a un gestor de contraseñas (1Password, Bitwarden) ahora mismo: es la única vez que se mostrará completa.
Cualquiera con esa cabecera puede generar wallets a tu nombre y leer tus transacciones. Nunca la subas a GitHub, nunca la pegues en chats públicos, nunca la pongas en código frontend. Solo vive en el panel de WordPress y, opcionalmente, en tu vault de secretos.
Si quieres entender qué hace cada endpoint que el plugin va a invocar bajo el capó, échale un ojo a la guía de integración por API en 6 pasos.
El plugin se distribuye como ZIP descargable.
trondealer-payments-vX.X.X.zip y pulsa Instalar ahora.Al activarse, el plugin:
https://tudominio.com/wp-json/tdp/v1/webhook que recibirá las notificaciones firmadas de TronDealer.Visita en el navegador https://tudominio.com/wp-json/tdp/v1/webhook (con GET). Deberías ver una respuesta JSON tipo {"code":"rest_no_route",...} o 405 Method Not Allowed. Eso significa que la ruta REST está viva. Si ves un 404 puro, revisa Ajustes > Enlaces permanentes y guarda de nuevo para refrescar las reglas de rewrite.
Aquí ocurre la magia: en una sola pulsación el plugin se autenticará contra TronDealer y registrará tu URL de webhook con un secreto HMAC generado automáticamente.
| Campo | Qué poner |
|---|---|
| Title | Cómo quieres que aparezca al cliente. Ej: Pagar con USDT/USDC |
| Description | Texto de ayuda en checkout. Ej: Acepta USDT y USDC en TRON, BSC, Ethereum, Polygon y más. |
| API key | Tu td_... del paso 4 |
| API base | Déjalo vacío (default: https://trondealer.com/api/v2) |
| Tolerance (%) | 1 (acepta subpagos hasta del 1%; cubre redondeos en wallets de cliente) |
| Whitelabel | Marcar si no quieres mostrar el logo de TronDealer al cliente |
Lo que hace ese botón internamente:
1. GET /api/v2/clients/me con tu x-api-key
-> verifica que la key existe y está activa
2. Genera un secreto webhook aleatorio de 64 chars hex
(solo si tdp_webhook_secret aún no existe)
3. PATCH /api/v2/clients/me con:
- webhook_url: https://tudominio.com/wp-json/tdp/v1/webhook
- webhook_secret: el generado
4. POST /api/v2/clients/me/webhook-test
-> TronDealer dispara un POST de prueba a tu webhook
5. Verifica que respondiste 2xxSi todo va bien verás un aviso verde tipo:
Connected as Mi Tienda. Webhook URL https://tudominio.com/wp-json/tdp/v1/webhook registered and verified.
Si ves un warning del tipo "test ping failed", revisa: certificado HTTPS válido (no autofirmado), enlaces permanentes en modo "Nombre de la entrada", y que ningún plugin de seguridad (Wordfence) esté bloqueando peticiones POST sin user-agent estándar.
El campo tdp_webhook_secret se genera y rota desde el connection test. No lo edites a mano salvo que estés migrando dominios o tu vault te lo exija. Si lo cambias, vuelve a ejecutar el test para que TronDealer reciba el nuevo valor; de lo contrario las firmas dejarán de verificar y los webhooks devolverán 401.
En la misma página de ajustes del plugin verás Enabled networks: un multiselect con todos los pares red:asset disponibles.
| Combo | Confirmación típica | Cuándo elegirlo |
|---|---|---|
tron:USDT | ~60s | Default para LatAm. Fees casi nulos gracias al energy renting de TronDealer |
bsc:USDT / bsc:USDC | ~45s | Fees bajos (~$0.20), gran liquidez en exchanges |
pol:USDT / pol:USDC | ~30s | Polygon rápido, fees mínimos |
arb:USDT / arb:USDC | ~10s | Confirmación casi instantánea, ideal UX |
base:USDT / base:USDC | ~30s | Para clientes con Coinbase Wallet integrada |
avax:USDT / avax:USDC | ~10s | Avalanche C-Chain |
eth:USDT / eth:USDC | ~4 min | Solo si vendes tickets altos ($100+); gas en mainnet sigue siendo caro |
sol:USDT / sol:USDC | ~30s | Solana SPL, fees casi nulos |
Recomendación para empezar: habilita tron:USDT, bsc:USDT, pol:USDT y pol:USDC. Cubre el 80% de los casos hispanos con fees mínimos. Ethereum mainnet déjalo para tickets superiores a $100 USD por el gas.
Ajusta también:
Pulsa Guardar cambios.
Si quieres validar tú mismo a qué smart contract está apuntando cada combo, consulta nuestra referencia de contratos verificados de USDT y USDC en cada blockchain. El plugin usa exactamente esas direcciones.
Antes de promocionar el checkout, siempre haz una compra real con cantidad mínima para validar el flujo completo.
Crea un producto barato: ve a Productos > Añadir nuevo, ponle precio $1.00 USD y publícalo.
Abre el sitio en una ventana incógnita (para no usar tu sesión de admin).
Añade el producto al carrito y ve a checkout.
En la sección de pago verás el método Trondealer con un selector de red+asset.
Elige TRON: USDT (la opción más rápida y barata para probar).
Completa el checkout. Llegarás a la página de agradecimiento con:
wc_<order_id>).Desde tu wallet (TronLink, Trust Wallet, Binance App) envía exactamente $1.00 USDT-TRC20 a esa dirección.
En 60–90 segundos deberías ver:
transaction.incoming recibido).transaction.confirmed).tx_hash queda en el pedido para auditoría.Si todo eso ocurrió: estás operativo.
En la pantalla del pedido (WooCommerce > Pedidos > #N) tienes en las notas:
transaction.incoming, transaction.confirmed, transaction.swept.Antes de anunciar el método a tus clientes: