RFE: Domain registration

Alan Dobkin brought up the idea of automatic domain registration via OpenSRS and/or GoDaddy in this forum thread:

http://www.virtualmin.com/forums/message-view?message%5fid=7100

Seems like an excellent idea.

OpenSRS has online documentation here:

http://resellers.tucows.com/documentation/

And specifically, the perl API, is here:

http://resellers.tucows.com/documentation/srsClientDoc.pdf

GoDaddy don't seem to be as open with their documentation but I've sent them an email requesting their API doc and whatever else we need to talk to their system.

In both cases, both domain registration and SSL certificate issuance seems to be provided...so we can cover two very nice features with a single API.

Some issues that I'm aware of (copied from my response in the forum):

We don't have full Admin/Billing contact information...so we'll need to add a form for that. It will also need to come into the API, since a billing app, like AgileBill, may be doing the provisioning and we'll need to be able to get all of the right information from the billing app.

Billing...I'm not sure how domains sold in this way are billed (i.e. whether the hosting provider buys the domain from the registrar and the end-user buys it from the hosting provider or the registrar does the billing and kicks back referral payments to the hosting provider?). Will have to look into it, I reckon. This also presents the question of whether Virtualmin reseller accounts should be able to "sell" domains on their own GoDaddy or OpenSRS account and get the commission instead of the top-tier hosting provider. Since billing integration will probably always be a top-tier thing, it's probable that the way the billing for the domains happens (i.e. host bills or registrar bills) will dictate whether we will even be able to give resellers that privilege.

Any extra form elements obviously should be disappeared if the user isn't using domain or SSL features, as they will add some complexity that isn't needed for simple domain creation.

Status: 
Closed (fixed)