Problema de suscripciones superpuestas

Nuestra comunidad cambió recientemente sus cuotas de membresía. Debido a la forma en que funciona Stripe, tuvimos que crear un nuevo producto de suscripción con el nuevo precio y luego comunicar a nuestros miembros que necesitarían renovar manualmente este año bajo el nuevo producto. Tanto la suscripción antigua como la nueva están vinculadas a nuestro “grupo privado”, lo que otorga a nuestros miembros permisos para ver las categorías privadas.

Sin embargo, algunos de nuestros miembros se están suscribiendo al nuevo producto antes de que expire el antiguo. Entonces, lo que parece estar sucediendo es que el plugin está eliminando a nuestros miembros del grupo privado cuando expira la suscripción antigua, a pesar de que la nueva todavía está activa. Por supuesto, esto está causando confusión y quejas.

No sé cómo resolver esto, así que espero que alguien aquí tenga una sugerencia. ¡Gracias de antemano!

Tal vez puedas cambiar el grupo asociado con la suscripción antigua por un grupo ficticio. Luego, cuando esa expirara, se les eliminaría del grupo ficticio. Seguirían siendo miembros del grupo incluso después de que expirara su antigua suscripción, por lo que tendrías que ir periódicamente y eliminar manualmente a esas personas del grupo.

Otra idea que tuve fue hacer algo como lo siguiente, pero tendría que mirar el código fuente para averiguar cómo hacerlo, y creo que la solución anterior debería funcionar y no requerir conocer los detalles internos.

   old_subscriptions=SubscriptionOrSomethingLikeThat.where(somefield: 'sub_xyz')
   old_subscriptions.destroy_all

Creo que la forma “correcta” de hacerlo habría sido crear un nuevo grupo para la nueva suscripción y añadirlo a las categorías asociadas. Eso también habría sido una molestia.

1 me gusta