Locations
Locations allow merchants to track product inventory across multiple physical or virtual locations. Locations also allow merchants to manage their store and warehouse physical addresses in a single source of truth, which can be used by tools such as store locator widgets or app integrations that are concerned with locations where a store’s business is conducted.
Managing locations
You can create up to the following number of locations:
- Standard plan: up to 4
- Plus plan: up to 5
- Pro plan: up to 8
- Enterprise plan: 100; can be customized by request
You can disable, remove visibility, and delete locations.
The enabled
and storefront_visibility
flags for a location determine whether a location is available for Storefront and Management APIs.
- Both flags determine if a location will return through any of the Storefront APIs, including getting available pickup methods. The flags control location visibility through the Storefront APIs.
- However, the
enabled
flag also controls:- Whether a location can be used to create orders and pickup methods.
- Whether you can edit stock levels through the management APIs
- If any stock for products at a location contribute to the "available to sell" total returned by the Storefront APIs.
- For example, a location can be "enabled", allowing orders to be fulfilled at that location through the Order V2 or Checkout APIs. If its
storefront_visibility
is set to false, the details of that location are omitted from the Storefront APIs.
The Locations API allows you to manage locations. For examples, see Merchant Configuration under the End-to-end guides.
You can query locations using the GraphQL Storefront API. For examples, see Query Locations with the GraphQL Storefront API.
Due to the asynchronous nature of the Locations API, there may be a short delay before data is updated after the endpoints are called. Endpoints that manage these locations and inventory at these locations return a transaction_id
for any write requests.
Location metafields
Manage location metafields using the Locations API.
To create a location metafield, send a request to the Create a location metafield endpoint. Each metafield must have a unique combination of key
and value
for a namespace
.
POST https://api.bigcommerce.com/stores/{{STORE_HASH}}/v3/inventory/locations/{{LOCATION_ID}}/metafields
X-Auth-Token: {{ACCESS_TOKEN}}
Content-Type: application/json
Accept: application/json
{
"key": "location status",
"value": "upcoming",
"namespace": "headquarters",
"permission_set": "write_and_sf_access",
"description": "new location"
}
Location metafields that have storefront access permissions (i.e. permission set as read_and_sf_access
or write_and_sf_access
) can be returned in the GraphQL Storefront API.
For example queries of this, see Query Locations with the GraphQL Storefront API.