I don't think Enhance is fit to sell cheap hosting, like cPanel, and it shouldn't even try. Enhance should acknowledge its uniqueness and remove the add-on domains and subdomains options, which are a relic of the cPanel type hosting mentality.
In cPanel, a client subscription (a package or a plan, whatever you want to call it) is tied to a cPanel user. This means that everything (domains, subdomains) is added under that same user without any isolation between them.
In Enhance, a subscription to a package is not necessarily tied to a Linux user. If you have a plan that allows 10 websites, each website will run under its own user, isolated from others. It's like having 10 cPanel accounts, each with one domain/website.
To use Enhance, you must rethink what you are selling. You're not selling classic web hosting, you're selling website hosting. You're not selling an "account" where the client can put websites; you're selling websites.
Let's think about add-ons. Why do you want to add another domain to your account?
To park it, redirect it to, or display another language on your existing website. Great, add it as an Alias to your existing website.
To build a different website. Great, then add a new website. Not add a new domain, add a new website. That's what you're trying to build, right? A new website, different from the existing website. So it should be isolated, separated, maybe even on a different server. It has nothing in common with your existing website, except that it's on the same subscription that allows it to be created.
In that regard, the cPanel classic way of doing things is an abomination, not the Enhance way, which is the right way—each website separated.
Now, the subdomains are really an issue. You can apply the same logic from above. Why do you need to add a subdomain?
- To point to something, like a CRM. Great, add a DNS record and point to it.
- Create a website on it. Great, then add a new website. Add new website, not add subdomain. That's what you're trying to build, right? A new website, different from the existing website.
It's all good so far, but here's where things get really confusing. The new website (sub.domain.com) has a Domains tab with DNS records. Where are the subdomains' DNS records handled? Here or on the main domain's website, in the Domains tab?
So, to use Enhance, you need to do a mindset shift. It's not a replacement for cPanel, at least not now. You can use it like cPanel, allow 1 website and 9 add-ons instead of 10 websites, but that will come with some challenges: cannot have separate backups, separate PHP versions, no isolation between websites.
I don't think Enhance should move in that direction, but that's just me.