Jump to content
  • 0

How To Create Packages (No Module) And Put Into Recurring Invoices


jjsararas

Question

Hi folks, very new to this and banging my head against the wall.

 

It started with attempting to create packages. The documentation (which I promise I've scoured) reads "By default Module Options does not appear, but may appear when a module is selected within the Basic section", except the Module option DOES appear, and is required, and so forces me to install a module. I installed the Blesta Universal Module, which led me down another path of having to create stuff FOR the module in order to create it, and by now I'm into package groups, optional add ons, services, and I'm totally lost. I'm trying to back my way out of my mess, but I can't delete the package because apparently a service is using it. And I can't uninstall the module because the package that I can't delete is requring IT. And I just want to start over and do it properly. 

 

What I'm attempting to do is create recurring invoices for monthly service products. (I may automate through a cPanel module at some point, but for now I just need packages, and to drop them into invoices). I'd like to create the products in the system (as opposed to new line items each time for each customer as per the recurring invoice tutorial.) I thought I could just create packages but I am having trouble wrapping my head around all the terms, as evidenced above. Can anyone walk me through the various elements/data types, their use, and how to best accomplish my goal? 

 

I'm really impressed with the community, and the software, I just gotta figure out how to use it!

 

Many thanks

 

Link to comment
Share on other sites

Recommended Posts

  • 0

Ok thanks Tyson, here's what I did:

I created a Product in Module - 'Maintained Hosting Product - Tier 1'

I used that for the Package - 'Maintained Hosting - Tier 1' and changed the period to Day - assuming it would then send every (1) (Day). Just did this so I wouldn't have to wait a month to test it.

I went to the Client, created a Service, choosing that package.

But no invoices were created or sent.

Here's a vid of my settings. http://screencast.com/t/beHFoM7tNmy9 Is it because the renew date is April 12? Do I need to change that to today/tomorrow?

It will renew every day from 12 april .

Link to comment
Share on other sites

  • 0

I got it working. I think the problem is, I didn't uncheck the 'send confirmation email', and I had that email disabled in the email template configuration, and so that throws an error and gums up the invoice process. Devs might want to tidy that up for newbs like me.

 

The error appears to indicate that you used the tag "{package.*}" in your welcome email's HTML section for that package. Tags may not contain asterisks, hence the error. If you were using v3.4.2 of Blesta, you would receive an error when attempting to save the package because of this issue.

 

The asterisk used in the tag is only informative in that it indicates that "any" field could exist, and the package email is not aware of what specific tags are available. I think you're using the Universal Module, so you would need to consult the product you created for that module, and only use the tags that represent the package/service fields you have explicitly defined.

Link to comment
Share on other sites

  • 0

Ok, and since I disabled email triggers in both locations, it just wasn't producing the error. I`ll fix the email tags.

 

The service is producing and sending invoices now, but now I`m getting 4 invoices per day instead of one!: http://screencast.com/t/ob30QJ3u8z

 

Have you got more than one cron job running or another installation on another server with a cron job too?

Link to comment
Share on other sites

  • 0

Based on your video, i see that your service recurs over a 1 day period. Blesta invoices a service X days before it's renew date as defined in [settings] -> [billing/Payment] -> [invoice and Charge Options] for "Invoice Days Before Renewal".

 

If you add a recurring 1-day service whose renew date is tomorrow, i.e. The service start date is March 24 and renews March 25, then with an invoice setting of 5 days before renewal, the system will catch up on invoicing for the next 5 days.

 

e.g.

March 24 - 25 (bill today). The 25th is one day from today, so the setting (5 days before renewal - 1 day from today) = 4 days. This service would normally have been invoiced 4 days ago. Because it wasn't, it is invoiced now.

March 25 - 26 (bill today). The 26th is two days from today, so the setting (5 days before renewal - 2 days from today) = 3 days. This service would normally have been invoiced 3 days ago. Because it wasn't, it is invoiced now.

March 26 - 27 (bill today). The 27th is three days from today, so the setting (5 days before renewal - 3 days from today) = 2 days. This service would normally have been invoiced 2 days ago. Because it wasn't, it is invoiced now.

March 27 - 28 (bill today). The 28th is four days from today, so the setting (5 days before renewal - 4 days from today) = 1 day. This service would normally have been invoiced 1 day ago. Because it wasn't, it is invoiced now.

March 28 - 29 (bill today). The 29th is five days from today, so the setting (5 days before renewal - 5 days from today) = 0 days. This service should be invoiced today, so it is invoiced now.

March 29 - 30 (bill on the 26th). The 30th is six days from today, so the setting (5 days before renewal - 6 days from today) = -1 days. This service should be invoiced in 1 day.

March 30 - 31 (bill on the 27th). The 31st is seven days from today, so the setting (5 days before renewal - 7 days from today) = -2 days. This service should be invoiced in 2 days.

Link to comment
Share on other sites

  • 0

Hey Guys -

Back again to hash another old topic :)

Ok, so I have a client-facing order form where someone can purchase 1 of 3 packages, and each package has a monthly price and is reoccurring for 12 month terms. However, according to what you guys have said, once the client selects one of the packages from the order form, pays for said package, I then have to manually set it up for "reoccurring billing" by creating a new invoice and appending a service to that invoice for that specific client? So the reoccurring is not triggered automatically, it has to be set manually? Or maybe I am just confused like jjsararas... lol.

 

Link to comment
Share on other sites

  • 0

Hey Guys -

Back again to hash another old topic :)

Ok, so I have a client-facing order form where someone can purchase 1 of 3 packages, and each package has a monthly price and is reoccurring for 12 month terms. However, according to what you guys have said, once the client selects one of the packages from the order form, pays for said package, I then have to manually set it up for "reoccurring billing" by creating a new invoice and appending a service to that invoice for that specific client? So the reoccurring is not triggered automatically, it has to be set manually? Or maybe I am just confused like jjsararas... lol.

 

 

 

If you order a service which is "monthly" or "yearly" when the due date is here Blesta "automatically" makes the new invoice to be paid. You don't need to touch anything.

Link to comment
Share on other sites

  • 0

If you order a service which is "monthly" or "yearly" when the due date is here Blesta "automatically" makes the new invoice to be paid. You don't need to touch anything.

 

 

Hey Mike -

Through my testing I had found that the initial invoice is created showing that they signed up and paid for the first month of said service/package and the invoice shows the renewal date 1 year from the date of purchase, however the subsequent (reoccurring) invoices are not being generated automatically even though the package term is set to 12 months @ $99 per month. If I create a separate invoice and set it to reoccurring for the remaining 11 months starting 1 month from the original purchase date then it works.

It would be nice if this was more automated whereas a client purchases a Package/Service through the Order Form in the Client Area, and you could set it to automatically generate the reoccurring monthly invoices based on the date it was first purchased. Unless maybe I am missing something in setting this up?

Let me know, thanks.

 

Link to comment
Share on other sites

  • 0

Hey Mike -

Through my testing I had found that the initial invoice is created showing that they signed up and paid for the first month of said service/package and the invoice shows the renewal date 1 year from the date of purchase, however the subsequent (reoccurring) invoices are not being generated automatically even though the package term is set to 12 months @ $99 per month. If I create a separate invoice and set it to reoccurring for the remaining 11 months starting 1 month from the original purchase date then it works.

It would be nice if this was more automated whereas a client purchases a Package/Service through the Order Form in the Client Area, and you could set it to automatically generate the reoccurring monthly invoices based on the date it was first purchased. Unless maybe I am missing something in setting this up?

Let me know, thanks.

 

 

 

They should be automatic and sent out when you schedule invoices to be invoiced normally 7 days before due. And it runs with the cronjob.

Link to comment
Share on other sites

  • 0

They should be automatic and sent out when you schedule invoices to be invoiced normally 7 days before due. And it runs with the cronjob.

 

Ok, I created a new Package for testing called "Daily Updates" and set the term to 1 Day, however I had to manually add the "Service" for the Test Client I had set up, after I purchased the Package as a Test Client. This is where I get confused because I had hoped that after the Client goes through and selects the "Daily Updates Package" and pays for it through the Order Form on the Client Portal, then it would automatically start invoicing from the initial date of sale without me manually having to add the Service for that client? Maybe I have it set up wrong?

Link to comment
Share on other sites

  • 0

I just went through the process of purchasing a "Package" with a term of 12 months @ $149, but I see on the client dashboard that it isn't automatically added as a Service unless I manually do it (like the one that is there currently)

http://screencast.com/t/a9gtan5Nih

 

But now that you said "Set to Manual Approval", I see that it is in my settings:

http://screencast.com/t/FBMVPP5RjRK

 

So if I uncheck this, I should be good to go then correct?

Thanks for your help, I really appreciate it!
 

Link to comment
Share on other sites

  • 0

Mike -

 

One last question...

On each of my packages I want to Invoice every month (30 Days), but then I want it to only last for 12 months per Package. ($99 per month for 12 months) In the Package Details, if I set the term for 30 + Days, how do I go about setting it to invoice every 30 days for 12 months at which then would then have to renew once the year is up?

Link to comment
Share on other sites

  • 0

Mike -

 

One last question...

On each of my packages I want to Invoice every month (30 Days), but then I want it to only last for 12 months per Package. ($99 per month for 12 months) In the Package Details, if I set the term for 30 + Days, how do I go about setting it to invoice every 30 days for 12 months at which then would then have to renew once the year is up?

 

 

I don't think that's possible by default you could make a custom plugin to check for packages over a year.

Link to comment
Share on other sites

  • 0

I don't think that's possible by default you could make a custom plugin to check for packages over a year.

 

 

Ah crap, really? I am not a very seasoned PHP Developer so developing my own plugin is out of the question. I was hoping you weren't going to say that. Really I would need something to just check if Client A is at the "11th" month and notify somehow that the client is coming up to the end of an Annual Contract. Or, if there was an additional field in the package settings for this situation. Billing Cycle: 30 Days, Term: 12 Months, which would be ideal.

Link to comment
Share on other sites

  • 0

Ah crap, really? I am not a very seasoned PHP Developer so developing my own plugin is out of the question. I was hoping you weren't going to say that. Really I would need something to just check if Client A is at the "11th" month and notify somehow that the client is coming up to the end of an Annual Contract. Or, if there was an additional field in the package settings for this situation. Billing Cycle: 30 Days, Term: 12 Months, which would be ideal.

 

Contract terms are something we definitely would like to add, it's come up a few times.

 

If you want to stop billing on a service after 12 months, you could scheduled a cancellation date. On that date, the service would be cancelled and no longer invoiced. This would, of course have to be set manually after the service has been activated.

 

You say they would have to "renew once the year is up", but how would that work exactly?

Link to comment
Share on other sites

  • 0

Contract terms are something we definitely would like to add, it's come up a few times.

 

If you want to stop billing on a service after 12 months, you could scheduled a cancellation date. On that date, the service would be cancelled and no longer invoiced. This would, of course have to be set manually after the service has been activated.

 

You say they would have to "renew once the year is up", but how would that work exactly?

 

 

I am writing up my ToS now and figuring that all out at the moment. If I can manually set a cancellation date that will suffice for the time being until something is built into core. I will just have to keep an eye on things. Thanks for all the help!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...