# Environments & Subscriptions

## Environments

Projects vary in size and complexity, but the recommended setup is to have a TEST environment and a PROD environment where flows are shared via a subscription from Test to Prod. &#x20;

* Flow Prod is connected to PROD ERP and/or PROD transactional databases.&#x20;
* Flow Test is connected to TEST ERP and/or TEST transactional databases. &#x20;

Larger projects can also include one or more dev environment where flows are developed in Dev, shared (Subscribed) to Test and validated by the customer, and then shared (Subscribed) from Dev to Prod. &#x20;

When upgrading to a new version of Flow it is advisable to have an exact copy of the Flow Prod environment as a "Flow upgrade test" environment connected to the ERP PROD. Letting a sub-set of users do their normal work in a test upgraded version of flow can give a better validation than trying to make users do non-useful work in a test environment.

## Subscriptions

Subscription must be used between the Test and Prod environment, or between a Dev and respectively Test and Prod environments. In order to subscribe, first the subscription needs to be created by entering a **Comment** in the **Distribute Version** popup and sharing. This Comment will be shown in the Notes of the subscribed flow on the Production side.

![](/files/-MK1Hl90_2r38gWkpGtF)

{% hint style="warning" %}
Connectors must be named the same in Test, Dev and Prod environments or else the subscription will not work.
{% endhint %}

{% hint style="warning" %}
Properties must be named the same in Test, Dev and Prod environments or else the subscription will not work.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.novacura.com/flow-development-guidelines/promoting-a-flow/untitled.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
