> For the complete documentation index, see [llms.txt](https://support.novel.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://support.novel.com/start-guide/domain-verification.md).

# Domain Verification

### Overview

Novel sends wallet pass emails to your customers (for example, pass delivery and updates). To improve inbox placement and brand trust, we recommend verifying a dedicated subdomain rather than using your root domain.

#### Recommended setup

Use a dedicated subdomain such as:

```
pass.yourbrand.com
```

Examples:

```
pass.nike.com
wallet.allbirds.com
member.liquiddeath.com
```

This keeps your primary domain protected and makes DNS configuration cleaner.

***

### Before You Start

You’ll need:

* Access to your DNS provider (Cloudflare, GoDaddy, Shopify, Route53, Squarespace, etc.)
* Admin access to your Novel account
* A dedicated subdomain you want to use for wallet pass emails

***

## Step 1 — Open Domain Verification in Novel

In Novel Admin:

```
Configure → Domain Verification
```

Enter your desired subdomain:

```
pass.yourbrand.com
```

Then click:

```
Verify
```

Novel will generate DNS records for you to install.

***

## Step 2 — Download Your DNS Records

Click:

```
Download Novel DNS Records
```

You’ll receive the required DNS records for:

* Receiving records (MX)
* Sending records (TXT or CNAME)
* DKIM authentication

***

## Step 3 — Add the DNS Records to Your DNS Provider

Add each record exactly as provided by Novel.

### Important

Many DNS providers automatically append your root domain.

This means:

#### Correct

If your domain is:

```
pass.yourbrand.com
```

And Novel asks for:

```
Host: pass
```

You should enter:

```
pass
```

NOT:

```
pass.yourbrand.com
```

***

## Common DNS Mistakes

### Incorrect Hostname Formatting

This is the most common issue preventing verification.

#### Example 1 — Subdomain duplication

#### Incorrect

```
Host: pass.yourbrand.com
```

This may become:

```
pass.yourbrand.com.yourbrand.com
```

#### Correct

```
Host: pass
```

***

### DKIM / Sending Record Formatting

Some records may look like:

```
mx._domainkey.mg.yourbrand.com
```

Depending on your DNS provider, the hostname should often only be:

```
mx._domainkey.mg
```

Or if using a `pass` subdomain:

```
mx._domainkey.pass
```

NOT:

```
mx._domainkey.mg.yourbrand.com
```

Your DNS provider will automatically append:

```
.yourbrand.com
```

***

## Example Configuration

### Recommended Domain

```
pass.acme.com
```

***

### Receiving Record Example

| Type | Host | Value           |
| ---- | ---- | --------------- |
| MX   | pass | mxa.mailgun.org |

***

### Sending Record Example

| Type | Host | Value                            |
| ---- | ---- | -------------------------------- |
| TXT  | pass | v=spf1 include:mailgun.org \~all |

***

### DKIM Example

| Type | Host                | Value           |
| ---- | ------------------- | --------------- |
| TXT  | mx.\_domainkey.pass | k=rsa; p=MIG... |

***

## Step 4 — Wait for DNS Propagation

DNS changes may take time to propagate.

Typical timing:

* Usually: 5–30 minutes
* Occasionally: up to 24 hours

After adding the records, return to Novel and click:

```
Check Verification
```

***

## Verification Statuses

### Verified

Your domain is fully authenticated and ready to send wallet pass emails.

### Pending

DNS changes are still propagating.

### Failed

One or more records may be incorrect.

Most failures are caused by:

* Full domains entered instead of hostnames
* Extra `.yourdomain.com` appended
* Incorrect MX priority
* DNS provider formatting differences

***

## Troubleshooting

### My domain won’t verify

Check the following:

#### 1. Are you using a subdomain?

{% hint style="success" %}
**Recommended:** pass.yourbrand.com
{% endhint %}

{% hint style="danger" %}
**Avoid:** yourbrand.com
{% endhint %}

***

#### 2. Did you enter only the hostname?

{% hint style="success" %}
**Many providers expect:** pass
{% endhint %}

instead of:

{% hint style="danger" %}
pass.yourbrand.com
{% endhint %}

***

#### 3. Did your DNS provider auto-append the domain?

Some providers automatically add:

{% hint style="success" %}
.yourbrand.com
{% endhint %}

This can accidentally create:

{% hint style="danger" %}
pass.yourbrand.com.yourbrand.com
{% endhint %}

***

#### 4. Are your DKIM records shortened correctly?&#x20;

#### Correct example

{% hint style="success" %}
mx.\_domainkey.pass
{% endhint %}

#### Incorrect

{% hint style="danger" %}
mx.\_domainkey.pass.yourbrand.com
{% endhint %}

***

## Provider-Specific Notes

### Cloudflare

Cloudflare automatically appends your root domain in the Host field.

Use shortened hostnames only.

***

### GoDaddy

GoDaddy may trim or auto-format records after saving. Double-check the final saved value.

***

### Shopify Domains

If your domain is managed through Shopify, DNS propagation may take slightly longer.

***

## Best Practices

We recommend:

* Using a dedicated subdomain
* Keeping wallet pass email traffic separate from your primary sending domain
* Avoiding root-domain verification
* Using the exact DNS values generated by Novel

Recommended examples:

```
pass.yourbrand.com
wallet.yourbrand.com
member.yourbrand.com
```

***

{% hint style="danger" %}
After your domain is verified, update your sending email under `Configure → Pass Email Editor → Sending Email Address` to use the verified domain (example: `passes@pass.yourbrand.com`).
{% endhint %}

## Need Help?

If your domain still won’t verify after 24 hours:

Please contact Novel support with:

* Your domain provider
* Screenshots of your DNS records
* The exact subdomain you’re attempting to verify
* Any verification errors shown in Novel
