/lotus

Open Source Pricing & Packaging Infrastructure

Primary LanguagePythonMIT LicenseMIT

Lotus Logo Lotus Logo

Lotus: Pricing & Packaging Infrastructure For Any Business Model

Usage-Based, Per-Seat, Bespoke Enterprise Plans And More

PRs Welcome Github Stars Join Lotus on Slack License GitHub commit activity

Lotus - Open-source pricing & billing | Product Hunt

Lotus is a pricing and billing engine that enables SaaS companies to deploy, monitor, and experiment with custom subscriptions and complex models like usage-based pricing.


Lotus provides a flexible and modular control panel on top of your existing quote to cash stack that allows you to integrate data from multiple systems to help you figure out the optimal pricing scheme for your products.



Getting Started

There are a few ways to use Lotus. After you set it up, head over to the Docs to learn how to use Lotus!

Test out Lotus with a demo account here.

👤 Self-Hosted Version

Best if you want to keep your data local or want full control and extensibility.

💻 Local Instance

  1. Install Docker Desktop and start Docker
  2. Clone the repo and navigate to the project
    git clone https://github.com/uselotus/lotus.git && cd lotus
  3. Run the self-hosting script:
     ./scripts/self-host.sh
    If you need to give the script permission to run, run chmod 755 ./scripts/self-host.sh first.
  4. You should now be able to access the homepage at localhost/, and sign in using the ADMIN_USERNAME and ADMIN_PASSWORD you defined, or the default, which is:
    username: change_me
    password: change_me

Optionally:

  • Change the environment variables located in env/.env.prod to suit your needs. For more details, check out this guide in our docs.

Easy deployment options for AWS, GCP, and Azure are on the roadmap. If you have any questions, feel free to reach out to us.

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply request a feature.

Don't forget to give the project a star! Thanks again!

👷 Local Development

To set up Lotus for development locally, please refer to our guide here. Whether you want to contribute something for the whole community to use, or you want to personalize Lotus for your own needs, our developer-friendly codebase makes it easy to get started.

About The Project

Pricing your SaaS product is never easy, and often isn't directly related to the value you provide. Lotus was built to help you solve those problems and maintain the flexibility you need as you grow. Pricing is an underappreciated but hugely important lever for growth, and pushing it to the side can be a huge mistake. As companies evolve their pricing models, maintaining and scaling a pricing and billing stack can take significant engineering hours. With Lotus, you can go through the pricing deployment, monitoring, and experimentation cycle blazingly fast, while integrating with your existing payments, customer management, and data solutions.

Tech Stack:

  • React Typescript
  • Postgres (TimescaleDB)
  • Redpanda
  • Redis
  • Python (Django)
  • Celery (background jobs)
  • Go (Microservices)

Features

  • Usage-Based Pricing and Flexible Prorations - Create custom pricing schemes for your SaaS, PaaS, IaaS, or any other acronym you come up with. A variety of models are supported out of the box, but with our fully extensible framework, creating exactly what you need is easy.

  • Sensible, Intuitive Plan Management - Forget about keeping track of subscriptions, plans, versioning, deployments, and everything that gets in the way of your product. Lotus simplifies plan management for you and your engineering team, so you can focus on what matters.

  • Powerful Tools for Experimentation - Lotus provides a suite of tools to empower you to change and deploy your pricing experiments and evaluate the effects it has on your business. Whether that's a backtest, an A/B test, or a forecast, we've got you covered.

  • Seamless Integrations with your Monetization Stack - Never feel locked into a single system thanks to a variety of integrations to help you get the most out of your existing stack. Additionally, a simple yet expressive API helps you integrate with any system you want.

  • Cloud or Self-Hosted - Apart from a managed cloud offering, Lotus provides a self-hosted version so you can keep your data local and have full control over your pricing.

(back to top)

📊 Repo Activity

Alt

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Get in Touch

Email Us: founders@uselotus.io

Message Us on Slack: Join Lotus on Slack

Or visit www.uselotus.io

(back to top)