> For the complete documentation index, see [llms.txt](https://docs.rtkdata.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rtkdata.com/reseller-hub/licenses.md).

# NTRIP License Provisioning for Resellers

Provision NTRIP licenses in the RTKdata Reseller Hub: data streams, terms, trials, credentials, renewals, upgrades, auto renew and suspensions, plus what blocks new provisioning.

A license is one set of NTRIP credentials on the RTKdata caster, provisioned for one customer. This page covers creating one, delivering the credentials, and everything that happens to it afterwards.

![The licenses list](https://3957820804-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJflLSSoC9TU9MkwT5lbC%2Fuploads%2Fgit-blob-45f09e56c6280c3ed92d4a2d9edd12da30d586e3%2Freseller-hub-licenses.png?alt=media)

***

## Creating a license

There are two ways in, and both end with a license bound to a customer:

* On a customer's detail page, use **Add license**.
* On the Licenses page or the dashboard, use **Add License**, pick the customer (or create a new one inline), then choose **Paid license** or **Start trial**.

![The Add License dialog](https://3957820804-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJflLSSoC9TU9MkwT5lbC%2Fuploads%2Fgit-blob-54f12d539a5daa4cd092af836d6d2dc10e97b828%2Freseller-hub-add-license.png?alt=media)

| Field            | Meaning                                                                                            |
| ---------------- | -------------------------------------------------------------------------------------------------- |
| **Data streams** | How many devices may be connected **at the same time**. One stream means one concurrent connection |
| **Term**         | **Monthly** (1 to 11 months) or **Annual** (1 to 5 whole years). The default is one year           |
| **Price**        | Calculated from the current price list after your tier discount, before you confirm                |

Confirm with **Create license**. The credentials are provisioned on the caster and the license appears immediately, both on the customer record and in the Licenses list. The license is named after its NTRIP username.

If the caster does not answer in time, the license shows **Provisioning** with a **Retry provisioning** action. Retrying never creates a second license.

> **Data streams, not devices.** The same credentials can be entered into as many receivers as you like. What the stream count limits is how many of them may be connected at once. Two devices sharing one stream will disconnect each other every few seconds, which looks like an unstable network rather than a licensing problem. The same rule is explained for end users in [Account & NTRIP Credentials](/get-started/account-and-credentials.md).

***

## Trials

**Start trial** begins a free trial with one data stream. Pick the **Trial length**: 7, 14 or 30 days (30 by default). A trial behaves like a license in the field, so the customer can test with their real hardware. Each customer can have one trial, ever.

* **Convert** turns a trial into a paid license with the same credentials. The paid term starts on the day you convert, and it is charged in full on that month's bill.
* If a customer needs longer, use **Extension Request** on the trial, with the new expiry date you need and a reason. The request goes to RTKdata for approval, and its status shows on the trial as **Requested**, **Approved** or **Rejected**.
* Expired trials stay visible in the customer's **Trials** table.

***

## The licenses list

Three tiles sit at the top: **Active Licenses**, **Expiring Soon** and **Overdue**. The chips above the table are quick filters, each with its own count:

| Filter            | Meaning                                                |
| ----------------- | ------------------------------------------------------ |
| **All**           | Every license                                          |
| **Active**        | Paid licenses that are running                         |
| **Trials**        | Running trials, including ones still being provisioned |
| **Expiring soon** | Renews within the next 30 days                         |
| **Expired**       | Term ran out                                           |
| **Suspended**     | Stopped, by you or through the payment reminder ladder |
| **Renewed**       | Renewed at least once this calendar year               |
| **Pending**       | Paid licenses whose provisioning is still in progress  |

The table shows the license, its mountpoints, the caster, the customer, the plan, the data streams, when it started, its expiry (with a countdown for trials), when it was last used, whether auto renew is on, and its status. Search covers customer, license and mountpoint, and **Expiry**, **Caster** and **Auto renew** narrow it further. **Export** downloads all your **Licenses (CSV)** or **Customers (CSV)**.

### The caster column

New licenses show **RTKdata Caster**. Licenses taken over from the previous RTKdata reseller portal show **Legacy Caster** until they first connect to the RTKdata caster, then switch over by themselves. For your customer nothing changes: the same username and password work, and the host is always the RTKdata caster.

A migrated license that arrived without a customer sits on a placeholder customer and shows **Assign customer**. Use it to move the license to the customer it belongs to (this can be done once). Tick **Also migrate to the new caster** to email that customer the new connection details, see [Caster migration email](/reseller-hub/customer-portal.md#caster-migration-email).

***

## The license detail page

![A license detail page](https://3957820804-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJflLSSoC9TU9MkwT5lbC%2Fuploads%2Fgit-blob-1da7a373fb209ade6cf97c9794d530f23223d486%2Freseller-hub-license-detail.png?alt=media)

The left card holds the commercial facts: customer, plan, mountpoints, caster, data streams, **List price**, start date, renewal date and the **Auto renew** switch. The list price is the price list value the license was sold at; your tier discount is applied on each bill (see [Billing](/reseller-hub/billing.md)). The right card holds the operational facts: **Connected now**, **Last seen**, **Auth failures (30d)**, **GGA received (30d)** and **Parallel connections**.

**Report an issue** on the usage card takes you straight into [Diagnostics](/reseller-hub/troubleshooting.md) with this license preselected.

Below both, the **Session Log** lists this license's recorded RTK sessions with the start time, the mountpoint used, the fix rate, the duration, the outcome and the caster. **View on live map** plots them on the [Live Map](/reseller-hub/usage-and-live-map.md).

***

## Connection details

Open **Show credentials** on the license to reveal everything the customer needs to enter in their NTRIP client.

![The connection details card](https://3957820804-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJflLSSoC9TU9MkwT5lbC%2Fuploads%2Fgit-blob-62e30792e46fd210d753f19c08582fa6da243059%2Freseller-hub-license-credentials.png?alt=media)

| Value          | What it is                                                                                                                                                                                                 |
| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Host**       | The caster address and port the receiver connects to, `caster.rtkdata.com:2101`                                                                                                                            |
| **Mountpoint** | The correction stream. Choose from the dropdown: **SMART** picks the national datum from the rover's position, **SMART\_ITRF2020**, **SMART\_ITRF2014** and **SMART\_WGS84** force a fixed reference frame |
| **Username**   | The sign in name for the caster                                                                                                                                                                            |
| **Password**   | The password for the caster                                                                                                                                                                                |

Each field has its own **Copy** button, and **Copy all** takes the whole set at once. **What do these mean?** explains the values in plain words, **RTK Coordinate System** explains the mountpoint choice, and the [Quick Start](/get-started/quick-start.md) walks an end user through entering them.

### Delivering the credentials

* **Send Creds** emails the connection details to the customer's address. It is unavailable for a customer without an email.
* **Send login link** on the customer record emails a magic link to their own [portal view](/reseller-hub/customer-portal.md), where they can read the credentials themselves at any time.
* See [The emails your customers receive](/reseller-hub/customer-portal.md#the-emails-your-customers-receive) for exactly what arrives in their inbox.
* Or copy the values and pass them on your own way, which is the route for customers without an email address.

> **Credentials are not rotated.** A license is permanently bound to its customer, and credentials are never reassigned to a different one. If you need credentials for another customer, provision a new license for that customer.

***

## The license lifecycle

| Action                   | What it does                                                                                                                                                                         |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Renew**                | Extend the term. You can change the data streams and the term while renewing; fewer streams take effect from the next cycle                                                          |
| **Upgrade**              | Add data streams or move to a longer term. No downgrade. See below                                                                                                                   |
| **Suspend**              | Stop the credentials working without deleting the license. Auto renew is switched off at the same time                                                                               |
| **Reactivate**           | Bring a suspended license back. Auto renew comes back on if it was on before and the renewal date has not passed                                                                     |
| **Auto renew**           | With the switch on, the license renews itself when its term ends. It cannot be switched on for a suspended license (reactivate it first) or an expired one (renew it manually first) |
| **Request more streams** | On a trial, ask RTKdata for more than one data stream                                                                                                                                |

### How an upgrade is charged

* **More data streams** are charged pro-rata for the time the license is already paid for.
* **A longer term** starts when the current paid time ends and is charged in full.
* **On the day a license starts**, an upgrade reprices the first term from the start, as if the license had been created that way, not pro-rata.
* Upgrade is hidden while a license is overdue. Renew it first.

Whenever a monthly term is selected, the dialogs show how much switching to annual would save.

***

## When provisioning is blocked

New licenses and new trials are refused in two situations:

| Reason                                                                                                                           | What unblocks it            |
| -------------------------------------------------------------------------------------------------------------------------------- | --------------------------- |
| A bill is **14 or more days overdue** (credit hold, shown as a dashboard banner). From 30 days, renewals and auto renew stop too | Paying the outstanding bill |
| The customer is **archived**                                                                                                     | Unarchiving the customer    |

See [Billing](/reseller-hub/billing.md#when-a-bill-is-overdue) for the full reminder ladder.

***

## Next

* [Billing](/reseller-hub/billing.md) - how these licenses turn into one monthly bill
* [Usage & Live Map](/reseller-hub/usage-and-live-map.md) - watching them work
* [Troubleshooting](/reseller-hub/troubleshooting.md) - when a rover will not connect


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rtkdata.com/reseller-hub/licenses.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
