---
title: "Conector de BigCommerce"
description: "Guía completa de integración con BigCommerce para sincronizar clientes, pedidos, productos y datos del storefront con Brevo a través de Tajo."
url: https://tajo.io/es/docs/connectors/ecommerce/bigcommerce/
markdown: https://tajo.io/es/docs/connectors/ecommerce/bigcommerce.md
lang: es-ES
robots: noindex
---

Solicita acceso anticipado

Escribe tu nombre y dirección de correo de trabajo. Te enviaremos un enlace para confirmar tu solicitud de acceso a Tajo.

# Conector de BigCommerce

Estado del conector: En desarrollo En construcción. Aún no verificado.

| Campo de origen | Campo de destino | Valor de ejemplo |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Conecta tu tienda de BigCommerce con Brevo a través de Tajo para una sincronización completa de los datos de ecommerce. Sincroniza clientes, pedidos, productos y eventos del carrito para impulsar campañas de marketing segmentadas, recuperación de carritos abandonados y automatización post-compra.

## Resumen

| Propiedad | Valor |
| --- | --- |
| **Plataforma** | BigCommerce |
| **Categoría** | Ecommerce |
| **Complejidad de configuración** | Media |
| **Integración oficial** | No |
| **Datos sincronizados** | Clientes, Pedidos, Productos, Carritos |
| **Skills disponibles** | 10 |

## Funcionalidades

- **Sincronización de clientes** - Sincronización en tiempo real de los datos de clientes con los contactos de Brevo
- **Seguimiento de pedidos** - Eventos del ciclo de vida del pedido para flujos de marketing post-compra
- **Sincronización del catálogo de productos** - Sincroniza productos para recomendaciones por email y contenido dinámico
- **Carritos abandonados** - Rastrea y recupera carritos abandonados con emails automatizados
- **Soporte multi-storefront** - Conecta varios storefronts de BigCommerce
- **Actualizaciones vía webhook** - Actualizaciones de datos en tiempo real a través de los webhooks de BigCommerce
- **Campos personalizados** - Asocia campos personalizados de BigCommerce a atributos de contacto de Brevo
- **Seguimiento de inventario** - Sincroniza niveles de stock para notificaciones de “de nuevo disponible”

## Requisitos previos

Antes de empezar, asegúrate de tener:

1. Una tienda de BigCommerce con acceso de propietario o administrador
2. Una cuenta de API de BigCommerce con los scopes OAuth adecuados
3. Tu Store Hash (lo encuentras en la URL de tu tienda o en las credenciales de API)
4. Una cuenta de Brevo con acceso a la API
5. Una cuenta de Tajo con credenciales de API

## Autenticación

### Credenciales de la cuenta de API

BigCommerce utiliza cuentas de API basadas en OAuth. Crea una en el panel de control de BigCommerce en **Settings > API > API Accounts**.

Recibirás:

- **Client ID** - Identificador de tu app
- **Client Secret** - Secreto de tu app (guárdalo de forma segura)
- **Access Token** - Se usa para la autenticación de la API
- **Store Hash** - Identificador único de tu tienda

```bash
curl https://api.bigcommerce.com/stores/{store_hash}/v3/catalog/products \
  -H "X-Auth-Token: YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json"
```

### Scopes OAuth requeridos

| Scope | Acceso | Propósito |
| --- | --- | --- |
| `store_v2_customers` | Lectura | Sincronización de datos de clientes |
| `store_v2_orders` | Lectura | Seguimiento de eventos de pedido |
| `store_v2_products` | Lectura | Sincronización del catálogo de productos |
| `store_cart` | Lectura | Seguimiento de carritos abandonados |
| `store_v2_information` | Lectura | Configuración de la tienda |
| `store_v2_content` | Lectura | Contenido del storefront |

## Configuración

### Configuración básica

```yaml
connectors:
  bigcommerce:
    enabled: true
    store_hash: "your-store-hash"
    access_token: "your-access-token"
    client_id: "your-client-id"

    # Data sync options
    sync:
      customers: true
      orders: true
      products: true
      carts: true
      inventory: false

    # Brevo list assignment
    lists:
      all_customers: 40
      buyers: 41
      abandoned_cart: 42
```

### Asignación de campos de cliente

Asocia los campos de cliente de BigCommerce con los atributos de Brevo:

```yaml
customer_mapping:
  email: email
  first_name: FIRSTNAME
  last_name: LASTNAME
  phone: SMS
  company: COMPANY

  # Address fields
  addresses[0].city: CITY
  addresses[0].state: STATE
  addresses[0].country: COUNTRY
  addresses[0].zip: ZIP

  # E-commerce metrics
  orders_count: ORDER_COUNT
  total_spent: TOTAL_SPENT
  date_created: SIGNUP_DATE

  # Customer group
  customer_group_id: CUSTOMER_GROUP
```

### Configuración de webhooks

```yaml
webhooks:
  - scope: "store/customer/created"
    destination: "customer_created"
  - scope: "store/customer/updated"
    destination: "customer_updated"
  - scope: "store/order/created"
    destination: "order_placed"
  - scope: "store/order/updated"
    destination: "order_updated"
  - scope: "store/order/statusUpdated"
    destination: "order_status_changed"
  - scope: "store/cart/created"
    destination: "cart_created"
  - scope: "store/cart/updated"
    destination: "cart_updated"
  - scope: "store/cart/abandoned"
    destination: "cart_abandoned"
  - scope: "store/inventory/updated"
    destination: "inventory_changed"
```

## Endpoints de la API

| Método | Endpoint | Descripción |
| --- | --- | --- |
| `GET` | `/v3/customers` | Listar clientes |
| `POST` | `/v3/customers` | Crear clientes |
| `PUT` | `/v3/customers` | Actualizar clientes |
| `GET` | `/v2/orders` | Listar pedidos |
| `GET` | `/v2/orders/{id}` | Obtener detalles de un pedido |
| `GET` | `/v3/catalog/products` | Listar productos |
| `GET` | `/v3/catalog/products/{id}` | Obtener detalles de un producto |
| `GET` | `/v3/catalog/products/{id}/variants` | Listar variantes de un producto |
| `GET` | `/v3/carts` | Listar carritos |
| `GET` | `/v3/abandoned-carts` | Listar carritos abandonados |
| `POST` | `/v3/hooks` | Crear un webhook |
| `GET` | `/v3/catalog/categories` | Listar categorías |

## Ejemplos de código

### Inicializar el conector de BigCommerce

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect BigCommerce store
await tajo.connectors.connect('bigcommerce', {
  storeHash: process.env.BC_STORE_HASH,
  accessToken: process.env.BC_ACCESS_TOKEN,
  clientId: process.env.BC_CLIENT_ID
});
```

### Obtener y sincronizar clientes

```javascript
// Fetch customers from BigCommerce
const response = await fetch(
  `https://api.bigcommerce.com/stores/${STORE_HASH}/v3/customers?limit=250`,
  {
    headers: {
      'X-Auth-Token': ACCESS_TOKEN,
      'Content-Type': 'application/json'
    }
  }
);

const { data, meta } = await response.json();
// data: [{ id, email, first_name, last_name, phone, ... }]
// meta.pagination: { total, count, per_page, current_page, total_pages }
```

### Gestionar eventos de webhook

```javascript
// BigCommerce webhook handler
app.post('/webhooks/bigcommerce', async (req, res) => {
  const { scope, store_id, data } = req.body;

  // Verify the webhook is from your store
  if (store_id !== process.env.BC_STORE_HASH) {
    return res.status(401).send('Unauthorized');
  }

  // Forward to Tajo
  await tajo.connectors.handleWebhook('bigcommerce', {
    topic: scope,
    payload: data
  });

  res.status(200).send('OK');
});
```

### Sincronizar el catálogo de productos

```javascript
// Full product catalog sync
await tajo.connectors.sync('bigcommerce', {
  type: 'full',
  resources: ['products'],
  includeVariants: true,
  includeImages: true
});

// Check sync status
const status = await tajo.connectors.status('bigcommerce');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-01-15T10:30:00Z',
//   customersCount: 8200,
//   ordersCount: 4500,
//   productsCount: 620
// }
```

## Límites de velocidad

| Plan | Límite | Detalles |
| --- | --- | --- |
| **Standard** | 150 peticiones/30 s | Por tienda |
| **Plus** | 300 peticiones/30 s | Por tienda |
| **Pro** | 450 peticiones/30 s | Por tienda |
| **Enterprise** | Sin límite | Límites personalizados |

Límites adicionales:

| Recurso | Límite |
| --- | --- |
| **Webhooks** | 100 por tienda |
| **Por página** | 250 registros máx. |
| **Peticiones concurrentes** | Depende del plan |

Cabeceras de rate limit

Monitoriza las cabeceras `X-Rate-Limit-Requests-Left` y `X-Rate-Limit-Time-Reset-Ms` para gestionar tu uso de la API dentro de los límites.

## Resolución de problemas

| Problema | Causa | Solución |
| --- | --- | --- |
| `401 Unauthorized` | Access token no válido | Regenera las credenciales de API en el panel de administración de BigCommerce |
| `403 Forbidden` | Falta un scope OAuth | Revisa los scopes de la cuenta de API y añade los permisos necesarios |
| Los webhooks no se disparan | Se alcanzó el límite de webhooks | Comprueba el número de webhooks (máx. 100) y elimina los que no se usen |
| Faltan eventos de carrito | Scripts del storefront no cargados | Verifica el script de seguimiento en el storefront de BigCommerce |
| Productos desincronizados | Caché del catálogo | Lanza una sincronización manual o espera a las actualizaciones por webhook |
| `429 Too Many Requests` | Se superó el rate limit | Implementa una cola de peticiones monitorizando las cabeceras de rate limit |
| Faltan grupos de clientes | V2 frente a V3 de la API | Los grupos de clientes usan la API V2; comprueba la versión del endpoint |

## Buenas prácticas

1. **Usa la API V3 siempre que sea posible** - La API V3 ofrece mejor paginación, filtrado y respuestas en JSON
2. **Monitoriza las cabeceras de rate limit** - Vigila `X-Rate-Limit-Requests-Left` para no alcanzar los límites
3. **Registra webhooks para sincronización en tiempo real** - Usa webhooks en lugar de polling para actualizaciones de clientes y pedidos
4. **Agrupa las actualizaciones de clientes** - Usa los endpoints V3 bulk de clientes para grandes sincronizaciones de datos
5. **Incluye variantes en la sincronización de productos** - Sincroniza las variantes de producto para un seguimiento preciso del inventario
6. **Configura webhooks de carritos abandonados** - Fundamentales para la automatización de emails de recuperación de carrito
7. **Usa paginación** - Pagina siempre los endpoints de listado; máx. 250 registros por página

## Seguridad

- **Autenticación con token OAuth** - Acceso a la API seguro basado en tokens
- **Permisos por scope** - Las cuentas de API se restringen a scopes de datos concretos
- **Solo HTTPS** - Toda la comunicación con la API se cifra vía TLS
- **Verificación de webhooks** - Verifica el origen del webhook usando el store hash
- **Cumple con PCI DSS** - BigCommerce gestiona los datos de pago de forma segura
- **SOC 2 Tipo II** - La plataforma BigCommerce está certificada SOC 2

## Recursos relacionados

- [Conector de Shopify](https://tajo.io/es/docs/connectors/ecommerce/shopify)
- [Conector de WooCommerce](https://tajo.io/es/docs/connectors/ecommerce/woocommerce)
- [Skill de sincronización de clientes](https://tajo.io/es/docs/skills/data-sync/customer-sync)
- [Skill de carrito abandonado](https://tajo.io/es/docs/skills/email-marketing/abandoned-cart)
