ProCourse Memberships 💸

@Steven Muchas gracias por esta respuesta, es muy útil.

Parece que los campos personalizados resuelven la mayor parte de mi problema. Utilizo el complemento teaser y he encontrado una solución funcional para los tipos de membresía basada en lo que permite el complemento.

Examiné la tabla (¡que Google Translate sea lo que sea!) y parece que podemos tener múltiples niveles de membresía con diferentes costos a través de ProCourse, ¿correcto? De ser así, puedo simplemente crear una membresía complementaria que proporcione exactamente el mismo acceso pero a un costo menor. Somos un grupo lo suficientemente pequeño como para trabajar con esa solución y tener a alguien que verifique manualmente que exista una membresía “maestra” para estos usuarios.

Exacto, cada costo tendrá su propia página de membresía; allí es donde la página estática resulta más útil y la tabla fue la mejor solución en mi caso.

Error: VM193:1 POST https://sandbox.example.com/memberships/checkout/submit-payment 500

Todo está configurado para producción. ¿Alguna idea?

Este es el registro de depuración real de Discourse.

Tengo el plugin funcionando correctamente en mi sitio para suscripciones mensuales.

Sin embargo, ¿hay una opción para cobrar a los usuarios por publicar un solo tema/entrada, en lugar de darles acceso mensual?

Estoy trabajando en la configuración y tengo una pregunta. Si tengo una membresía de 12 meses para un grupo “Bronce”, ¿se eliminará la membresía de ese grupo al finalizar ese periodo? ¿Existe alguna advertencia para el usuario sobre que esto va a ocurrir o ya ocurrió?

Hola,

Lo he leído un par de veces y he vuelto a probar el sitio de demostración. Creo que he entendido mi confusión con el flujo de registro/membresía.

Esto es lo que creo que debo hacer:

Nota: mi sitio es 100% de pago, no hay ninguna capa gratuita.

  1. Tengo una página de ventas estática (fuera de Discourse) con un formulario de solicitud. Si la solicitud es aprobada (proceso manual), enviaré una invitación para unirse desde dentro de Discourse.

  2. El nuevo miembro se registra y obtiene una nueva cuenta en Discourse.

  3. El nuevo miembro inicia sesión en Discourse y ve… un foro vacío, excepto por un tema sobre ‘crear una membresía’ [quizás es aquí donde entra la página estática del curso profesional, y puedo tener una página estática con opciones de pago en su lugar?]

  4. Ese tema [o página estática] tiene dos opciones: un pago recurrente mensual y un pago recurrente anual. Cada enlace o botón lleva a la página de membresía que creé dentro del complemento Procourse.

  5. El nuevo miembro completa el pago y se añade al grupo de Miembros, que tiene acceso al foro completo.

Creo que voy por buen camino. Pero los puntos 3 y 4 me generan dudas. ¿Estoy pasando por alto un camino más fácil o más obvio?

PD: Pensé que la página de pago aparecería primero, antes de que el nuevo miembro creara una cuenta. La necesidad de crear una cuenta primero fue un gran obstáculo mental para mí, pero entiendo por qué. Creo. :slight_smile:

Creo que tendrás problemas de usabilidad para tu base de usuarios al hacer que se registren, sean aprobados, luego ingresen a un foro vacío y finalmente paguen por el contenido.

Podrías estar mejor si haces algo similar donde Discourse esté bloqueado, pero usa WP Discourse para SSO y Paid Memberships Pro para restringir el acceso a la comunidad. Todo ocurrirá de manera más fluida para tus usuarios.

Puedes consultar esto como referencia:

1 me gusta

Gracias @justin, lo revisaré. El foro no está vacío (he tenido un pequeño grupo allí durante varios meses), pero veo tu punto. Agradezco tu perspectiva.

¿Puedo preguntar por qué eligieron este camino? ¿Alguna vez podría darse el caso de que el proceso de solicitud sea rechazado?

Pregunto esto porque podrías resolver la mayor parte de tus problemas si este paso se pudiera omitir.

1 me gusta

Hola Joe,

La idea de la aplicación es obtener información de fondo sobre la persona y lo que espera obtener de la comunidad. Yo formo parte de otro grupo donde los miembros ingresaban y se iban poco después porque no era un buen ajuste para ellos.

Podría cambiar el flujo para que vayan directamente a la página de registro de miembros y, una vez que se hayan unido, hacerles las mismas preguntas como parte de su incorporación. Eso funcionaría, ya que en este caso he estado hablando mucho sobre qué esperar antes de que la gente se registre.

Una pregunta: si sigo ese camino, ¿puedo enviarlos directamente a la página de miembros de Procourse (donde se suscriben y pagan) y luego crear su cuenta de Discourse? ¿O sigue siendo necesario crear una cuenta primero y luego elegir un plan de pago?

Yo lo combinaría con el plugin Custom Wizard. Con ese plugin puedes capturar cualquier información que desees durante el registro y, una vez enviado el formulario, redirigir al usuario a la página de pago de la membresía. De esta forma, tienes todo en un solo flujo.

Personalmente, prefiero este enfoque en lugar de la ruta de Paid Memberships Pro. PMPro puede funcionar muy bien hasta que intentas sincronizar las membresías de los grupos en ambas direcciones. Es posible hacerlo, pero en mi experiencia, no es tan fácil de configurar y no siempre es confiable.

Cuando ejecuté PMP en mi sitio con sincronización de grupos, nunca tuve problemas, pero es cierto que necesitas cierto conocimiento técnico para que funcione. Dejando de lado las preferencias personales, ambas son definitivamente opciones con ventajas y desventajas únicas. @madbaker, ¡esperamos haberte ayudado a acercarte a posibles decisiones!

@joebuhlig @justin Muchas gracias por esto. Ahora veo un camino más claro.

1 me gusta

@joebuhlig @justin. Hola; pensé que daría una vuelta a este tema…

Hice que el plugin Custom Wizard funcionara correctamente al registrarse. Llama a una página estática donde el nuevo usuario puede seleccionar una opción de membresía recurrente (mensual o anual).

Tengo dos niveles en el plugin de membresía y el usuario llega a la página de membresía correcta a través de la página estática. Genial.

El único problema es que la parte de integración con Stripe en la página simplemente se queda girando.

  • He repasado la documentación de integración de Stripe en el sitio de la comunidad ProCourse. Parece que estoy configurado correctamente, pero obviamente no lo estoy. :slight_smile:

  • Verifiqué dos veces las monedas en el plugin y en Stripe (todas en USD), las claves de API y el secreto del webhook. Todo está en ‘test’.

  • Creé un nivel de pago único por si el modelo de suscripción era el culpable (sin cambios).

  • Revisé los registros en Stripe y no hay ningún registro de un intento de llamada (nada en el registro).

¿Hay alguna manera de verificar un registro en Discourse para ver qué llamada se está intentando?

Estoy dispuesto a publicar en el Marketplace para pedir ayuda, pero si puedo averiguar qué está intentando hacer el plugin, al menos esto debería ir mejor. He reducido mi flujo de registro a lo básico sin solución, aunque según la documentación esto debería ser sencillo ahora. (¡Famosas últimas palabras!)

He investigado un poco más y probé algunas cosas adicionales por desesperación:

  • Reconstruí la aplicación y ejecuté discourse-doctor para asegurarme de que no hubiera errores.
  • Eliminé y reconstruí mis niveles de membresía en el plugin procourse-membership usando claves de prueba de Stripe.

Puedo ver los nuevos planes de producto (versión de prueba) en Stripe cuando activo los niveles. ¡Hurra!
Pero cuando voy a la página de pago de los niveles, la página se carga pero los campos de tarjeta de crédito no se cargan. El spinner gira eternamente.

Revisar los registros de errores de Discourse y los registros de errores de Stripe no arrojó nada. No hay entradas en ninguno de los registros.

Así que pensé: “quizás sea un problema con el ‘modo de prueba’”. Realicé estos cambios:

  • Reemplacé las claves y el webhook de prueba por claves y webhook de producción.
  • Volví a crear los niveles de membresía dentro del plugin y los activé.
  • Los nuevos planes/productos aparecen en Stripe en la sección de producción. ¡Yupi!

Pero ocurre el mismo problema cuando voy a la página de pago de Discourse. La página se carga pero los campos de tarjeta de crédito no se cargan. El spinner gira infinitamente.

No hay actividad en los registros de Stripe ni en los registros de errores de Discourse.

=== ¡Eureka! ===

Uf. Lo he resuelto.

Hay un script necesario para que el pago funcione: js.stripe.com/v3. Se estaba bloqueando como un error de seguridad. Añadí el script a la lista blanca y ahora funciona de forma rápida y genial.

Un detalle bastante importante, eso sí. Estaba revisando los registros de la aplicación, pero una rápida pulsación de F12 para revisar la consola habría sido de gran ayuda hace 4 días. :face_with_head_bandage:

7 Me gusta

¿Qué sucede cuando, por ejemplo, una membresía de 30 días expira? ¿Qué ve el suscriptor? ¿Cómo se vuelve a suscribir?

Además, ¿cómo cancelan una suscripción?

5 Me gusta

Hola @john12, ¿encontraste la solución? Yo también tuve el mismo problema.

Yo también me lo pregunto.

Además, ¿qué sucede cuando un usuario se une (y paga) y luego cancela? ¿Su suscripción finaliza inmediatamente o después del mes por el que ha pagado?

3 Me gusta

Al final cambié a Memberful. Mucho mejor.