Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/uselotus/lotus
Open Source Pricing & Packaging Infrastructure
https://github.com/uselotus/lotus
analytics api billing django monetization price-optimization pricing pricing-engine product-led-pricing python self-hosted typescript usage-based-billing usage-based-pricing
Last synced: about 21 hours ago
JSON representation
Open Source Pricing & Packaging Infrastructure
- Host: GitHub
- URL: https://github.com/uselotus/lotus
- Owner: uselotus
- License: mit
- Created: 2022-07-21T02:06:46.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-04T18:09:43.000Z (9 days ago)
- Last Synced: 2024-12-05T09:40:05.430Z (8 days ago)
- Topics: analytics, api, billing, django, monetization, price-optimization, pricing, pricing-engine, product-led-pricing, python, self-hosted, typescript, usage-based-billing, usage-based-pricing
- Language: Python
- Homepage: https://www.uselotus.io
- Size: 63.4 MB
- Stars: 1,727
- Watchers: 14
- Forks: 126
- Open Issues: 32
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-billing - Lotus - Open-source project to manage pricing & packaging infrastructure. (Pricing / Subscription Plans)
- jimsghstars - uselotus/lotus - Open Source Pricing & Packaging Infrastructure (Python)
README
![Lotus Logo](./design_resources/Logo1.1-total-black.png#gh-dark-mode-only)
![Lotus Logo](./design_resources/Lotus-Horizontal-Logo-RGB-Black-Medium.svg#gh-light-mode-only)# Lotus: Pricing & Packaging Infrastructure For Any Business Model
## Usage-Based, Per-Seat, Bespoke Enterprise Plans And More
Documentation •
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
### :bust_in_silhouette: Self-Hosted Version (currently the only version)
#### :computer: Local Instance
1. Install [Docker Desktop](https://www.docker.com/products/docker-desktop/) and start Docker
2. Clone the repo and navigate to the project
```sh
git clone https://github.com/uselotus/lotus.git && cd lotus
```
3. Run the self-hosting script:
```sh
./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/](http://localhost/), and sign in using the `ADMIN_USERNAME` and `ADMIN_PASSWORD` you defined, or the default, which is:
```py
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](https://docs.uselotus.io/docs/overview/self-hosting).
## 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](https://github.com/uselotus/lotus) and [create a pull request](https://makeapullrequest.com/). You can also simply [request a feature](https://github.com/uselotus/lotus/issues/new?assignees=&labels=&template=feature_request.md&title=).
Don't forget to give the project a star! Thanks again!
### :construction_worker: Local Development
To set up Lotus for development locally, please refer to our guide [here](https://docs.uselotus.io/docs/contributing). 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.
## License
Distributed under the MIT License. See `LICENSE` for more information.