Troubleshooting payment links for recurring memberships

I’m on version v5.13.24, self-hosted using Docker. Currently I am setting up payment links and am running into a few issues I am not able to resolve, and would appreciate guidance! I have done a bunch of research here on the forum and on the internet and with AI, to no avail. Posting in one place seems to make most sense but if you prefer me to write multiple topics let me know and I can do that too.

My goal is to provide six links from my main website for six different paid membership plans:

  • community supporter (annual)
  • community supporter (monthly)
  • premium solo (annual)
  • premium solo (monthly)
  • premium group (annual)
  • premium group (monthly)

I have created these six products, and created the six payment links containing each product, all in a single group so upgrading/downgrading between them is possible. I also have created the webhook on my Discourse site to automatically add people to special groups in Discourse that unlock access to the benefits for the plan they are paying for. If they are not yet members, they are sent an email with an invitation. Upon accepting the invitation and creating their accounts they are added to the groups. Perfect!

I’ve been doing alot of testing with stripe’s sandbox API and all of the above appears to work. I’d be happy to share how I am doing all this at some point when I have tidied up my processes. Connecting Invoice Ninja to Discourse is fantastic, and is a big upgrade from the Discourse Subscriptions plugin which works ok once set up but is unwieldy and difficult to configure.

However I have come across one major issue and several smaller ones.

The major issues is that I cannot for the life of me figure out how to prevent people from signing up for more than one plan at a time. They should only be allowed to sign up for one plan, and then if they want to upgrade or downgrade do that in the usual way via the invoice ninja client portal. If they try to sign up for a second plan, they should just be taken straight to the interface to upgrade/downgrade.

There is a mention in the docs of “eligiblity checker” but there is no explanation of how to implement that on the invoice ninja side, and I am not finding anything in the payment links interface. Also, it appears to rely on an external webhook but from the docs it is not apparent how to set that up. Also, that feels fragile to me. It would be my preference if “eligiblity” could be handled internally by invoice ninja, using the already existing groups.

The minor issues:

  1. There is a “You might be interested in the following” with links to the other products in the group. Can this be removed/suppressed? Once the person has decided on a plan and is ready to pay for it, they shouldn’t be offered options.

  2. The price is indicated twice which feels repetitive when there is only one product on the payment page. Is there another UI that I can switch to that just includes the price once?

  1. When you put in an email address that does not exist yet in invoice ninja, you are prompted to provide first name, last name, postal code and city. This feels like unnecessary PII that I don’t necessarily want to collect from my clients. I don’t need postal code and city at this point.

  1. Once you click through to pay via stripe credit card, the “Required payment details” page requests the information I’d expect to ask - First name, Last name, Email. And name is prefilled from the previous page whic hhelps. But it also displays a stray “copy billing” button. I can’t figure out how to suppress that.

Hi,

I’m not sure the answer, I suggest asking in a discussion on GitHub.

1 Like

Thanks! I posted my major issue to github.