> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neoagent.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Cancel License

> Reduce license seat count via your marketplace provider

The Cancel License tool allows Neo Agent to reduce the number of license seats through your configured marketplace provider (Pax8, D\&H, Ingram Micro, Sherweb, or Microsoft Partner Center).

<Warning>
  Ensure users are **unassigned** from the license before cancelling seats. Unassigning licenses from users is handled by the [Microsoft 365 tools](/agents/tools/m365/overview) (Microsoft Graph API), gated by your M365 licensing permissions.
</Warning>

## What It Does

When enabled, the agent can:

* Reduce seat count for any license SKU
* Target a **specific subscription** when your provider has multiple subscriptions for the same license (e.g., separate Monthly and Annual subscriptions)
* Auto-detect which marketplace provider to use based on the company's configuration

## Subscription Targeting

The agent identifies the exact subscription to modify by calling [List License Subscriptions](/agents/tools/m365/list-license-subscriptions) first, which returns the subscription ID, billing term, commitment term, and seat count for each subscription.

<Tip>
  The agent **always** calls [List License Subscriptions](/agents/tools/m365/list-license-subscriptions) before cancelling to get the marketplace subscription ID for the target subscription.
</Tip>

## Marketplace Provider Auto-Detection

The marketplace provider is automatically determined from the company's configuration — you no longer need to select it per tool. Neo checks in this order:

1. **Pax8** — if a Pax8 marketplace company ID is configured
2. **D\&H** — if a D\&H marketplace company ID is configured
3. **Microsoft Partner Center** — if a Partner Center marketplace ID is configured, or as a fallback when Partner Center credentials are available

## Timing the Cancellation

The agent can apply a seat decrease either **immediately** or **at the next renewal date**. Use custom instructions to direct the agent based on your preference:

* **Immediately** (default) — the seat decrease applies now. Microsoft NCE only allows immediate downsizes within the first 7 days of a term, so this can fail for older subscriptions.
* **Next renewal** — the decrease is queued to apply on the subscription's renewal date. This always works regardless of the NCE 7-day window.

If the agent attempts an immediate decrease and the marketplace rejects it on NCE policy grounds, the tool's error message instructs the agent to retry with `next_renewal`.

Scheduled-at-renewal is supported via API on **Ingram Micro** and **Microsoft Partner Center**. For **Pax8**, **D\&H**, and **Sherweb**, the API doesn't expose this — the agent will instead suggest scheduling the workflow itself to run on the renewal day.

The agent can also align the renewal date to the **end of the calendar month** or to the **subscription's existing anniversary** when the change applies (Ingram Micro only in v1).

## Settings

| Setting                         | Description                                                                                   |
| ------------------------------- | --------------------------------------------------------------------------------------------- |
| **Require technician approval** | When enabled, the agent sends a Teams approval request before cancelling. Enabled by default. |

## Tool Dependencies

When you enable this tool, the following are automatically enabled:

* **List Licenses** — so the agent can look up available SKUs
* **List License Subscriptions** — so the agent can discover subscriptions and get the subscription ID before cancelling
* **Request Technician Approval** — when approval is enabled in settings

## How to Use

Use as part of offboarding workflows:

```
After unassigning all licenses from the departing user,
cancel the freed Monthly seats to stop billing immediately.
```

```
When cancelling licenses, always cancel Monthly seats first.
Only cancel Annual seats when explicitly requested.
```
