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

# BigCommerce

> Seamlessly create unique storefronts for each facet of your business, all managed through one BigCommerce dashboard.

## Supported syncing

| Type | Description | Supported Sync Modes |
| - | - | - |
| **Orders** | Create and update orders, including updating their statuses | Update, Insert |
| **Customers** | Create and update customers with data from your warehouse | Upsert, Update, Insert |

For more information about sync modes, refer to the [sync modes](https://docs.hightouch.com/syncs/types-and-modes.md#sync-modes) docs.

## Connect to BigCommerce

Go to the [**Destinations** overview page](https://app.hightouch.com/destinations?from=docs) and click the **Add destination**
button. Select **BigCommerce** and click **Continue**. You can then authenticate Hightouch to **BigCommerce** by entering the following required fields into Hightouch:

* **Access token**: This is the access token for your BigCommerce API account. It should have read/write access to orders and customers.
* **Store hash**: This is the store hash for your BigCommerce store. You can find it in your control panel URL after `store-` or in your API path after `stores/`..

You can find more information on how to generate an access token [in BigCommerce's docs](https://developer.bigcommerce.com/api-docs/getting-started/authentication/rest-api-authentication#obtaining-store-api-credentials).

## Sync configuration

Once you've set up your BigCommerce destination and have a [model](https://docs.hightouch.com/getting-started/concepts.md#models) to pull
data from, you can set up your sync configuration to begin syncing data. Go to the [**Syncs** overview
page](https://app.hightouch.com/syncs?from=docs) and click the **Add sync** button to begin. Then, select the relevant model and
the BigCommerce destination you want to sync to.

### Syncing orders

Create and update orders, including updating their statuses.

#### Record matching

To match rows from your model to records in BigCommerce, you need to select the model column that contains values that match the BigCommerce **ID** field.

> [!NOTE]
>
> In **Insert** mode, BigCommerce automatically generates an identifier for
> every new record synced, so there's no need to match an existing record.

#### Field mapping

You can map data from any of your model columns to native and custom fields in BigCommerce. Ensure the data type of your model column matches the data type of the field you want to sync to.

#### Delete behavior

The [delete behavior](https://docs.hightouch.com/syncs/overview.md#delete-behavior) you select dictates what to do when a row no longer appears in your model's query results. You have the following options:

| Behavior | Description |
| - | - |
| **Do nothing** | Keep the customer record in BigCommerce with all its synced fields |
| **Clear** | Unset all the mapped fields from BigCommerce |
| **Delete** | Delete the synced record from your BigCommerce order |

### Syncing customers

Create and update customers with data from your warehouse.

#### Record matching

To match rows from your model to profiles in BigCommerce, you need to select a model column and corresponding BigCommerce field. You can match on any of the following BigCommerce fields:

* **ID**
* **Email**

> [!NOTE]
>
> In **Insert** mode, BigCommerce automatically generates an identifier for
> every new record synced, so there is no need to match an existing record.

#### Field mapping

You can map data from any of your model columns to native and custom fields in BigCommerce. Ensure the data type of your model column matches the data type of the field you want to sync to.

#### Delete behavior

The [delete behavior](https://docs.hightouch.com/syncs/overview.md#delete-behavior) you select dictates what to do when a row no longer appears in your model's query results. You have the following options:

| Behavior | Description |
| - | - |
| **Do nothing** | Keep the customer record in BigCommerce with all its synced fields |
| **Clear** | Unset all the mapped fields from BigCommerce |
| **Delete** | Delete the synced record from your BigCommerce customer |

## Tips and troubleshooting

To see the exact API requests and responses from each sync run, use the [live debugger](https://docs.hightouch.com/syncs/debugger.md). To get notified by Slack, PagerDuty, SMS, or email when a sync fails, set up [sync alerts](https://docs.hightouch.com/syncs/alerting.md). If you run into an issue this page doesn't cover, [contact support](#pylon-chat).
