[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 faststore using themes 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/faststore/using-themes-components/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-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/faststore/using-themes-components/docs/app-development)

[Storefront DevelopmentExpress your brand identity creating unique storefronts.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-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/faststore/using-themes-components/docs/vtex-io-apps)

[TroubleshootingFind practical solutions to common development issues.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-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/faststore/using-themes-components/updates/release-notes)

Storefront Development

[Getting started with storefront solutions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/getting-started-with-storefront-solutions)

---

[FastStore](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore)

[FastStore versions and support levels](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/getting-started-faststore-versions-and-support-levels)

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/getting-started-overview)

[FastStore WebOps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/webops-dashboard)

[Headless CMS](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/headless-cms-overview)

[Developer tools and references](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/developer-tools-overview)

[Styling](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/styling-overview)

[Themes reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/themes-overview)

[Global tokens](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/global-tokens-overview)

[Iconography](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/styling-icons)

[Using themes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-overview)

[Styling the layout and breakpoints](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-mixins-breakpoints)

[Styling a component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components)

[Styling a section](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-pages)

[Importing FastStore UI component styles](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-importing-ui-components-styles)

[UI components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/components-index)

[Implementing storefront features](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/storefront-features-overview)

[FastStore API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/faststore-api-overview)

[FastStore SDK](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/sdk-overview)

[Developing and overriding UI components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/developing-and-overriding-components-overview)

[Extending the FastStore API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/api-extensions-overview)

[Managing URLs with redirects and rewrite paths](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/routing-managing-urls-with-redirects-and-rewrite-paths)

[Managing performance](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/managing-performance-overview)

[SEO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/seo-overview)

[Going live](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/go-live-overview)

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

---

[Store Framework](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/store-framework)

---

(Legacy) CMS Portal

---

[Storefront best practices](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/storefront-best-practices)

---

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

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

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

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

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

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

---

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

Storefront Development

[Getting started with storefront solutions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/getting-started-with-storefront-solutions)

---

[FastStore](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore)

[FastStore versions and support levels](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/getting-started-faststore-versions-and-support-levels)

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/getting-started-overview)

[FastStore WebOps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/webops-dashboard)

[Headless CMS](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/headless-cms-overview)

[Developer tools and references](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/developer-tools-overview)

[Styling](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/styling-overview)

[Themes reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/themes-overview)

[Global tokens](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/global-tokens-overview)

[Iconography](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/styling-icons)

[Using themes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-overview)

[Styling the layout and breakpoints](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-mixins-breakpoints)

[Styling a component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components)

[Styling a section](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-pages)

[Importing FastStore UI component styles](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-importing-ui-components-styles)

[UI components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/components-index)

[Implementing storefront features](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/storefront-features-overview)

[FastStore API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/faststore-api-overview)

[FastStore SDK](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/sdk-overview)

[Developing and overriding UI components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/developing-and-overriding-components-overview)

[Extending the FastStore API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/api-extensions-overview)

[Managing URLs with redirects and rewrite paths](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/routing-managing-urls-with-redirects-and-rewrite-paths)

[Managing performance](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/managing-performance-overview)

[SEO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/seo-overview)

[Going live](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/go-live-overview)

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

---

[Store Framework](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/store-framework)

---

(Legacy) CMS Portal

---

[Storefront best practices](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/storefront-best-practices)

---

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

[FastStore](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore)

[Styling](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/styling-overview)

[Using themes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-overview)

Styling a component

Customize the styling of a component by using design tokens that align with your store's branding.

Customize a component's styling using design tokens that align with your store's branding. In this guide, you'll learn how to customize the style of a FastStore component using its local tokens. For this tutorial, we will use the `Listing` variant from the [Price Component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/atoms-price).

This is how prices look like in our current homepage (with the default color black) :

![{"base64":"  ","img":{"width":2868,"height":1580,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":2033042,"url":"https://vtexhelp.vtexassets.com/assets/docs/src/homepage-prices-default___2751f604ab85b1dcfa47c942e318a7cd.png"}}](https://read.calvincode.net/reader?url=https://vtexhelp.vtexassets.com/assets/docs/src/homepage-prices-default___2751f604ab85b1dcfa47c942e318a7cd.png)

> Remember that when changing a component's style, you can use [Global tokens](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/global-tokens-overview) or styling from scratch using your preferred styling tool. However, changing the value of a global token may affect different parts of your store's interface.

1. In your `custom-theme.scss` theme file, add the `data-fs-price` data attribute:

src/themes/custom-theme.scss

`1

 ...

2

 // --------------------------------------------------------

3

 // FS UI Components

4

 // --------------------------------------------------------

5

 // Add here the customizations for FastStore UI components.

6

 [data-fs-price] {}

`

> Each FastStore UI component has a list of data attributes that can be used for further customization. You can find it in the component's [customization section](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/atoms-price%23customization).

1. Now, add the `Listing` variant using the `Price` [local token](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/atoms-price%23design-tokens). For this tutorial, we will use the shade of red `#cb4242`:

src/themes/custom-theme.scss

`1

2

 ...

3

 // --------------------------------------------------------

4

 // FS UI Components

5

 // --------------------------------------------------------

6

 [data-fs-price] {

7

 --fs-price-listing-color: #cb4242;

8

 }

`

1. Save your changes and check your browser to see the new color of your listing price. You may need to refresh the page.

![{"base64":"  ","img":{"width":2872,"height":1580,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":2033697,"url":"https://vtexhelp.vtexassets.com/assets/docs/src/homepage-prices-design-token-red___cd0b15da26d23e0d0f4a2bd68ae6ca14.png"}}](https://read.calvincode.net/reader?url=https://vtexhelp.vtexassets.com/assets/docs/src/homepage-prices-design-token-red___cd0b15da26d23e0d0f4a2bd68ae6ca14.png)

Since we are not specifying the `Price` component context, we are applying this change to all the `Price (data-fs-price)` occurrences where the variant is `listing`. If you want to apply this change in only one store component, follow the next step [Customizing a component within a section](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components%23customizing-a-component-within-a-section).

## Customizing a component within a section

The starter provides a set of [native sections](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/building-sections-list-of-native-sections), each consisting of different components with unique functionalities. You can customize the components inside its section using the available section and the component's data attributes.

In the example below, we will change the color of the [Price](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/atoms-price%23customization) component with the `listing` variant. However, we only want to apply this change to the `ProductShelf` section. So, we can use the `data-fs-product-shelf` data-attribute to select the [ProductShelf component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/organisms-product-shelf%23customization) in this section.

1. In your `custom-theme.scss` theme file , add the following code:

src/themes/custom-theme.scss

`1

2

 ...

3

 // --------------------------------------------------------

4

 // FS UI Components

5

 // --------------------------------------------------------

6

 [data-fs-price] {

7

 --fs-price-listing-color: #cb4242;

8

 }

9

 [data-fs-product-shelf]{

10

 [data-fs-price][data-fs-price-variant="listing"] {

11

 background-color: var(--fs-color-warning-bkg);

12

 }

13

 }

`

1. Save your changes and check your browser to see a yellow background color added to listing prices inside the `ProductShelf`. You may need to refresh the page.

![{"base64":"  ","img":{"width":2870,"height":2062,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":2638258,"url":"https://vtexhelp.vtexassets.com/assets/docs/src/homepage-prices-section-background___a71b4bbf2239e560c8d61bf66cb6395d.png"}}](https://read.calvincode.net/reader?url=https://vtexhelp.vtexassets.com/assets/docs/src/homepage-prices-section-background___a71b4bbf2239e560c8d61bf66cb6395d.png)

Notice that in this example, only one section, the `ProductShelf,` received the change. You can use this same approach whenever you need to sync FastStore UI Components.

## Customizing a new component when using override

To customize a native component in FastStore to suit your store's needs, you can use the **override** feature. When [overriding a native component](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/overrides-components-and-props-v1%23overriding-a-native-component) and using your custom component, you may need to style it from scratch. In this section, you'll learn how to style a custom component.

### Before you begin

Make sure you have a basic understanding of [overriding native components and props](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/overrides-components-and-props-v1). Additionally, we recommend using [CSS Module](https://read.calvincode.net/reader?url=https://nextjs.org/docs/app/building-your-application/styling/css-modules) to style your new component.

> FastStore components support [Sass](https://read.calvincode.net/reader?url=https://sass-lang.com/) for styling by default, but you can work with your desired tool.

For better understanding, we will use the example from the [Overriding Native Components and Props](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/overrides-components-and-props-v1) guide. This example demonstrates how to create a new `BuyButton`, the `CustomBuyButton` in the `ProductDetails` section. To follow along this section, make sure to create the `CustomBuyButton`.

### Instructions

1. Once you have created the `CustomBuyButton` component, create a new file called `CustomBuyButtons.module.scss`.

![{"base64":"  ","img":{"width":2342,"height":906,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":269791,"url":"https://vtexhelp.vtexassets.com/assets/docs/src/custom-buy-button-component-code___25c01fd818e1fab4247e1f0f77df4186.png"}}](https://read.calvincode.net/reader?url=https://vtexhelp.vtexassets.com/assets/docs/src/custom-buy-button-component-code___25c01fd818e1fab4247e1f0f77df4186.png)

1. Add the following code to the `CustomBuyButtons.module.scss` file:

CustomBuyButton.module.scss

`1

.CustomBuyButton {

2

 --fs-button-border-radius: var(--fs-border-radius-pill);

3

 --fs-button-padding: 0 var(--fs-spacing-5);

4

5

 color: var(--fs-color-text-inverse);

6

7

 [data-fs-button-wrapper] {

8

 background-color: #E31C58;

9

 }

10

}

`

> You can use FastStore UI components' customization data attribute to ease your styling process. In this example, we used `data-fs-button-wrapper`.

To ensure visual consistency with your store's theme, we highly recommend utilizing the [global tokens](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/global-tokens-overview) whenever possible. You can also take advantage of the design tokens set provided by [FastStore UI Components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/components-index).

1. Restart the server and check the color and shape of your `CustomBuyButton` component:

![{"base64":"  ","img":{"width":2128,"height":824,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":245649,"url":"https://vtexhelp.vtexassets.com/assets/docs/src/custom-buy-button-component-preview___a8e5bb897bc16e41c8a7540ea7da25ec.png"}}](https://read.calvincode.net/reader?url=https://vtexhelp.vtexassets.com/assets/docs/src/custom-buy-button-component-preview___a8e5bb897bc16e41c8a7540ea7da25ec.png)

Contributors

1

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

Was this helpful?

Yes

No

[Suggest Edits (GitHub)](https://read.calvincode.net/reader?url=https://github.com/vtexdocs/dev-portal-content/edit/main/docs/faststore/docs/styling/using-themes/components.mdx)

[Styling the layout and breakpoints« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-mixins-breakpoints)[Styling a sectionNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-pages)

See also

[ OverviewStorefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/themes-overview)[Developing and overriding UI componentsStorefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/building-sections-overview)

Contributors

1

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

ON THIS PAGE

[Customizing a component within a section](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23customizing-a-component-within-a-section)

[Customizing a new component when using override](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23customizing-a-new-component-when-using-override)

[Before you begin](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23before-you-begin)[Instructions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23instructions)

Was this helpful?

 Send feedback

[Suggest edits (GitHub)](https://read.calvincode.net/reader?url=https://github.com/vtexdocs/dev-portal-content/edit/main/docs/faststore/docs/styling/using-themes/components.mdx)

Copy page

On this page

ON THIS PAGE

[Customizing a component within a section](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23customizing-a-component-within-a-section)

[Customizing a new component when using override](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23customizing-a-new-component-when-using-override)

[Before you begin](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23before-you-begin)[Instructions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/faststore/using-themes-components/docs/guides/faststore/using-themes-components%23instructions)

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 get marketplace data orders api 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/get-marketplace-data-orders-api/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/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/get-marketplace-data-orders-api/docs/app-development)

[Storefront DevelopmentExpress your brand identity creating unique storefronts.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/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/get-marketplace-data-orders-api/docs/vtex-io-apps)

[TroubleshootingFind practical solutions to common development issues.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/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/get-marketplace-data-orders-api/updates/release-notes)

Guides

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

---

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

---

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

---

Integration Guides

---

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

---

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

---

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

---

Payments

---

Orders

[Feed v3](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/orders-feed)

[Order modifications](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/order-modifications)

[Change seller](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/change-seller)

[Cancel order](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/order-canceling-improvements)

[Actions in orders](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/actions-orders)

[Fetching marketplace information with the Orders API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api)

[Fetching payment details from a Mercado Libre order with Orders API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-payment-data-mercado-libre-orders-api)

[Formatting order invoicing time via API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/formatting-order-invoicing-time)

[Using VTEX Admin filters on orders via API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/using-orders-management-filters-in-api)

[Adding a second address for invoicing an order](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/adding-a-second-address-to-the-order)

Subscriptions

---

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/get-marketplace-data-orders-api/docs/guides/activity-flow)

---

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

---

VTEX Session

---

VTEX Shield

---

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

---

Weni by VTEX

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides)

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

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

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

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

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

---

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

Guides

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

---

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

---

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

---

Integration Guides

---

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

---

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

---

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

---

Payments

---

Orders

[Feed v3](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/orders-feed)

[Order modifications](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/order-modifications)

[Change seller](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/change-seller)

[Cancel order](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/order-canceling-improvements)

[Actions in orders](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/actions-orders)

[Fetching marketplace information with the Orders API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api)

[Fetching payment details from a Mercado Libre order with Orders API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-payment-data-mercado-libre-orders-api)

[Formatting order invoicing time via API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/formatting-order-invoicing-time)

[Using VTEX Admin filters on orders via API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/using-orders-management-filters-in-api)

[Adding a second address for invoicing an order](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/adding-a-second-address-to-the-order)

Subscriptions

---

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/get-marketplace-data-orders-api/docs/guides/activity-flow)

---

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

---

VTEX Session

---

VTEX Shield

---

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

---

Weni by VTEX

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides)

Orders

[Actions in orders](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/actions-orders)

[Fetching marketplace information with the Orders API](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api)

Fetching marketplace information with the Orders API

The information contained in ecommerce invoices may vary according to business laws in each country. It is possible, for example, that you are required to include payment method information in case a sale is made through an intermediator.

VTEX stores this data during checkout and makes it available to sellers integrated with different types of marketplaces.

It is possible to see who the marketplace is by checking the order object with the [Get order API request](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/api-reference/orders-api%23overview%23getorder), in the `affiliateId` field, like in the example below.

`1

{

2

 "emailTracked": "a27499cad31f42b7a771ae34f57c8358@ct.vtex.com.br",

3

 "approvedBy": null,

4

 "cancelledBy": null,

5

 "cancelReason": null,

6

 "orderId": "v5195004lux-01",

7

 "sequence": "502556",

8

 "marketplaceOrderId": "880102018018-01",

9

 "marketplaceServicesEndpoint": "http://oms.vtexinternal.com.br/api/oms?an=luxstore",

10

 "sellerOrderId": "00-v5195004lux-01",

11

 "origin": "Fulfillment",

12

 "affiliateId": "ABC",

13

 "salesChannel": "1",

14

 "merchantName": null,

15

 "status": "handling",

16

 "statusDescription": "Preparando Entrega",

17

 "value": 1160,

18

 "creationDate": "2019-01-28T20:09:43.8999580+00:00",

19

 "lastChange": "2019-02-06T20:46:11.7010747+00:00",

20

…

`

> In case of sellers using the [Multilevel Omnichannel Inventory](https://read.calvincode.net/reader?url=https://help.vtex.com/en/tutorial/multilevel-omnichannel-inventory--7M1xyCZWUyCB7PcjNtOyw4%23) feature, the `affiliateId` field identifies the marketplace in the level directly above it. This means that if a seller on the third level receives a fulfillment order made in a marketplace in the first level, the order’s `affiliateId` will refer to the second level marketplace. Payment method information can be accessed in two different ways depending on the type of marketplace.

## VTEX marketplaces

VTEX clients who are sellers of other VTEX clients can access intermediator payment method data in the order object, in the `userPaymentInfo.paymentMethod` array, within the `invoiceData` object. See the example below.

`1

...

2

"invoiceData": {

3

 "userPaymentInfo": {

4

 "paymentMethod": [

5

 "creditCardPaymentGroup"

6

 ]

7

 }

8

}

9

...

`

The `paymentMethod` array includes strings which follow this pattern `{payment-group-name}PaymentGroup`. There are dozens of possible values, depending on the payment groups used by the marketplace. These are some examples:

* `"creditCardPaymentGroup"`
* `"debitCardPaymentGroup"`
* `"instantPaymentPaymentGroup"`
* `"promissoryPaymentGroup"`
* `"PayPalPlusPaymentGroup"`
* `"OneBuyPaymentGroup"`
* `"virtualDebitEloPaymentGroup"`
* `"foodCardPaymentGroup"`
* `"giftCardPaymentGroup"`
* `"debitPaymentGroup"`
* `"PaymentHubPaymentGroup"`
* `"PagosNetPaymentGroup"`
* `"bankInvoicePaymentGroup"`
* `"PagosWebPaymentGroup"`
* `"cardPromissoryPaymentGroup"`
* `"SamsungPayPaymentGroup"`

> For external sellers connected to VTEX marketplaces this data is also sent in the `invoiceData` object, in the format described above.

## Natively integrated external marketplaces

VTEX provides native connectors that allow our clients to connect to external marketplaces. We store intermediator data and make it available to sellers integrating with:

* B2W
* Via Varejo
* Magazine Luiza
* Mercado Libre
* Amazon
* Centauro
* Dafiti
* Wish

In this scenario, marketplace payment method information is stored in the `customData` object in the [orderForm](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/api-reference/checkout-api%23overview) data structure.

The following marketplaces are also natively integrated, however, their payment information is not automatically stored in the customData object.

* Carrefour
* Netshoes

### Fetching external marketplace payment method data

This is an example of what you might find in the `customData` object of the order object when using the Get order request:

`1

{

2

 ...

3

 "customData": {

4

 "customApps": [

5

 {

6

 "id": "CN-Viavarejo-Integration",

7

 "fields": {

8

 "marketplacePaymentMethod": "credit_card"

9

 }

10

 }

11

 ]

12

 }

13

 ...

14

}

`

> The Checkout API allows integrators to create customizable fields in the shopping cart through the `customData` object. Their middleware can create extra fields in the `orderForm` data structure and set the value of each of these fields when placing an order, so that this additional information can be retrieved when fetching order details with the Orders API. For orders made in marketplaces with native VTEX connectors, payment method will be available in the `marketplacePaymentMethod` field. These are the possible values for this field:

* `"credit_card"`
* `"debit_card"`
* `"bank_slip"`
* `"bank_deposit"`
* `"pix"`
* `"digital_wallet"`
* `"gift_card"`
* `"virtual_credit"`
* `"payment_method_not_informed"`

Contributors

1

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/_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/Orders/actions-orders/get-marketplace-data-orders-api.md)

[Actions in orders« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api//docs/guides/actions-orders)[Fetching payment details from a Mercado Libre order with Orders APINext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api//docs/guides/get-payment-data-mercado-libre-orders-api)

Contributors

1

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

ON THIS PAGE

[VTEX marketplaces](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api%23vtex-marketplaces)

[Natively integrated external marketplaces](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api%23natively-integrated-external-marketplaces)

[Fetching external marketplace payment method data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api%23fetching-external-marketplace-payment-method-data)

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/Orders/actions-orders/get-marketplace-data-orders-api.md)

Copy page

On this page

ON THIS PAGE

[VTEX marketplaces](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api%23vtex-marketplaces)

[Natively integrated external marketplaces](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api%23natively-integrated-external-marketplaces)

[Fetching external marketplace payment method data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/get-marketplace-data-orders-api/docs/guides/get-marketplace-data-orders-api%23fetching-external-marketplace-payment-method-data)

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 setting up the spf 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/setting-up-the-spf/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/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/setting-up-the-spf/docs/app-development)

[Storefront DevelopmentExpress your brand identity creating unique storefronts.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/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/setting-up-the-spf/docs/vtex-io-apps)

[TroubleshootingFind practical solutions to common development issues.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/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/setting-up-the-spf/updates/release-notes)

Guides

[VTEX Platform Overview](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/vtex-platform-overview)

---

[API usage](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/api-usage)

---

[Getting started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/getting-started)

---

Integration Guides

---

[Catalog](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/catalog-integration)

---

[Checkout](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/checkout-api-overview)

---

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

---

Payments

---

Orders

---

Logistics

---

B2B Suite

---

VTEX Sales App

---

UI Customization

---

Message Center

[Setting up DKIM for transactional emails](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-dkim-for-transactional-emails)

[Setting up the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf)

[How to set up functions in the Message Center templates](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/how-to-set-up-functions-in-the-message-center-templates)

[Including order variables in the transactional email template](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/including-order-variables-in-the-transactional-email-template)

---

Pricing

---

Promotions

---

Infrastructure

---

Search

---

Storefront Permissions

---

[VTEX Activity Flow](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/activity-flow)

---

[VTEX Ads](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/vtex-ads)

---

VTEX Session

---

VTEX Shield

---

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

---

Weni by VTEX

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides)

[API Reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/api-reference)

[App Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/app-development)

[Storefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/storefront-development)

[VTEX IO Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/vtex-io-apps)

[Troubleshooting](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/troubleshooting)

---

[Release Notes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/updates/release-notes)

Guides

[VTEX Platform Overview](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/vtex-platform-overview)

---

[API usage](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/api-usage)

---

[Getting started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/getting-started)

---

Integration Guides

---

[Catalog](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/catalog-integration)

---

[Checkout](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/checkout-api-overview)

---

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

---

Payments

---

Orders

---

Logistics

---

B2B Suite

---

VTEX Sales App

---

UI Customization

---

Message Center

[Setting up DKIM for transactional emails](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-dkim-for-transactional-emails)

[Setting up the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf)

[How to set up functions in the Message Center templates](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/how-to-set-up-functions-in-the-message-center-templates)

[Including order variables in the transactional email template](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/including-order-variables-in-the-transactional-email-template)

---

Pricing

---

Promotions

---

Infrastructure

---

Search

---

Storefront Permissions

---

[VTEX Activity Flow](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/activity-flow)

---

[VTEX Ads](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/vtex-ads)

---

VTEX Session

---

VTEX Shield

---

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

---

Weni by VTEX

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides)

Message Center

[Setting up the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf)

Setting up the SPF

The [SPF (Sender Policy Framework)](https://read.calvincode.net/reader?url=http://www.open-spf.org/Introduction/) is a standard that specifies how to prevent unauthorized servers from sending emails on behalf of your domain. This framework implements rules that verify if the server has a particular policy set up by the domain’s admin.

## Editing the SPF

To understand SPF syntax, we recommend reading [SPF Record Syntax](https://read.calvincode.net/reader?url=http://www.open-spf.org/SPF%5FRecord%5FSyntax/).

VTEX uses `include:amazonses.com`, Amazon's transactional email sending service, used in the default sender of Message Center.

Here is an example of an SPF on VTEX:

`1

v=spf1 include:server.com include:amazonses.com ~all

`

All `include` mechanisms should be set up to add a new SPF. See the example below to understand how to add `include:amazonses.com` if there is already another `include` mechanism:

| Before                                                           | After                                                                                |
| ---------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| v=spf1 include:websitewelcome.com include:\_spf.google.com \~all | v=spf1 include:websitewelcome.com include:\_spf.google.com include:amazonses.com \~all |

> The domain should only have one SPF entry including all the necessary rules, such as `include` mechanisms and others in [SPF Record Syntax](https://read.calvincode.net/reader?url=http://www.open-spf.org/SPF%5FRecord%5FSyntax/).

## Verifying the SPF

To verify the SPF entries on your domain, we recommend using the [DIG](https://read.calvincode.net/reader?url=https://www.digwebinterface.com) tool. Follow the steps below:

1. On the [DIG tool website](https://read.calvincode.net/reader?url=https://www.digwebinterface.com/), fill your root domain (e.g. `vtex.com`) in **Hostnames or IP addresses**.
2. Select **TXT** as **Type**.
3. Click on **Dig**.

>  The modifications are impacted by the domain propagation time. It can take between 24 or 48 hours for DIG to reflect changes.

Below, check a [consult example using the VTEX domain](https://read.calvincode.net/reader?url=https://www.digwebinterface.com/?hostnames=vtex.com%26type=TXT%26ns=resolver%26useresolver=8.8.4.4%26nameservers=):

![{"base64":"  ","img":{"width":1003,"height":345,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":123656,"url":"https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/setting-up-the-spf-0.png"}}](https://read.calvincode.net/reader?url=https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/setting-up-the-spf-0.png)

Contributors

3

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

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

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

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/Integration-Guides/api-guides/setting-up-the-spf.md)

[Setting up DKIM for transactional emails« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf//docs/guides/setting-up-dkim-for-transactional-emails)[How to set up functions in the Message Center templatesNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf//docs/guides/how-to-set-up-functions-in-the-message-center-templates)

Contributors

3

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

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

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

ON THIS PAGE

[Editing the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf%23editing-the-spf)

[Verifying the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf%23verifying-the-spf)

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/Integration-Guides/api-guides/setting-up-the-spf.md)

Copy page

On this page

ON THIS PAGE

[Editing the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf%23editing-the-spf)

[Verifying the SPF](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/setting-up-the-spf/docs/guides/setting-up-the-spf%23verifying-the-spf)

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 vtex io documentation node builder 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-node-builder/docs/guides)

[API ReferenceExplore detailed information about our endpoints.](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/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-node-builder/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-node-builder/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-node-builder/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-node-builder/updates/release-notes)

App Development

[What is VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/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-node-builder/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-node-builder/docs/guides/code-samples)

---

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-getting-started)

---

Project structure

[Manifest](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-manifest)

[Billing Options](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-billing-options)

[Builders](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-builders)

[Admin Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-admin-builder)

[Assets Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-assets-builder)

[Docs Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-docs-builder)

[GraphQL Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-graphql-builder)

[Messages Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-messages-builder)

[Node Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder)

[PaymentProvider Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-paymentprovider-builder)

[Pixel Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-pixel-builder)

[React Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-react-builder)

[Store Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-store-builder)

[Styles Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-styles-builder)

[Dependencies](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-dependencies)

[Peer Dependencies](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-peerdependencies)

---

[VTEX IO CLI](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/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-node-builder/docs/guides/app-development-guides)

---

[GraphQL in VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/graphql-in-vtex-io)

---

[Policies and permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-policies)

---

[A/B tests](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/ab-tests)

---

[Deployment](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/docs/guides/vtex-app-store)

---

[Edition Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/managing-edition-apps)

---

[Frequently asked questions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-frequently-asked-questions)

---

[Guides](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides)

[API Reference](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/api-reference)

[App Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/app-development)

[Storefront Development](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/storefront-development)

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

[Troubleshooting](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/troubleshooting)

---

[Release Notes](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/updates/release-notes)

App Development

[What is VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/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-node-builder/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-node-builder/docs/guides/code-samples)

---

[Getting Started](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-getting-started)

---

Project structure

[Manifest](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-manifest)

[Billing Options](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-billing-options)

[Builders](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-builders)

[Admin Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-admin-builder)

[Assets Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-assets-builder)

[Docs Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-docs-builder)

[GraphQL Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-graphql-builder)

[Messages Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-messages-builder)

[Node Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder)

[PaymentProvider Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-paymentprovider-builder)

[Pixel Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-pixel-builder)

[React Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-react-builder)

[Store Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-store-builder)

[Styles Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-styles-builder)

[Dependencies](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-dependencies)

[Peer Dependencies](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-peerdependencies)

---

[VTEX IO CLI](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/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-node-builder/docs/guides/app-development-guides)

---

[GraphQL in VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/graphql-in-vtex-io)

---

[Policies and permissions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-policies)

---

[A/B tests](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/ab-tests)

---

[Deployment](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/docs/guides/vtex-app-store)

---

[Edition Apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/managing-edition-apps)

---

[Frequently asked questions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/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-node-builder/docs/app-development)

Project structure

[Builders](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-builders)

[Node Builder](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder)

Node builder

Learn how to use the VTEX IO Node builder.

The `node` builder is used to develop [backend apps](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-service) with TypeScript code executed by the [Node.js runtime](https://read.calvincode.net/reader?url=https://nodejs.org/en). This guide aims to provide a comprehensive understanding of how to use this builder effectively. For more information, see [Developing services on VTEX IO](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/developing-services-on-vtex-io).

## Versioning

The Node builder versions are defined in the table below. Each builder version is compatible with a specific version of the Node.js engine, [@types/node package](https://read.calvincode.net/reader?url=https://www.npmjs.com/package/@types/node) (TypeScript definitions for Node), and TypeScript. You can select the desired builder version in your app's `manifest.json` file.

| Builder version | Node.js                                            | @types/node                                                  | TypeScript                                                                              | Status                 |
| --------------- | -------------------------------------------------- | ------------------------------------------------------------ | --------------------------------------------------------------------------------------- | ---------------------- |
| 3.x             | [8.x](https://read.calvincode.net/reader?url=https://nodejs.org/en/blog/release/v8.0.0)   | \-                                                           | [3.9.7](https://read.calvincode.net/reader?url=https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html) | Deprecated             |
| 4.x             | [12.x](https://read.calvincode.net/reader?url=https://nodejs.org/en/blog/release/v12.0.0) | \-                                                           | [3.9.7](https://read.calvincode.net/reader?url=https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html) | Deprecated             |
| 6.x             | [16.x](https://read.calvincode.net/reader?url=https://nodejs.org/en/blog/release/v16.0.0) | [12.0.0](https://read.calvincode.net/reader?url=https://www.npmjs.com/package/@types/node/v/12.0.0) | [3.9.7](https://read.calvincode.net/reader?url=https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html) | Active until June 2025 |
| 7.x             | [20.x](https://read.calvincode.net/reader?url=https://nodejs.org/en/blog/release/v20.0.0) | [20.0.0](https://read.calvincode.net/reader?url=https://www.npmjs.com/package/@types/node/v/20.0.0) | [5.5.3](https://read.calvincode.net/reader?url=https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-5.html) | Active                 |

> We strongly recommend upgrading your Node app to the latest Node builder before legacy Node builder versions are deprecated. After deprecation, apps using a legacy builder version will continue to work, but you won't be able to release or publish new **major** [versions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-releasing-a-new-app-version%23understanding-app-versioning). Follow the instructions in the [Node builder 7.x migration guide](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/node-builder-7x-migration-guide) to upgrade your Node app.

## Dependency compatibility

When building Node apps, all external dependencies must be compatible with Node.js 16.x. This is the runtime version used for validation during the build process.

Even if your app uses Node builder 7.x (which runs on Node.js 20.x), you still need to ensure that your libraries also support Node.js 16.x. Otherwise, the build may fail.

> Always make sure that your dependencies are compatible with Node.js 16.x, even if your development environment or builder version runs on a newer runtime.

## Folder structure

An app that uses the `node` builder has a `node` folder on its root, which contains the following files and directories:

`1

node

2

 ┣ 📂 clients

3

 ┗ 📄 {ClientCodeFileName}.ts

4

 ┣ 📂 middlewares

5

 ┗ 📄 {MiddlewareCodeFileName}.ts

6

 ┣ 📂 event

7

 ┗ 📄 {EventCodeFileName}.ts

8

 ┣ 📄 {TypeScriptCodeFileName}.ts

9

 ┣ 📄 index.ts

10

 ┣ 📄 package.json

11

 ┣ 📄 service.json

12

 ┗ 📄 tsconfig.json

`

* TypeScript code files (`.ts` extension) containing the core logic of the app, organized within directories such as:
   * `clients`: Directory with [Clients](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-clients) code files.
   * `middlewares`: Directory with middleware code files.
   * `event`: Directory with event handler code files.
* `index.ts`: Main TypeScript code file, where the execution begins. This file contains the service's main class.
* `package.json`: JSON file describing dependencies, script commands for building, and version details.
* `service.json`: Service configuration file used for defining app parameters such as routes, events, time-to-live, etc. For more details, see [Service configuration parameters](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-service%23service-configuration-parameters).
* `tsconfig.json`: JSON file containing build configuration options.

## Usage

To develop an app using the `node` builder, follow these steps:

1. **Start with a template**: Download the [service-example template](https://read.calvincode.net/reader?url=https://github.com/vtex-apps/service-example) or create a new project using the [vtex init CLI command](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-vtex-io-cli-usage%23starting-a-new-project) and choose the `service-example` option.
2. **Configure the `service.json` file**: Edit the `service.json` configuration file. For more information, see [Service configuration parameters](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-service%23service-configuration-parameters).
3. **Configure permissions**: If you want to access external resources, add the required [policies](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-policies) for each resource in the [manifest.json](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-manifest), and the corresponding [Clients](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-clients) in the code to access those resources.
4. **Implement the app's logic**: Add the necessary TypeScript files containing the app logic.
5. **Test**: [Link the app](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-linking-an-app) to a development workspace for testing.

> See [Engineering guidelines](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-engineering-guidelines) for guidance on scalability, performance optimization, data privacy best practices, and versioning.

## Use case examples

Consider the following scenarios when using the `node` builder:

* **Backend service development**: If you're building backend services using Node.js, the `node` builder streamlines development with native functions and clients for integrating with the VTEX ecosystem.
* **Event-driven applications**: For apps that rely heavily on an event-driven architecture, where actions trigger responses asynchronously, use the `node` builder to implement event handlers and listeners.
* **Integration with external systems**: When your app needs to integrate with external systems or APIs, such as payment gateways, databases, or third-party services, the `node` builder helps you create client modules for interacting with these systems.
* **Custom middleware**: If your app requires custom middleware for tasks like authentication, logging, or request processing, the `node` builder supports creating and integrating middleware components.

Below are some app examples that use the `node` builder:

* [orders-feed-example](https://read.calvincode.net/reader?url=https://github.com/vtex-apps/orders-feed-example)
* [external-seller-example](https://read.calvincode.net/reader?url=https://github.com/vtex-apps/external-seller-example)
* [adyen-platforms](https://read.calvincode.net/reader?url=https://github.com/vtex-apps/adyen-platforms)
* [mega-menu](https://read.calvincode.net/reader?url=https://github.com/vtex-apps/mega-menu)

Contributors

4

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F7026595%3Fv%3D4%26w=64%26q=75)](https://github.com/henriquessb)

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F100872772%3Fv%3D4%26w=64%26q=75)](https://github.com/kaio-donadelli)

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F112641072%3Fv%3D4%26w=64%26q=75)](https://github.com/barbara-celi)

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_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/Reference/concepts/vtex-io-documentation-builders/vtex-io-documentation-node-builder.md)

[Messages Builder« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder//docs/guides/vtex-io-documentation-messages-builder)[PaymentProvider BuilderNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder//docs/guides/vtex-io-documentation-paymentprovider-builder)

Contributors

4

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F7026595%3Fv%3D4%26w=64%26q=75)](https://github.com/henriquessb)

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F100872772%3Fv%3D4%26w=64%26q=75)](https://github.com/kaio-donadelli)

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/_next/image?url=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F112641072%3Fv%3D4%26w=64%26q=75)](https://github.com/barbara-celi)

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

ON THIS PAGE

[Versioning](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23versioning)

[Dependency compatibility](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23dependency-compatibility)

[Folder structure](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23folder-structure)

[Usage](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23usage)

[Use case examples](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23use-case-examples)

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/Reference/concepts/vtex-io-documentation-builders/vtex-io-documentation-node-builder.md)

Copy page

On this page

ON THIS PAGE

[Versioning](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23versioning)

[Dependency compatibility](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23dependency-compatibility)

[Folder structure](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23folder-structure)

[Usage](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23usage)

[Use case examples](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-node-builder/docs/guides/vtex-io-documentation-node-builder%23use-case-examples)

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=)