How to sell domain names via BILLmanager

From ISPWiki
Jump to: navigation, search

General information

You can sell domain names through domain registrars or their partners. Complete the following steps:

  • Configure a domain registrar:
  • Set registration policy for required top-level domain zones (the minimum and maximum domain name length, supported characters, and transfer policy).
  • Create tariff plans for the selling of domain names.

Tariff plan configuration

To create a domain tariff plan, select a registrar and domain zone. We do not recommend changing these parameters after first orders.

You can also create a top-level zone if it is not present in the list. Select the "New zone" check box and required parameters:

  • Name - name of the top-level zone
  • Whois host - server that receives domain whois information
  • Request timeout - reply timeout from the Whois server to check domain availability
  • Whois string - this string must be returned in a whois response when getting information about a non-existing domain
  • Supported characters - characters that can be used in domains
  • Minimum name length - minimum length for a domain name that can be registered in that domain zone
  • Maximum name length - maximum length for a domain name that can be registered in that domain zone

You can edit the above parameters upon tariff creation, e.g. if you want to set different prices for IDN and Latin domains, and domains with different name length.

Domain zone configuration

You can configure a tariff plan or a top-level domain to set the domain registration policy in different domain zones. You should keep in mind that the minimum length of an IDN domain is specified in national characters, and the maximum length should be specified after the name is converted into punycode.

Transfer policy

Domains can be transferred from another registrar:

  • Without transfer - tariff plan doesn't support transfer
  • Transfer without renewing - domain can be transferred to registrar without renewing. Usually this policy is set by registrar, but sometimes you can select it yourself
  • Transfer and renew for one year - domain name will be transferred and renewed for one year. Usually this policy is set by registrar, but sometimes you can select it yourself

Regardless the transfer policy, you can specify a transfer price in the payment period configuration form.

Additional notes

WHOIS data protection can be configured by adding an add-on to the tariff plan. In BILLmanager you can configure how to calculate the sum: until the date when the domain expires, and as specified in the settings.

Ordering a domain via API

A domain name can be ordered via API using the domain.order.api function. The following parameters are used:

  • domain - name of the domain you want to register
  • project - provider id (only in Corporate)
  • pricelist - tariff id. Optional parameter. By the default, the first appropriate tariff plan will be used
  • period - registration period. Optional parameter. By default the minimum period available will be used
  • action - type: register - register a domain name, transfer - transfer a domain name. Optional parameter. register is set by default
  • ns0 - first name server in the format domain, domain/ip, or domain/ip,ip,...,ip
  • ns1 - second name serve in the above format
  • ns2 - third name server in the above format
  • ns3 - forth name server in the above format
  • ns_additional - additional name server space separated in the above format
  • auth_code - transfer id, if needed
  • additional parameters, if needed, in the format name_XXX=value, where ХХХ is a parameter from the list below
  • customer - client id. Optional parameter. It is specified for the exisiting contact, if required by the domain registrar.
  • customer_XXX - additional contact parameters that are required by the domain zone or registrar and were not provided earlier. XXX is the parameter internal name; you can specify it multiple times
  • owner - domain owner contact id. Optional parameter. It is specified for the exisiting contact, if required by the domain registrar.
  • owner_XXX - additional contact parameters that are required by the domain zone or registrar and were not provided earlier. XXX is the parameter internal name; you can specify it multiple times
  • admin - domain administrator contact id. Optional parameter. It is specified for the exisiting contact, if required by the domain registrar.
  • admin_XXX - additional contact parameters that are required by the domain zone or registrar and were not provided earlier. XXX is the parameter internal name; you can specify it multiple times
  • tech - technical contact id. Optional parameter. It is specified for the exisiting contact, if required by the domain registrar.
  • tech_XXX - additional contact parameters that are required by the domain zone or registrar and were not provided earlier. XXX is the parameter internal name; you can specify it multiple times
  • bill - billing contact id. Optional parameter. It is specified for the exisiting contact, if required by the domain registrar.
  • bill_XXX - additional contact parameters that may be required by the domain zone or registrar and were not provided earlier. XXX is the parameter internal name; you can specify it multiple times

A domain contact can be created when ordering a domain. The following values should be passed, you don't need to pass parameter with contact id:

  • contacttype_name - name of the contact of the contacttype type, where contacttype - это customer, admin, owner, tech или bill
  • contacttype_type - contact type: 1 - individual, 2 - company, 3 - sole trader
  • contacttype_XXX - additional contact parameters that may be required by the domain zone or registrar and were not provided earlier. XXX is the parameter internal name; you can specify it multiple times

Standard parameters, which are used instead of ХХХ):

  • company_locale - company name in a client's language (for "Company")
  • company - company name in Latin (for "Company")
  • inn - organization INN (for "Company")
  • kpp - organization KPP (for "Company")
  • ogrn - organization OGRN (for "Company")
  • firstname_locale - first name of contact person in client's language
  • middlename_locale - middle name of contact person in client's language
  • lastname_locale - last name of contact person in client's language
  • firstname - first name of contact person in Latin
  • middlename - middle name of contact person in Latin
  • lastname - last name of contact person in Latin
  • email - email of organization or contact person
  • phone - phone number organization or contact person
  • mobile - mobile phone number of contact person
  • fax - organization fax number
  • passport - passport data of contact person (for individuals and sole traders).
  • passport_org - organization that issued the password.
  • passport_date - date when the passport was issued.
  • birthdate - date of birth (for individuals and sole traders).
  • private - on - hide WHOIS data. off - do not hide WHOIS data
  • location_country - country id from the BILLmanager directory
  • location_state - state where the contact is registered
  • location_postcode - ZIP code
  • location_city - city
  • location_address - address (street, building, apartment, or office)
  • postal_country - country id of the postal address
  • postal_state - state of the postal address
  • postal_postcode - ZIP code
  • postal_city - city
  • postal_address - postal address (street, building, apartment, or office)
  • postal_addressee - addressee


To create an application form , parameters specified above are passed to the service_profile.edit function (you don't need to specify the contacttype prefix).

  • name - contact name
  • profiletype - application type: 1 - individual, 2 - company, 3 - sole trader
  • sok=ok

You may not provide name servers for some domain zones. You can execute one of the following functions to learn whether a name server is required.

You may use any method available for API call. You must have user permissions to make an API call

Example of function calls

A domain registration function call for existing contacts should look like the following:

https://domain:1500/billmgr?authinfo=xxx:xxx&func=domain.order.api&domain=example.com&customer=1&owner=1&admin=1&tech=1&ns0=ns0.example.com/1.1.1.1&ns1=ns1.example.com/2.2.2.2

Registration for a .pro domain name requires you to provide profession

https://domain:1500/billmgr?authinfo=xxx:xxx&func=domain.order.api&domain=example.pro&customer=1&owner=1&admin=1&tech=1&ns0=ns0.example.com/1.1.1.1&ns1=ns1.example.com/2.2.2.2&owner_profession=Web%20designer

Concurrent creation of a domain and domain contact

 https://domain:1500/billmgr?authinfo=xxx:xxx&func=domain.order.api&domain=example.com&action=register&project=1&customer_birthdate=1980-06-19&
 customer_email=example@email.ru&customer_firstname=John&customer_firstname_locale=John&customer_lastname=Doe&customer_lastname_locale=John&customer_location_address=Baker,25-12&
 customer_location_city=London&customer_location_country=182&customer_location_postcode=101001&customer_location_state=London&customer_passport=2500 000000&customer_passport_date=2015-06-01&
 customer_passport_org=Organization that issues the document&customer_phone=+1 123 1234567&customer_postal_address=Baker, 25-12&customer_postal_addressee=Doe J.&customer_postal_city=London&
 customer_postal_country=182&customer_postal_postcode=101001&customer_postal_state=London&customer_private=on&ns0=ns1.example.com&ns1=ns2.example.com&customer_type=1&customer_name=newcontact

Creation of a domain contact before ordering a domain

 https://domain:1500/billmgr?func=service_profile.edit&project=1&birthdate=1980-06-19&email=example@email.ru&firstname=Ivan&firstname_locale=John&lastname=Doe&lastname_locale=Doe&
 location_address=Baker,25-12&location_city=London&location_country=182&location_postcode=101001&location_state=London&passport=2500 000000&passport_date=2015-06-01& passport_org=Organization issued the dociment&
 phone=+7 123 1234567&postal_address=Baker,25-12&postal_addressee=Doe.&postal_city=London&postal_country=182&postal_postcode=101001&postal_state=London&private=on&ns0=ns1.example.com&
 ns1=ns2.example.com&profiletype=1&name=newcontact&sok=ok

Useful functions

  • domain.check - this function checks tariff plans under which a domain name can be registered, and shows order prices. Parameters:
    • project - provider id (for Corporate)
    • domain - domain name.
  • domain.pricelist.param - retrieve the registration parameters associated with a certain tariff plan. Parameters:
    • pricelist - tariff plan id