impress-org / givewp

GiveWP - The #1 Donation Plugin for WordPress. Easily accept donations and fundraise using your WordPress website.
https://givewp.com/
GNU General Public License v3.0
345 stars 191 forks source link

Subscriptions should be a core concept #6166

Closed jonwaldstein closed 2 years ago

jonwaldstein commented 2 years ago

Details

Right now the concept of Subscriptions (including renewals) is only found in GiveWP Recurring. This is problematic because subscriptions is actually a core concept of donations as a whole. Having core models like this living outside our main codebase makes it difficult to manage and harder to integrate with.

Additional Context

This is a big job and will be an iterative process. The goal is to start small and just move files over to core, then eventually we can optimize the functionality for the future.

Acceptance Criteria

lindseymacmillan commented 2 years ago

Has this been run past the WP plugins team? It might be in violation of rule #5 in the plugin directory guidelines:

Plugins may not contain functionality that is restricted or locked, only to be made available by payment or upgrade.

Full context: https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#5-trialware-is-not-permitted

I think there's a strong case to be made that moving Subscriptions logic into core is actually fine bc a certain amount of the code needed to make subscriptions useable still lives in Give Recurring, but I thought I would flag this consideration. It'd suck to go through all the effort of releasing this, then have to walk it back bc it jeopardizes GiveWP's listing in the WP.org directory.

...unless there's a big plan to make Give Recurring a free addon! That'd be exciting. 🙂

p.s. hi jon!!

jonwaldstein commented 2 years ago

@henryholtgeerts Henry!! Thanks for commenting on this, I didn't even know that trialware guideline was a thing. We'll have to discuss internally to make sure our approach abides by the laws of WP lol.

Glad to see you back on here! Will keep ya posted 📝

JasonTheAdams commented 2 years ago

Hey @henryholtgeerts! Thanks for chiming in!

I really appreciate you bringing this up. Just to be clear, as you're pointing out, we're introducing the infrastructure for recurrence and currency within GiveWP. That's to better support things like the Donation Summary and other such things that refer to recurrence. It's not a user-facing feature or something that we're visibly gating. I don't think this is the sort of thing being addressed in these guidelines. Good looking out, though! 😃