Recurring orders "reboot"

Howdy all,

As you know, we’ve had an interesting few months with the billing and recurring orders thing. This means that folks who bought during the first few months have been getting free (free?!? yes, free!) license extensions for as many as three months (depending on when you bought, the earlier you bought after the Drupal 7 upgrade and Virtualmin 5 release, the more free months you’ve gotten). The issues were many, but the symptoms were that recurring orders (any of the monthly subscriptions) would have recurred once, and then after that first recurring order would have never recurred again, even though any license not canceled/refunded kept being renewed without being billed.

This has been awesome fun for customers, I’m sure, but has been a bit painful for us. We have bills and salaries to pay, and I personally have a powerful desire to eat, occasionally. This bug (or series of bugs) has cost us quite a bit of monthly revenue. So, I’ve been working on sorting out the root causes of those billing problems, and we’ve mostly got it sorted out. So, if you have licenses that haven’t been billing, you’ll see one new payment (for each active license) showing up in the next couple days (I’m manually going through all of them to make sure we don’t double charge folks or otherwise mess up your licenses). We’re not going to collect previous months; that seems rude. Our technical problems shouldn’t be your monetary problems. So, you’ll see as many as three extra “completed” orders (if you bought early in January) on your account for each active license, but, you’ll only see one charge on your card for each active license. You may also temporarily see “Payment failed (Hard decline)” status on your orders; that just means I’ve forced them to not bill you for all of the previously unbilled months, and I’ll be manually updating their status to completed and making sure the license is active.

As a customer, you don’t need to do anything. If you have active licenses and want to keep them active, they’ll begin to be billed monthly on a regular schedule going forward, as they were always supposed to be. Any licenses you don’t need can be canceled at any time by filing a ticket in the tracker. Now that the recurring problems have been sorted, I can start working on self-cancellation and self-upgrades, as well as billing info update capabilities. I believe these are the biggest priority for most users. The reseller interface capabilities also need to be ported into the new license manager.

I’ve had to learn a lot more PHP and more about Drupal internals than I ever wanted to learn, during this process. But, it’s finally starting to look more reasonable. And, now that we’re billing properly we might keep having enough money to keep the lights on and Eric and Ilia on the payroll!

To sum up: If you have active recurring licenses, you’ve got one or more new orders coming (the number will be based on how long you’ve had active licenses, and how many active recurring licenses you have), and you’ve got one new payment to your card coming for each active recurring license you have. You don’t need to take any action, unless you see I made a mistake, or a license that was supposed to be canceled has been revived (another bug we were having for a bit was zombie licenses coming back from the dead and billing folks who’d canceled; obviously this is awful behavior, and we’re terribly sorry to the handful of folks who had to ask us twice to cancel their orders).

Thanks for sticking with us through the growing pains of the new site. Some day soon, I’ll be able to spend time working on more fun stuff, like making the forums a bit nicer, and adding features to the bug tracker (I really want to get the Virtualmin Support module working again!).