Saltar al contenido principal
← Volver a la documentación

Primeros pasos

Configura un tenant, instala el plugin DHRU y envía tu primer pago de prueba.

Primeros pasos

Checklist rápido para usuarios recurrentes. La guía de configuración inicial está en Instalación.

  1. Regístrate en /register con nombre de usuario, correo y contraseña (12+ caracteres).
  2. Verifica tu correo haciendo clic en el enlace.
  3. Espera a que un administrador active tu tenant. Recibirás un correo de aviso.
  4. Inicia sesión. Abre Integration en la barra lateral.
  5. Configura la Webhook URL apuntando a tu endpoint de callback de DHRU, por ejemplo https://yourdhru.com/modules/gateways/callback/triapay.php.
  6. Rota la API key y el Webhook secret. Ambos se muestran una sola vez, cópialos de inmediato.
  7. Descarga los dos archivos del plugin desde la misma página de Integration:
    • triapay.php → colócalo en modules/gateways/ de tu servidor DHRU
    • triapay-callback.php → renómbralo a triapay.php y colócalo en modules/gateways/callback/ de tu servidor DHRU
  8. En el admin de DHRU, habilita el gateway TriaPay y pega tu API URL, API key y webhook secret de TriaPay.
  9. Configura los métodos de cobro (master wallet addresses para TRC20/BEP20, Pay ID para Binance Pay) en las pestañas Crypto y Binance Pay.
  10. Envía un depósito de prueba de $1 desde una cuenta de cliente de DHRU. Confirma que la orden pase pending → matched → credited en segundos (latencia de detección típica de 3 a 7 s más la confirmación de la chain).

Latencia de detección

El crédito de extremo a extremo suele tardar bastante menos de un minuto. Las variables dominantes son la confirmación de la chain y el tick de polling que busca coincidencias.

Chain Tick de polling Típico extremo a extremo
TRC20 3 s 3 a 7 s
BEP20 3 s 3 a 7 s
Binance Pay 5 s 5 a 10 s

Estos números excluyen el tiempo de broadcast del wallet del cliente. La cadencia de polling de arriba es el ritmo propio de escaneo del listener; las órdenes coincidentes pasan a credited en cuanto el webhook confirma. El push eth_subscribe de BSC y los merchant-webhooks de Binance Pay están en el roadmap para detección subsegundo, pero aún no se han desplegado.

Seguridad del inicio de sesión

El sign-in pasa por /auth/login con las siguientes opciones de OTP:

  • Email OTP (por defecto).
  • WhatsApp OTP, disponible cuando hay un número de teléfono en el perfil.
  • Bypass step-up de TOTP cuando el 2FA está enrolado.

Una cookie "remember this device" (caducidad de 7 días, vinculada al fingerprint del navegador y a la clase IP /24) salta el OTP en inicios de sesión posteriores desde la misma clase de red. Revoca dispositivos individuales en cualquier momento desde /me/devices.

Pruebas con modo sandbox

El modo sandbox te permite ejercitar el ciclo completo order → webhook → DHRU sin tocar chains reales, fondos reales ni tus facturas reales de DHRU. Úsalo siempre que cambies la configuración del plugin, rotes una clave o muevas DHRU a un nuevo host.

Configuración inicial

  1. Dashboard → pestaña Integration → tarjeta API Key → cambia a la pestaña Sandbox → haz clic en Generate sandbox key. Copia el valor tpk_test_....
  2. En la misma tarjeta, subsección Webhook Secret → pestaña Sandbox → Generate sandbox secret. Copia el valor.
  3. En el admin de DHRU → Setup → Payment Gateways → TriaPay, pega la sandbox key en API Key (Sandbox) y el sandbox secret en Webhook Secret (Sandbox).
  4. Marca la casilla Sandbox Mode en el mismo formulario. Guarda.

Dispara un pago de prueba

  1. Dashboard → API Playground → cambia el toggle de modo a Sandbox (aparece un banner confirmando que el sandbox está activo).
  2. Ejecuta Create order con cualquier combinación de chain/asset. Copia el idempotencyKey retornado.
  3. Ejecuta Force credit con ese idempotency key. El simulador dispara el webhook por la misma ruta de crediter usada en producción.
  4. Verifica que tu servidor DHRU reciba el POST con X-Payment-Mode: sandbox (revisa error_log).

El handler de callback de tu plugin DHRU corta automáticamente los webhooks de sandbox: registra el evento, devuelve 200 OK y nunca llama a addPayment. Ninguna factura en producción se acredita, ninguna fila de tblUsers.credit_left cambia.

Cuando estés listo para pasar a tráfico real, desmarca Sandbox Mode en el formulario de admin de DHRU. La API key y el webhook secret de producción quedan donde estaban; no necesitas cambiar nada más.