Hi<p>I would like to know how you usually implement tiers in your SaaS applications and how do you handle the provisioning of features and permissions for users in your services?<p>Also, how you handle tier/subscription upgrading or downgrading for your users as far as feature management?<p>Thanks in advance
you're looking at Authorization (Not Authentication, which handles how to get the logged in user).<p>In Laravel, it's known as Policy. So, based on the subscribed tier, you define the borders, which area of your saas are limited to "pro", "basic", etc.<p>Since Laravel is an MVC, usually, you'll check this permissions in the controller. Check if user's posts is more than his plan's limit (say, 5). if he already has 5 posts, deny that request and put a nice error with message "You've reached your limit. Please upgrade your plan".<p>or other alternative flash the session, and redirect the users to the billing page, with a message to upgrade his plan.<p>What do you think?
I suggest looking into authorization (not to be confused with authentication. Most auth (authentication) providers also provide a authorization framework you can integrate with.<p>The implementation details will vary wildly depending upon your exact needs.