Skip to navigation

October 9, 2026

Selected shipping option now matches the available options in createCheckout

We are beginning to roll out a fix for a bug in the Storefront GraphQL API where createCheckout could select a shipping option that wasn’t in the consignment’s availableShippingOptions. You may notice this take effect over the coming weeks.

  • Affected requests: createCheckout mutations that set selectRecommendedOption: true or shippingOptionSelectionStrategy on a shipping consignment, for stores whose shipping rates depend on the cart’s discounts, order total, or product dimensions. This includes carrier-calculated rates.
  • Selected option is one of the available options: the shipping option is selected using the same prices, discounts, and product dimensions as the returned availableShippingOptions, so selectedShippingOption matches one of them and the consignment’s shippingCost matches that option’s price.
  • No request changes: you don’t need to change your createCheckout requests.

For details, see the createCheckout mutation reference.


October 9, 2026

Selected shipping option now matches the available options in updateCheckout

We are beginning to roll out the fix for selected shipping options in createCheckout to updateCheckout. The bug in the Storefront GraphQL API let updateCheckout select a shipping option that wasn’t in the consignment’s availableShippingOptions when the same request also changed line items or coupons. You may notice this take effect over the coming weeks.

  • Affected requests: updateCheckout mutations that change line items or coupons and, in the same request, either set selectRecommendedOption: true or shippingOptionSelectionStrategy on a shipping consignment, or update a consignment’s address without a shipping option. This applies to stores whose shipping rates depend on the cart’s discounts, order total, or product dimensions, including carrier-calculated rates.
  • Selected option is one of the available options: the shipping option is selected and validated using the cart’s updated prices, discounts, and product dimensions, the same ones used for the returned availableShippingOptions. selectedShippingOption matches one of them and the consignment’s shippingCost matches that option’s price.
  • No request changes: you don’t need to change your updateCheckout requests.

For details, see the updateCheckout mutation reference.


October 9, 2026

New Smart Edits page under AI Tools

Docs now includes an AI Tools section that groups the control panel AI features. It brings the existing Catalog Enrichment guides together with a new overview of Smart Edits, the AI tool in the control panel product list that turns plain-language requests into a reviewable plan of bulk product updates. Existing Catalog Enrichment links redirect to the new location.

The page explains what Smart Edits is, how a session works from selecting products to applying changes, which product attributes it can update, what it doesn’t do, and when to reach for it instead of the bulk editor. It includes a short demo video and links to the Smart Edits support article, which covers setup, permissions, the full attribute list, and troubleshooting.

Smart Edits is in beta. Store owners can turn it on under Settings › Early access.

For details, see Smart Edits.


October 8, 2026

B2B Buyer Portal Updates

Updates the B2B Buyer Portal course to match a new release of its lab project, aligning the hands-on exercises in Modules 4 through 6 with the patterns the Buyer Portal itself uses.

  • Permission checks now read from the Redux store, using the rolePermissionSelector selector with useAppSelector in place of the validatePermissionWithComparisonType utility. Because the value comes from global state, gated content re-renders when a user’s permissions change.
  • In-app navigation now uses React Router’s useNavigate hook, replacing the setOpenPage prop. setOpenPage controls the portal shell’s open and closed state rather than acting as a navigation API, and the lab components no longer thread it through as a prop.
  • GraphQL responses are typed with the B3Request.graphqlB2B type parameter instead of as assertions. Response interfaces now describe the full data envelope, which the request layer unwraps before returning.
  • Expands the routing and querying lessons to teach useNavigate and response typing directly, so the instructional content matches the lab code.
  • Updates the lab project to a clean install of the Buyer Portal framework released on 2026-10-07.

For details, see the B2B Buyer Portal course.


October 8, 2026

Shipping option selection strategy for checkouts in the GraphQL Storefront API

BigCommerce is rolling out an optional shippingOptionSelectionStrategy field on checkout shipping consignments in the GraphQL Storefront API, so a caller can have a shipping option selected by a strategy of its choosing instead of the store’s default shipping option setting. You may notice this take effect over the coming weeks.

  • Choose a selection strategy. The createCheckout and updateCheckout mutations accept an optional shippingOptionSelectionStrategy on CreateCheckoutShippingConsignmentInput and ShippingConsignmentUpdateCheckoutInput. It takes a value of the new ShippingOptionSelectionStrategy enum: LEAST_EXPENSIVE, LEAST_EXPENSIVE_EXCLUDING_PICK_UP or MOST_EXPENSIVE.
  • Overrides the store setting. When the field is provided, the shipping option is selected using that strategy, even if the store’s default shipping option setting would recommend a different one. isRecommended on the available shipping options still reflects the store setting, so the selected option may not be the one marked as recommended.
  • One way to select per consignment. A request that sends shippingOptionSelectionStrategy together with selectRecommendedOption: true or shippingOptionEntityId is rejected.
  • Omitting the field changes nothing. shippingOptionSelectionStrategy is optional, so existing mutations continue to work unchanged.

For details, see GraphQL Storefront API: Carts and Checkout.


October 8, 2026

BigCommerce MCP Server is generally available

The BigCommerce MCP server is no longer in beta. The B2C Storefront and B2B Storefront tool sets are now generally available.

  • New settings location — enable the server under Settings → API and MCP → MCP in the control panel, instead of Settings → Early access
  • Same terms flow — turn on Storefront MCP and accept the terms of service to enable the server for your store
  • Per-storefront endpoint — once enabled, select a storefront to view and copy its MCP server URL

For details, see Enable MCP on your store.


October 7, 2026

Japanese prefecture names now use English spelling

Six Japanese prefecture names now use plain English spelling without macrons, following ISO 3166-2:JP. If your integration matches states by name, update it to use the new names.

State abbreviationPrevious nameNew name
13TōkyōTokyo
26KyōtoKyoto
27ŌsakaOsaka
28HyōgoHyogo
39KōchiKochi
44ŌitaOita
  • Unchanged identifiers: state IDs and state abbreviations stay the same, so lookups by ID or abbreviation are not affected.

For details, see Get all country states.


October 7, 2026

301 redirects now apply to storefront channels only

We are beginning to roll out a fix so that the 301 redirects are only created for storefront channels, meaning any channel with a type of storefront.

The rollout starts on November 10, 2026.

  • Storefront channels unchanged. All channels with a type of storefront still get automatic redirects, including Stencil (bigcommerce), Catalyst, Next, WordPress, and custom storefront channels.
  • Non-storefront channels skipped. Channels with other types, such as marketplace and marketing channels, no longer get 301 redirects, because they don’t serve storefront pages.
  • Existing redirects kept. Redirects that were already created for non-storefront channels are not removed at this time.

For details, see the Redirects overview.


October 7, 2026

Retrieve staff action logs with the Store Logs API

The Store Logs V3 API now includes a Staff Action Logs endpoint, so you can audit what staff users did in a store’s control panel over a given period.

  • New endpoint: GET /stores/{store_hash}/v3/store/stafflogs returns staff action log entries with the staff username, IP address, timestamp, summary, and action details.
  • Required time window: send timestamp:min as a Unix timestamp. Add timestamp:max to set the end of the window, which defaults to the current time. The window must not exceed 90 days.
  • Filters, paging, and sorting: filter by staff_username, service_name, summary, ipaddress, or userid, and use limit, page, sort, and direction to page through and order results.
  • Authentication: requests use the existing store_logs_read_only OAuth scope, the same as System Logs.

For details, see the Store Logs API reference.


October 7, 2026

Clearer error for duplicate Worldpay Access payments at checkout

When a shopper pays at checkout and Worldpay Access rejects the payment as already processed, the checkout payment request now returns a duplicate_transaction error instead of a generic server error.

  • Error code: the response carries duplicate_transaction rather than server_error, so a repeated transaction reference is distinguishable from a gateway failure.
  • HTTP status: these checkout payment requests return 400 Bad Request instead of 500 Internal Server Error.
  • No setup changes: you don’t need to change your Worldpay Access settings.

For details, see the Payments overview.