Skip to content

enhancement: let’s make billing less boring👍 #34

@aoripus

Description

@aoripus

Is your feature request related to a problem? Please describe.
Yes, the current billing system is quite rigid with fixed monthly plans, which may not be suitable for all users. I believe offering more flexible billing options could improve user engagement and satisfaction.

Describe the solution you'd like
I would like to see the addition of more granular billing options, including:

  1. Automatic account balance renewal: Allow for automatic renewal through account balance with an option to enable/disable auto-renewal for already activated products.
  2. Hourly billing cycle: Enable billing on an hourly basis, offering more flexibility for users who don't need a full month.
  3. Product upgrades: Allow users to upgrade their product configurations (e.g., increasing CPU core count) after activation. However, downgrade should not be allowed, as it may lead to bugs that are hard to fix.
  4. Dynamic pricing for high-performance products: Introduce a "premium" product with configurable pricing tiers based on resource usage. For example:
    • CPU usage could be a billing factor, with tiered pricing based on the percentage of CPU cores used.
    • For instance, 0-500% usage could be charged at $0.01 per minute, while 501-1600% usage could be charged at $0.02 per minute.
    • Before activation, users should have sufficient balance to cover one hour of full capacity usage (at maximum performance).

Describe alternatives you've considered
Currently, the system only supports fixed monthly billing plans. Other than this, I haven’t considered any other alternatives because more flexibility is needed in the billing system.

Additional context
This approach would allow users to scale usage according to their actual needs, while also providing the flexibility to control costs based on their actual resource consumption. It would also provide an opportunity to cater to a wider range of use cases, from occasional to heavy users.

For reference, you can check the tiered and dynamic billing options implemented by [pterosync](https://github.com/wohahobg/pterosync) when integrated with WHMCS. It may provide some useful insights on how to structure such a system.

Also, I want to express my overall support for the project. The current experience has been quite smooth, and I appreciate the team's work. These improvements would just make it even better and more adaptable to a variety of user needs.

If you have any further questions, please feel free to contact me👍

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestwork in progressThis issue or pull request is actively being worked on

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions