Requests | Blesta

Requests

Hourly Billing.

Allegian shared this idea 1 year ago
Under Consideration

I'd really like hourly billing for packages. E.g Someone sets 0.07$/hour and every hour it would take that amount from the account. This would be really helpful for VPS (For example) packages and wouldn't be too hard to implement.

Thanks.

Comments (14)

photo
1

It would be great if we could have something like BUT with the following options included...

  • Having the options between invoicing frequency (per day/week/etc) OR a pre deposit requirement (for example you has to sign up with min. deposit of $5 or whatever)
  • Suspension rules such as how "far" the user can go into "debt" for before the service(s) are suspended
  • Then just attach this to allow customers to pay in advance (monthly/yearly/etc)

Provided those are taken cared and probably a different order form to accommodate "loading" of account to boost it should be a neat idea!

photo
2

I think more details would be necessary. Is there a company that does hourly billing that you think would be a good use-case?

This is my understanding of how hourly billing typically works, please comment & clarify.

  1. Prices are listed on the order form as hourly (and sometimes monthly also).
  2. The user must make an initial deposit before they can provision a service.
  3. Billing would be in arrears, meaning that they are invoiced after the service is used.
  4. The number of hours every service was active is logged, later to be used to generate an invoice.
  5. At the end of the month (or beginning of the next month), the account is invoiced for all services based on the hourly rate they were active for during the previous period.

Suspension rules, minimum deposit, and other rules to prevent an account from provisioning too much and getting in debt are all good ideas.

Some have suggested deducting from credit on a daily or even hourly basis. Does anyone do this currently?

photo
1

Hi.

Vultr and Digital Ocean use this. Basically, a user can deposit an amount into their account of how much they want (Often it can be a set amount which I can imagine would be easier for you e.g £5, £10, £25, £50 or £100). Then, depending on the amount you charge hourly, it will be deducted from your balance. You could have something like a grace period to setup so for example if their credit was empty, you could set a custom amount of time before the service(s) are terminated. If you'd like me to show you an example (as I use both, let me know).

Cheers.

photo
1

You are correct for the MOST part except...

"Billing would be in arrears, meaning that they are invoiced after the service is used."

Instead it charged at the end of every hour rented. Rounded up to the nearest cent. Then it continue to bill at the end of every hour until the service is canceled.

In the case of the rounding it works like this...

Say you charge $0.005/hour and you put that service into gears...

00:00-01:00 Credits reduces by $0.01

01:01-04:00 during these hours the service still continues to run unless the customer cancels (which it will not change due to the rounding).

04:01-until stopped the servicing will "rinse and repeat" this process.

Another option that we could have it log and pull such low balances from the account. Four places (so as low as $0.000x) should be enough. Then it simply auto subtract in this example $0.005 every single hour.

photo
1

At DO it works like this:

1. You add credit to your account

2. You spin up servers and it'll bill you the hourly rate until you hit the monthly cap. Once you hit the monthly cap the hourly billing stops for that month. Hourly rate is 28 days (672 hours) according to their FAQ

3. You are actually 'charged' per hour. What you see is a 'Usage' details option which basically builds up a invoice of all the services you've had throughout the month. You can't pay this. It takes from your available credit on the 1st of each month (sure this should prob be made more flexible but it is how they do it).

photo
1

That's not needed, that's over-complicating things for the developers. I think the main idea was just to take hourly the amount from your credit. A cap is only used at DO for large enterprises and isn't needed as people apply and always get approved for larger amounts. It's needless. But, yes, the core concept is still there in this idea.

photo
2

"A cap is only used at DO for large enterprises"

The cap applies to everyone.

photo
1

I know who it applies too, I'm saying the cap is only needed for DO as they are one of the largest hosting providers. If someone wants to release their cap, they just apply and it's done. Adding this is a waste of time to the developers in this module, but everything else would stay the same I think :)

photo
1

"If someone wants to release their cap, they just apply and it's done."

I don't think we're talking about the same thing here. I'm referring to the maximum price one would pay for a single server is active for an entire month without being destroyed.

Why would someone want to release the cap? I've never heard of someone requesting to remove the monthly cap (as in all honesty, it doesn't make sense?)

photo
1

With things like Vultr, they put a cap on how much you can spend monthly. I assumed this was the same with DO. I still think it's a waste of time to implement.

photo
1

Aha yeah we're talking about separate things (and I agree with you, the above would be wasted dev time especially to kick things off).

What I was saying was the hourly / monthly billing. The cap I'm referring to is the maximum price a server would cost in any given month if active for the full month. So say a server costs $0.10 per hour, a month is considered 672 hours and you have a monthly cap at $65. The hourly rate would allow a server to go to $67.20 but with a cap of $65 it would stop billing additional time and just charge $65 (not $67.20).

Does that make sense?

photo
1

Ah, I get it. So the person would select "Hourly Billing" while configuring the package and then enter the monthly price, the system would work out how much it would be hourly ( / 730.1) but wouldn't go over the monthly price as hourly billing often goes over slightly (Decimals would have to be so long which is annoying)? So the system rounds up but never takes more out of the credit monthly?

photo
photo
1

@Paul,

generally this is how billing is done in the cloud, for instance AWS: https://aws.amazon.com/. It's actually a characteristics of cloud computing.

Cloud tenants are billed using pay-as-you-go modelled. For instance you are not billed for the time your VM is turned off in the cloud :)

As mentioned above, this is needed when using Proxmox or similar to offer "cloud" services such VM, VPS, storage etc.

photo
1

Why is this request still Under Consideration?

Google Cloud charges you per second for the most flexibility possible. This feature is very important! It's already difficult enough to compete with AWS and alike.