Suscripciones de Discourse: cuenta eliminada demasiado pronto cuando el usuario cancela - eliminación no anotada en la interfaz de administración

Pasos seguidos: Creé un usuario de prueba y configuré una suscripción recurrente de un día, luego la cancelé (como usuario) anoche alrededor de las 23:30 (son las 20:30 ahora aquí). Cuando miré esta noche vi:

  1. Sitio web de Stripe: la suscripción aparece como activa con la nota “Programada para cancelar el 23 de noviembre a las 23:34”.
  2. Interfaz de administración de Discourse: la suscripción aparece como activa.
  3. Interfaz de usuario de Discourse: la interfaz de usuario dice “No tienes suscripciones activas” y el usuario ha sido eliminado del grupo de suscripciones de Discourse.

Lo que parece estar mal: Es el punto 3 lo que me sorprendió: es inconsistente con la interfaz de administración y parece incorrecto. Esperaba que la suscripción apareciera como activa (pero “Renovaciones: Cancelada”) y que el usuario permaneciera en el grupo.

Algunas conjeturas: No hay nada relevante en el registro de webhooks de Stripe. ¿Quizás Discourse elimina la suscripción en la interfaz de usuario (y elimina al usuario del grupo) al comienzo del día correspondiente (23 de noviembre) en lugar de esperar y hacerlo solo al procesar el webhook? Apuesto a que cuando intente procesar el webhook a las 23:34, devolverá un error de cliente no encontrado.

La suposición fue correcta, creo. Dos customer.subscription.deleted idénticos a las 23:35:50 y 23:36:05 con el error customer not found.

La suscripción ha desaparecido de la página de administración de Discourse y ha sido cancelada en el sitio web de Stripe.