fbpx

Cómo gestiona MemberMouse la facturación periódica

Al hablar de cómo MemberMouse gestiona la facturación recurrente, primero tenemos que distinguir entre los servicios de pago que admiten la funcionalidad de tarjeta en archivo y los que no. La funcionalidad de tarjeta en el archivo es cuando el servicio de pago almacena la información de la tarjeta de crédito de un cliente de forma segura y proporciona un token de pago que se puede utilizar para realizar pagos futuros.

Con los servicios de pago que no admiten la funcionalidad de tarjeta en archivo (es decir, PayPal, Authorize.net), MemberMouse no tiene control sobre el proceso de facturación recurrente. Cuando el cliente adquiere una suscripción a través de uno de estos servicios, se establece un calendario en el servicio de pago y éste se encarga de volver a facturar al cliente en el momento adecuado. MemberMouse está atento a las notificaciones de facturación fallida o correcta y toma las medidas oportunas.

Con los servicios de pago de tarjeta en archivo, el complemento MemberMouse de su sitio es responsable de realizar un seguimiento del calendario de pagos y de enviar las solicitudes de pago al servicio de pago (es decir, Stripe, Braintree, Authorize.net CIM) cuando vence un pago. Esta disposición es más flexible, pero requiere que nuestro plugin asuma la responsabilidad de la facturación recurrente.

Históricamente, MemberMouse solucionaba este problema sincronizando el calendario de facturación de su sitio con un servidor centralizado. En el servidor sólo se almacenaban el identificador del programa y la fecha de facturación, y nunca se almacenaba remotamente información personal de ningún cliente. La centralización de la facturación nos permitió superar ciertas limitaciones ambientales de la época y garantizar que la facturación se ejecutara cada pocas horas. Todas las versiones de MemberMouse anteriores a la 2.4.5 utilizan este enfoque centralizado.

A partir de MemberMouse 3.0, utilizamos WP-Cron y un nuevo sistema de colas para gestionar la facturación recurrente completamente dentro del plugin. Esto significa que la facturación en su sitio ya no depende de nuestra infraestructura centralizada, pero introduce algunas consideraciones adicionales para los operadores del sitio. Por defecto, hemos programado la facturación local para que se ejecute cada 15 minutos, pero los usuarios avanzados pueden utilizar nuestra función Filtros de WordPress para cambiar este intervalo.

La facturación local puede requerir que se ejecute la actividad del sitio

Una limitación importante de WordPress es que WP-Cron sólo puede ejecutar tareas programadas cuando se activa. Muchos proveedores de alojamiento superan esta limitación activando WP-Cron periódicamente utilizando otras partes de su infraestructura. Sin embargo, una minoría de proveedores no ofrecen esta característica, y en este caso, la facturación sólo se ejecutará cuando se acceda al sitio.

En general, se accede a la mayoría de los sitios al menos una vez cada pocas horas, debido al tráfico de miembros y motores de búsqueda, y esto es suficiente para proporcionar una facturación fiable. Sin embargo, es teóricamente posible que no se acceda a un sitio sin cron centralizado durante un largo periodo de tiempo y, en este caso, la facturación local no se ejecutaría cuando se espera. 

Afortunadamente, esta preocupación se soluciona fácilmente utilizando un servicio de monitorización del tiempo de actividad. Estos servicios acceden periódicamente a su sitio y confirman que responde como se espera. Si el sitio no responde, el monitor de tiempo de actividad le avisa por correo electrónico o mensaje de texto. Además de proporcionar una importante medida de fiabilidad, las comprobaciones periódicas del servicio de monitorización activarán la facturación cuando sea necesario.   

Hay muchos servicios de monitorización del tiempo de actividad disponibles, y varios incluyen ofertas gratuitas que son más que suficientes para sitios web pequeños y medianos. Estos son algunos servicios que ofrecen un nivel gratuito:

Al configurar la monitorización, tendrá la opción de elegir la frecuencia con la que el sistema envía peticiones a su sitio. Aunque intuitivamente pueda parecer mejor monitorizar con una frecuencia mayor, tenga en cuenta que cada registro requiere que su servidor procese y responda a una petición, utilizando recursos. Para la mayoría de los clientes, recomendamos una frecuencia de monitorización de 15-30 minutos.

Tenga en cuenta que algunos proveedores de alojamiento con cron centralizado recomiendan que desactive WP-Cron y dependa enteramente de su infraestructura para los disparos, pero se lo desaconsejamos. La activación periódica proporciona un nivel mínimo de actividad, pero la cola está configurada para ejecutarse con más frecuencia si es posible, y para obtener mejores resultados se le debe permitir hacerlo.

Creación y restauración de copias de seguridad de su sitio web

Dado que toda la información relacionada con la facturación local se almacena dentro de su instalación de WordPress, la restauración de una copia de seguridad de su sitio devuelve el programa de facturación a un estado anterior. Esto significa que las refacturaciones que se procesaron después de que se creara la copia de seguridad se pondrán en cola para ejecutarse de nuevo.

Para ayudarle a gestionar las situaciones en las que se restaura una copia de seguridad, hemos introducido una nueva función Próximos pagos que le permite omitir o cancelar las refacturaciones individualmente o en bloque. 

Por lo general, las refacturaciones vencidas se ejecutan lo más rápidamente posible, y el sistema comenzará a procesarlas en cuanto se complete la restauración. Las protecciones que MemberMouse puede ofrecer contra esto se basan en las características del servicio de pago. Los clientes que utilizan Stripe están protegidos por: 

  • Grabación de metadatos - Cuando MemberMouse procesa una refacturación en Stripe, registra información sobre la siguiente refacturación que debe procesarse. Cuando se restaura una copia de seguridad de más de 24 horas de antigüedad, buscamos en los metadatos de Stripe si ya se ha procesado la siguiente refacturación programada. Si se encuentran datos coincidentes, pausamos temporalmente la facturación local y mostramos un mensaje que le pide que tome medidas para corregir los calendarios de pago en MemberMouse. El artículo Se ha suspendido la refacturación in situ explica cómo abordar esta situación.
  • Idempotencia de las transacciones - Cada transacción realizada en Stripe utiliza un Clave de idempotencia generado a partir de la información del pedido. Stripe rechazará las transacciones que ya se hayan facturado en las últimas 24 horas.

Si estás creando manualmente una copia de seguridad antes de una migración u otra actividad de mantenimiento importante, puedes pausar temporalmente la facturación local antes de empezar. Si fuera necesario restaurar esta copia de seguridad, la facturación local ya estará en pausa cuando se complete la restauración. A continuación, puede omitir los pagos ya facturados y habilitar la facturación local una vez completado este paso. La configuración del Programador de Facturación Local se encuentra en MemberMouse > Ajustes generales > Otros ajustesal final de la página.

¿Le ha resultado útil este artículo?

Artículos relacionados

¿No encuentra la respuesta que busca?

Póngase en contacto con nuestro equipo de atención al cliente
Póngase en contacto con nosotros