[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 understanding master data 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/understanding-master-data/docs/guides)

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

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

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

Guides

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

---

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

---

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

---

Integration Guides

---

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

---

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

---

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

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

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

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

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

[Data consistency and synchronization in Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/understanding-master-data/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/understanding-master-data/docs/guides/master-data-best-practices)

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

[Master Data v1](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/understanding-master-data/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/understanding-master-data/docs/guides/activity-flow)

---

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

---

VTEX Session

---

VTEX Shield

---

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

---

Weni by VTEX

---

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

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

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

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

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

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

---

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

Guides

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

---

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

---

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

---

Integration Guides

---

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

---

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

---

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

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

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

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

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

[Data consistency and synchronization in Master Data](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/understanding-master-data/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/understanding-master-data/docs/guides/master-data-best-practices)

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

[Master Data v1](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/understanding-master-data/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/understanding-master-data/docs/guides/activity-flow)

---

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

---

VTEX Session

---

VTEX Shield

---

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

---

Weni by VTEX

---

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

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

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

Understanding Master Data

Learn about the fundamental concepts of Master Data, including its components, architecture, API usage, and schema lifecycle.

[ComponentsLearn about Data Entities, Documents, Fields, and Indexes in Master Data, and how these components work together to structure and optimize data for efficient querying.See more](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-components)[InfrastructureLearn how the Master Data core services (API, Worker, Storage, and Search Engine) ensure data consistency and efficient document management.See more](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-infrastructure)[Master Data APILearn how to manage and retrieve documents, define data structures, and configure searchable fields in Master Data.See more](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-schema-lifecycle)[Data consistency and synchronization in Master DataLearn how data synchronization operates across Master Data API endpoints.See more](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/data-consistency-and-synchronization-in-master-data)[Schema LifecycleLearn how changes in a Master Data v2 Schema affect Data Entities.See more](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/master-data-schema-lifecycle)

Contributors

1

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

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

Contributors

1

[![Photo of the contributor](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/understanding-master-data/_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?

 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/understanding-master-data.md)

Copy page

On this page

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 product price 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.product-price/docs/guides)

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

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

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

VTEX IO Apps

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

[Add To Cart Button](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.add-to-cart-button)

[Autocomplete](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/Autocomplete)

[Banner](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/banner)

[Breadcrumb](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.breadcrumb)

[Footer](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.store-footer)

[Google One-Tap Login](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/guides/google-one-tap-login)

[Header](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.store-header)

[Locale Switcher](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.locale-switcher)

[Login](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.login)

[Menu](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.menu)

[Minicart](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.minicart)

[Order Placed](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.order-placed)

[Product Customizer](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-customizer)

[Product Highlights](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-highlights)

[Product Identifier](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-identifier)

[Product List](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-list)

[Product Price](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-price)

[Product Quantity](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-quantity)

[Product Specifications](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-specifications)

[Product Summary](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary)

[Product Summary Attachment List](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryattachmentlist)

[Product Summary Buy Button](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummarybuybutton)

[Product Summary Description](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummarydescription)

[Product Summary Image](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryimage)

[Product Summary List](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummarylist)

[Product Summary Name](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryname)

[Product Summary Shelf](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryshelf)

[Product Summary SKU Selector](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryskuselector)

[Product Summary SKU Name](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryskuname)

[Rich Text](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.rich-text)

[Search](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search)

[Suggestions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/suggestions)

[DidYouMean](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/didyoumean)

[Search Result](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search-result)

[Store Image](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.store-image)

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

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

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

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

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

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

---

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

VTEX IO Apps

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

[Add To Cart Button](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.add-to-cart-button)

[Autocomplete](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/Autocomplete)

[Banner](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/banner)

[Breadcrumb](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.breadcrumb)

[Footer](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.store-footer)

[Google One-Tap Login](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/guides/google-one-tap-login)

[Header](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.store-header)

[Locale Switcher](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.locale-switcher)

[Login](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.login)

[Menu](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.menu)

[Minicart](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.minicart)

[Order Placed](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.order-placed)

[Product Customizer](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-customizer)

[Product Highlights](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-highlights)

[Product Identifier](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-identifier)

[Product List](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-list)

[Product Price](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-price)

[Product Quantity](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-quantity)

[Product Specifications](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-specifications)

[Product Summary](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary)

[Product Summary Attachment List](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryattachmentlist)

[Product Summary Buy Button](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummarybuybutton)

[Product Summary Description](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummarydescription)

[Product Summary Image](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryimage)

[Product Summary List](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummarylist)

[Product Summary Name](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryname)

[Product Summary Shelf](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryshelf)

[Product Summary SKU Selector](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryskuselector)

[Product Summary SKU Name](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-summary/productsummaryskuname)

[Rich Text](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.rich-text)

[Search](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search)

[Suggestions](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/suggestions)

[DidYouMean](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search/didyoumean)

[Search Result](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.search-result)

[Store Image](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.store-image)

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

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

Product Price

Official extension

Version: 1.33.0

Latest version: 1.33.0

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

The Product Price app exports blocks related to the product price, such as list price, selling price, and savings.

![{"base64":"  ","img":{"width":2782,"height":1182,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":389736,"url":"https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-0.png"}}](https://read.calvincode.net/reader?url=https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-0.png)

> Currently, **Product Price is the only app that provides product price blocks for your theme**. The [Product Summary Price](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-product-summary-productsummaryprice) block from the [Product Summary](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-product-summary/) app and the [Product Price](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-store-components-productprice/) block from [Store Components](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-store-components/) have been deprecated.

## Configuration

### Step 1 - Adding the Product Price app to your theme dependencies

In the theme's `manifest.json` file, add the Product Price app as a dependency:

`1

"dependencies": {

2

 "vtex.product-price": "1.x"

3

}

`

Now, you can use all the blocks exported by the `product-price` app. See the full list below:

| Block name                     | Description                                                                                |
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| product-list-price             | Renders the product list price. This block will not be rendered if it is equal to or less than the product selling price.                                                                    |
| product-selling-price          | Renders the product selling price.                                                                                |
| product-spot-price             | Renders the product spot price (if it is equal to the selling price, the block is not rendered). This block finds the spot price by looking for the lowest price of all installment options. |
| product-installments           | Renders the product installments. If more than one option is available, the one with the highest number of installments will be displayed by default.                                        |
| product-installments-list      | Renders all the installments of the payment system with the most installment options by default.                                                                                |
| product-installments-list-item | Renders an installment option from the product-installments-list-item.                                                                                |
| product-price-savings          | Renders the product price savings, if there are any. It can show the discount percentage or the total amount of the savings.                                                                 |
| product-spot-price-savings     | Renders the product spot price savings, if there are any. It can show the discount percentage or the total amount of the savings.                                                            |
| product-list-price-range       | Renders the product list price range. It follows the same logic applied to the ListPrice: if its value equals the product selling price, this block is not rendered.                         |
| product-selling-price-range    | This is the product selling price range.                                                                                |
| product-seller-name            | Renders the name of the product seller.                                                                                |
| product-price-suspense         | Renders a fallback component when the price is loading and its children block when it is not loading. This block is handy when the store works with asynchronous prices.                     |

All blocks listed above use product price data fetched from the store catalog. To learn more, please read the [Pricing module overview](https://read.calvincode.net/reader?url=https://help.vtex.com/tracks/precos-101--6f8pwCns3PJHqMvQSugNfP).

### Step 2 - Adding the Product Price blocks to your theme templates

To add the Product Price blocks to your theme, you just need to declare them as children of the `product-summary.shelf` exported by the [Product Summary](https://read.calvincode.net/reader?url=https://vtex.io/docs/components/content-blocks/vtex.product-summary@2.52.3) app, or declare them in the theme's Product template (`store.product`).

Note that these blocks require a Product context to work correctly. Therefore, when declaring them as children of the `product-summary.shelf`, make sure they are in a store template in which this context is available.

For example:

`1

"shelf#home": {

2

 "blocks": ["product-summary.shelf"]

3

},

4

5

"product-summary.shelf": {

6

 "children": [

7

 "product-list-price",

8

 "product-selling-price#summary",

9

 "product-price-savings",

10

 "product-installments"

11

 ]

12

},

`

Except for `product-price-suspense`, every block in this app only has three props in common:

| Prop name  | Type       | Description                                                                                | Default value |
| ---------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |
| markers    | \[string\] | IDs that you define to identify the block's rendered message and customize it using the Site Editor in the Admin. Learn how to use them by reading the documentation on [Using the Markers prop to customize a block's message](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-using-the-markers-prop-to-customize-a-blocks-message). Note that a block's message can be customized using the message prop in the Store Theme source code. | \[\]          |
| blockClass | string     | Block ID that you define to be used in [CSS customizations](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-using-css-handles-for-store-customization%23using-the-blockclass-property).                                                                                | undefined     |
| message    | string     | Defines the block's default text, i.e., the block message. If you use the Site Editor in the Admin, you can also define the text message that a block will render on the UI.                                                                                | undefined     |

For example:

`1

"product-selling-price#summary": {

2

 "props": {

3

 "markers": [

4

 "highlight"

5

 ],

6

 "blockClass": "summary",

7

 "message": "Selling price: {sellingPriceValue}"

8

 }

9

},

`

The `product-price-savings` block has two additional props:

| Prop name         | Type              | Description                                                                                | Default value |
| ----------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |
| percentageStyle   | locale or compact | Set to compact to remove the white space between the number and the percent sign. It uses the pattern provided by the current locale as default.                        | locale        |
| minimumPercentage | number            | Set the minimum value for the percentage value display. If not configured, it will display always. Example: 10 means savings less than or equal to 10% will not appear. | 0             |

The following blocks have an additional prop: `product-list-price`, `product-selling-price`, `product-spot-price`, `product-spot-price-savings`, `product-price-savings`, `product-list-price-range`, and `product-selling-price-range`. The prop is:

| Prop name  | Type    | Description                                             | Default value |
| ---------- | ------- | ------------------------------------------------------- | ------------- |
| alwaysShow | boolean | Renders the block even when the product is unavailable. | false         |

For example:

`1

"product-selling-price#summary": {

2

 "props": {

3

 "alwaysShow": true

4

 }

5

},

`

The `product-installments-list` block has two additional props:

| Prop name          | Type       | Description                                                                                | Default value |
| ------------------ | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |
| paymentSystemName  | string     | Allows you to filter the listed installment options by a particular payment system. If not passed, the installments of the payment system with the most installment options will be rendered.                                                                                | undefined     |
| installmentsToShow | number\[\] | Determines the installment options you want to show to the user based on the number of installments. For example, if \[1, 3\] is passed as a value for this prop, only the installments options with NumberOfInstallments equal to 1 and 3 will be rendered. If a value is not passed, all options will be rendered. | undefined     |

The `product-installments` block also has two additional props:

| Prop name                | Type                                                          | Description                                                                                | Default value |
| ------------------------ | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |
| installmentsCriteria     | max-quantity or max-quantity-without-interest                 | When set to max-quantity, the block renders the installment plan with the most number of installments. When set to max-quantity-without-interest, the block renders the installment plan with the most number of installments and **no interest**. Note that if this prop is set to max-quantity-without-interest and no installment plan matches the 'without interest' criterion, the component will fall back to the default behavior. | max-quantity  |
| installmentOptionsFilter | { paymentSystemName?: string, installmentsQuantity?: number } | Allows you to define two filtering rules that will narrow down the possible installment plans the component may render.                                                                                | undefined     |

If you are using the asynchronous price feature, you can take advantage of `product-price-suspense` and its props:

| Prop name | Type  | Description                                                        | Default value     |
| --------- | ----- | ------------------------------------------------------------------ | ----------------- |
| Fallback  | block | Name of the block that will be rendered when the price is loading. | rich-text#loading |

For example:

`1

{

2

 "rich-text#loading": {

3

 "props": {

4

 "text": "Loading..."

5

 }

6

 },

7

 "product-price-suspense": {

8

 "props": {

9

 "Fallback": "rich-text#loading"

10

 },

11

 "children": [

12

 "product-list-price#summary",

13

 "flex-layout.row#selling-price-savings",

14

 "product-installments#summary",

15

 "add-to-cart-button"

16

 ]

17

 },

18

 "product-summary.shelf": {

19

 "children": [

20

 "stack-layout#prodsum",

21

 "product-summary-name",

22

 "product-rating-inline",

23

 "product-summary-space",

24

 "product-price-suspense"

25

 ]

26

 }

27

}

`

![{"base64":"  ","img":{"width":264,"height":487,"type":"gif","mime":"image/gif","wUnits":"px","hUnits":"px","length":22590,"url":"https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-1.gif"}}](https://read.calvincode.net/reader?url=https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-1.gif)

### Step 3 - Editing the block's messages

Every Product Price block uses the [ICU Message Format](https://read.calvincode.net/reader?url=https://format-message.github.io/icu-message-format-for-translators/), making it possible to fully edit the text message and variables displayed by each block.

The variable values are rendered based on the context wrapping the block, meaning it uses product data to render the price accordingly.

You can, however, define the message texts a block will render on the UI using the `message` prop as explained previously.

The `markers` prop, in turn, needs an extra configuration in the Admin's Site Editor to work correctly. When using it, do not forget to read the [Using the Markers prop to customize a block's message](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-using-the-markers-prop-to-customize-a-blocks-message/) documentation.

![{"base64":"  ","img":{"width":2288,"height":1454,"type":"gif","mime":"image/gif","wUnits":"px","hUnits":"px","length":3874251,"url":"https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-2.gif"}}](https://read.calvincode.net/reader?url=https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-2.gif)

In addition, remember to take into account the message variables for each block, since you will need them to edit the desired messages using the Admin's Site Editor:

* **`product-list-price`**

| Message variable                      | Type    | Description                                                                                |
| ------------------------------------- | ------- | -------------------------------------------------------------------------------------------- |
| listPriceValue                        | string  | List price value.                                                                            |
| listPriceWithTax                      | string  | List price value with tax.                                                                   |
| listPriceWithUnitMultiplier           | string  | List price multiplied by a unit multiplier.                                                  |
| listPriceWithTaxWithoutUnitMultiplier | string  | List price with tax without unit multiplier.                                                 |
| taxPercentage                         | string  | Tax percentage.                                                                              |
| taxValue                              | string  | Tax value.                                                                                |
| hasMeasurementUnit                    | boolean | Determines whether the product has a unit of measure (true) or not (false).                  |
| measurementUnit                       | string  | Unit of measure text.                                                                        |
| hasUnitMultiplier                     | boolean | Determines whether the product has a unit multiplier different from 1 (true) or not (false). |
| unitMultiplier                        | string  | Value of the unit multiplier.                                                                |

* **`product-selling-price`**

| Message variable                         | Type    | Description                                                                                |
| ---------------------------------------- | ------- | -------------------------------------------------------------------------------------------- |
| sellingPriceValue                        | string  | Selling price value.                                                                         |
| sellingPriceWithTax                      | string  | Selling price with tax.                                                                      |
| sellingPriceWithUnitMultiplier           | string  | Selling price multiplied by a unit multiplier.                                               |
| sellingPriceWithUnitMultiplierAndTax     | string  | Selling price multiplied by a unit multiplier and added tax.                                 |
| sellingPriceWithTaxWithoutUnitMultiplier | string  | Selling price with tax without unit multiplier.                                              |
| taxPercentage                            | string  | Tax percentage.                                                                              |
| hasListPrice                             | boolean | Determines whether the product has a list price (true) or not (false).                       |
| taxValue                                 | string  | Tax value.                                                                                |
| hasMeasurementUnit                       | boolean | Determines whether the product has a unit of measure (true) or not (false).                  |
| measurementUnit                          | string  | Unit of measure text.                                                                        |
| hasUnitMultiplier                        | boolean | Determines whether the product has a unit multiplier different from 1 (true) or not (false). |
| unitMultiplier                           | string  | Value of the unit multiplier.                                                                |

You can use the `product-selling-price` `sellingPriceWithUnitMultiplier`, `hasMeasurementUnit`, `unitMultiplier`, and `measurementUnit` variables together to render the unit of measure and unit multiplier on products that have it.

For example:

`1

{

2

 "product-selling-price": {

3

 "props": {

4

 "message": "{sellingPriceWithUnitMultiplier}{hasMeasurementUnit, select, true { / {hasUnitMultiplier, select, true {{unitMultiplier}} false {}} {measurementUnit}} false {}}"

5

 }

6

 }

7

}

`

According to the example above, products with a unit of measure and a unit multiplier would be rendered as follows:

`$24.00 / 2 oz`

> _Note that the unit of measure and unit multiplier would be properly rendered alongside their price._

Still, in the example, products that do not have a unit of measure and a unit multiplier will only render their price:

`$24.00`

* **`product-spot-price`**

| Message variable | Type   | Description       |
| ---------------- | ------ | ----------------- |
| spotPriceValue   | string | Spot price value. |

* **`product-installments` and `product-installments-list-item`**

| Message variables      | Type    | Description                                                                |
| ---------------------- | ------- | -------------------------------------------------------------------------- |
| spotPriceValue         | string  | Spot price value.                                                          |
| installmentsNumber     | string  | Number of installments.                                                    |
| installmentValue       | string  | Amount of each installment.                                                |
| installmentsTotalValue | string  | Total amount of installments.                                              |
| interestRate           | string  | Interest rate.                                                             |
| paymentSystemName      | string  | Payment system for the installments.                                       |
| hasInterest            | boolean | Determines whether the installments have interest (true) or not (false).   |
| hasMoreThanOne         | boolean | Determines whether there is more than 1 installment (true) or not (false). |

* **`product-price-savings`**

| Message variables  | Type   | Description                                                               |
| ------------------ | ------ | ------------------------------------------------------------------------- |
| previousPriceValue | string | Previous price value (list price).                                        |
| newPriceValue      | string | New price value (selling price).                                          |
| savingsValue       | string | Difference between the previous product price and the new one.            |
| savingsWithTax     | string | Difference between the previous product price and the new one with taxes. |
| savingsPercentage  | string | Percentage of savings.                                                    |

* **`product-spot-price-savings`**

| Message variables          | Type   | Description                                                                  |
| -------------------------- | ------ | ---------------------------------------------------------------------------- |
| previousPriceValue         | string | Previous price value (list price).                                           |
| newSpotPriceValue          | string | New price value (spot price).                                                |
| spotPriceSavingsValue      | string | Difference between the previous product price and the spot price.            |
| spotPriceSavingsWithTax    | string | Difference between the previous product price and the spot price with taxes. |
| spotPriceSavingsPercentage | string | Percentage of savings.                                                       |

* **`product-list-price-range`**

| Message variables | Type   | Description                                                 |
| ----------------- | ------ | ----------------------------------------------------------- |
| minPriceValue     | string | Value of the cheapest list price SKU.                       |
| maxPriceValue     | string | Value of the most expensive list price SKU.                 |
| minPriceWithTax   | string | Value of the cheapest list price SKU with tax.              |
| maxPriceWithTax   | string | Value of the most expensive list price SKU with tax.        |
| listPriceValue    | string | Value of the list price of the only SKU available.          |
| listPriceWithTax  | string | Value of the list price of the only SKU available with tax. |

* **`product-selling-price-range`**

| Message variables   | Type   | Description                                                    |
| ------------------- | ------ | -------------------------------------------------------------- |
| minPriceValue       | string | Value of the cheapest selling price SKU.                       |
| maxPriceValue       | string | Value of the most expensive selling price SKU.                 |
| minPriceWithTax     | string | Value of the cheapest selling price SKU with tax.              |
| maxPriceWithTax     | string | Value of the most expensive selling price SKU with tax.        |
| sellingPriceValue   | string | Value of the selling price of the only SKU available.          |
| sellingPriceWithTax | string | Value of the selling price of the only SKU available with tax. |

* **`product-seller-name`**

| Message variable | Type   | Description                     |
| ---------------- | ------ | ------------------------------- |
| sellerName       | string | The name of the product seller. |

In the gif example above, the block first displayed a `Save $224.40` message. By editing the exported message, it now renders a `You are saving: $224.40 (37%)` message thanks to the changes performed through the Site Editor in the Admin:

![{"base64":"  ","img":{"width":2878,"height":1538,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":394651,"url":"https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-3.png"}}](https://read.calvincode.net/reader?url=https://cdn.jsdelivr.net/gh/vtexdocs/dev-portal-content@main/images/vtex-product-price-3.png)

## Customization

To apply CSS customizations in this and other blocks, follow the instructions given in the recipe on [Using CSS handles for store customizations](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-using-css-handles-for-store-customization).

| CSS handles                          |
| ------------------------------------ |
| installmentValue                     |
| installmentsListContainer            |
| installmentsNumber                   |
| installmentsTotalValue               |
| installments                         |
| interestRate                         |
| listPrice'                           |
| listPrice--isUnavailable             |
| listPriceRangeMaxValue               |
| listPriceRangeMaxWithTax             |
| listPriceRangeMinValue               |
| listPriceRangeMinWithTax             |
| listPriceRangeUniqueValue            |
| listPriceRangeUniqueWithTax          |
| listPriceRange                       |
| listPriceRange--isUnavailable        |
| listPriceValue                       |
| listPriceWithTax                     |
| newPriceValue                        |
| newSpotPriceValue                    |
| paymentSystemName                    |
| previousPriceValue                   |
| savingsPercentage                    |
| savingsValue                         |
| savingsWithTax                       |
| savings                              |
| savings--isUnavailable               |
| sellerName                           |
| sellerNameContainer                  |
| sellerNameContainer--isDefaultSeller |
| sellingPrice--hasListPrice           |
| sellingPrice--isUnavailable          |
| sellingPriceRangeMaxValue            |
| sellingPriceRangeMaxWithTax          |
| sellingPriceRangeMinValue            |
| sellingPriceRangeMinWithTax          |
| sellingPriceRangeUniqueValue         |
| sellingPriceRangeUniqueWithTax       |
| sellingPriceRange                    |
| sellingPriceRange--isUnavailable     |
| sellingPriceRange--hasListPrice      |
| sellingPriceValue                    |
| sellingPriceWithTax                  |
| sellingPrice                         |
| spotPriceSavingsPercentage           |
| spotPriceSavingsValue                |
| spotPriceSavingsWithTax              |
| spotPriceSavings                     |
| spotPriceSavings--isUnavailable      |
| spotPriceValue                       |
| spotPrice                            |
| spotPrice--isUnavailable             |
| taxPercentage                        |

[Product List« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-list)[Product QuantityNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-quantity)

See also

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

ON THIS PAGE

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

[Step 1 - Adding the Product Price app to your theme dependencies](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-price%23step-1-adding-the-product-price-app-to-your-theme-dependencies)[Step 2 - Adding the Product Price blocks to your theme templates](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-price%23step-2-adding-the-product-price-blocks-to-your-theme-templates)[Step 3 - Editing the block's messages](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-price%23step-3-editing-the-blocks-messages)

[Customization](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/apps/vtex.product-price/docs/apps/vtex.product-price%23customization)

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


[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 billing options 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-billing-options/docs/guides)

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

App Development

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

---

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

---

Project structure

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

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

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

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

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

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

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

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

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

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

---

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

App Development

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

---

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

---

Project structure

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

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

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

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

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

---

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

---

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

---

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

---

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

---

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

---

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

---

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

Project structure

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

Billing Options

The `billingOptions` field is part of the `manifest.json` file of an app and is used to define all the necessary metadata for distributing an app on the VTEX ecosystem. The `billingOptions` field allows you to charge for an app, make it public, and determine its pricing settings.

Please note that apps without `billingOptions` in the `manifest.json` file are **private**, meaning they are only visible and available for installation in the account where they were published.

> Setting your app's billing model is a necessary step to distribute your app on the VTEX ecosystem. Without the `billingOptions` definition, the visibility of your app is restricted to the account where it was published. Learn how to configure the `billingOptions` field in [Setting your app's billing model](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-setting-your-apps-billing-model) according to your scenario.

Refer to the following sections to find more details on the properties that comprise the `billingOptions` field.

## Properties

| Property           | Type   | Description                                                                                | Valid example                                                                            |
| ------------------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------- |
| type               | enum   | Defines how the app is charged. Possible values are: free (app is free of charge), billable (app charges according to one of its plans), or sponsored (app is meant to be used only by a [Sponsor account](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-sponsor-account) and its children). | free                                                                                |
| support            | object | Provides a support request channel between the app’s user and its vendor. To know more, check out the [support object](#support-object) section below.                                                                                | undefined                                                                                |
| availableCountries | array  | Defines the countries ID (ISO) where the app can be installed and where the vendor ensures support.                                                                                | \["BRA", "USA", "GBR"\] or \["\*"\] _(meaning that the app is available in any country)_ |
| plans              | array  | **Optional property.** Defines (in an object array) a predefined subscription plan. To know more, check out the [plans array](#plans-array) section below.                                                                                | undefined                                                                                |

### **`support` object:**

| Property | Type   | Description                                                                                | Valid example       |
| -------- | ------ | ---------------------------------------------------------------------------------------------------- | ------------------- |
| email    | string | Email address where users can request support.                                                       | example@example.com |
| url      | string | **Optional property.** URL where users can request support.                                          | example.com/support |
| phone    | string | **Optional property.** Phone number (in full international format) for users to request support.\*\* | +5521988887777      |

Valid example of the object:

`1

"support": {

2

 "url": "https://example.com/support",

3

 "email": "example@example.com",

4

 "phone": "+5521988887777"

5

},

`

### **`plans` array:**

| Property | Type   | Description                                                                                | Valid example           |
| -------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |
| id       | string | Unique plan identifier containing one or more letters or numbers from the English alphabet.                                                                                | BRAplan23, planShipping |
| currency | string | A valid [ISO 4217](https://read.calvincode.net/reader?url=https://en.wikipedia.org/wiki/ISO%5F4217) currency code to be used for the app’s subscription value. Currently, only BRL and USD are supported.                             | BRL, USD                |
| price    | object | Contains subscription pricing values for the billable app. All values follow the same unit set in the currency prop. For more info, check out the [price object](#price-object) section below. | undefined               |

Valid example of the object:

`1

"plans": [{

2

 "id": "BRAplan23",

3

 "currency": "BRL",

4

 "price": {...}

5

}]

`

* **`price` object:**

| Property     | Type   | Description                                                                                | Valid example |
| ------------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |
| subscription | number | The subscription’s _monthly_ price. This property accepts values with or without cents. Examples: 10 (10 dollars), 60.25 (60 dollars and 25 cents), 0.9 (90 cents).                                                                                | 19.99         |
| metrics      | array  | Defines (in an object array) the criteria on which the variable fee will be based on, according to the app’s use. Use this property only if you also want to charge your app users based on their usage (in addition to the subscription fee). To know more, check out the [metrics array](#metrics-array) section below. | undefined     |

Valid example of the object:

`1

"price" {

2

 "subscription": 50,

3

 "metrics": [{...}]

4

}

`

### **`metrics` array:**

| Property  | Type   | Description                                                                                | Valid example                   |
| --------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- |
| id        | string | Unique metric identifier (across all metrics within the plan) containing one or more _letters_ or _numbers_ from the English alphabet.                                                             | CreditMetric23                  |
| ranges    | array  | Defines (in an object array) the range used to calculate the app’s use and the variable fee that users should be charged. To know more, check out the [ranges array](#ranges-array) section below. | undefined                       |
| customURL | string | Reliable URL address containing information on how to get the metric value.                                                                                | mycredit.com/app/3/metric-value |

Valid example of the object:

`1

{

2

 "id": "notificationSent",

3

 "ranges": [{...}],

4

 "customUrl": "https://metrics.com/_v/metric/billing/info"

5

}

`

### **`ranges` array:**

| Property      | Type   | Description                                                                                | Valid example    |
| ------------- | ------ | ----------------------------------------------------------------------------------------------------------------- | ---------------- |
| multiplier    | number | A positive number that is going to be multiplied by the metric value to calculate the price that will be charged. | 0.07, 1.99, 5    |
| exclusiveFrom | number | A number that denotes the start of the range (but doesn't include that number itself in the range).               | 0, 100, 33.33    |
| inclusiveTo   | number | A number that denotes the end of the range (including that number itself).                                        | 100, 500, 999.99 |

Valid example of the object:

`1

"ranges": [{

2

 "exclusiveFrom": 0,

3

 "multiplier": 0.08

4

}]

`

Contributors

1

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

[Manifest« Previous](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options//docs/guides/vtex-io-documentation-manifest)[BuildersNext »](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options//docs/guides/vtex-io-documentation-builders)

Contributors

1

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

ON THIS PAGE

[Properties](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23properties)

[support object:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23support-object)[plans array:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23plans-array)[metrics array:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23metrics-array)[ranges array:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23ranges-array)

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-billing-options.md)

Copy page

On this page

ON THIS PAGE

[Properties](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23properties)

[support object:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23support-object)[plans array:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23plans-array)[metrics array:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23metrics-array)[ranges array:](https://read.calvincode.net/reader?url=https://developers.vtex.com/docs/guides/vtex-io-documentation-billing-options/docs/guides/vtex-io-documentation-billing-options%23ranges-array)

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