> For the complete documentation index, see [llms.txt](https://atlas.anywhere.now/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://atlas.anywhere.now/onboard-or-upgrade/neo-update-existing-customers.md).

# Upgrade an existing customer

Upgrade an existing AnywhereNow service to Dialogue Cloud Neo, including service upgrade, Secure Vault configuration, and Dialogue Studio enablement.

{% hint style="warning" %}
This guide covers Dialogue Cloud Neo deployment for existing Dialogue Cloud tenants upgrading from a service that is not yet on Dialogue Cloud Neo. For new customers without an existing service, see [Onboard a new customer](/onboard-or-upgrade/onboard-new-customer.md).

This is not a Connect-to-Unify conversion procedure. An existing Service/UCC on Connect cannot currently move to Unify.
{% endhint %}

{% hint style="info" %}
Dialogue Cloud Neo upgrade procedures are under active development. Verify with your AnywhereNow representative that this guide reflects the current release before proceeding.
{% endhint %}

{% hint style="success" %}
**Before you begin:** Dialogue Cloud Neo must be enabled by your AnywhereNow representative. Back up your CDR database before starting. Install the Microsoft Teams PowerShell module (v7.0+). Schedule this upgrade during a maintenance window — expect a service interruption of 15 minutes to 1 hour depending on your environment size. Rollback is not supported after the upgrade completes.
{% endhint %}

***

## Prerequisites

* **Dialogue Cloud Neo enabled**: Your organisation has been enabled for Dialogue Cloud Neo by your AnywhereNow representative.
* **Microsoft Teams PowerShell module** — recommended: latest; minimum version 7.0:

  ```powershell
  Install-Module MicrosoftTeams -Force
  Update-Module MicrosoftTeams
  ```
* **Admin roles** in the customer's Microsoft 365 tenant: Teams Administrator and User Access Administrator, or equivalent roles to create resource accounts, assign numbers, and manage app access.
* **Phone number** available for any new endpoints — Teams Calling Plan service number, Operator Connect number, or Direct Routing number.

  For **Automatic Deployment** with **Direct Routing**: upload phone numbers to the tenant before creating endpoints. See [Get Direct Routing phone numbers in your Teams tenant](https://learn.microsoft.com/en-us/microsoftteams/get-phone-numbers-with-direct-routing).
* **Teams Phone Resource Account license** available for any new endpoints.
* **Existing CDR database** provisioned and accessible from Dialogue Cloud regional IPs. See [Call Detail Records Database](/set-up-dialogue-cloud-neo/prerequisites/azure-sql-databases/call-detail-records.md).

{% hint style="warning" %}
For automatic endpoint deployment, admin credentials are stored in the Dialogue Cloud Secure Vault. Use a dedicated service account and time-bound elevation (PIM) where possible.
{% endhint %}

***

## Step 1: Grant admin consent (one-time per tenant)

If admin consent has not already been granted for this Microsoft 365 tenant, grant it before proceeding.

See [Onboard a new customer — Grant admin consent](/onboard-or-upgrade/onboard-new-customer.md#grant-admin-consent-one-time-per-tenant) for the consent links and required permissions.

***

## Step 2: Configure Microsoft Graph Presence (recommended)

Configure the Microsoft Graph Source (Get Presence) application permissions to enable presence-aware call distribution.

See [Configure Microsoft Graph Presence](/set-up-dialogue-cloud-neo/prerequisites/configure-microsoft-graph-presence.md).

Have the following values ready before endpoint deployment:

* Microsoft Entra tenant ID (Directory ID)
* Graph application Client ID (App ID)
* Graph application Client Secret

***

## Step 3: Upgrade the service to Dialogue Cloud Neo

{% hint style="danger" %}
**Back up the CDR database before proceeding.** This upgrade modifies the Dialogue Cloud service configuration and cannot be automatically rolled back. In the event of a failed upgrade, you will need to raise a support case with AnywhereNow — having a current CDR database backup ensures no conversation data is lost. See [Call Detail Records database](/set-up-dialogue-cloud-neo/prerequisites/azure-sql-databases/call-detail-records.md) for database location details.
{% endhint %}

{% hint style="warning" %}
**Service interruption during upgrade:** Plan for a service interruption during the Dialogue Cloud Neo upgrade. The duration depends on the number of UCCs and configured endpoints in your environment:

* A smaller UCC with few endpoints: approximately **15 minutes** (technical restart only, excluding post-upgrade validation)
* A typical UCC: approximately **1 hour** per service
* UCCs with a large number of endpoints may take longer

This upgrade is self-service — you choose when to run it. Plan and communicate your maintenance window to affected stakeholders before proceeding.
{% endhint %}

1. In OnePortal (the Dialogue Cloud Neo administration portal used by partners and customers), navigate to **Services** using the left-hand navigation menu and locate the service to upgrade.
2. Select **Upgrade** and choose the target Dialogue Cloud Neo bundle.

   <div data-gb-custom-block data-tag="hint" data-style="warning" class="hint hint-warning"><p><strong>Confirm the target bundle</strong>: verify the target Dialogue Cloud Neo bundle version with your AnywhereNow representative before upgrading.</p></div>
3. Monitor the **Notifications** pane for completion before proceeding.

{% hint style="warning" %}
Do not proceed to the next step until the service upgrade is confirmed complete. Partially upgraded services may exhibit inconsistent behavior.
{% endhint %}

{% hint style="warning" %}
**Important:** Rollback to a previous state is not supported after a Dialogue Cloud Neo upgrade has been completed. Before proceeding, ensure that all prerequisites have been met and that you have tested the upgrade in a non-production environment if available. If the upgrade causes unexpected issues, raise a support ticket immediately — a P1 severity incident will receive a response within 15 minutes and a resolution target of within 4 hours. See [AnywhereNow Support](https://support.anywhere.now) for contact details.
{% endhint %}

### If the upgrade fails or the service is in a degraded state

A failed or partially completed upgrade may appear as:

* The service remaining in an "Upgrading" state for more than 15 minutes with no progress
* The service reverting to an error or unknown state in OnePortal
* Services becoming unreachable after the upgrade completes

**What to do:**

1. Do **not** attempt to run the upgrade again without consulting AnywhereNow Support.
2. Raise a support case with [AnywhereNow Support](https://support.anywhere.now) immediately, including the service name, region, and the bundle version you attempted to upgrade to.
3. Rollback to the previous bundle state is not supported. AnywhereNow Support will work with you to stabilise the service as quickly as possible under a P1 incident.

***

## Step 4: Configure Secure Vault

The Secure Vault stores both the Teams admin credentials for automatic endpoint provisioning and the Azure SQL database credentials for the CDR database. See [Configure Secure Vault](/platform-administration/provisioning/provisioning/configurations/configure-secure-vault.md) for vault creation.

### Teams admin credentials

1. Navigate to **Configurations** > **Secure Vault Configuration** and select **Edit**.
2. Add a new secret with type **Neo Communication Teams Admin**.
3. Enter the **Microsoft Entra tenant ID** and the **username** and **password** for the admin account (Teams Administrator + User Access Administrator).

{% hint style="success" %}
Elevate the account just-in-time with Privileged Identity Management (PIM) before provisioning, then let the elevation expire after.
{% endhint %}

### CDR database credentials

Existing customers upgrading to Dialogue Cloud Neo must configure the CDR database credentials in the Secure Vault. This step does not apply to new customers.

Before proceeding, ensure:

* The CDR database Service Principal (app registration) has been created in Microsoft Entra ID and granted `db_owner` access to the CDR database. See [Configure Secure Vault — Prerequisites](/platform-administration/provisioning/provisioning/configurations/configure-secure-vault.md#prerequisites) for the full Service Principal setup steps.
* You have the **Client ID** and **Client Secret** for the CDR Service Principal, and the **Entra tenant ID**.

**Add the CDR secret to the vault:**

1. Navigate to **Configurations** > **Secure Vault Configuration** and select **Edit**.
2. Select **Add New Secret**.
3. Enter the following values:

   | Field                    | Value                                                                    |
   | ------------------------ | ------------------------------------------------------------------------ |
   | **Display Name**         | A recognisable label for the CDR database profile                        |
   | **Component**            | **Call Detail Records**                                                  |
   | **Database Name**        | Name of the CDR Azure SQL database                                       |
   | **Database Server Name** | Fully qualified server name (for example, `server.database.windows.net`) |
   | **Port**                 | `1433`                                                                   |
   | **Protocol**             | `TCP/IP`                                                                 |
   | **User ID**              | Client ID of the CDR app registration                                    |
   | **Secret**               | Client Secret value of the CDR app registration                          |
   | **Entra tenant ID**      | Found on the Microsoft Entra ID overview page                            |
4. Select **Create Secret** and wait for the secret to appear in the vault.

**Connect the CDR database to the Service:**

1. In OnePortal, navigate to the **Service** on the upgraded tenant.
2. Select **Change** > **Secure Authentication \[CDR]**.
3. Toggle **Enable Secure Authentication** and select the CDR secret profile.
4. Click **Submit**.

{% hint style="warning" %}
A UCC service restart with cleared cache is required after enabling Secure Vault authentication for CDR. Schedule this during a maintenance window.
{% endhint %}

***

## Step 5: Confirm Dialogue Studio enablement

If Dialogue Studio is not already available on the existing service or contact centers, request enablement through your AnywhereNow representative or partner before you continue with any validation that depends on Dialogue Studio access.

Use [Manage Dialogue Studio deployment](/platform-administration/provisioning/provisioning/configurations/manage-dialogue-studio-deployment.md) under Platform administration > Provisioning for the managed-change request, customer-visible deployment details, and post-change validation flow.

{% hint style="info" %}
Dialogue Studio is required for Dialogue Cloud Neo. Skip this step if Dialogue Studio is already active on all required contact centers.
{% endhint %}

***

## Creating a Separate Unify Deployment

The upgraded Service/UCC remains on Connect. These steps do not enable a move to Unify.

To create a separate Unify Service/UCC, follow the [new-deployment onboarding journey](/onboard-or-upgrade/onboard-new-customer.md). This applies to an existing organization creating a new deployment as well as to a new customer; it is not a migration of the existing service.

***

## After upgrade

Verify the following after the service restart:

* Presence polling is active — confirm agents show correct availability states in WebAgent.
* For a retained customer SQL CDR database, check that the test-call record is written to that database using its reporting tools.
* Check Dialogue Insights separately where it is enabled. Its Microsoft Fabric reporting data is distinct from the customer SQL CDR database; seeing a call in Insights does not prove a write to customer SQL.
* Dialogue Manager is processing text-based channel conversations (if applicable).
* Endpoint registration is confirmed in OnePortal.

{% hint style="warning" %}
**If the upgrade fails or the contact center becomes unreachable**, do not attempt to manually reverse the configuration. Contact AnywhereNow support immediately.
{% endhint %}

{% hint style="success" %}
**After the upgrade completes:**

1. Confirm the bundle update status in OnePortal — the status should show the upgrade as successful.
2. Place a test call using a test agent to validate end-to-end call handling before returning the contact center to production use.
   {% endhint %}

***

## What's next?

Return to the [setup overview](/set-up-dialogue-cloud-neo/initial-setup.md) to complete any remaining preparation or model-specific telephony work. When setup is complete, choose the next Build & manage destination:

* [Platform administration](https://atlas.anywhere.now/platform-administration/) for platform services and administrative applications
* [Contact center configuration](https://atlas.anywhere.now/contact-center-configuration/) for people, queues, routing, reusable assets, callflows, and outbound dialing
* [Channels & integrations](https://atlas.anywhere.now/channels-integrations/) for channels, providers, CRM, CTI, and other integrations


---

# 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://atlas.anywhere.now/onboard-or-upgrade/neo-update-existing-customers.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.
