Important update 1: Email Support is being transitioned to Webforms. Click here for more information.

A DNS template is a saved set of DNS records that Storefront automatically applies to each domain your customers register through your store. Instead of manually configuring DNS on every new domain, you define the records once and let Storefront handle the rest at registration time.

DNS templates only work on domains using Shopco DNS nameservers (a.ns.shopco.com, b.ns.shopco.com, c.ns.shopco.com). Domains using custom nameservers are not affected.


Templates, manual DNS, and query strings

These three tools serve different points in a domain's DNS lifecycle.

DNS templates define the baseline configuration for new registrations. They apply once, at the moment of registration, and set up the DNS records your customers start with. If a customer later modifies their DNS and wants to start over, they can reset to the template default.

Manual DNS management handles changes after registration — adding, editing, or removing individual records on a domain that's already active. This is the day-to-day tool for DNS maintenance. See Managing DNS Records in Storefront.

Query strings extend templates by letting you pre-select a specific template for a customer session before they even start browsing your store. This is useful when you know which service a customer is signing up for and want the right DNS applied at registration automatically, without any manual steps.


Supported record types

DNS templates support the following record types:

TypeRequired fields
AHostname, IP address, TTL
AAAAHostname, IPv6 address, TTL
CNAMEHostname, target name, TTL
MXHostname, priority, mail server, TTL
SRVHostname, priority, weight, port, server, TTL
TXTHostname, content, TTL

TTL defaults to 15 minutes for all record types unless you specify otherwise.

Use {{domain}} as a placeholder in any record field — Storefront substitutes the registered domain name when the template is applied. This is useful for CNAME records that reference the domain itself.


Create a DNS template

  1. Log in to Storefront Manager.
  2. Click the Account icon, then select Settings.
  3. Select Advanced Settings, then the Domain Defaults tab.
  4. In the DNS Templates section, click Create Template (for your first template) or Add New Template.
  5. Enter a template name. This name is visible to customers if they reset their DNS, so use something descriptive, for example, "Standard Hosting" or "Pro Hosting".
  6. Click + Add Record and fill in the fields for each record type you need.
  7. Click Add Record to Template to save each record.
  8. Review the Automatically apply this template to new domain registrations toggle. Leave it on to activate the template immediately, or turn it off to save it without activating.
  9. Click Save Changes.

Storefront warns you if the template contains duplicate records of the same type and hostname. Resolve any duplicates before saving.


Manage your templates

Each template appears as a row on the Domain Defaults page. From the three-dot menu or the expand arrow, you can edit, activate or deactivate, or delete a template.

Set a default template

If you have multiple templates, designate one as the default. The default template applies when no specific template has been selected for a registration, including when a query-string session has expired.

To set a template as default, open the template and toggle Set as default template before saving.

How templates behave over time

Templates apply to new registrations only. Changing or deleting a template does not update DNS records on domains already registered. The one exception: if a customer resets their DNS to default, Storefront applies the template as it exists at that moment, not as it was when the domain was registered. If no active template exists, the reset-to-default option does not appear in the customer's portal.


Apply templates automatically using query strings

Query strings let you pre-select a specific DNS template for a customer session before they visit your store. When the customer registers a domain, Storefront applies the template associated with the session automatically.

Append a dnstemplateid parameter to any Storefront URL you share with customers:

https://www.yourdomain.com?dnstemplateid=7161d6b2-84cc-44df-93fc-69ef6c75bd9e

Find your template ID

  1. Navigate to Settings → Advanced Settings → Domain Defaults.
  2. Expand the DNS template you want to use.
  3. In the Apply this template using a link section, click View Details.
  4. Copy the Template ID (UUID format) or the full pre-constructed URL.

Session behaviour

The selected template stays active for the customer's session. If the customer logs out and returns without following a new template link, subsequent registrations use your default template. If the customer clicks a different template link, the new template replaces the previous one, the most recently clicked link wins. Sessions expire automatically after 7 days.

Combining query string parameters

ParameterDescription
dnstemplateidUUID of the DNS template to apply at registration
extuseridYour internal user ID, stored on the Storefront customer record for cross-system linking. Must be alphanumeric.

Combined example:

https://www.yourdomain.com?dnstemplateid=7161d6b2-84cc-44df-93fc-69ef6c75bd9e&extuserid=acme-user-1042

The extuserid value appears on the Customer Detail page in Storefront Manager and can be added, changed, or removed manually at any time.


Example: Two service tiers, two templates

Suppose you offer a Standard plan and a Pro plan, each requiring different DNS records. You create two DNS templates, one per plan and generate two query-string links. Customers purchasing a Standard plan are directed to your Storefront with the Standard template link; Pro customers use the Pro template link. Each customer gets the correct DNS configuration automatically at registration.


Embed a template-linked domain search on your website

To let customers search for and register a domain directly from your website with a template pre-selected:

<!-- Replace {template_id} with your Template ID from Storefront Manager -->
<!-- Replace {reseller_hostname} with your Storefront hostname (e.g., domains.yourbusiness.com) -->

<form id="searchForm" data-template-id="{template_id}">
  <label for="query">Find your domain:</label>
  <input type="text" id="query" name="query" placeholder="example.com" required>
  <input type="submit" value="Search">
</form>

<script>
  (function () {
    const BASE = 'https://{reseller_hostname}/site/availability/';

    function normalizeDomain(input) {
      if (!input) return '';
      return input.trim()
        .replace(/^https?:\/\//i, '')
        .replace(/\/.*$/, '');
    }

    document.querySelectorAll('form[data-template-id]').forEach(function (form) {
      form.addEventListener('submit', function (e) {
        e.preventDefault();
        var templateId = form.dataset.templateId;
        var input = form.querySelector('input[name="query"]');
        var domain = normalizeDomain(input ? input.value : '');
        if (!domain) {
          alert('Please enter a domain name.');
          return;
        }
        var url = BASE + encodeURIComponent(domain) + '?dnstemplateid=' + encodeURIComponent(templateId);
        window.open(url, '_blank');
      });
    });
  })();
</script>

What the customer sees

When a domain is registered with a template active, the DNS records from that template are already in place when the customer first logs in, no setup required on their end.

From their domain details page, the customer can see all their DNS records, add new ones, edit existing records, or delete records. If a template is active on your store, they also see a Reset to Default option, which restores the DNS to the current template configuration.

The template name you set is shown to customers in the reset flow so they know what they're reverting to.


Troubleshooting

Template is not being applied to new registrations. 

Confirm the domain is using Shopco DNS nameservers — templates do not apply to custom-nameserver domains. Check that the template's active toggle is on. If using a query string link, verify the template ID in the URL matches the ID in Storefront Manager.

Customer's DNS was not restored after reset. 

The reset applies the template as it exists at the moment of reset, not at registration. If the template has been updated since the domain was registered, the customer sees the current version. If no active template exists, the reset-to-default option does not appear.

The extuserid value isn't showing on the Customer Detail page. 

Confirm the extuserid parameter was included in the URL the customer used and that the value is alphanumeric. The value can also be added or edited manually on the Customer Detail page.

A customer registered a domain without the template being applied. 

The most common cause is session expiry or logout between clicking the template link and completing registration. Your default template (if set) would have applied instead. Check whether a default template is configured — if not, no template applies to registrations outside an active query-string session.


Related articles


Questions? Contact OpenSRS Support.

Was this article helpful? If not please submit a request here

How helpful was this article?

Thanks for your feedback!

Do you still need help? If so please submit a request here.