Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Plans Laravel Package

lacodix/laravel-plans

Laravel package to manage SaaS plans, addons, subscriptions, and optional features. Supports countable/uncountable features with limits, resets, and consumption across plans, plus translations, ordering, and metadata—billing/invoicing not included.

View on GitHub
Deep Wiki
Context7

title: Introduction weight: 1

This package gives you the ability to manage subscriptions for your laravel based SaaS. You can create Plans with Features and subscribe to them. Additionally you get some support functions for a subsequent billing system of invoice creation package.

What it does

  • Manage all Plans and Addons of your SaaS where users can subscribe to.
  • Subscribe to one or more plans with different billing intervals.
  • Manage optional features, if you need it. You can also stick with plans and just check for a subscribed plan.
  • Offer countable and uncountable features. Use uncountable features to just enable/disable a functionality. Use countable features, for things like tokens, credits, and others. Attach different values of the feature to different plans, including "unlimited". Auto reset the values after given intervals.
  • Consume Features as long as some amount is available. Split up usage on different plans, depending on the order of the plans.
  • Translate your plans and features. Identify both by slug in your app, but offer it to your users localized, powered by spatie/laravel-translatable
  • Order your plans, features (for visualisation to your users) and subscriptions (to keep control over usage order)
  • Allow meta data in plans and subscriptions. The usage of meta data is up to you. In some usecase we take meta data to save currency or additional price information. This information can be used by a subsequent billing system.

What it doesn't

  • Billing. We don't create invoices or keep track on bills. Use the invoice service of your choice, doesn't matter which. Stripe, PayPal, your own software and any other. You just get events from this package, when subscriptions are created or renewed, and this can be used to trigger invoices. You are also free to wait for payment before you create the subscription or the other way round.
  • Pricing. Yes there is a price column in the plan model, that can be used for visualisation. You also can use meta data for additional price information like we do it in some examples. But you don't need to use it. You can keep your prices in your billing system or save it separate from the plans. But indeed, if you use the price-column you can also get calculated prices for partial subscription intervals.

We have badges

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours