BigCommerce 커넥터

BigCommerce 커넥터

BigCommerce 스토어를 Tajo를 통해 Brevo에 연결하여 완전한 이커머스 데이터 동기화를 구현하세요. 고객, 주문, 제품, 장바구니 이벤트를 동기화하여 타겟팅된 마케팅 캠페인, 장바구니 이탈 복구, 구매 후 자동화를 구동할 수 있습니다.

개요

속성
플랫폼BigCommerce
카테고리이커머스
설정 난이도보통
공식 통합아니오
동기화되는 데이터고객, 주문, 제품, 장바구니
사용 가능한 스킬10

주요 기능

  • 고객 동기화 - Brevo 연락처로의 실시간 고객 데이터 동기화
  • 주문 추적 - 구매 후 마케팅 플로우를 위한 주문 라이프사이클 이벤트
  • 제품 카탈로그 동기화 - 이메일 추천 및 동적 콘텐츠를 위한 제품 동기화
  • 장바구니 이탈 - 자동화된 이메일로 이탈한 장바구니 추적 및 복구
  • 다중 스토어프론트 지원 - 여러 BigCommerce 스토어프론트 연결
  • 웹훅 기반 업데이트 - BigCommerce 웹훅을 통한 실시간 데이터 업데이트
  • 커스텀 필드 - BigCommerce 커스텀 필드를 Brevo 연락처 속성에 매핑
  • 재고 추적 - 재입고 알림을 위한 재고 수준 동기화

사전 준비 사항

시작하기 전에 다음 사항이 준비되어 있어야 합니다.

  1. Store Owner 또는 Admin 액세스 권한이 있는 BigCommerce 스토어
  2. 적절한 OAuth 스코프를 가진 BigCommerce API 계정
  3. Store Hash (스토어 URL 또는 API 자격 증명에서 확인 가능)
  4. API 액세스가 가능한 Brevo 계정
  5. API 자격 증명이 있는 Tajo 계정

인증

API 계정 자격 증명

BigCommerce는 OAuth 기반 API 계정을 사용합니다. BigCommerce 관리 패널의 Settings > API > API Accounts에서 생성할 수 있습니다.

다음을 받게 됩니다.

  • Client ID - 앱 식별자
  • Client Secret - 앱 시크릿 (안전하게 보관)
  • Access Token - API 인증에 사용
  • Store Hash - 고유한 스토어 식별자
Terminal window
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"

필수 OAuth 스코프

스코프액세스목적
store_v2_customersRead고객 데이터 동기화
store_v2_ordersRead주문 이벤트 추적
store_v2_productsRead제품 카탈로그 동기화
store_cartRead장바구니 이탈 추적
store_v2_informationRead스토어 설정
store_v2_contentRead스토어프론트 콘텐츠

설정

기본 설정

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

고객 필드 매핑

BigCommerce 고객 필드를 Brevo 속성에 매핑합니다.

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

웹훅 설정

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"

API 엔드포인트

Method엔드포인트설명
GET/v3/customers고객 목록 조회
POST/v3/customers고객 생성
PUT/v3/customers고객 업데이트
GET/v2/orders주문 목록 조회
GET/v2/orders/{id}주문 세부 정보 조회
GET/v3/catalog/products제품 목록 조회
GET/v3/catalog/products/{id}제품 세부 정보 조회
GET/v3/catalog/products/{id}/variants제품 variant 목록
GET/v3/carts장바구니 목록 조회
GET/v3/abandoned-carts이탈 장바구니 목록 조회
POST/v3/hooks웹훅 생성
GET/v3/catalog/categories카테고리 목록 조회

코드 예제

BigCommerce 커넥터 초기화

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
});

고객 가져오기 및 동기화

// 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 }

웹훅 이벤트 처리

// 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');
});

제품 카탈로그 동기화

// 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
// }

요청 제한

플랜제한세부 사항
Standard150회/30초스토어당
Plus300회/30초스토어당
Pro450회/30초스토어당
Enterprise무제한커스텀 제한

추가 제한 사항:

리소스제한
웹훅스토어당 100개
페이지당최대 250개 레코드
동시 요청플랜에 따라 다름

요청 제한 헤더

제한 내에서 API 사용량을 관리하려면 X-Rate-Limit-Requests-LeftX-Rate-Limit-Time-Reset-Ms 헤더를 모니터링하세요.

문제 해결

문제원인해결 방법
401 Unauthorized유효하지 않은 액세스 토큰BigCommerce 관리자에서 API 자격 증명을 재생성하세요
403 ForbiddenOAuth 스코프 누락API 계정 스코프를 확인하고 필수 권한을 추가하세요
웹훅이 실행되지 않음웹훅 제한 도달웹훅 수(최대 100개)를 확인하고 사용하지 않는 것을 제거하세요
장바구니 이벤트 누락스토어프론트 스크립트가 로드되지 않음BigCommerce 스토어프론트에서 추적 스크립트를 확인하세요
제품이 동기화되지 않음카탈로그 캐시수동 동기화를 트리거하거나 웹훅 업데이트를 기다리세요
429 Too Many Requests요청 제한 초과요청 제한 헤더 모니터링과 함께 요청 큐잉을 구현하세요
고객 그룹 누락V2 vs V3 API고객 그룹은 V2 API를 사용합니다. 엔드포인트 버전을 확인하세요

모범 사례

  1. 가능한 경우 V3 API 사용 - V3 API는 더 나은 페이지네이션, 필터링 및 JSON 응답을 제공합니다
  2. 요청 제한 헤더 모니터링 - 제한에 도달하지 않도록 X-Rate-Limit-Requests-Left를 추적하세요
  3. 실시간 동기화를 위해 웹훅 등록 - 고객 및 주문 업데이트에 폴링 대신 웹훅을 사용하세요
  4. 고객 업데이트 배치 처리 - 대규모 데이터 동기화에 V3 대량 고객 엔드포인트를 사용하세요
  5. 제품 동기화에 variant 포함 - 정확한 재고 추적을 위해 제품 variant를 동기화하세요
  6. 이탈 장바구니 웹훅 설정 - 장바구니 복구 이메일 자동화에 필수적입니다
  7. 페이지네이션 사용 - 목록 엔드포인트는 항상 페이지네이션하세요. 페이지당 최대 250개 레코드

보안

  • OAuth 토큰 인증 - 안전한 토큰 기반 API 액세스
  • 스코프 권한 - API 계정은 특정 데이터 스코프로 제한됩니다
  • HTTPS 전용 - 모든 API 통신은 TLS로 암호화됩니다
  • 웹훅 검증 - store hash를 사용해 웹훅 출처를 확인합니다
  • PCI DSS 규정 준수 - BigCommerce는 결제 데이터를 안전하게 처리합니다
  • SOC 2 Type II - BigCommerce 플랫폼은 SOC 2 인증을 받았습니다

관련 리소스

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI 어시스턴트

안녕하세요! 문서에 대해 무엇이든 물어보세요.

Brevo로 무료로 시작하기