ES
Facturación de hosting

Pagos cripto para FOSSBilling

Un adaptador de pago para FOSSBilling que permite a los clientes pagar facturas en USDT (TRC20, ERC20, BEP20) y otras monedas a través de SnapEX Pay. Cuando un cliente elige SnapEX Pay en una factura, el adaptador crea una factura de SnapEX Pay y muestra un botón que lleva a la página de pago (o redirige allí de inmediato si FOSSBilling lo pide). Una vez confirmado el pago, llega un webhook firmado a la URL de IPN de FOSSBilling, se acredita al cliente y la factura se marca como pagada.

Descargar el módulo

Gratis. Versión 1.2.0.

Qué hace

  • Sin billetera, nodo ni vigilante de blockchain que mantener: los fondos van a tu saldo de comercio en SnapEX Pay.
  • Un adaptador de un solo archivo que aparece en System → Payment gateways.
  • Los webhooks se verifican con HMAC-SHA256 y una ventana de 5 minutos, y la factura se vuelve a leer desde la API de SnapEX Pay antes de acreditar nada.
  • Los pagos se registran una sola vez: un webhook repetido no vuelve a acreditar al cliente, y la liquidación se ejecuta bajo un bloqueo de base de datos cuando la base de datos lo admite. Si el total de la factura cambió después del checkout, no se acredita nada automáticamente.
  • Enable Test Mode de FOSSBilling crea facturas de prueba de SnapEX Pay sin dinero real; los pagos de prueba nunca se aplican mientras la pasarela está en producción.
  • Cada sitio de FOSSBilling solo liquida las facturas que creó; las facturas que no están en USD se convierten con un tipo de cambio fijo o con los tipos de cambio propios de FOSSBilling.

Instalación

  1. Del archivo, copia SnapexPay.php en la raíz de tu FOSSBilling para que quede en library/Payment/Adapter/SnapexPay/SnapexPay.php (los nombres de carpeta y archivo distinguen mayúsculas y minúsculas) y asegúrate de que el usuario del servidor web pueda leerlo.
  2. En el área de administración ve a System → Payment gateways → New payment gateway e instala SnapexPay.
  3. Abre la pasarela, pega la clave API (permisos invoices.read, invoices.write) del panel de SnapEX Pay, marca Enabled y Allow One Time Payments, y guarda.
  4. Copia la IPN Callback URL que aparece en la página de la pasarela (https://<your-fossbilling>/ipn.php?gateway_id=<id>), configúrala como URL del webhook en el panel de SnapEX Pay (Developers) y pega el secreto whsec_… (se muestra una sola vez, al guardar la URL por primera vez) en Webhook secret.
  5. Activa Enable Test Mode, paga una factura y confirma el pago de prueba en la página de SnapEX Pay; la factura debería pasar a Paid. Después desactiva el modo de prueba.

Ajustes

API keyDel panel de SnapEX Pay → API keys, permisos invoices.read e invoices.write.
Webhook secretEl secreto whsec_… del endpoint de webhook. Los webhooks sin firma o con firma incorrecta se rechazan.
Network fee paid bymerchant: el cliente paga el importe de la factura, y la comisión se descuenta de lo que recibes. customer: la comisión de SnapEX Pay y la comisión de red se suman encima.
Payment window, minutes1–1440, por defecto 60.
USD per 1 unit of invoice currencySe ignora en facturas en USD. Para otras monedas, un tipo de cambio fijo, o vacío para usar los tipos de cambio propios de FOSSBilling (USD debe existir en System → Currencies).
Enable Test ModeEl interruptor propio de FOSSBilling: activado, facturas de prueba de SnapEX Pay; desactivado, facturas reales.
Partner IDOpcional: el Partner ID del integrador que configuró el módulo (programa de referidos de SnapEX Pay). Déjalo vacío si lo instalas tú mismo.
API URLDéjalo vacío.

Preguntas

¿Qué versiones de FOSSBilling son compatibles?

FOSSBilling 0.8.x y las versiones de desarrollo actuales.

SnapexPay no aparece en New payment gateway.

Revisa la ruta library/Payment/Adapter/SnapexPay/SnapexPay.php (distingue mayúsculas y minúsculas), relativa a la carpeta donde está ipn.php, y que el servidor web pueda leer el archivo.

El cliente pagó pero la factura sigue sin pagar.

Abre Invoices → Transactions. Si no hay transacción, revisa las entregas de webhooks en el panel de SnapEX Pay y que la URL incluya ?gateway_id=. Después de corregir la causa, puedes volver a procesar la transacción desde el área de administración.

Una transacción dice "partially paid", "already paid" o "total changed".

Estos casos nunca se acreditan automáticamente. Revisa el pago en el panel de SnapEX Pay y luego añade fondos o marca la factura como pagada a mano.

¿Pueden varios sitios de FOSSBilling usar una sola cuenta de SnapEX Pay?

Cada sitio solo liquida sus propias facturas, pero una cuenta de SnapEX Pay tiene una sola URL de webhook y el adaptador confirma los pagos solo por webhook. Así que solo el sitio cuya URL de IPN está configurada como webhook recibe la confirmación automática de pagos.

¿Listo para aceptar cripto?

Crea una cuenta de comercio, obtén una clave API y conecta el módulo. 1% por pago, sin cuota mensual.