> ## Documentation Index
> Fetch the complete documentation index at: https://nango.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# BigCommerce

## Overview

<CardGroup cols={3}>
  <Card title="Pre-built tooling" icon="screwdriver-wrench" href="#pre-built-tooling" />

  <Card title="Pre-built integrations" icon="square-check" href="#pre-built-integrations" />

  <Card title="Access requirements" icon="triangle-exclamation" href="#access-requirements" />

  <Card title="Setup guide" icon="rocket" href="#setup-guide" />

  <Card title="Useful links" icon="circle-info" href="#useful-links" />

  <Card title="API gotchas" icon="biohazard" href="#api-gotchas" />
</CardGroup>

## Pre-built tooling

<AccordionGroup>
  <Accordion title="✅ Authorization">
    | Tools                           | Status |
    | ------------------------------- | ------ |
    | Pre-built authorization (OAuth) | ✅      |
    | Credentials auto-refresh        | ✅      |
    | Auth parameters validation      | ✅      |
    | Pre-built authorization UI      | ✅      |
    | Custom authorization UI         | ✅      |
    | Expired credentials detection   | ✅      |
  </Accordion>

  <Accordion title="✅ Read & write data">
    | Tools                                     | Status                         |
    | ----------------------------------------- | ------------------------------ |
    | Pre-built integrations                    | ✅                              |
    | API unification                           | ✅                              |
    | 2-way sync                                | ✅                              |
    | Webhooks from Nango on data modifications | ✅                              |
    | Real-time webhooks from 3rd-party API     | 🚫 (time to contribute: \<48h) |
    | Proxy requests                            | ✅                              |
  </Accordion>

  <Accordion title="✅ Observability & data quality">
    | Tools                   | Status |
    | ----------------------- | ------ |
    | HTTP request logging    | ✅      |
    | End-to-end type safety  | ✅      |
    | Data runtime validation | ✅      |
    | OpenTelemetry export    | ✅      |
    | Slack alerts on errors  | ✅      |
    | Integration status API  | ✅      |
  </Accordion>

  <Accordion title="✅ Customization">
    | Tools                              | Status                         |
    | ---------------------------------- | ------------------------------ |
    | Create or customize use-cases      | ✅                              |
    | Pre-configured pagination          | 🚫 (time to contribute: \<48h) |
    | Pre-configured rate-limit handling | 🚫 (time to contribute: \<48h) |
    | Per-customer configurations        | ✅                              |
  </Accordion>
</AccordionGroup>

### Others

| Function name                  | Description                                        | Type                                           | Source code                                                                                                                              |
| ------------------------------ | -------------------------------------------------- | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `delete-category`              | Delete a category.                                 | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/delete-category.ts)              |
| `delete-coupon`                | Delete a coupon.                                   | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/delete-coupon.ts)                |
| `delete-subscriber`            | Delete an email subscriber.                        | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/delete-subscriber.ts)            |
| `get-order-shipping-addresses` | List shipping addresses for an order.              | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/get-order-shipping-addresses.ts) |
| `list-brands`                  | List brands                                        | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-brands.ts)                  |
| `list-categories`              | List categories.                                   | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-categories.ts)              |
| `list-channels`                | List all channels including the default storefront | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-channels.ts)                |
| `list-coupons`                 | List coupons.                                      | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-coupons.ts)                 |
| `list-customer-addresses`      | List addresses for a customer.                     | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-customer-addresses.ts)      |
| `list-customers`               | List customers.                                    | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-customers.ts)               |
| `list-order-statuses`          | List all available order statuses.                 | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-order-statuses.ts)          |
| `list-orders`                  | List orders.                                       | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-orders.ts)                  |
| `list-price-lists`             | List price lists.                                  | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-price-lists.ts)             |
| `list-product-variants`        | List variants for a product.                       | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-product-variants.ts)        |
| `list-products`                | List catalog products.                             | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-products.ts)                |
| `list-subscribers`             | List email newsletter subscribers.                 | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-subscribers.ts)             |
| `list-wishlists`               | List wishlists.                                    | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/list-wishlists.ts)               |
| `update-category`              | Update a category.                                 | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/update-category.ts)              |
| `update-coupon`                | Update a coupon.                                   | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/update-coupon.ts)                |
| `update-product-variant`       | Update a product variant.                          | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/update-product-variant.ts)       |
| `update-product`               | Update a product.                                  | [Action](/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/actions/update-product.ts)               |
| `brands`                       | Sync brands.                                       | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/brands.ts)                         |
| `categories`                   | Sync categories.                                   | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/categories.ts)                     |
| `channel-listings`             | Sync product listings for each channel.            | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/channel-listings.ts)               |
| `coupons`                      | Sync coupons.                                      | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/coupons.ts)                        |
| `orders`                       | Sync orders.                                       | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/orders.ts)                         |
| `products`                     | Sync products.                                     | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/products.ts)                       |
| `subscribers`                  | Sync email newsletter subscribers.                 | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/subscribers.ts)                    |
| `variants`                     | Sync product variants across all products          | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/variants.ts)                       |
| `wishlists`                    | Sync wishlists.                                    | [Sync](/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/bigcommerce/syncs/wishlists.ts)                      |

## Access requirements

| Pre-Requisites    | Status | Comment |
| ----------------- | ------ | ------- |
| Paid dev account  | ❓      |         |
| Paid test account | ❓      |         |
| Partnership       | ❓      |         |
| App review        | ❓      |         |
| Security audit    | ❓      |         |

## Setup guide

*No setup guide yet.*

<Tip>Need help getting started? Get help in the [community](https://nango.dev/slack).</Tip>

<Note>Contribute improvements to the setup guide by [editing this page](https://github.com/nangohq/nango/tree/master/docs/integrations/all/bigcommerce.mdx)</Note>

## Useful links

* [How to register an Application](https://developers.tremendous.com/docs/oauth-20#step-1-register-a-developer-app)
* [OAuth-related docs](https://developer.bigcommerce.com/docs/integrations/apps/guide/auth)
* [List of OAuth scopes](https://developer.bigcommerce.com/docs/start/authentication/api-accounts#oauth-scopes)
* [API rate limiting](https://developer.bigcommerce.com/docs/start/best-practices/api-rate-limits)

<Note>Contribute useful links by [editing this page](https://github.com/nangohq/nango/tree/master/docs/integrations/all/bigcommerce.mdx)</Note>

## API gotchas

* BigCommerce offers various apps with different levels of visibility. For more details, see [BigCommerce types of Apps](https://developer.bigcommerce.com/docs/integrations/apps/guide/types)
* After creating a new connection on Nango, you will need to rewrite your HTTP request headers to use the `X-Auth-Token` header to pass the API account's `access_token` instead of the Authorization header as described in [here](https://developer.bigcommerce.com/docs/start/authentication/api-accounts#how-to-migrate). Please look at the following example:

```js theme={null}
const connection = await nango.getConnection();

if (!connection.credentials || typeof connection.credentials !== 'object') {
    throw new nango.ActionError({
        message: `credentials are missing or invalid`
    });
}

let access_token: string;
if ('access_token' in connection.credentials) {
    access_token = connection.credentials.access_token;
} else {
    throw new nango.ActionError({
        message: `access_token is missing`
    });
}

const config = {
    endpoint: '/v2/orders',
    headers: {
        'X-Auth-Token': access_token
    }
};

const response = await nango.get(config);

```

<Note>Contribute API gotchas by [editing this page](https://github.com/nangohq/nango/tree/master/docs/integrations/all/bigcommerce.mdx)</Note>
