---
schema_version: "1"
id: e67312503885260188b05b52ef82edb3f31ccd0d2c7b3b60aac3f9272587a648
title: WebStoreTemplate
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/api_meta/meta_webstoretemplate.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_webstoretemplate.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 34b0826c4820d3a00d61a04938ea979baf93880240c614ac130b4941cee8db7c
description: Represents a configuration for creating commerce stores.
---
# WebStoreTemplate

Represents a configuration for creating commerce stores.

This type extends the [Metadata](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/metadata.htm "The base class for all metadata types. You can’t edit this object. A component is an instance of a metadata type.") metadata type and inherits its fullName field.

![Important](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/images/icon_note_important.png)

#### Important

Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.

## File Suffix and Directory Location

WebStoreTemplate components have the suffix .webstoretemplate and are stored in the webstoretemplate folder.

## Version

WebStoreTemplate components are available in API version 49.0 and later.

## Special Access Rules

A B2B Commerce or D2C Commerce license and access to Commerce objects is required.

## Fields

<table class="featureTable sort_table" summary="">



          <thead class="thead sorted" align="left">
            <tr>
              <th class="featureTableHeader  " id="d1029544e113">Field Name</th>

              <th class="featureTableHeader  " id="d1029544e116">Field Type</th>

              <th class="featureTableHeader  " id="d1029544e119">Description</th>

            </tr>

          </thead>

          <tbody class="tbody">
            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">autoFacetingEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether auto faceting is enabled (<samp class="codeph nolang">true</samp>) or not (<samp class="codeph nolang">false</samp>). If enabled
                (True), the most relevant search facets are automatically returned, in addition to
                the configured search facets, in the product search results. If disabled (False),
                only the configured search facets are returned. The default is <samp class="codeph nolang">False</samp>. See <a class="xref" href="https://help.salesforce.com/s/articleView?id=commerce.comm_search_add_filters.htm&amp;type=5&amp;language=en_US" target="_blank">Add Product Search Filters
                  (Facets)</a> for more information. This field is available in API version 50.0
                or later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">cartAsyncProcessingEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether add-to-cart requests are processed asynchronously (<samp class="codeph nolang">True</samp>) or not (<samp class="codeph nolang">False</samp>). The default value is <samp class="codeph nolang">True</samp>.
                This field is available in API version 59.0 or later. </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">cartCalculateEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description"> Indicates whether the cart calculate extension is enabled (<samp class="codeph nolang">True</samp>) or not (<samp class="codeph nolang">False</samp>). The default value is <samp class="codeph nolang">False</samp>.
                This field is available in API version 59.0 or later. </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">cartToOrderAutoCustomFieldMapping</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether custom field mapping for cart and order objects is enabled
                (<samp class="codeph nolang">True</samp>) or not (<samp class="codeph nolang">False</samp>). The default value is <samp class="codeph nolang">True</samp>.
                This field is available in API version 57.0 or later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">checkoutTimeToLive</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">int</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Amount of time in minutes that a checkout stays active and doesn’t expire. This
                field is available in API version 52.0 and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">checkoutValidAfterDate</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">dateTime</td>

              <td class="entry" headers="d1029544e119" data-title="Description">A timestamp in the default server timezone (GMT). All checkouts that start
                before this date are considered expired. This field is available in API version 52.0
                and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">commerceEinsteinActivitiesTracked</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether Commerce Einstein activities tracking is enabled (<samp class="codeph nolang">true</samp>) or not (<samp class="codeph nolang">false</samp>). </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">commerceEinsteinDeployed</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether Commerce Einstein is deployed (<samp class="codeph nolang">true</samp>) or not (<samp class="codeph nolang">false</samp>). </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">country</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Two-digit ISO code of the store's country. Purchases can be shipped only to the
                country assigned to the store. Valid for only D2C stores. This field is available in
                API version 56.0 and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">defaultCurrency</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">The template’s default currency setting for new records.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">defaultLanguage</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. The template’s default language setting for new records.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">defaultTaxLocaleType</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">TaxLocaleType​ (enumeration of type string)</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. The template’s default tax type for your webstore. Possible values include:<ul class="ul bulletList">
                  <li class="li"><samp class="codeph nolang">Automatic</samp></li>

                  <li class="li"><samp class="codeph nolang">Gross</samp></li>

                  <li class="li"><samp class="codeph nolang">Net</samp></li>

                </ul>
              </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">description</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">The description of the template.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">duplicateCartItemsEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether a cart can include multiple items with the same product ID
                (<samp class="codeph nolang">True</samp>) or not (<samp class="codeph nolang">False</samp>). The default value is <samp class="codeph nolang">False</samp>.
                This field is available in API version 59.0 or later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">guestBrowsingEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether guest browsing is enabled for this store. Set the option to
                <samp class="codeph nolang">True</samp> to allow guest buyers access to products
                in the store.
              </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">guestCartEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. Indicates whether guest cart access is enabled for a store created
                with an LWR template. Set the option to <samp class="codeph nolang">True</samp> to
                allow guest buyers access to products in the store.<p class="p">This field is available in API
                  version 58.0 and later.</p>
              </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">guestCheckoutEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. Indicates whether guest checkout access is enabled for a store
                created with an LWR template. Set the option to <samp class="codeph nolang">True</samp> to allow guest buyers access to products in the store.<p class="p">This field
                  is available in API version 58.0 and later.</p>
              </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">masterLabel</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. The original (untranslated) name of a label. Each translated label is
                paired with its original untranslated version.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">maxValuesPerFacet</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">int</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Maximum number of values that can be added to a facet.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">orderActivationStatus</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Status of the order. Possible values include: <ul class="ul bulletList">
                  <li class="li"><samp class="codeph nolang">Activated</samp></li>

                  <li class="li"><samp class="codeph nolang">Draft</samp></li>

                </ul>
                This field is available in API version 55.0 and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">orderLifeCycleType</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">OrderLifeCycleType​ (enumeration of type string)</td>

              <td class="entry" headers="d1029544e119" data-title="Description">The order life cycle type. Possible values include:<ul class="ul bulletList">
                  <li class="li"><samp class="codeph nolang">MANAGED</samp></li>

                  <li class="li"><samp class="codeph nolang">UNMANAGED</samp></li>

                </ul>
                This field is available in API version 55.0 and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">paginationSize</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">int</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Number of results displayed per search results page. </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">preserveGuestCartEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. Indicates whether cart contents are preserved when a guest logs in to
                the store. Set the option to <samp class="codeph nolang">True</samp> to preserve
                guest carts.<p class="p">This field is available in API version 60.0 and later.</p>
              </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">pricingStrategy</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">PricingStrategy​ (enumeration of type string)</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. The price selected to display to buyers. Possible values include:<ul class="ul bulletList">
                  <li class="li"><samp class="codeph nolang">LowestPrice</samp></li>

                  <li class="li"><samp class="codeph nolang">Priority</samp></li>

                </ul>
                The default value is <samp class="codeph nolang">LowestPrice</samp>.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">productGrouping</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">ProductGrouping ​ (enumeration of type string)</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Determines whether product variations are listed individually in search results
                or are represented by the parent product, which links to its children. Possible
                values are: <ul class="ul bulletList">
                  <li class="li">
                    <samp class="codeph nolang">NoGrouping</samp>—Variations are listed
                    individually in search results.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">VariationParent</samp>—The parent product
                    is returned in search results with a link to its children.
                  </li>

                </ul>
                The default value is <samp class="codeph nolang">VariationParent</samp>. This
                field is available in API version 52.0 and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">skipAdditionalEntitlementCheckForSearch</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">By default, user entitlement checks are run as part of a search index rebuild
                and again when product search results are returned. Skips the second check to
                promote faster search performance. Set the option to <samp class="codeph nolang">True</samp> to skip additional entitlement checks on a search. This field is
                available in API version 52.0 and later.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">skuDetectionEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Indicates whether SKU detection is enabled (<samp class="codeph nolang">true</samp>) or not (<samp class="codeph nolang">false</samp>). </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">splitShipmentEnabled</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">boolean</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. Indicates whether split shipments are enabled (<samp class="codeph nolang">true</samp>) or not (<samp class="codeph nolang">false</samp>). </td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">supportedCurrencies</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Currencies supported for store template.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">supportedLanguages</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. Languages supported for store template.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">supportedShipToCountries</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">string</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Countries that a store created from the template can ship to.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1029544e113" data-title="Field Name"><span class="keyword parmname">type</span></td>

              <td class="entry" headers="d1029544e116" data-title="Field Type">WebStoreType​ (enumeration of type string)</td>

              <td class="entry" headers="d1029544e119" data-title="Description">Required. The type of store configuration, <samp class="codeph nolang">B2C</samp>, <samp class="codeph nolang">B2B</samp>, <samp class="codeph nolang">or B2CE</samp>. Default is B2B.</td>

            </tr>

          </tbody>

        </table>

## Declarative Metadata Sample Definition

The following is an example of a web store template component.

<?xml version="1.0" encoding="UTF-8"?>
<WebStoreTemplate xmlns="http://soap.sforce.com/2006/04/metadata">
    <autoFacetingEnabled\>true</autoFacetingEnabled\>
    <cartAsyncProcessingEnabled\>true</cartAsyncProcessingEnabled\>
    <cartCalculateEnabled\>false</cartCalculateEnabled\>
    <cartToOrderAutoCustomFieldMapping\>true</cartToOrderAutoCustomFieldMapping\>
    <checkoutTimeToLive\>10</checkoutTimeToLive\>
    <checkoutValidAfterDate\>2020-08-10T09:26:50</checkoutValidAfterDate\>
    <commerceEinsteinActivitiesTracked\>false</commerceEinsteinActivitiesTracked\>
    <commerceEinsteinDeployed\>false</commerceEinsteinDeployed\>
    <country\>US</country\>
    <defaultCurrency\>USD</defaultCurrency\>
    <defaultLanguage\>ENGLISH</defaultLanguage\>
    <defaultTaxLocaleType\>Net</defaultTaxLocaleType\>
    <description\>WebStore description</description\>
    <duplicateCartItemsEnabled\>false</duplicateCartItemsEnabled\>
    <guestBrowsingEnabled\>true</guestBrowsingEnabled\>
    <guestCartEnabled\>false</guestCartEnabled\>
    <guestCartTimeToLive\>10</guestCartTimeToLive\>
    <guestCheckoutEnabled\>false</guestCheckoutEnabled\>
    <masterLabel\>WebStore</masterLabel\>
    <maxValuesPerFacet\>99</maxValuesPerFacet\>
    <orderActivationStatus\>Activated</orderActivationStatus\>
    <orderLifeCycleType\>MANAGED</orderLifeCycleType\>
    <paginationSize\>9</paginationSize\>
    <preserveGuestCartEnabled\>false</preserveGuestCartEnabled\>
    <pricingStrategy\>Priority</pricingStrategy\>
    <productGrouping\>VariationParent</productGrouping\>
    <skipAdditionalEntitlementCheckForSearch\>true</skipAdditionalEntitlementCheckForSearch\>
    <skuDetectionEnabled\>false</skuDetectionEnabled\>
    <supportedCurrencies\>USD</supportedCurrencies\>
    <supportedLanguages\>en\_us</supportedLanguages\>
    <supportedShipToCountries\>CA;US</supportedShipToCountries\>
    <splitShipmentEnabled\>false</splitShipmentEnabled\>
    <type\>B2B</type\>
</WebStoreTemplate\>

The following is an example package.xml that references the previous definition.

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <types>
        <members>\*</members>
        <name>WebStoreTemplate</name>
    </types>
    <version>60.0</version>
</Package>

## Wildcard Support in the Manifest File

This metadata type supports the wildcard character \* (asterisk) in the package.xml manifest file. For information about using the manifest file, see [Deploying and Retrieving Metadata with the Zip File](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/file_based_zip_file.htm).