Items filtered by date: December 2014

In WHMCS the account references services on 3rd party systems aswell as it s own.

  1. The Internal WHMCS records and accounts used for operations and billing.
    • Service/Products Account
    • Domain Account
  2. The WHM/cPanel hosting account - This is the actuall server account
  3. Domain Registrars - This is where the domains actually live

To completely delete an account you need to remove all 3 of the items above and in a particular order. You might not want to delete all of the items. I prefer to delete all services and domain references (if needed) but keep the billing account just incase the customer comes back. Depending how you run your WHMCS you might decided you want to leave everythign in place. these instructiond do not tell you how to manage you site but just tell you how to delete stuff.

Service / Hosting Accounts

Do this for each hosting service you want to delete.

Delete the hosting/cPanel account(s)

  • Open the client's profile
  • Go to the Products/Services Tab
  • Select the domain you want to delete
    double check everything is selected correctly and you have the right domain
  • Under 'Module Commands press the terminate button and a confirmation prompt will appear
  • Click ok/terminate, this then sends delete command to WHM
  • The cPanel account is now deleted on the server but the WHMCS record is still present.

Delete the WHMCS record

Althought the cPanel account is now deleted WHMCS still has a record for that service. This need to be deleted aswell.

  • Press delete (at the bottom of the page in red),
  • A prompts appears saying:

    Are you sure you want to delete this service? This will also remove any associated addons but not run the module terminate function.

  • Click ok and the WHMCS record is now deleted

The hosting account/service is now deleted and the record in WHMCS is also deleted.

Notes

Deleting a Domain

  • Open the client's profile
  • Go to the Domains Tab
  • Goto the 'Registrar commands' (the buttons at the bottom)
  • Click 'Request Delete'
  • A confirmation prompt appears
    Are you sure you want to send the domain registrar a deletion request?
  • click yes and the domain will get deleted at the registrar

You might get the following error message

Domain Deletion Request Failed
Since the domain is no longer in the Money Back Guarantee period, it cannot be deleted from here. If however, you want to delete this domain, please contact us and we will delete it for you.

So the delete button does not work with reseller club as expected, it is only for deleteing within the intial promo period to get your money back rather than a permanent deletion. You could follow the instructions from the message and get the Registrar to delete the domain at their end or just delete the record in WHMC and let the domain expiry naturally.

Now Delete the WHMCS Record

  • Press delete (at the bottom of the page in red),
  • A prompts appears saying:

    Are you sure you want to delete this Domain?

  • Click ok and the WHMCS record is now deleted

Deleting the WHMCS Account

Assuming you have deleted all Domains and services as required and you really want to delete teh WHMCS Client Profile/Account

  • Goto the Client's Profile and select the Summary Tab
  • At the bottom right there is an option to:
    • Close Clients Account
    • Delete Clients Account
  • Select One as needed and follow the instructions.

I have never deleted an account or even just closed one so please read up on these options before continuing.

All 3 Deleted !!!

You have now completly removed all traces of the client and their accoutns from WHMCS except for previous transcations, payments and the like.

 

Published in WHMCS
Saturday, 05 March 2016 14:00

Domain Renewal

There might be many question about how WHMCS domain renewal works when you first start off so I have collected my notes here.

Configuring an Automatic Domain Registrar

One of the main functions of WHMCS is the ability to purchase domains, this feature can become difficult to manage if you use a third party Domainname provider and manully configure the dates, names and addresses etc.. associated with a domainname purchase.

This is where having an 'Automatic Domain Registrar', the service when configured will allow seemless purchase and management of domain names and their purchase.

I will be using 'ResellerClub UK' which offers a fully functional API that works with WHMCS. ResellerClub has the best prices and most importantly all domain managemnt features are enabled.

Here is a list of features that made me decided on Reseller Club

  • Fully supported API via WHMCS plugin

  • Cheapest Prices

  • Most TLD are supported

  • ID Protection for free

  • Email Forwarding for free

  • DNS Management for free

add setup instructions here

Domain Renewal Questions

  • set the domain expiry date the same as the due date for the primary domain otherwise the invoiceing gets messy - on the primary domain set the exipry date the same as the Next Due Date

  • make sure for domains, free domains you add 1 year renewal unless you are doing 2 year only packages. (ie .co.uk)

  • also setting the .co.uk to 2 years only, disabling the 1 year, ment that accounts with free tld were getting billed.

  • how does the date move forward. on payment of the invoice does it apply the registration period extension to the domain and the next due date, perhaps

  • searching how to configure autorenewing free domains when they have 10 years on them

  • if auto renew automatically renews for one year, how does whmcs cope with .co.uk

  • on domain pricing for TLd, if you use -1 for transfer and rebewa; it will disable this option! (should transefer boxes be lareger as you go donw th elist)

  • If a domain has more that one yearleft and is being rewed as a free domain will whmcs decline to send the renewal request to the registrar

  • TLDs (and ccTLDs) supporting EPP and ID Protect http://forum.whmcs.com/showthread.php?t=13390

  • better way of setting up a domain name, register and renewl should always be the same and disable all transfers apart from year 1

  • if free domain is already registered for more than one year will whmcs still add a year?

  • a module that might be of some use,

Domain Renewal when no automatic Registrar

An issue cropped up while i was setting up my client accounts in WHMCS that your system might sort.

when you setup a domain name you have 3 date boxes:

  • Registered Date: when the domain is registered
  • Expiry Date: when the domain name expires
  • Next Due Date: when the WHMCS should bill the client

My problem arises if a client transfers in with a domain with lets say 2 years on it. currently i do not use an automatic registrar, when the client is invoice the date the domain is to be renewed is a year on top of what is there so i have changed the expiry date to match the 'Next Due Date', this makes the invoice reflect the next year along with hosting renewal. this scenario is only valid for the free domain on a hosting package.

Dealing with domain provision where auto registrar setup and mail in payments

  • intially i set the order from pending to active in the order page, this did not seem to work
  • i set it back to pending
  • i then click on view order and it had a button on this page to set back to pending which i did - the order was tagged as incomplete
  • (manage orders page popped up) the registrar options then poped up and allowed me to select an auitomatic registrar, for some reason reseller club was not selected
  • i have also addded both domains IP address, my main server one and my static ip as it is the main server that seems to do the curl things, see this thread

http://forum.whmcs.com/showthread.php?t=38581&page=2#18

good website

http://www.resellerclub-mods.com/whmcs/knowledgebase/49/I-whitelist-my-Server-IP-at-ResellerClub-but-the-FREE-tools-still-does-not-work.html

- i will reporvision the domain which seems to need all details filled in for it to work

Manual Renewal Required message

on the page http://docs.whmcs.com/Domains_Tab#Domain_Sync_Enabled the section: "Auto Renew Requires Product"

With this option ticked, domain names with a Recurring Amount value of 0.00 will only be renewed if there is a corresponding service under the same client with a matching domain name. If there is none, the domain renewal will not be processed and a "Free Domain Renewal Manual Action Required" error is emailed to admins along with an entry in the Activity Log. "

When a domain do not have a product associated with it giving a free domain, the administrator will receive the following message:

Lancastrian IT

The domain example.co.uk (ID: 11) was just invoiced for renewal and automatically marked paid due to it being free, but because no active Product/Service matching the domain was found in order to qualify for the free domain offer, the renewal has not been automatically submitted to the registrar. You must login to review & process this renewal manually should it be desired.

https://www.example.com/whmcs/admin/

There is not activation link in this email but would be a great feature to have an activation link.


Unsorted Notes

The following note might be already in place in the instructions above, but just incase until I get more time I will inclued them here

Free Domain Questions

  • next dues dates should be the same for free

  • keeps invoicing nice, but as soon as you run a sync script will not work currently i beleive on the primary domain that you should have the domain expiry date the same as the 'Next Due Date', maybe 00/00/0000 is the same (not 100% sure about that) as a non registrar is dumb and cannot work this out.

  • Offering Free Domain Registration with Selected Packages http://docs.whmcs.com/Domains_Configuration

  • when you buy hosting with a free domain, it tells you which domains are free

  • when it creates a domain it show 0.00 in first payment and recurring payment, this is how it is free

  • free domain, applies to select all domains, select requires and select all domains types. payment method dont selecet any (transfers are probably one time)

  • the fact that the free domain and the domain is linked just by the domain name is a bit ambigous ast eh client might elect to have another domain name as his free one

  • what happens if a client wants to change the domain name that is hosted, would changing this change which domain is free

  • to kill birds with one stone add a free domain name tick next to the cost in a domain. this ouwld allow an ivoice to show the domain name cost but then show it free ie..

1 mydomain.co.uk (value £8.00) £FREE

this would also allow german users to set more than one free domain name for their clients.

- on the hosting page make it clear what domain is their attached free one and/or the free domain to show which hosting package iot belongs to

WHMCS Domain renewal logic notes

  • whmcs is made of 2 parts. one with logic and the second is where all the account info and pricing for them is kept and is static so once set it is et unitl the bulk changer is used
  • £0.00 = FREE, this can cause confusioin as the two for me are different
  • a free domain is maintain as free as long as a qualifying product is on file. the domain and product are matched by the domain name

What happens when the qualifying product is removed? - The domain price reverted to a normal price

According to matt there is logic to prevent free domains remaining free when their qualifying product is removed.

A free domain renew logic issue

A free domain will not renew unless there is an active product for the same domain so there is protection against a free domain renewing when it shouldn't.

what about domains set to free/0.00 where they do not have an associated product. ie my domains are set to free so will these not renew


#439408 - Renewing a free domain after they transfer in with 3+ years

This is a thread from WHMCS Support and explains a alot about how the domain renewal logic works. I will also put my conclusions at the bottom.

Me

  • I will be using resellerclub as my automatic registrar.
  • since writing this, .co.uk now support 1 years renewals

I have transfered in several clients recently and their domains have 3+ years on them which means i do not need to add any more years on to them for a while. But the problem is they are on a hosting package with a free domain. Their 'Next Due Dates' match in the hosting and domain name to allow for correct renewal. now from reading up, a free domain is renewed every year which gives rise to 2 problems.

  1. if the domain has, lets say 3 years left on it before it expires, will whmcs recognise this and not add any more years on until it needs to, ie less than one year left when renewing
  2. how does it handle .co.uk domains when they must be renewed for a minumum of 2 years at a time.

WHMCS Staff

  1. You would need to set the next due date accordingly for the future date it is currently due for. Otherwise, a renewal would be generated sooner than you wish.
  2. You need to ensure the period on the .co.uk domains is 2 years and the next due date is correct for the current expiry.

Me

This does not answer my question at all. also if I have 900 domains to monitor how can I check them all manually and I will also be using a expiry date sync cron job which will always set the correct expiry date for domain.

Just in case I did not put it in my previous email, these renewals I talk about are for hosting with free domains. According to your literature your system auto renews them once a year with hosting when they are set to have a free domain and the 2 'Next Due Dates match'.

I refer you back to my original question. I need to know the logic of renewal for Free domains in reguards to the 2 scenarios below.

I can try and write a better client scenario if this will help.

I am not a noobie i have wrote a 21 page installation guide. The answer i seek is technical not end user level.

WHMCS Staff

  1. The domain would be renewed with the registrar and the due date in WHMCS increment forward when the renewal invoice was paid by the client. If you just want the due date to increment forward and not be renewed you should set the registrar setting for that individual domain to "None", then you can set it back at a later date.
  2. As long as you've only configured a 2 year renewal price as Andrew advised then .uk domains will only be renewed for 2 years at a time.

Me

Your answer did not help

WHMCS Staff

Sorry for the frustration. However there shouldn't actually be any problem here. Free domains don't renew every year regardless of the settings on them. They only renew when the domain is set to be due. So if the next due and expiry dates are both 3 years out in the future, then that domain will not renew until 3 years time. So basically I think the answer to your original first question is infact Yes, WHMCS will recognise it's not due and not renew it, since the due date won't be the same time as the hosting package.

And for .uk domains, you would ever setup a 1 year period pricing for them, so they always default to a 2 year minimum. Again with the above clarification that should clear this up for you as free domains do not renew every year. Just when set as due, which for a .uk would be ever 2 years only.

Me

Hi, i can see you read the ticket to tried to answer but again no logic was descibed. this question is fundamental to how free domains work and depending on the outcome maybe a bug or feature request is needed. so i will try once more.

This question is around the question 'what happens with autorenewals of free domains which already have a number of years on them?'

You do not want to keep adding years on to a domain that already has loads. It is a waste of money and might not be possibly. so i have writtena worked example below hopefully that might help explain myself.

Lets assume:

  • All my hosting packages are for one year
  • All my hosting packages will get one free domain
  • I have configured resellerclub as an automatic registrar

i use the cron job to sync domain expiry dates

Scenario:
I manually transfered in one customer today (10-01-12) with a .com address, he has 4 years left on his domain. The following are the dates in the clients profile

  • Hosting Next Due Date: 09-01-2013
  • Domain Next Due Date: 09-01-2013
  • Domain Expiry Date: 05-05-2016

When 09-01-2013 (or slightly earlier) comes and the customer renews for one year 1 of 3 things will happen:

  • the domain and hosting is extended in whmcs for one year, the domain at resellerclub is extended a further year till 04-05-2017 and the expiry date in whmcs is updated
    The following invoice(s) are sent
    invoice for hosting 09-01-2013 - 10-01-2014
    invoice for 1 year domain 05-05-2016 to 04-05-2017 (£0.00? full value then discounted?)
  • hosting only is extended in whmcs for one year, the domain at resellerclub remains unchanged at 05-05-2016
    invoice for hosting 09-01-2013 - 10-01-2014
    invoice for 1 year domain 09-01-2013 - 10-01-2014 (£0.00? full value then discounted?)
  • hosting only is extended in whmcs for one year, the domain at resellerclub remains unchanged at 05-05-2016
    invoice for hosting 09-01-2013 - 10-01-2014
    no invoice for domain is sent

We will deal the .co.uk after this. i need the logic so i can figure out how whmcs works with free domains

Me

it is recommended to have the 'Next Due Date' of both the domain and the hosting to match otherwise you send out invoice for them both the hosting and domain and the customer does not get a free domain.

please advise ( i refer you to my worked example)

WHMCS Staff

The domain would be renewed on 09-01-2013 for 1 year and therefore extended until 05-05-2017, the Next Due Date would then become 09-01-2014.

Normally the Next Due Date of the domain and hosting should be the same yes, this ensures they are invoiced for renewal on the same invoice and therefore the domain is only renewed when this invoice is paid. However you seem to be implying that because the domain has 4 years to expiry you don't want to actually renew the domain until the year of expiry (ie. 05-05-2016) Is that correct?

If that is the case you'd set the domain's Next Due Date to 09-01-2016 and the domain will not be renewed in 2012, 2013, 2014 or 2015, but the renewal invoice in 2016 will include both hosting and domain for 1 year. The expiry date would become 05-05-2017 and the next due date 09-01-2017.

Me

After reading you reply i have concluded:

  • that free domains DO NOT WORK. They only work in one situation which all be it, is the most common it is by no means the only one.
  • unless the domain is bought new when a client buys hosting with me, the free domain is not guranteed to work and the client is most likely going to receive an invoice for the domain
  • there is no way of tagging a domain name to a hosting package to make sure it that one domain is free with this hosting package.
  • using the 'Next Due Date' by you own answer only works by virtue and if i set another date on this account it will get billed on that date separately. matching and altering dates on automatic transfers etc.. is a stupid thing to try and do manually.
  • the work load to manage a large hosting site with the setup is massive

Solution:

  • make an option in a domain's setting to tag it as a free domain belonging to a certain hosting package
  • make an option in a domain's setting to tag it as a domain belonging to a certain hosting package
  • this options is really important especially if the customer has many domains, should i go and hunt the domain name that he is getting free and manually check the dates.
  • allow a domain or free domain to be invoiced for one year to match the hosting to keep it neat (cutomers like that) for that year period
  • make an option in settings somewhere to only extend/renew a domain if it is required. this would check the Expiry date automatically) ie if more than one year do not renew. (i am surprised why this is not so and why i wanted to get to the bottom of these settings) or whatever number of years is appropriate etc.. this is required for full automation especially on transfers.
  • allow someway of handling .co.uk properely, if these are renewed every year for 2 years this will get stupid, i tried setting up 2 years only with a free domain package and it just billed for 2 years
  • proper instructions on how to setup domains and free domains including all the issues with dates i have outlined here when you have imported using the whm import utility.(all instructions you have written are clear and concise but have totally ignored this particular section)

I hope these ideas help. I am not alone in this plight but i have been a bit more vocal and concise. please can you clarify these points and let me know if they are something you will take forward as i really like whmcs but i found this particular part of whmcs very lacking but should be easily fixed.

WHMCS Staff

Thanks for taking the time to send in your feedback. I think there are still a few misunderstandings here of how it actually works but we do appreciate your comments. In response to some of the points you raised:

  1. The free domain always needs to match the products domain, therefore it's quite easy to pair the 2 items up
  2. A .co.uk free domain is handled properly. It does not renew every year. No 2 year minimum TLDs renew every year, not just .uk
  3. A free domain will not renew unless there is an active product for the same domain so there is potection against a free domain renewing when it shouldn't.

All you need to do for the existing domains is add the domain records, set the price to free, next due date to match the product, and expiry date to the real expiry date of the domain.


#TYY-003776 - what happens with renewals of a serivce with a free domain with premature domain renewal

Me

firstly let me confirm my situation

  • Domain Sync and Sync Next Due Date are enabled
  • i have CRON enabled
  • i am computer literate etc....

can you answer/confirm the 2 following questions:

  1. if you create a new service with a new domain which is free, payment period 1 year, the domain will get renewed when the service is paid for in 1 years time?
  2. if you create a new service with a new domain which is free, payment period 1 year, and "Enable - Number of Days to Set Due Date in Advance of Expiry: 14days". How does this work because the Free domain would be out of sync with the service. 1 of 2 things i can see would happen here:
    1. whmcs will only send an invoice for the domain, and the domain will get automatically renewed for free seperate to the hosting service
    2. WHMCS is clever and will send the service + domain renewal on the same invoice 14days before expiry

The reason i ask these questions is i dont want a domain name to get renewed automatically if a client does not renew their hosting with a free domain name.

WHMCS Staff

To address your points:

  1. Provided the Next Due Date and Payment Method of the domain and the product were exactly the same; yes.
  2. In this situation, scenario i will occur.
    You can enable the Setup > General Settings > Domains tab > Auto Renew Requires Product option, which means that the domain will only be renewed if the service is still active at the time the domain comes up for renewal.

Me

as a followup to the option "Only auto renew free domains that have a corresponding active product/service for the same domain"

how would this apply to my situation (option 2) if i set the domain to be renewed 14days before. From what i can see the domain will still get renewed automatically because there is an active service and then, if in 14days my client decides not to renew his hosting i will of renewed his domain when not required costing me money.

Have i found a bug. I would of expected the following when using this option:

when using "Enable - Number of Days to Set Due Date in Advance of Expiry: 14days"., the php should check to see if the domain is a free domain, which if dependent on a service to be free, has the same start/renew date, the service should also be billed 14days earlier so as to keep the invoicing and financials connected. Then if the hosting/service is not paid for the domain is not renewed.

This really is targeted at new domains that are taken out with hosting packages.

WHMCS Staff

In that situation the domain would still be renewed for free separate from the product of the same name. It is for this reason we recommend that when offering domains which renew for free to disable the Sync Due Date option: http://docs.whmcs.com/Common_Promotions#Notes

Me

thats my point. This is a bug.

This needs fixing how i described below. This domain sync features is very useful for me and my clients.

can you clarify that you will add this to your bug tracker.

WHMCS Staff

We welcome feature requests online at http://requests.whmcs.com . Feel free to search for and vote up existing requests or submit your own ideas.

In the meantime you may find a member of our community has developed a solution for this, so it would be worth searching our App Store: http://www.whmcs.com/appstore/

Me

I would just like to clarify the behavior of a setting - Auto Renew Requires Product.
(http://docs.whmcs.com/Domains_Tab#Auto_Renew_Requires_Product)

  1. this option purely gets WHMCS to do a Boolean check to see if there is an active product/service for this domain when processing a domain for a renewal. Dates are ignored.
  2. if there is no active product/service for this domain an email is sent out to the WHMCS admin with a "Free Domain Renewal Manual Action Required" error message so that the admin can manually go to WHMCS and renew the domain (an accept/approve link in the email would be easier and a nice feature). Dates are ignored.
    1. As a small followup, if the domain and service renewal dates match, an auto renewal would not occur until the customer had paid and "Auto Renew on Payment" was turned on.

WHMCS Staff

Yes your assertions in points 1 & 2 are true.

  1. Yes that is also a correct assertion.

#MTS-670914 - free domains and preventing auto renewal

Me

I currently have annual hosting services with free domains packages on my whmcs.

some of these accounts have domains that expire years in the future so when the hosting service is renewed they do no need their free domains renewed at a cost to me that i do not need to pay for.

is it possible to set a hosting package with a free domain that will only renew that domain at hosting renewal if that the doamin expiry is less than 1 year (or xxx years).

WHMCS Staff

WHMCS will attempt to automatically renew the domain name when the Expiry Date that it has stored comes up.

If this date does not match the date with the registrar then this could cause the domains to be renewed early or late.

If you haven't done so already I would recommend going to Setup > General Settings > Domains and enabling Domain Sync, after doing so you'll want to set up a cron job to run the domainsync.php script. This will allow WHMCS to contact your registrar, find out the expiry dates for your domains, and then update this information in WHMCS.

You can read more about this at http://docs.whmcs.com/Domains_Tab#Domain_Sync_Enabled

Me

i am not sure this answer my question.

i have all the cron stuff setup with reseller club etc..

My question relates to FREE domains.

when a hosting service is renewed it seems to renew the domain as well because it is attached to the hosting service. Can you clarify this is what happens.

WHMCS Staff

> when a hosting service is renewed it seems to renew the domain as well because it is attached to the hosting service.

That's kind of what happens. It's a bit more complicated than that though.

When you use the Free Domain option with a Product/Service it will offer the client a free domain name which will be renewed as long as the associated service is active. This free domain will always have a billing cycle of 1 year regardless of what the customer selects.

Example:
http://screencast.com/t/iaJEmwUNq

So, there are two things to address to clarify how this all works.

> 1. How do the domain and service get invoiced together?
This works because the domain name and the service share a Next Due Date. WHMCS groups invoices together entirely based on the due date.

> 2. How is the domain name free?
If you go to the domain name page you'll see that the domain name has a recurring amount of "0.00". Anything that is "0.00" is automatically marked as paid by WHMCS.

It's not free because it's attached to the service. It's free because it was purchased along with the service. It's still an individual entity that has its own due date and its own recurring value. If, for some reason, the domain has been registered for longer than 1 year or the expiration date has changed with the registrar then WHMCS has no way of knowing that unless you have domain sync enabled.

Me

Can you just clarify the scenario below because i think you have identified the 2 variables in this equation.

domains and hosting are seperate items and it is just by their invoice date that they appear on the same invoice.

So if a customer transfers in with let say 10 years on their domain i obviously dont want to keep renewing that domain and wasting money or a domain might of got extended automatically along the transfer line, ie enom automatically renews a domain for a year if there is not many days left on the domain when transferring.

So (still with free domain)

when the domain is transferred in, the hosting services configured etc.. I can then manually change the due date on the domain next due date for some time in the future and the domain will stay free because it has 0.00 set.

The domain would then not get renewed until the time i have set in the future, thus saving me renewal fees on a domain with extra years.

the domain and hosting services only appear on the same invoice because of the invoicing date but they are both quite seperate.

WHMCS Staff

> The domain would then not get renewed until the time i have set in the future, thus saving me renewal fees on a domain with extra years.

Yeah, that's correct. WHMCS won't attempt to renew the domain until the Next Due Date for that domain name.

So, if you had Domain Sync enabled then WHMCS would automatically check with your registrar to see what the expiration date was; it would then update the Expiration Date and Next Due Date in WHMCS to match that date.

Me

i am a little confused now.

  • why would the CRON job alter the 'invoice due date'. (ps i have date syncing enabled).
  • And if it does alter the due date, what does it alter it to? (i know the CRON syncs the expiry dates of the domain)

if what you said is true above, then all my domains would not get renewed or purchased until their expiry date meaning that i would never have to pay for extra years when i did not need to which is the opposite of what i was told earlier.

WHMCS Staff

> - why would the CRON job alter the 'invoice due date'. (ps i have date syncing enabled).

The domainsync.php file does not alter the "Invoice Due Date". If you have the "Sync Next Due Date" option enabled at Setup > General Settings > Domain then it will alter the domain's Next Due Date in addition to the Expiration Date.

> if what you said is true above, then all my domains would not get renewed or purchased until their expiry date meaning that i would never have to pay for extra years when i did not need to which is the opposite of what i was told earlier.

WHMCS will only attempt to generate a renewal invoice around the time of the Next Due Date for the domain name. If you have Domain Sync enabled, with Sync Next Due Date also enabled then WHMCS will automatically update the Expiration Date and Next Due Date of the domain name for you.

If you do not have this for you then you will need to update these manually.

Me

I appreciate the help but you have given me 2 different scenarios for the orginal question.

NB this is for a domain transferring in with extra years (lets say 5) to a hosting service with a free domain (this will be the one transfered in)

  1. not matter what the settings are because the domain is set to free and matches the hosting services it will get renewed every year adding additional years on.
  2. the cron job changes the expiration date and next due date for the domain in whmcs to match the real domain expiration date, this breaks the shared invoice with the hosting service, but the domain is not renewed until it is near expiration thus i do not end up paying for the extra years. this is what i want. so to clarify with this option, if a domain is transfered in with extra years those years are used up before the domain is renewed at the register irrespective of whether it is free or not.

WHMCS Staff

Honestly, I think the confusion here lies with the phrase "cron job". A cron job is something you set up on your server to tell it to run a particular file repeatedly.

There are a few different files that you can create a cron job for in WHMCS; the cron.php file, the domainsync.php file, and the pop.php file.

By default you would have only set up a cron job to run the cron.php file; this is because this file is required. The cron.php file DOES NOT automatically sync domains with your registrar; even if you have Domain Sync enabled it will not do it.

In order to have WHMCS do this you need to set up an ADDITIONAL cron job to run the domainsync.php file. This file syncs domains with your registrar.

In short:
If you don't have Domain Sync and Sync Next Due date enabled AND a cron job set up to run the domainsync.php file then WHMCS will not automatically update the Expiration Date and Next Due Date for you. It will simply go by whatever it has set for the Next Due Date for the domain and generate invoices accordingly.

Me

I have already told you i have all the CRON stuff setup(at the beginning, my second post) (cron.php file, domainsync.php = setup). i understand what a cron job does. I write my own php code. i understand these things. There is no confusion at my end. My whmcs is setup correctely.

so can you look at the 2 scenarios (2 posts below) i pointed out below (which you have suggested) and tell me which is true.

1. or 2.

WHMCS Staff

Both of the scenarios that you've provided can be correct.

If you do not have Domain Sync and Sync Next Due Date enabled then Scenario 1 is correct.

If you have Domain Sync and Sync Next Due Date enabled then Scenario 2 is correct.

Me

that is exactly what i needed.

thanks

Published in WHMCS

Domain Transfer using WHMCS

I received a domain transfer request from my client, the EPP code supplied was wrong. Now I have the correct EPP code, how do I reinitiate the domain transfer request?

If anyone can be give me the steps to be done in WHMCS to re-initiate the domain transfer ?

Solution:

First Read this wiki article at whmcs.com for reference http://docs.whmcs.com/Domains_Management#Handling_a_Failed_Domain_Registration

  1. So you have to go to your client profile.
  2. You choose tab domain
  3. You select the right domain if your client have many domains
  4. You correct the wrong EPP code
  5. You save at the bottom of the page your modification
  6. Finally you click on Transfer

Dont see options to modify EPP code and Transfer?

When I go to "Domain" tab, it displays :

Order Type : Transfer
Domain : xxxx.com
Registrar : xxxxx

Status : Pending Transfer

etc...

Near the bottom of the Domain Tab in the client's profile there is a row of buttons. On that row is "transfer".

Registrar Commands

If you click that, it will take you to a second page that has a field for the EPP code. Input the EPP code and then under "Are you sure you want to Transfer this domain?", click yes.

Are you sure you want to Transfer this domain

Published in WHMCS
Saturday, 05 March 2016 12:03

Manually adding Domains to WHMCS

This process can be useful if you:

  • Want to setup a domain record in WHMCS but have already transfered the domain in directly by your Registrar.
  • You have created an account on your WHM server manually and need to add in a matching record for the domain.
  • You have run the WHM import utility but now need to add all of the domain records into WHMCS to match the cPanel accounts added.

Instructions

Manually adding a domain name does not required that you have configured TLD and their registrars. What having these setup before this process means is that all the settings, price and associated registrar will be correctely written in to the domain profile.

  • if this is the first domain and you get the following message displayed, just click on 'Click Here' and go to the next section:

    No Domains
    No domains found for this user. Click Here to place a new order.
  • if this is the second domain that is being added you need to go to the summary of the client you are working on and click on 'Add New Order' in the middle of the page and then proceed to the next section

Next Section:

  1. The clients name will be auto filled in
  2. Goto 'Domain Registration' section
  3. Select 'Registration' (as per WHMCS wiki)
  4. Enter the domain i.e. example.com
  5. Leave registration period alone, should be set to 1yr usually.
  6. Don’t add domain addons as clients don’t need these (optional)
  7. Goto 'Order Settings' section
  8. Untick all the boxes unless the customer needs notifying
  9. Put order status to Active (unless Pending is required)
  10. Submit order
  11. Click on the 'Domain' link. It should be the only one under the item column
  12. Get the whois record for the domain and fill in the 'Registration Date' and 'Expiry Date' for the domain, click save changes. (If you have Due Date and Expiry date CRON setup you don't need to do this althought it looks betters until the database is synced.)
  13. Goto the 'Products/Services' Tab and get the 'Next Due Date' for the relevant account, copy and Paste that into the 'Next Due Date' on the Domain page for the domain that has just been setup. Save changes
    • (Not Sure this is needed)
    • Currently I am using the 'Next Due Date' for the domain expiry as well so the date ranges billed for look correct on a customers invoice
  14. Also make sure the registrar and payment methods are the same to ensure a free domain is applied.
  15. If this is a second domain that you need to add as free, use a coupon code to add 100% off see http://docs.whmcs.com/Promotions, ie. Free Domain

Notes

  • When setting up a domain, the first and recurring pricing amounts should be the same
  • On my developers accounts where the actual hosting is free I can not match up 'Next Dues Date' so I just use the expiry date and put the price down to 0.00 or you could use promo code (not Preferred) which has 100% off /Free

Links

Published in WHMCS
Saturday, 05 March 2016 11:48

My WHMCS Notes

These are a collection of my WHMCS notes that dont really fit anywhere else.

WHMCS emails and their templates

  • only certain email templates are visible on certain pages

  • the templates seem to take variables of the pages they are sent from

Billing / Pricing Logic - explains different prices

  • the billing calculation is a tricky one and the process should be made clearer. after a lot of contemplation i worked out that whmcs basically has 2 tables where it stores prices. the first is the price of the products etc.. and the second is where a clients price for the product is stored. whmcs at time of purchase copies this price in to the clients table, this table is passive. when billing occurs whmcs reads this information and makes the invoices
  • an active pricing logic scheme that is set by pricing rules is then:

  • these prices when used are applied to a passive database that is not dynamically updated by the pricing logic but rather just read by the invoicing system and can be manually changed after the fact

Important things to consider about whmcs

I hope these are of use and you really should look at them

  • The domain expiry script might no be working and the cron job needs updating see the following webpage below
    http://docs.whmcs.com/Domains_Tabin particular:  php -q /path/to/home/public_html/whmcspath/crons/domainsync.php
  • You can now set the renewal date X days before the domain is due for renewal in admin/setup/general settings/domain tab
    Sync Next Due Date        Enable - Number of Days to Set Due Date in Advance of Expiry:
  • In admin/setup/automation settings  you should consider you automatic deletion policy
  • Also moving your CRON jobs out of the public html directory

Crons

These are working crons for WHMCS. the one with >/dev/null 2>&1 doesnt not output any error or content whcih is used to supress errors.

*/10     *     *     *     *
php56 -c /usr/local/lib/php56.ini -q /home/xxxxxx/public_html/hosting/crons/cron.php >/dev/null 2>&1

5     0     *     *     1
php56 -c /usr/local/lib/php56.ini -q /home/xxxxxx/public_html/hosting/crons/domainsync.php

Other Notes:

  • Domain registration/renewal and hosting provision is automatic for existing customers. Although that does depend upon you selecting one of the following auto-setup settings (Setup > Products/Services > Edit > Module Settings tab):
    • Automatically setup the product as soon as an order is placed
    • Automatically setup the product as soon as the first payment is received
  • in general settings, invoices, Cancellation Request Handling, Tick to automatically cancel outstanding unpaid invoices when a cancellation request is submitted is set to on, should i have this on
  • Only Auto Provision for Existing - is on the general settings ordering tab.
  • 'automatic registration on payment' is enabled when you select an autmatic registrar in domain pricing , there is no checkbox And if you want automatic registration to occur on payment, choose the registrar which should be used in the dropdown (more about this furthur down)
  • in resellerclub set send customer emails to none. they dont need it, less hassle
  • eatmemo wrote http://www.webhostingbusinessbook.com/ which is free from hostgator (check in my ebooks)

  • eatmemos resources are here http://www.webhostingbusinessbook.com/resources/
  • when creating addons custom name is only required if you want a different name
  • server expenses costs are set in the server configuration (used in reports to calculate profit if entered / unsure what calculations this is used for/check this)
  • costs/expenses/bills are added in manually via the transactions menu - http://docs.whmcs.com/Transactions , billing /transaction list
  • Use configurable options when you want it to be part of the main service (i.e. SSL and dedicated IP can be selected as e-commerce when buying the hosting package) - this option adds it to client groups (this is definitely not for dedicated IP etc..)
  • Use product addons for dedicated IPs, SSL etc.. for after account setups or separate billing cycles:
    http://docs.whmcs.com/Products_Management#Addons then when the popup box appears, do not confused. select the product the addons is to be applied to. there should usually only be one product. if you select a pre defined option these will overwrite the blank boxes
  • bundles are a good way of setting up e-commerce i.e. hosting + IP and SSL addons
  • clicking on a server group name in 'Servers' sets it as default
  • how does it know what server a packages is on - client profile page look at help as server is changeable– it doesnt per say, You create packages in WHM, and then set the products in WHMCS to use the appropriate WHM package manually. If you change what type of WHMCS product a WHMCS account is on, it will change the WHM package appropriately
  • view order does not exist after import, is this because i imported without setting up pricing properely first - ?
  • orders might be created after first cron job – orders are created when the cron job runs
  • due invoices might be created after first cron job – orders are created when the cron job runs
  • check that cpanel backup script / works (done yes it does)
  • create a support account with only 1 email sent but with a real email

    create a support@example.com
    redirect email to 111188@example.com
    pipe 111188@example.com to the pipe php
    use support@lancastrian-it as normal

    you can create an email pipe with no pop3 account

  • Domain Addons - ID Protection, DNS Management & Email Forwarding, these can be managed in WHMCS when supported by the 'Auto Registration'/Registrar instead of going to the appropriate registrar. so unless you are adding a registrar these are useless.
  • i setup .com, .co.uk, .eu and setup the costs as per 123-reg inc vat, i used 'none for 'Auto Registration' and none of the Addons were activated on them
  • The domain can't be displayed as free until both are added to the shopping cart. A notice is displayed on the domain page listing which TLDs are free. You can add this to the product config. page too if you want or make it more noticeable.
  • Could someone please tell me how to make my clients when purchasing a domain through my whmcs, to have hosting, i dont want them to have the option of having either or ;-) I want them to pick a domain and for them to have to have a package
  • Create a hosting product and require domain registration. Make the domain free when hosting is purchased. This will ensure all users get a domain and hosting.
  • add to instructions use different providers for different tld ie heartinternet for .co.uk, enom for .com etc...
Published in WHMCS

Solution 1

I need to change all clients that are using linkpoint and change them to authorize.net but at the same time I don't want to switch the people paying with paypal to authorize.net.

  • Update tblhosting set paymentmethod = 'authorize' where paymentmethod = 'linkpoint';
  • Update tbldomains set paymentmethod = 'authorize' where paymentmethod = 'linkpoint'

If you also want Unpaid invoices:

  • Update tblhinvoices set paymentmethod = 'authorize' where paymentmethod = 'linkpoint' and `status` = 'Unpaid'

Solution 2

Kadeo's Payment Method Updater Addon/Module – untested but should be ok

  • This addon module allows you to update all the hosting accounts for an client to a new gateway. You also have the option of updating all open invoices as well. Perfect for when they call up and go "I want to pay by xyz now".

  • Version 2 Now includes domains option as well and It now has a Gateway -> Gateway option.

Published in WHMCS
  1. Make a custom template that just sends an email to the administrator email account (optional)
  2. Resend 'Welcome Email' with your administrator email address CC'ed
Published in WHMCS

By default inb WHMCS, changing the pricing of products & services in the product configuration area will not affect existing clients. They remain at the prices they agreed to at the time of signing up.

However, if you want to apply price increases to your existing clients too, then this addon utility, Bulk Pricing Updater, allows you to do that:

  • Goto (Setup/Addon Modules)
  • install the Bulk Pricing Updater addon
  • configure access rights and save

This addon is now available by (Addons/Bulk Pricing Updater)

Published in WHMCS

On most servers, especially shared servers the WHMCS Server Status will most likely not work because certain PHP functions are disabled for security reasons. In order for these values to be obtained, the file status/index.php that you upload to every server has to be able to execute these PHP functions:

  • exec - shows Load
  • shell_exec - shows Uptime

To enable them, you can do one of the following options to enable the functions

  • edit the servers global php.ini
    • Search down for the line that says disabled_functions and then remove exec and shell_exec from the list of functions following that.
    • This does enable these function for the whole server so is not recommended
  • use SetEnv PHPRC /home/example1/public_html/status/php.ini
    • create a custom php.ini by copying the serer php.ini
    • Search down for the line that says disabled_functions and then remove exec and shell_exec from the list of functions following that.
    • This will allow these functions to run only in this directory
  • you could possibly us suPHP command to allow the use of these commands

There is a possiblity a htaccess password protection stop s the script working

Published in WHMCS
Saturday, 05 March 2016 11:36

Welcome Emails not being sent

  • When you setup the packages in WHMCS, did you select the correct welcome email template that is to be used with that package.
  • By default no welcome email template is selected
  • Go to product & services>choose whatever hosting package you have setup>edit product
  • There you will see the "welcome email" drop down menu, just choose whatever email that you want to be sent to you customer when the sign up.
Published in WHMCS
Page 27 of 95