Chat on WhatsApp

Stencil framework — what can and can’t I customize?

Stencil is BigCommerce’s theme framework: Handlebars templates + SCSS + a few Stencil-specific helpers + the Storefront API for client-side data. It’s well-documented and powerful for theming.

What Stencil handles cleanly: layout customization, component swaps, custom widgets, A/B-able UI, custom checkout (single-page checkout v3 is editable), custom storefront API consumers.

Where Stencil hits ceilings:

  • Server-side business logic. You can’t hook into BC’s pricing engine, cart-rules engine, or tax engine the way you can with Magento plugins. Workaround: build an app that proxies the Storefront / Cart APIs — works, but adds latency and a hosting bill.
  • Custom DB columns / tables. No direct DB access — you store custom data in metafields (limited size) or in your own backend service synced via API.
  • Heavy catalog logic. Real-time stock / real-time price / customer-driven catalog visibility — doable via Channels API but rate-limit-bound.
  • Complex multi-currency rules. BC handles standard multi-currency well; weirder rules (per-country tax-inclusive vs tax-exclusive on the same SKU) need apps or workarounds.

Magento gives you full PHP access — you can rewrite the cart engine if you genuinely need to. Different toolboxes.

Was this helpful?