Skip to content

Membership Management#93

Draft
AugustMiller wants to merge 4 commits into2.xfrom
feature/membership
Draft

Membership Management#93
AugustMiller wants to merge 4 commits into2.xfrom
feature/membership

Conversation

@AugustMiller
Copy link
Contributor

@AugustMiller AugustMiller commented Aug 22, 2025

This is a port/rewrite of my Membership plugin (Plugin Store, GitHub).

Administrators can now select any number of user groups on Price elements.

  • Customers starting a subscription with that price are automatically added to the selected groups;
  • When a subscription ends (due to cancellation, nonpayment, etc.) the user is removed from the selected groups (so long as another of their active subscriptions doesn’t also grant membership to that group);
  • Activity is logged and displayed on the Subscription element edit screen;
  • 🚩 Changing assignments on a price currently does not propagate to existing subscribers.

I've created this PR as a draft for discussion. I suspect it'll only take a day or two to test and get production-ready—all the core functionality and extensibility points have been implemented.

Warning

This will need to bump the plugin’s craftcms/cms requirement to 5.9.0, due to the new user group component selection UI. We may be able to replace this with standard checkboxes, if a release is not iminent.

@AugustMiller
Copy link
Contributor Author

One big remaining question is how we handle changes to existing subscriptions that don’t result in status changes.

I've taken care of Subscriptions with multiple Prices starting and ending… but a user might add or remove Prices from an active Subscription, which would trigger creation and payment of Invoices, but not a change from active to canceled, etc.

I will look into per-item statuses and see if there is a better/broader way to detect these kinds of changes. ✌️

@shifuma
Copy link

shifuma commented Jan 10, 2026

Is there a timeframe for this at all? This would suit perfectly for a project I'm working on, but just wondering if I should build my own way in the meantime.

@lukeholder lukeholder force-pushed the feature/membership branch from 1967f60 to ba9c80a Compare March 4, 2026 10:32
@lukeholder lukeholder changed the base branch from 1.x to 2.x March 4, 2026 10:33
@lukeholder
Copy link
Member

@shifuma I am working on this again at the moment and will likely get into the next major release. Sorry I cant give a timeline. Thanks for your patience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants