Jump to content

Why is the WHMCS developer documentation so... lacking?

Recommended Posts

This has bothered me for a long time. I love it when WHMCS introduces new features, but trying to implement some of it is often a challenge.

Why is there no built in support for multi-language support unless you're trying to build an "addon" module?
Basically any other type of module can output code to the client area, and it makes no sense that you have to write your own code to support multi-language. I mean, the code already exists in WHMCS 😅

The documentation is lacking a lot of information. Take this as an example: https://developers.whmcs.com/provisioning-modules/supported-functions/.  There are some functions (like _AdminArea) that just has no information at all.
How is it used? You can't echo or return anything. Is it just a typo and meant to say _AdminLink? I know how to use that function by looking at other modules, but there's still no documentation about it.

Why is there no documentation for Application Links? It's a really cool feature, but it makes no sense that the feature is basically reserved for cPanel.

Another nice feature that feels like it was only built for cPanel is Server Sync - mostly because of this: https://docs.whmcs.com/Servers#Sync_Report


Auto-imported services will be created under an existing client with a matching email address, or a newly created client where no existing match exists. Since most web server control panels do not track end customer details, we can usually import only an email address and other details must be populated manually. In cases where even an email address is not available, a placeholder email address of {domain}@example.com will be used for the client in WHMCS.

... But some control panels do. I know that cPanel doesn't. Some other control panels (not just limited to web hosting) do keep a record of the user's full name, address, phone number etc.
Importing a client into WHMCS using the Server Sync feature feels so akward. Who wants to send an email to their customer that starts with "Dear Name Placeholder"? That's very unprofessional.
I know that not all control panels track the client's details, but who thought it would be a good idea to not even implement importing the details in case the control panel actually did? It would make life so much easier for WHMCS admins wanting to import clients.

I hope someone can give me an explanation that isn't "Because WHMCS just doesn't care" 😅

Link to comment
Share on other sites

In very general terms, API documentation is something that even much larger companies struggle with, it's one of the most difficult areas to get right.  One example is Google - fantastic, powerful API but some parts of it can be just so very hard to work with and the doco can be absolutely inscrutable - if Google struggle to get this right, where does that leave the rest of us.  It's not just how things work, it's when they're relevant and how they tie in to other parts as well, that makes it hard.

Having said that, I do notice that there's no easy/quick Feedback provision on documentation pages.  Often it's just a missing sentence that would make all the difference (often a sense of context is omitted - eg: "you might use this here, to do this, after this happens" and being able to provide some of this feedback might help make the difference for overworked doco writers; it's very hard to be able to fully imagine what a developer might be thinking as they read your documentation, and a simple/quick feedback mechanism allows us to feed back those small missing things.

A Git PR isn't a feedback mechanism, unfortunate reality is that most of us won't be able to provide feedback if we can't do it within a few minutes or so, at the time we think of it.  I think this might help; just a though to toss in to the large pool of priorities that I'm sure WHMCS is juggling.  Good doco leads to good software leads to more investment in WHMCS, and in many cases WHMCS really does have good doco, just missing a few critical points ....

Edited by brianoz
translate from Aussie into US English :)
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.

Reply to this topic...

×   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.

  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated