Skip to content
Back to skills

Bigcommerce

ASecurity

BigCommerce is a hosted e-commerce platform with REST and GraphQL APIs for headless storefronts. Use when a user asks to set up a large-scale online store, build a headless store with the Storefront GraphQL API or the Catalyst Next.js storefront, manage products and orders through the REST API, or migrate from Shopify to a more API-friendly platform.

  • 142 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 27, 2026
developmenttypescriptgobashnextjsnodegitapifrontendbackendperformance

Works with

  • terminal
  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 4, 2026

npx -y skills add TerminalSkills/skills --skill bigcommerce --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Bigcommerce?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Bigcommerce
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/terminalskills-bigcommerce/badge)](https://www.skillsdirectory.com/skills/terminalskills-bigcommerce)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: bigcommerce
description: >-
  BigCommerce is a hosted e-commerce platform with REST and GraphQL APIs for
  headless storefronts. Use when a user asks to set up a large-scale online
  store, build a headless store with the Storefront GraphQL API or the
  Catalyst Next.js storefront, manage products and orders through the REST
  API, or migrate from Shopify to a more API-friendly platform.
license: Apache-2.0
compatibility: 'Any frontend via REST/GraphQL API; Catalyst storefront needs Node.js 24 and pnpm'
metadata:
  author: terminal-skills
  version: 1.1.0
  repository: https://github.com/bigcommerce/catalyst
  category: business
  tags:
    - bigcommerce
    - ecommerce
    - headless
    - api
    - enterprise
---

# BigCommerce

## Overview

BigCommerce is a hosted e-commerce platform with strong headless capabilities. Unlike Shopify, it includes more features out of the box (no app fees for basic needs), has a comprehensive REST + GraphQL API, and supports multi-storefront. Works as a backend for headless commerce with Next.js (BigCommerce's own starter is Catalyst) or any other frontend.

## Instructions

### Step 1: Storefront API (GraphQL)

The endpoint is `https://store-{store_hash}.mybigcommerce.com/graphql` for the default channel (or your storefront domain plus `/graphql`); other channels use `store-{store_hash}-{channel_id}.mybigcommerce.com`. Create a token in the control panel or with `POST /v3/storefront/api-token` on the management API. BigCommerce's current docs say server-side integrations created after June 30, 2026 should use private tokens rather than storefront tokens; check the GraphQL authentication page for which applies to you. Limits: query complexity 10,000, depth 16, at most 50 products per page. Try queries in Settings > API > Storefront API Playground first.

```typescript
// lib/bigcommerce.ts — Fetch products via GraphQL Storefront API
const STOREFRONT_TOKEN = process.env.BC_STOREFRONT_TOKEN!
const STORE_HASH = process.env.BC_STORE_HASH!

export async function getProducts(limit = 12) {
  const query = `
    query Products($first: Int!) {
      site {
        products(first: $first) {
          edges {
            node {
              entityId
              name
              path
              prices { price { value currencyCode } }
              defaultImage { url(width: 400) altText }
            }
          }
        }
      }
    }
  `

  const res = await fetch(`https://store-${STORE_HASH}.mybigcommerce.com/graphql`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      Authorization: `Bearer ${STOREFRONT_TOKEN}`,
    },
    body: JSON.stringify({ query, variables: { first: limit } }),
  })

  const { data } = await res.json()
  return data.site.products.edges.map(e => e.node)
}
```

### Step 2: Management API (REST)

```typescript
// lib/bc-admin.ts — Server-side product and order management
const BC_TOKEN = process.env.BC_API_TOKEN!
const STORE_HASH = process.env.BC_STORE_HASH!
const BASE_URL = `https://api.bigcommerce.com/stores/${STORE_HASH}/v3`

// Create product
await fetch(`${BASE_URL}/catalog/products`, {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-Auth-Token': BC_TOKEN,
  },
  body: JSON.stringify({
    name: 'Premium Headphones',
    type: 'physical',
    price: 199.99,
    weight: 1.5,
    categories: [23],
    is_visible: true,
  }),
})

// Get orders
// Orders are still the V2 API: /v2/orders, not /v3/orders
const orders = await fetch(`https://api.bigcommerce.com/stores/${STORE_HASH}/v2/orders?status_id=11`, {
  headers: { 'X-Auth-Token': BC_TOKEN, Accept: 'application/json' },
}).then(r => r.json()) // status 11 = Awaiting Fulfillment
```

Create the API account under Settings > API > Store-level API accounts and grant only the scopes you need (Products, Orders). The token is shown once; keep it in an environment variable.

### Step 3: Next.js Commerce

BigCommerce's official headless storefront is Catalyst (Next.js, App Router, GraphQL). It needs Node.js 24 and pnpm via Corepack.

```bash
corepack enable pnpm
pnpm create @bigcommerce/catalyst@latest
cd my-catalyst-store   # the directory name you chose
pnpm run dev           # http://localhost:3000
```

The CLI asks for your store hash and channel and writes `.env.local`. The old Vercel `commerce` template no longer ships a BigCommerce provider, so do not follow guides that use it.

## Examples

### Example 1: Show the newest products on a headless page

**User request:** "List the 8 newest products from my BigCommerce store in Next.js"

Use `getProducts(8)` from Step 1 in a Server Component with `process.env.BC_STORE_HASH` and `BC_STOREFRONT_TOKEN` set. The result is an array like `{ entityId: 113, name: 'Premium Headphones', path: '/premium-headphones/', prices: { price: { value: 199.99, currencyCode: 'USD' } } }`. For newest-first ordering add `sortBy: NEWEST` inside `products(...)`, which the playground will validate.

### Example 2: Add a product and find orders waiting to ship

**User request:** "Create a headphones product and list orders awaiting fulfillment"

Run the Step 2 calls from a server script with `BC_API_TOKEN` set. The POST returns `201` with the new product's `data.id`; the orders call returns an array of order objects with `id`, `status`, `total_inc_tax` and `date_created`, an empty array (or `204`) if nothing is waiting.


## Guidelines

- Plans (checked October 2026): Core from $29/month billed annually ($39 monthly), Growth $79, Scale $299, Performance custom. Sales caps trigger automatic upgrades. Transaction fees are $0 with embedded providers such as Stripe and PayPal, but open payment providers carry 2.0% (Core) down to 0.6% (Scale). Re-check pricing before quoting it.
- Multi-storefront: run multiple stores from one account with different domains and catalogs.
- GraphQL Storefront API is read-focused (catalog, carts, customers); use the REST Management API for admin writes, and never expose management tokens in browser code.
- Built-in features (reviews, wishlists, faceted search) that cost extra on Shopify.

Files in this skill

  • SKILL.md3.2 KB
  • _scores.json1.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.