[System] You are a VTEX documentation expert. You provide accurate, detailed information about VTEX platform, APIs, apps, and Store Framework development.

[User] Provide a guide on guides vtex io documentation 10 making your app publicly available in VTEX.

[Assistant]
Documentation

[Feedback](https://read.calvincode.net/reader?url=https://docs.google.com/forms/d/e/1FAIpQLSfmnotPvPjw-SjiE7lt2Nt3RQgNUe10ixXZmuO2v9enOJReoQ/viewform?entry.1972292648=developers.vtex.com%26entry.1799503232=)

[GuidesLearn how to use our APIs and extend the VTEX platform.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/api-reference)

[App DevelopmentLearn how to build cloud-based apps and integrations.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/app-development)

[Storefront DevelopmentExpress your brand identity creating unique storefronts.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/storefront-development)

[VTEX IO AppsFind pre-built solutions to grow your business.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/vtex-io-apps)

[TroubleshootingFind practical solutions to common development issues.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/troubleshooting)

[Release NotesStay up to date with our latest releases and bug fixes.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/updates/release-notes)

App Development

[What is VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-what-is-vtex-io)

---

[What is a VTEX App](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-what-is-a-vtex-app)

---

[Governance and shared security in VTEX IO apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/governance-and-shared-security-in-vtex-io-apps)

---

[Code samples and templates](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/code-samples)

---

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-getting-started)

[Storefront apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-1-developing-storefront-apps-using-react-and-vtex-io)

[1\. Setting up your development environment](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-2-basic-development-setup-in-vtex-io)

[2\. Creating the new app](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-3-creating-the-new-app)

[3\. Declaring a theme block](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-4-declaring-a-theme-block)

[4\. Defining styles](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-5-defining-styles)

[5\. Structuring documentation](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-6-structuring-documentation)

[6\. Consuming data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-7-consuming-data)

[7\. Translating the component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-8-translating-the-component)

[8\. Improving performance with caching](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-9-improving-performance-with-caching)

[9\. Making your app publicly available](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available)

[Best practices](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-developing-custom-storefront-components)

[Pixel apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-1-developnativeintegrationswithpixelapps)

[Master Data CRUD](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/create-master-data-crud-app)

---

Project structure

---

[VTEX IO CLI](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-vtex-io-cli-installation-and-command-reference)

---

[Workspace](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-workspace)

---

Managing apps

---

Development guides

---

[Node apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/app-development-guides)

---

[GraphQL in VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/graphql-in-vtex-io)

---

[Policies and permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-policies)

---

[A/B tests](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/ab-tests)

---

[Deployment](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-making-your-new-app-version-publicly-available)

---

[VTEX App Store](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-app-store)

---

[Edition Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/managing-edition-apps)

---

[Frequently asked questions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-frequently-asked-questions)

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides)

[API Reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/api-reference)

[App Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/app-development)

[Storefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/storefront-development)

[VTEX IO Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/vtex-io-apps)

[Troubleshooting](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/troubleshooting)

---

[Release Notes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/updates/release-notes)

App Development

[What is VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-what-is-vtex-io)

---

[What is a VTEX App](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-what-is-a-vtex-app)

---

[Governance and shared security in VTEX IO apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/governance-and-shared-security-in-vtex-io-apps)

---

[Code samples and templates](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/code-samples)

---

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-getting-started)

[Storefront apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-1-developing-storefront-apps-using-react-and-vtex-io)

[1\. Setting up your development environment](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-2-basic-development-setup-in-vtex-io)

[2\. Creating the new app](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-3-creating-the-new-app)

[3\. Declaring a theme block](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-4-declaring-a-theme-block)

[4\. Defining styles](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-5-defining-styles)

[5\. Structuring documentation](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-6-structuring-documentation)

[6\. Consuming data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-7-consuming-data)

[7\. Translating the component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-8-translating-the-component)

[8\. Improving performance with caching](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-9-improving-performance-with-caching)

[9\. Making your app publicly available](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available)

[Best practices](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-developing-custom-storefront-components)

[Pixel apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-1-developnativeintegrationswithpixelapps)

[Master Data CRUD](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/create-master-data-crud-app)

---

Project structure

---

[VTEX IO CLI](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-vtex-io-cli-installation-and-command-reference)

---

[Workspace](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-workspace)

---

Managing apps

---

Development guides

---

[Node apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/app-development-guides)

---

[GraphQL in VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/graphql-in-vtex-io)

---

[Policies and permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-policies)

---

[A/B tests](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/ab-tests)

---

[Deployment](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-making-your-new-app-version-publicly-available)

---

[VTEX App Store](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-app-store)

---

[Edition Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/managing-edition-apps)

---

[Frequently asked questions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-frequently-asked-questions)

---

[App Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/app-development)

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-getting-started)

[Storefront apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-1-developing-storefront-apps-using-react-and-vtex-io)

[9\. Making your app publicly available](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available)

9\. Making your app publicly available

Once you have completed all the previous steps and are comfortable with the setup, it is time to learn how to make your app publicly available, **allowing other users to use your app too**.

Before continuing with the app development flow, it is important first to define how you will be distributing your app–who will be able to install your app? Will you charge for using it? If so, what will be the cost for interested accounts?

The answers to these questions vary depending on the distribution type chosen for the app. The VTEX IO platform supports the following app types:

* **Private** \- Can only be installed by the `vendor` account, the account that develops and maintains it.
* **Public** \- It is available for all accounts in the VTEX platform ecosystem; a fee may be charged for its use or not.

## Defining distribution

The choice between private or public has to be made before the app is launched.

The reason is that depending on the chosen type, some settings have to be configured in the app's `manifest.json` file before it is distributed. After all, the settings in the `manifest` define who will be able to use the component and whether it will be free or not.

To learn how to configure your app's `manifest.json` file properly, access the documentation about [Billing Options](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/) and follow the instructions that fit the desired scenario for your project.

After following those detailed steps, your app will be ready to be correctly distributed!

Remember that [_linking_](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-linking-an-app) the app you are working on will not be enough: you will also need to launch, publish, and install it in a production workspace for testing and, finally, validate it for _deploy_, as we will see below.

## Launching a new version

If you are sure about all the changes made in the development workspace, it is time to launch a new version of your app.

Using your terminal, access the app folder and run the following command:

`1

vtex release major

`

This will:

* Update the versioning in the `CHANGELOG.md` and `manifest.json` files following [expected semantics](https://read.calvincode.net/reader?url=https://semver.org/).
* Create a _launch_ commit.
* Create a GitHub repository for the app.

If you want to release a **Beta** version, run the command `vtex release major beta` on your terminal. It will execute the same actions as the previous command, except that you will be launching a _beta_ version for your app instead of a _stable_ version.

> Do not forget to log in to the desired VTEX account before launching the new version so that the app's `vendor` is the account where you have been working.

## Publishing on the VTEX IO platform

Once the app has been launched, it has to be properly installed to have the settings you tested. However, it is not possible to simply install an existing app on your local desktop.

> Note that when launching your app in step 2 above, you did not link it to the VTEX IO platform. The previous command only automated actions for proper versioning.

That means now you have to publish the app on the platform! Using your terminal, access the app folder and run the following command:

`1

vtex publish

`

The command will transform your app into a _**release candidate version**_, making it available to be installed for testing with VTEX IO CLI.

> You have to always be logged in to the desired VTEX account for publishing the app. Make sure the app's `vendor` is the same as the account you are working on.

If your app does not have the `billingOptions` field configured, users with access to the VTEX account that published it will also be able to install the app through the Admin via the **Apps** section.

## Installing in a production workspace

Having your app ready to be installed, you need to create a production workspace to test the settings and possible behaviors.

Using your terminal, run the following command (replacing the curly brackets with the desired name for your new workspace):

`1

vtex use {WorkspaceName} --production

`

> From this point forward, further changes are not recommended. This is because a production workspace is able to receive user traffic and can be accessed by people other than you. If you want to make any changes to the code, you have to work on the new settings in a development workspace and then follow the steps in this article again.

To install the app in the new workspace, run the command below, replacing the curly brackets with your scenario's real values:

`1

vtex install {appVendor}.{apNname}@{appVersion}

`

## Validating the deploy

It is time to validate your _release candidate version_!

We recommend that you first run a [native A/B test](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-running-native-ab-testing) between the new production workspace and your store's Master workspace to test the stability of the app.

> If you are working with a beta version and all your settings have already been properly tested, we recommend that you return to the second step of this article to launch the app's non-beta version and then follow the walkthrough again.

Once you are satisfied with the results, access the app's folder on your terminal and run the following command to publish your _release candidate version_ as a _stable_ version:

`1

vtex deploy

`

Running the command will cause the new _stable_ version of the app to be automatically installed on all accounts that had previously installed the _release candidate_ version.

## Extra steps

### Promoting your workspace to Master

Promoting the production workspace where the app was installed to Master is essential to be able to render it to your store's end users, the ones who will actually interact with the developed component.

That means if you want to use the app that was developed in the store you are working on, you need to complete one more step in your development process.

Using your terminal, log in to your VTEX account and make sure you are using the production workspace used in the previous steps. Then, run the command below:

`1

vtex workspace promote

`

The status of a Master workspace is `production true`. Upon receiving this response from your terminal, your app will already be available to your store's users.

### Submitting your app to the VTEX App Store

Whether you incorporate the new component into your VTEX Store Theme or not, you may still want to add the app you developed to the VTEX App Store app catalog.

The [VTEX App Store](https://read.calvincode.net/reader?url=https://apps.vtex.com/) is a _marketplace_ for _plug&play_ solutions and can be used by any interested VTEX account that wants to make available its solutions to other accounts in the ecosystem.

To make your app available, check the documentation for [Submitting an app in the VTEX App Store](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-submitting-your-app-in-the-vtex-app-store/).

---

**All set!** After completing these steps, the app will be launched, published, tested, validated, and, finally, made public for all its users.

During this article series, you learned all the necessary steps to develop a frontend app from scratch using React, GraphQL, CSS, and the VTEX IO development platform.

To understand more about the platform's development possibilities, do not forget to access the rest of our [documentation](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides)!

Contributors

1

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F60782333%3Fv%3D4%26w=64%26q=75)](https://github.com/carolinamenezes)

Was this helpful?

Yes

No

[Suggest Edits (GitHub)](https://read.calvincode.net/reader?url=https://github.com/vtexdocs/dev-portal-content/edit/main/docs/guides/vtex-io/Getting-Started/vtex-io-documentation-1-developing-storefront-apps-using-react-and-vtex-io/vtex-io-documentation-10-making-your-app-publicly-available.md)

[8\. Improving performance with caching« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available//docs/guides/vtex-io-documentation-9-improving-performance-with-caching)[Best practicesNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available//docs/guides/vtex-io-documentation-developing-custom-storefront-components)

Contributors

1

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F60782333%3Fv%3D4%26w=64%26q=75)](https://github.com/carolinamenezes)

ON THIS PAGE

[Defining distribution](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23defining-distribution)

[Launching a new version](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23launching-a-new-version)

[Publishing on the VTEX IO platform](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23publishing-on-the-vtex-io-platform)

[Installing in a production workspace](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23installing-in-a-production-workspace)

[Validating the deploy](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23validating-the-deploy)

[Extra steps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23extra-steps)

[Promoting your workspace to Master](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23promoting-your-workspace-to-master)[Submitting your app to the VTEX App Store](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23submitting-your-app-to-the-vtex-app-store)

Was this helpful?

 Send feedback

[Suggest edits (GitHub)](https://read.calvincode.net/reader?url=https://github.com/vtexdocs/dev-portal-content/edit/main/docs/guides/vtex-io/Getting-Started/vtex-io-documentation-1-developing-storefront-apps-using-react-and-vtex-io/vtex-io-documentation-10-making-your-app-publicly-available.md)

Copy page

On this page

ON THIS PAGE

[Defining distribution](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23defining-distribution)

[Launching a new version](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23launching-a-new-version)

[Publishing on the VTEX IO platform](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23publishing-on-the-vtex-io-platform)

[Installing in a production workspace](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23installing-in-a-production-workspace)

[Validating the deploy](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23validating-the-deploy)

[Extra steps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23extra-steps)

[Promoting your workspace to Master](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23promoting-your-workspace-to-master)[Submitting your app to the VTEX App Store](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available/docs/guides/vtex-io-documentation-10-making-your-app-publicly-available%23submitting-your-app-to-the-vtex-app-store)

On this page

[Github](https://read.calvincode.net/reader?url=https://github.com/vtex-apps)[Help Center](https://read.calvincode.net/reader?url=https://help.vtex.com/)[Community](https://read.calvincode.net/reader?url=https://community.vtex.com/?%5Fga=2.198523433.743584735.1647618303-1974737580.1645714642)[Feedback](https://read.calvincode.net/reader?url=https://docs.google.com/forms/d/e/1FAIpQLSfmnotPvPjw-SjiE7lt2Nt3RQgNUe10ixXZmuO2v9enOJReoQ/viewform?entry.1972292648=developers.vtex.com%26entry.1799503232=)


[System] You are a VTEX documentation expert. You provide accurate, detailed information about VTEX platform, APIs, apps, and Store Framework development.

[User] Provide a guide on guides master data components in VTEX.

[Assistant]
Documentation

[Feedback](https://read.calvincode.net/reader?url=https://docs.google.com/forms/d/e/1FAIpQLSfmnotPvPjw-SjiE7lt2Nt3RQgNUe10ixXZmuO2v9enOJReoQ/viewform?entry.1972292648=developers.vtex.com%26entry.1799503232=)

[GuidesLearn how to use our APIs and extend the VTEX platform.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/api-reference)

[App DevelopmentLearn how to build cloud-based apps and integrations.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/app-development)

[Storefront DevelopmentExpress your brand identity creating unique storefronts.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/storefront-development)

[VTEX IO AppsFind pre-built solutions to grow your business.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/vtex-io-apps)

[TroubleshootingFind practical solutions to common development issues.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/troubleshooting)

[Release NotesStay up to date with our latest releases and bug fixes.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/updates/release-notes)

Guides

[VTEX Platform Overview](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/vtex-platform-overview)

---

[API usage](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/api-usage)

---

[Getting started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/getting-started)

---

Integration Guides

---

[Catalog](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/catalog-integration)

---

[Checkout](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/checkout-api-overview)

---

[Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data)

[Understanding Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/understanding-master-data)

[Master Data components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components)

[Master Data infrastructure](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-infrastructure)

[Master Data API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-api)

[Data consistency and synchronization in Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/data-consistency-and-synchronization-in-master-data)

[Master Data best practices](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-best-practices)

[Master Data v2](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-v2)

[Master Data v1](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-v1)

---

Payments

---

Orders

---

Logistics

---

B2B Suite

---

VTEX Sales App

---

UI Customization

---

Message Center

---

Pricing

---

Promotions

---

Infrastructure

---

Search

---

Storefront Permissions

---

[VTEX Activity Flow](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/activity-flow)

---

[VTEX Ads](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/vtex-ads)

---

VTEX Session

---

VTEX Shield

---

[Data Protection Plus](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/data-protection-plus)

---

Weni by VTEX

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides)

[API Reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/api-reference)

[App Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/app-development)

[Storefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/storefront-development)

[VTEX IO Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/vtex-io-apps)

[Troubleshooting](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/troubleshooting)

---

[Release Notes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/updates/release-notes)

Guides

[VTEX Platform Overview](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/vtex-platform-overview)

---

[API usage](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/api-usage)

---

[Getting started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/getting-started)

---

Integration Guides

---

[Catalog](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/catalog-integration)

---

[Checkout](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/checkout-api-overview)

---

[Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data)

[Understanding Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/understanding-master-data)

[Master Data components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components)

[Master Data infrastructure](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-infrastructure)

[Master Data API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-api)

[Data consistency and synchronization in Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/data-consistency-and-synchronization-in-master-data)

[Master Data best practices](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-best-practices)

[Master Data v2](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-v2)

[Master Data v1](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-v1)

---

Payments

---

Orders

---

Logistics

---

B2B Suite

---

VTEX Sales App

---

UI Customization

---

Message Center

---

Pricing

---

Promotions

---

Infrastructure

---

Search

---

Storefront Permissions

---

[VTEX Activity Flow](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/activity-flow)

---

[VTEX Ads](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/vtex-ads)

---

VTEX Session

---

VTEX Shield

---

[Data Protection Plus](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/data-protection-plus)

---

Weni by VTEX

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides)

[Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data)

[Understanding Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/understanding-master-data)

[Master Data components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components)

Master Data components

Learn about Data Entities, Documents, Fields, and Indexes in Master Data, and how these components work together to structure and optimize data for efficient querying.

This guide introduces the key components of Master Data and their functionalities. These components are conceptually similar to those in traditional database systems, but with distinct terminology:

* **Data Entity**: Represents a table-like structure that contains multiple Documents.
* **Document**: Represents a record (row) within a Data Entity.
* **Field**: Represents an attribute (column) of a Document.
* **Index**: Represents an optimization layer linked to a specific field to speed up searches.

![{"base64":"  ","img":{"width":1518,"height":824,"type":"jpg","mime":"image/jpeg","wUnits":"px","hUnits":"px","length":175429,"url":"https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/master-data-components.jpg"}}](https://read.calvincode.net/reader?url=https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/master-data-components.jpg)

## Data Entity

A Data Entity is analogous to a table in traditional databases. It stores records (or [Documents](#document)) and [Fields](#field), representing the structure of data in Master Data.

Master Data has two versions (V1 and V2):

* **V1:** Data Entities are identified by a two-letter uppercase acronym (e.g., `NT`).
   * Example: `CL` stores customer-related data like name, email, and document; `AD` stores customer address data, such as street, city, and recipient name.
* **V2:** Data Entities are identified by their full name (e.g., `Notification`).

> This module may process personal or sensitive information. Learn more about how VTEX handles data privacy in our [Data privacy](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/data-privacy) guide.

### Document

A Document represents a record (or row) within a Data Entity. Each Document has a unique identifier (the `id` Field).

For example, in the `CL` Data Entity, each customer is represented by a Document that includes fields like `id`, `name`, `email`, and other personal details.

### Field

A Field is a specific attribute or characteristic of a Document within a Data Entity, analogous to columns in a database table. Each Field has a defined data type:

* `string`: Text-based data (e.g., `name`).
* `number`: Numeric data (e.g., `age`).
* `date`: Date-based data (e.g., `birthdate`)
* `object`: A structured data type with key-value pairs.
* `array`: A list of values.
* `null`: Explicitly undefined value.

For example, in the `CL` Data Entity, Fields may include `name`, `email`, `birthdate`, and `document_number`. Each Field has a type that determines its data format:

Consistent structure is enforced across all Documents in a Data Entity based on its defined Fields.

## Index

An Index enables you to search for Documents based on a Field, without needing the Document's `id`. You can create an Index for any Field in a Data Entity.

For example, if the `CL` Data Entity has an Index on the `email` Field, you can retrieve a Document by querying the `email` value instead of the `id`.

Indexes are configured differently depending on the Master Data version:

* **V1:** Managed via the Admin interface. For more information, refer to [Indexes in Master Data V1](https://read.calvincode.net/reader?url=https://help.vtex.com/en/tutorial/setting-up-an-index-on-master-data--tutorials%5F785). Once an Index is set up, you can retrieve Documents using the [Search documents](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/api-reference/masterdata-api%23get-/api/dataentities/-acronym-/search) endpoint with the Field name as the query parameter and the value of Field as the value of the parameter. Example: `/dataentities/CL/search?email=my@email.com`.
* **V2:** Managed via API. Refer to [PUT - Create index](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/api-reference/master-data-api-v2%23put-/api/dataentities/-dataEntityName-/indices) for more information. Once an Index is set up, you can retrieve Documents using the [Search documents](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/api-reference/master-data-api-v2%23get-/api/dataentities/-dataEntityName-/search) endpoint.

When using an `id`, the Index retrieves a single Document at a time, but using an indexed Field allows you to search for Documents based on that Field's value instead.

> Indexes are created when a Document is created or modified. Documents will only have an Index if the Data Entity's Index was set up before or during the Document's creation or modification. Documents created before the Index was set up must be updated to receive it.

Contributors

1

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F77292838%3Fv%3D4%26w=64%26q=75)](https://github.com/julia-rabello)

Was this helpful?

Yes

No

[Suggest Edits (GitHub)](https://read.calvincode.net/reader?url=https://github.com/vtexdocs/dev-portal-content/edit/main/docs/guides/Master-Data/understanding-master-data/master-data-components.md)

[Understanding Master Data« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components//docs/guides/understanding-master-data)[Master Data infrastructureNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components//docs/guides/master-data-infrastructure)

Contributors

1

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F77292838%3Fv%3D4%26w=64%26q=75)](https://github.com/julia-rabello)

ON THIS PAGE

[Data Entity](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23data-entity)

[Document](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23document)[Field](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23field)

[Index](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23index)

Was this helpful?

 Send feedback

[Suggest edits (GitHub)](https://read.calvincode.net/reader?url=https://github.com/vtexdocs/dev-portal-content/edit/main/docs/guides/Master-Data/understanding-master-data/master-data-components.md)

Copy page

On this page

ON THIS PAGE

[Data Entity](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23data-entity)

[Document](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23document)[Field](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23field)

[Index](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components/docs/guides/master-data-components%23index)

On this page

[Github](https://read.calvincode.net/reader?url=https://github.com/vtex-apps)[Help Center](https://read.calvincode.net/reader?url=https://help.vtex.com/)[Community](https://read.calvincode.net/reader?url=https://community.vtex.com/?%5Fga=2.198523433.743584735.1647618303-1974737580.1645714642)[Feedback](https://read.calvincode.net/reader?url=https://docs.google.com/forms/d/e/1FAIpQLSfmnotPvPjw-SjiE7lt2Nt3RQgNUe10ixXZmuO2v9enOJReoQ/viewform?entry.1972292648=developers.vtex.com%26entry.1799503232=)


[System] You are a VTEX documentation expert. You provide accurate, detailed information about VTEX platform, APIs, apps, and Store Framework development.

[User] How do I use the VTEX b2b quotes app? Provide documentation and configuration details.

[Assistant]
Documentation

[Feedback](https://read.calvincode.net/reader?url=https://docs.google.com/forms/d/e/1FAIpQLSfmnotPvPjw-SjiE7lt2Nt3RQgNUe10ixXZmuO2v9enOJReoQ/viewform?entry.1972292648=developers.vtex.com%26entry.1799503232=)

[GuidesLearn how to use our APIs and extend the VTEX platform.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/api-reference)

[App DevelopmentLearn how to build cloud-based apps and integrations.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/app-development)

[Storefront DevelopmentExpress your brand identity creating unique storefronts.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/storefront-development)

[VTEX IO AppsFind pre-built solutions to grow your business.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/vtex-io-apps)

[TroubleshootingFind practical solutions to common development issues.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/troubleshooting)

[Release NotesStay up to date with our latest releases and bug fixes.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/updates/release-notes)

VTEX IO Apps

[Basic components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/basic-components)

---

[Store Components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/store-components)

---

[Advanced components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/advanced-components)

---

[B2B components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/b2b-components)

---

[B2B Suite](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-suite)

[Storefront Permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.storefront-permissions)

[Storefront Permissions UI](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.storefront-permissions-ui)

[B2B Organizations](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-organizations)

[B2B Checkout Settings](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-checkout-settings)

[B2B Orders History](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-orders-history)

[B2B Quotes & Carts](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes)

[B2B Quotes GraphQL API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes-graphql/b2bquotes-graphql-api)

---

[Functional Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/functional-apps)

---

[Layout Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/layout-apps)

---

[Pixel Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/pixel-apps)

---

[My Account - StoreV2 version](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.my-account)

---

[VTEX IO deprecated apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/vtex-io-deprecated-apps)

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides)

[API Reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/api-reference)

[App Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/app-development)

[Storefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/storefront-development)

[VTEX IO Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/vtex-io-apps)

[Troubleshooting](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/troubleshooting)

---

[Release Notes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/updates/release-notes)

VTEX IO Apps

[Basic components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/basic-components)

---

[Store Components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/store-components)

---

[Advanced components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/advanced-components)

---

[B2B components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/b2b-components)

---

[B2B Suite](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-suite)

[Storefront Permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.storefront-permissions)

[Storefront Permissions UI](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.storefront-permissions-ui)

[B2B Organizations](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-organizations)

[B2B Checkout Settings](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-checkout-settings)

[B2B Orders History](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-orders-history)

[B2B Quotes & Carts](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes)

[B2B Quotes GraphQL API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes-graphql/b2bquotes-graphql-api)

---

[Functional Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/functional-apps)

---

[Layout Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/layout-apps)

---

[Pixel Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/pixel-apps)

---

[My Account - StoreV2 version](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.my-account)

---

[VTEX IO deprecated apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/guides/vtex-io-deprecated-apps)

---

[VTEX IO Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/vtex-io-apps)

[B2B Suite](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-suite)

B2B Quotes & Carts

Official extension

Version: 3.0.3

Latest version: 3.0.3

[![{"base64":"  ","img":{"width":110,"height":20,"type":"svg","mime":"image/svg+xml","wUnits":"px","hUnits":"px","url":"https://img.shields.io/badge/all_contributors-0-orange.svg?style=flat-square"}}](https://read.calvincode.net/reader?url=https://img.shields.io/badge/all_contributors-0-orange.svg?style=flat-square)](#contributors-)

> The **B2B Quotes & Carts** app is part of VTEX’s [B2B Suite](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-b2b-suite) solution: a collection of apps that allow stores to manage organizations, storefront roles and permissions, and checkout settings for B2B commerce relationships. We recommend that you use it alongside the other apps in this suite for all functionalities to work as expected.

The B2B shopping experience frequently requires the possibility for customers to request quotes and negotiate prices with sales representatives.

The **B2B Quotes & Carts** app allows customers who are part of [B2B Organizations](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-b2b-organizations) to request a quote for a shopping cart and save it for future use – including its items, product quantities and prices. This enables price negotiations between them and the store’s sales representatives, as well as order approval flows within their organization.

## Before you start

First, make sure you have the [VTEX IO CLI (Command Line Interface)](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-io-documentation-vtex-io-cli-install) installed in your machine.

Note that installing **B2B Quotes & Carts** will also result in [Storefront Permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-storefront-permissions) being installed as a dependency app – it allows you to grant specific storefront roles for B2B users in an organization. This is especially useful for organizations with multiple users who have different responsibilities, such as placing orders, approving orders or managing the organization users. See the [Storefront Permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-storefront-permissions) app documentation for information on the available roles and how to customize their permissions (optional).

If you want to be able to manage roles and permissions on the VTEX Admin, you must install [Storefront Permissions UI](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-storefront-permissions-ui) as well.

Along with this app, we recommend installing [B2B Checkout Settings](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-b2b-checkout-settings), which includes quotes-related functionalities to checkout. For example, it allows you to add a `Create a Quote` button to the checkout’s shopping cart page, as well as “lock” the checkout if a quote is in use, preventing the cart contents from being changed until the order is placed.

## Installation

You can install the **B2B Quotes & Carts** app by running `vtex install vtex.b2b-quotes` in your terminal, using the [VTEX IO CLI](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-io-documentation-vtex-io-cli-installation-and-command-reference).

When you install the **B2B Quotes & Carts** app, a data entity named **quotes** is created in **Master Data V2**. This entity stores all the information related to quotes and saved carts generated through the app.

## How the app works

The **B2B Quotes & Carts** app enables a shared [My Quotes](#my-quotes) page for members of a B2B organization, from where it is possible to create a quote or saved cart and view existing quotes and saved carts.

It is also possible to manage each quote or saved cart’s [details](#quote-details), including the possibility to edit them, request adjustments, approve or decline them or use them to place an order.

In addition, the app enables a set of [email templates](#email-templates) to notify members of the organization of quote status changes through Message Center.

The ability to use these resources depends on having the required [storefront permissions](#storefront-permissions), as explained in the next section.

| **Permission**                                | **Default roles**                                                                                |
| --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Create Quotes and Carts**                   | Store AdminSales AdminSales ManagerSales RepresentativeOrganization AdminOrganization ApproverOrganization Buyer |
| **Access My Cost Center's Quotes and Carts**  | Sales RepresentativeOrganization ApproverOrganization Buyer                                                      |
| **Access My Organization's Quotes and Carts** | Sales ManagerOrganization Admin                                                                                |
| **Access All Quotes and Carts**               | Store AdminSales Admin                                                                                |
| **Place Orders from Quotes and Carts**        | Store AdminSales AdminSales ManagerSales RepresentativeOrganization AdminOrganization Approver                   |
| **Decline Quotes and Carts**                  | Store AdminSales AdminSales ManagerSales RepresentativeOrganization AdminOrganization Approver                   |
| **Edit My Cost Center's Quotes and Carts**    | Sales Representative                                                                                |
| **Edit My Organization's Quotes and Carts**   | Sales Manager                                                                                |
| **Edit All Quotes and Carts**                 | Store AdminSales Admin                                                                                |

If you want to be able to manage roles and permissions for **B2B Quotes & Carts** on the VTEX Admin, you must install [Storefront Permissions UI](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-storefront-permissions-ui) and refer to its documentation.

### My Quotes

The **B2B Quotes & Carts** app enables the **My Quotes** page, an interface to manage quotes and saved carts in the storefront, provided that the user is logged in and has the required storefront permissions.

To access **My Quotes**, customers or sales users must follow the instructions below.

1. Access the storefront and log in.
2. Click `Hello, {name}`.
3. Click on **My Account**.
4. Go to **Quotes and Saved Carts** on the sidebar. You will see the page below.

![{"base64":"  ","img":{"width":1819,"height":606,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":54170,"url":"https://user-images.githubusercontent.com/77292838/161637102-66a15213-e70d-421a-9e90-5a68ddc25825.png"}}](https://read.calvincode.net/reader?url=https://user-images.githubusercontent.com/77292838/161637102-66a15213-e70d-421a-9e90-5a68ddc25825.png)

> Quotes and saved carts are shown together in the same table. The differences are the following: \_ Only quotes can have a status of **Pending** or **Revised**. \_ Sales users are not notified when saved carts are created. \* It is possible to edit a saved cart such that it becomes a quote, as explained in [Quote Details](#quote-details).

In this page, it is possible to use the following resources:

* **Search bar**: allows you to look up specific quotes or saved carts by name.
* **Filters**: allows you to filter the displayed quotes or saved carts by _Status_, _Organization \_or \_Cost Center._ The two last options are available under `More`.
* **New quote**: allows you to create a quote or saved cart by clicking on the `New Quote` button. See more details on this in the [Creating a quote or saved cart](#creating-a-quote-or-saved-cart) section.

The list of quotes and saved carts displays the following information:

* **Ref. Name:** the quote or saved cart’s reference name.
* **Subtotal:** subtotal of the shopping cart associated with the quote or saved cart.
* **Created by:** email of the user who created the quote or saved cart.
* **Created on:** date when the quote or saved cart was created, in the MM/DD/YYYY format.
* **Expiration:** date when the quote or saved cart will expire, in the MM/DD/YYYY format.
* **Status:** current state of the quote or saved cart, including the following options:
   * **Ready**: the quote or saved cart is ready to be used to place an order.
   * **Pending**: the quote is waiting for review and adjustment by a sales user.
   * **Revised**: the quote is waiting for additional review and adjustment by a sales user.
   * **Declined**: the quote or saved cart has been declined and cannot be used to place an order.
   * **Expired**: the quote or saved cart has reached its expiration date and cannot be used to place an order.
   * **Placed**: the quote or saved cart has been used to place an order and cannot be used again.
* **Last Update:** date when the quote or saved cart was updated for the last time, in the MM/DD/YYYY format.
* **Organization:** name of the organization the quote or saved cart is associated with.
* **Cost Center:** name of the cost center the quote or saved cart is associated with.

From the list, users may click on any row or click on ![](https://user-images.githubusercontent.com/77292838/159766633-dfcb818f-6bd7-4cd0-92dc-9c682fb50d04.png) **\> Details** to view and edit the [details](#quote-details) of that quote or saved cart, according to what their permissions allow.

Depending on the current user’s [storefront permissions](#storefront-permissions), the **My Quotes** page will show a list of quotes and saved carts containing one of the following:

| **Permission**                                | **Content**                                                                     |
| --------------------------------------------- | ------------------------------------------------------------------------------- |
| **Access My Cost Center's Quotes and Carts**  | All quotes and saved carts created by users in the current user’s cost center.  |
| **Access My Organization's Quotes and Carts** | All quotes and saved carts created by users in the current user’s organization. |
| **Access All Quotes and Carts**               | All quotes and saved carts in the current store, regardless of organization.    |

### Creating a quote or saved cart

In order to create a quote or saved cart, it is necessary to have the **Create Quotes and Carts** [permission](#storefront-permissions). After adding products to the cart in the storefront, users with these permissions can use the contents of their cart to create a saved cart or to request a quote. They should follow the instructions below.

1. Fill in the shopping cart with the desired products.
2. Take one of the following actions to create a quote or saved cart:
   * Clicking the `Create a Quote` button during checkout, provided that **B2B Checkout Settings** is installed and this button is enabled in the app’s [configuration](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-b2b-checkout-settings%23configuration).
   * Navigating to the `/b2b-quotes/create` route.
   * Clicking the `+ New` button on the **My Quotes** page.
   Any of these paths will lead to the **Create Quote** page, illustrated below.
3. Fill in the quote or saved cart’s **Name**.
4. Make sure that all the information in the **Create Quote** page is correct:
   * **Original Subtotal:** subtotal of the shopping cart before any discounts.
   * **Percentage Discount:** percentage of the discount offered by a sales representative.
   * **Quoted Subtotal:** subtotal of the quote, including any discounts offered by sales representatives.
   * **Image:** image of the selected product.
   * **Ref. Code:** reference code of the selected product.
   * **Name:** name of the product.
   * **Original Price:** original price of the product.
   * **Quoted Price:** price of the product including any discounts offered by sales representatives.
   * **Quantity:** quantity of items.
   * **Total:** total value considering the quoted price and the quantity of items.
5. Write a note in the optional **Add Note** field, if necessary.
Notes added here will be visible as part of the quote or saved cart’s [Update History](#quote-details) and can be seen by salespeople or other members of your organization and cost center. For example, if a user wishes to request a specific discount from the B2B store’s salesperson, they may include this request as a note.
6. Click on one of the following options:
   * `Save for later`: clicking on this button will result in the creation of a saved cart. The status of the newly created saved cart will be set as **Ready**, meaning that it can immediately be used to place an order by any user within that organization or cost center who has the **Place Orders from Quotes and Carts** [permission](#storefront-permissions).
   * `Request quote`: clicking on this button will result in the creation of a quote. The status of the newly created quote will be set as **Pending**, meaning that it will need to be reviewed and adjusted by a salesperson before any special discounts can be applied.
   Note that a **Pending** quote can still be used to place an order, as it is essentially a saved cart at this point, with the original item quantities and prices from the user’s shopping cart.

The items in the table, along with the quantities and prices shown, will be saved when the quote or saved cart is created.

![{"base64":"  ","img":{"width":1506,"height":710,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":56657,"url":"https://user-images.githubusercontent.com/77292838/161637106-44d41347-2ee4-4191-bfe9-8dc7e67c783e.png"}}](https://read.calvincode.net/reader?url=https://user-images.githubusercontent.com/77292838/161637106-44d41347-2ee4-4191-bfe9-8dc7e67c783e.png)

### Quote Details

The **Quote Details** page displays all the information about a specific quote or saved cart, as well as the available actions, depending on its status and the user’s [storefront permissions](#storefront-permissions).

Users can access this page through the storefront by going to **My Account > Quotes and Saved Carts**.

![{"base64":"  ","img":{"width":1210,"height":756,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":61684,"url":"https://user-images.githubusercontent.com/77292838/161637111-043851a7-9215-49eb-81d3-42f5a8b3936c.png"}}](https://read.calvincode.net/reader?url=https://user-images.githubusercontent.com/77292838/161637111-043851a7-9215-49eb-81d3-42f5a8b3936c.png)

This page displays the following information about a specific quote:

* **Name:** reference name of the quote or saved cart.
* **Original Subtotal:** subtotal of the shopping cart before any discounts.
* **Percentage Discount:** percentage of the discount offered by a sales representative.
* **Quoted Subtotal:** subtotal of the quote, including any discounts offered by sales representatives.
* **Expiration:** date when the quote or saved cart will expire, in the MM/DD/YYYY format.
* **Status:** current state of the quote or saved cart, as in [My Quotes](#my-quotes).
* **Image:** image of the selected product.
* **Ref. Code:** reference code of the selected product.
* **Name:** name of the product.
* **Original Price:** original price of the product.
* **Quoted Price:** price of the product including any discounts offered by sales representatives.
* **Quantity:** quantity of items.
* **Total:** total value considering the quoted price and the quantity of items.
* **Update History:** includes a history of all events related to the quote, such as its creation and discounts offered, including notes if there are any.
* **Add Note:** optional field to write comments or notes. Notes added here will be visible as part of the quote or saved cart’s [Update History](#update-history). For example, if a user wishes to request a specific discount from their salesperson, they may include this request as a note.

The following actions are available, depending on the user’s storefront permissions:

| Actions                                                                                | Required storefront permissions                                                                                |
| ----------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| [Editing a quote](#editing-a-quote)                                                             | Any of the following:Edit My Cost Center's Quotes and CartsEdit My Organization's Quotes and CartsEdit All Quotes and Carts       |
| [Requesting additional adjustments to a quote](#requesting-additional-adjustments-to-a-quote)   | Any of the following:Access My Cost Center's Quotes and CartsAccess My Organization's Quotes and CartsAccess All Quotes and Carts |
| [Declining a quote or saved cart](#declining-a-quote-or-saved-cart)                             | Decline Quotes and Carts                                                                                |
| [Using a quote or saved cart to place an order](#using-a-quote-or-saved-cart-to-place-an-order) | Place Orders from Quotes and Carts                                                                                |

#### Editing a quote

Users with **Edit** [permissions](#storefront-permissions) – who are typically users associated with any of the Sales roles or the Store Admin role – can edit quotes in the **Quote Details** page as follows:

* Change the price or quantity of each SKU by editing them directly in the **Quoted Price** and **Quantity** columns of the product list within the quote.
* **Apply Percentage Discount:** apply a percentage discount to the entire quote by dragging the discount bar up to the desired percentage. This will override any changes made to individual product prices.
* **Expiration Date Change:** change the quote’s expiration date.
* **Add Note:** write an optional comment.

After making any of the above edits on the quote details page, the user must save the quote by clicking `Save quote`.

This will have the effect of setting the quote’s status to **Ready** and notifying any user who has previously interacted with the quote of the change via email – check [Email templates](#email-templates) for more details on this notification.

![{"base64":"  ","img":{"width":1920,"height":1908,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":203488,"url":"https://user-images.githubusercontent.com/77292838/161637108-aeaeef58-296f-407a-9c00-b5ffe9d509fb.png"}}](https://read.calvincode.net/reader?url=https://user-images.githubusercontent.com/77292838/161637108-aeaeef58-296f-407a-9c00-b5ffe9d509fb.png)

> To take discounts into consideration, the **B2B Quotes and Carts** app is integrated with the [Order Authorization](https://read.calvincode.net/reader?url=https://help.vtex.com/en/tutorial/how-order-authorization-works--3MBK6CmKHAuUjMBieDU0pn) system. If there is a manual discount rule that will automatically deny a discount above a certain percent, **B2B Quotes and Carts** will not allow a discount above this amount to be applied.

#### Requesting additional adjustments to a quote

Users who lack any of the **Edit** permissions but have any of the **Access** [permissions](#storefront-permissions) can add additional notes to a quote or saved cart if its current status is **Ready**, **Pending**, or **Revised**.

If a quote is **Ready**, meaning that it has been adjusted and saved by a sales user, its status will change to **Revised** when an organization user adds notes and clicks `Submit to Sales Rep`. This is intended as a way for the organization user to request additional adjustments to pricing or quantity. All users who have previously interacted with the quote will receive a notification including the contents of the notes field – check [Email templates](#email-templates) for more details on this notification.

#### Declining a quote or saved cart

A declined quote or saved cart can no longer be edited or used to place an order. Users with the **Decline Quotes and Carts** [permission](#storefront-permissions) may decline a quote or saved cart if its current status is **Ready**, **Pending** or **Revised**. This can be done by clicking the `Decline` button on the quote details page.

All users who have previously interacted with the quote will be notified that it has been declined – check [Email templates](#email-templates) for more details on this notification.

#### Using a quote or saved cart to place an order

Users with the **Place Orders from Quotes and Carts** [permission](#storefront-permissions) may use a quote or saved cart to place an order if its current status is **Ready**, **Pending**, or **Revised**.

They can do this by clicking the `Use Quote` button on the quote details page. The user will be redirected to checkout with the contents of the quote or saved cart added to their current cart. Anything that was previously in the user’s cart will be cleared.

If the [B2B Checkout Settings](https://read.calvincode.net/reader?url=https://developers.vtex.com/vtex-developer-docs/docs/vtex-b2b-checkout-settings) app is installed, the checkout will be in a “locked” state until the order is placed, meaning that product quantities cannot be changed, and products cannot be added or removed. If there are not enough items in stock to meet the quantity specified in the quote or saved cart, the amount will be automatically adjusted. If a given product has no availability, checkout will allow it to be removed from the cart.

Once the order has been placed, the quote or saved cart’s status will automatically change to **Placed**, after which point it cannot be used again.

### Email templates

The **B2B Quotes & Carts** app provides a set of three email templates to be sent to B2B users, triggered automatically based on specific changes:

| **Template name** | **Recipients**                                                     | **Email trigger**                                                                                |
| ----------------- | ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Quote created     | Only users with the **sales-admin** role receive this email.       | Sent only if all of the following conditions are met:• The quote creator does not have permission to edit quotes.• The quote must be created using the Request quote button and cannot be saved for later. |
| Quote placed      | All users who edited, requested adjustments or approved the quote. | Sent when an order is placed from the existing quote.                                                                                |
| Quote updated     | All users who interacted with the quote.                           | Sent when the quote is updated in any way, including changes in discounts, updates to expiration dates, addition of new notes, or quote refusal.                                                           |

If you want to view or edit any of these templates, follow the steps below.

1. In the VTEX Admin, go to **Customer > Message center > Templates**.
2. In the search bar, type `quote`.
3. Click on the template you want to view or edit.
4. Make the desired changes in the template. You can learn more about editing **Message Center** templates by reading our documentation on [How to create and edit transactional email templates](https://read.calvincode.net/reader?url=https://help.vtex.com/en/tracks/transactional-emails--6IkJwttMw5T84mlY9RifRP/335JZKUYgvYlGOJgvJYxRO).
5. Click on `Save`.

## **Configuration (optional)**

To change the app’s settings, access **Account Settings** \> **B2B Quotes** in the VTEX Admin.

On this page, you can configure the following option:

* **Default expiration period (in days) for quotes and saved carts:** this field allows you to configure the default expiration date for new quotes requested by customers in your store. The default value is 30 days. The minimum value you can set is 1, and there is no maximum value.

Make sure you click on `Save Settings` after any changes.

Note that users with [storefront permissions](#storefront-permissions) to edit quotes will be able to adjust the expiration dates of individual quotes as needed.

![{"base64":"  ","img":{"width":1261,"height":800,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":17947,"url":"https://user-images.githubusercontent.com/6306265/163218059-903cfbcf-0077-45d2-9457-19ee0ba4d5c8.png"}}](https://read.calvincode.net/reader?url=https://user-images.githubusercontent.com/6306265/163218059-903cfbcf-0077-45d2-9457-19ee0ba4d5c8.png)

[B2B Orders History« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-orders-history)[B2B Quotes GraphQL APINext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes-graphql/b2bquotes-graphql-api)

See also

[VTEX App StoreVTEX IO Apps](https://read.calvincode.net/reader?url=https://apps.vtex.com/)

ON THIS PAGE

[Before you start](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23before-you-start)

[Installation](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23installation)

[How the app works](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23how-the-app-works)

[My Quotes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23my-quotes)[Creating a quote or saved cart](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23creating-a-quote-or-saved-cart)[Quote Details](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23quote-details)[Email templates](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23email-templates)

[Configuration (optional)](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.b2b-quotes/docs/apps/vtex.b2b-quotes%23configuration-optional)

Was this helpful?

[Github](https://read.calvincode.net/reader?url=https://github.com/vtex-apps)[Help Center](https://read.calvincode.net/reader?url=https://help.vtex.com/)[Community](https://read.calvincode.net/reader?url=https://community.vtex.com/?%5Fga=2.198523433.743584735.1647618303-1974737580.1645714642)[Feedback](https://read.calvincode.net/reader?url=https://docs.google.com/forms/d/e/1FAIpQLSfmnotPvPjw-SjiE7lt2Nt3RQgNUe10ixXZmuO2v9enOJReoQ/viewform?entry.1972292648=developers.vtex.com%26entry.1799503232=)