Das Wichtigste auf einen Blick
Mit BigCommerce APIs können Sie Produkte, Bestellungen, Kunden und Shop-Vorgänge programmatisch verwalten. Sie authentifizieren sich mit API-Tokens (für serverseitig) oder OAuth (für Apps), rufen REST-Endpunkte unter api.bigcommerce.com auf und verwalten Webhooks für Echtzeit-Updates. Verwenden Sie für Tests Apidog, um Ihre API-Aufrufe zu speichern, Antworten zu validieren und Sammlungen mit Ihrem Team zu teilen.
Einleitung
BigCommerce betreibt über 60.000 Online-Shops. Jeder davon benötigt kundenspezifische Integrationen – Bestandsabgleich, Auftragsabwicklung, Kundenverwaltung, Zahlungsabwicklung. Hier kommen die APIs ins Spiel.
Die Plattform bietet drei API-Typen: Storefront API (Headless Commerce), Management API (Backend-Operationen) und Payments API (Transaktionen). Die meisten Entwickler arbeiten mit der Management API. Sie verwaltet Produkte, Bestellungen, Kunden und alles, was hinter den Kulissen geschieht.
Die Lernkurve ist nicht steil, aber die Dokumentation kann überwältigend wirken. Sie werden feststellen, dass Sie zwischen Authentifizierungsdokumenten, API-Referenzen und Webhook-Anleitungen hin- und herspringen müssen, um eine einfache Aufgabe zu erledigen.
Dieser Leitfaden konzentriert sich auf das, was Sie tatsächlich verwenden werden. Produkte, Bestellungen, Kunden und Webhooks. Sie lernen die Authentifizierung, gängige Muster und wie Sie Ihre Integrationen testen, bevor sie in einem Live-Shop eingesetzt werden.
Testen Sie Ihre BigCommerce APIs mit Apidog – kostenlos
Am Ende dieses Leitfadens werden Sie in der Lage sein:
- BigCommerce-Authentifizierung korrekt einzurichten
- Produkte, Varianten und Inventar zu verwalten
- Bestellungen zu bearbeiten und Kundendaten zu verwalten
- Webhooks für Echtzeit-Updates einzurichten
- Ihre Integrationen mit Apidog zu testen und zu dokumentieren
Authentifizierung: Zugriff auf Ihren Shop erhalten
BigCommerce bietet zwei Authentifizierungsmethoden an, je nachdem, was Sie entwickeln.
Methode 1: API-Tokens (für benutzerdefinierte Integrationen)
Wenn Sie ein Skript oder einen Dienst erstellen, der mit einem Shop funktioniert, verwenden Sie API-Tokens.
Ein API-Konto erstellen:
- Gehen Sie zum Admin-Panel Ihres Shops
- Einstellungen → API-Konten → API-Konto erstellen
- Wählen Sie „V3/V2 API Token“
- Wählen Sie die benötigten Scopes aus (Produkte, Bestellungen, Kunden usw.)
- Speichern Sie die Anmeldeinformationen
Sie erhalten:
- Shop-URL:
mystore.mybigcommerce.com - Zugriffstoken:
abc123def456... - Client-ID:
abc123... - Client-Geheimnis:
xyz789...
Machen Sie Ihren ersten Aufruf:
curl -X GET "https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products" \
-H "X-Auth-Token: {access-token}" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
Der store-hash ist der Teil nach /stores/ in Ihrem API-Pfad. Er ist auch in Ihrer Shop-Admin-URL sichtbar.
Methode 2: OAuth (für Marketplace-Apps)
Wenn Sie eine App für den BigCommerce Marketplace entwickeln, verwenden Sie OAuth.
Der OAuth-Fluss:
- Der Benutzer klickt auf „Installieren“ für Ihre App im Marketplace
- BigCommerce leitet zur Callback-URL mit einem Auth-Code weiter
- Ihr Server tauscht den Code gegen ein Zugriffstoken aus
- Speichern Sie das Token für zukünftige API-Aufrufe
Code gegen Token austauschen:
const response = await fetch('https://login.bigcommerce.com/oauth2/token', {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: new URLSearchParams({
client_id: process.env.BC_CLIENT_ID,
client_secret: process.env.BC_CLIENT_SECRET,
redirect_uri: 'https://yourapp.com/auth/callback',
grant_type: 'authorization_code',
code: authCode,
scope: 'store_v2_default store_v3_products'
})
})
const { access_token, context } = await response.json()
// access_token is what you use for API calls
// context contains store_hash
Verwenden Sie das Token:
curl -X GET "https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products" \
-H "X-Auth-Token: {access-token}" \
-H "Content-Type: application/json"
Produkte und Katalogverwaltung
Produkte sind das Herzstück jedes BigCommerce-Shops. Die V3 Catalog API verwaltet Produkte, Varianten, Kategorien und Marken.
Produkte auflisten
GET https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products
X-Auth-Token: {token}
Accept: application/json
Antwort:
{
"data": [
{
"id": 174,
"name": "Plain T-Shirt",
"type": "physical",
"sku": "PLAIN-T",
"price": 29.99,
"sale_price": 24.99,
"inventory_level": 150,
"inventory_tracking": "product",
"is_visible": true,
"categories": [23, 45],
"brand_id": 12
}
],
"meta": {
"pagination": {
"total": 500,
"count": 50,
"page": 1,
"per_page": 50
}
}
}
Ein Produkt erstellen
POST https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products
X-Auth-Token: {token}
Content-Type: application/json
{
"name": "Premium Hoodie",
"type": "physical",
"sku": "HOODIE-PREM",
"price": 79.99,
"description": "Premium cotton blend hoodie",
"weight": 1.5,
"width": 20,
"height": 28,
"depth": 2,
"inventory_level": 100,
"inventory_tracking": "product",
"is_visible": true,
"categories": [23]
}
Produktvarianten aktualisieren
Produkte mit Optionen (Größe, Farbe) haben Varianten. Jede Variante kann eine eigene SKU, einen eigenen Preis und einen eigenen Lagerbestand haben.
PUT https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products/{product-id}/variants/{variant-id}
X-Auth-Token: {token}
Content-Type: application/json
{
"sku": "HOODIE-PREM-BLK-M",
"price": 79.99,
"inventory_level": 50,
"option_values": [
{
"option_display_name": "Color",
"label": "Black"
},
{
"option_display_name": "Size",
"label": "Medium"
}
]
}
Inventar verwalten
PUT https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products/{product-id}
X-Auth-Token: {token}
Content-Type: application/json
{
"inventory_level": 75
}
Oder Inventar für Varianten aktualisieren:
PUT https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products/{product-id}/variants/{variant-id}
Content-Type: application/json
{
"inventory_level": 25
}
Bestellungen und Abwicklung
Bestellungen sind der Ort, an dem Geschäfte stattfinden. Die Orders V2 API verwaltet die Erstellung, Aktualisierung und Abwicklung von Bestellungen.
Bestellungen auflisten
GET https://api.bigcommerce.com/stores/{store-hash}/v2/orders
X-Auth-Token: {token}
Accept: application/json
Antwort:
[
{
"id": 115,
"status": "Awaiting Fulfillment",
"status_id": 11,
"customer_id": 45,
"date_created": "2026-03-24T10:30:00+00:00",
"subtotal_ex_tax": 149.99,
"total_inc_tax": 162.49,
"items_total": 2,
"items_shipped": 0,
"shipping_address": {
"first_name": "John",
"last_name": "Doe",
"street_1": "123 Main St",
"city": "Austin",
"state": "Texas",
"zip": "78701",
"country": "United States"
}
}
]
Bestelldetails abrufen
GET https://api.bigcommerce.com/stores/{store-hash}/v2/orders/{order-id}
X-Auth-Token: {token}
Bestellprodukte abrufen
GET https://api.bigcommerce.com/stores/{store-hash}/v2/orders/{order-id}/products
X-Auth-Token: {token}
Bestellstatus aktualisieren
PUT https://api.bigcommerce.com/stores/{store-hash}/v2/orders/{order-id}
X-Auth-Token: {token}
Content-Type: application/json
{
"status_id": 12
}
Gängige Status-IDs:
- 0: Unvollständig
- 11: Wartet auf Erfüllung
- 12: Abgeschlossen
- 5: Storniert
- 4: Erstattet
Eine Sendung erstellen (Abwicklung)
POST https://api.bigcommerce.com/stores/{store-hash}/v2/orders/{order-id}/shipments
X-Auth-Token: {token}
Content-Type: application/json
{
"tracking_number": "1Z999AA10123456784",
"carrier": "UPS",
"shipping_method": "UPS Ground",
"items": [
{
"order_product_id": 234,
"quantity": 1
}
]
}
Kunden und Segmentierung
Die Customers V3 API verwaltet Kundendaten, Adressen und Kundengruppen.
Kunden auflisten
GET https://api.bigcommerce.com/stores/{store-hash}/v3/customers
X-Auth-Token: {token}
Accept: application/json
Antwort:
{
"data": [
{
"id": 45,
"email": "john.doe@example.com",
"first_name": "John",
"last_name": "Doe",
"company": "Acme Corp",
"phone": "512-555-1234",
"customer_group_id": 1,
"notes": "VIP customer",
"tax_exempt_category": "",
"date_created": "2025-11-15T09:30:00+00:00",
"date_modified": "2026-03-20T14:22:00+00:00"
}
]
}
Einen Kunden erstellen
POST https://api.bigcommerce.com/stores/{store-hash}/v3/customers
X-Auth-Token: {token}
Content-Type: application/json
{
"email": "jane.smith@example.com",
"first_name": "Jane",
"last_name": "Smith",
"phone": "512-555-5678",
"customer_group_id": 2
}
Kunden aktualisieren
PUT https://api.bigcommerce.com/stores/{store-hash}/v3/customers/{customer-id}
X-Auth-Token: {token}
Content-Type: application/json
{
"notes": "Repeat customer - priority support",
"customer_group_id": 3
}
Webhooks für Echtzeit-Updates
Webhooks benachrichtigen Ihre App, wenn Ereignisse in einem Shop auftreten. Anstatt zu pollen, sendet BigCommerce Daten an Ihre Endpunkte.
Einen Webhook erstellen
POST https://api.bigcommerce.com/stores/{store-hash}/v3/hooks
X-Auth-Token: {token}
Content-Type: application/json
{
"scope": "store/order/created",
"destination": "https://yourapp.com/webhooks/orders",
"is_active": true
}
Verfügbare Scopes:
store/order/created- Neue Bestellung aufgegebenstore/order/updated- Bestellstatus geändertstore/order/archived- Bestellung archiviertstore/product/created- Produkt hinzugefügtstore/product/updated- Produkt geändertstore/product/deleted- Produkt entferntstore/customer/created- Neuer Kundestore/inventory/updated- Lagerbestand geändert
Webhook-Signaturen überprüfen
BigCommerce signiert Webhooks, damit Sie deren Legitimität überprüfen können:
import crypto from 'crypto'
function verifyWebhook(payload, signature, secret) {
const expectedSignature = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex')
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expectedSignature)
)
}
app.post('/webhooks/orders', (req, res) => {
const signature = req.headers['x-bc-webhook-signature']
const payload = JSON.stringify(req.body)
if (!verifyWebhook(payload, signature, process.env.BC_CLIENT_SECRET)) {
return res.status(401).send('Invalid signature')
}
// Process the webhook
console.log('Order created:', req.body.data.id)
res.status(200).send('OK')
})
Testen von BigCommerce APIs mit Apidog
BigCommerce APIs erfordern konsistente Header und eine ordnungsgemäße Authentifizierung. Manuelles Testen mit curl wird mühsam. Apidog rationalisiert dies.

1. Umgebung einrichten
Erstellen Sie Umgebungen für jeden Shop:
# Production Store
STORE_HASH: abc123
ACCESS_TOKEN: xyz789
BASE_URL: https://api.bigcommerce.com/stores/abc123
# Staging Store
STORE_HASH: staging456
ACCESS_TOKEN: staging_token
BASE_URL: https://api.bigcommerce.com/stores/staging456
2. Pre-Request-Skripte
Fügen Sie die Authentifizierungs-Header automatisch hinzu:
pm.request.headers.add({
key: 'X-Auth-Token',
value: pm.environment.get('ACCESS_TOKEN')
})
pm.request.headers.add({
key: 'Accept',
value: 'application/json'
})
3. Antworten validieren
Testen Sie, ob Produkte die erforderlichen Felder haben:
pm.test('Products have required fields', () => {
const response = pm.response.json()
response.data.forEach(product => {
pm.expect(product).to.have.property('id')
pm.expect(product).to.have.property('name')
pm.expect(product).to.have.property('price')
pm.expect(product.price).to.be.above(0)
})
})
pm.test('Pagination works', () => {
const response = pm.response.json()
pm.expect(response.meta.pagination).to.have.property('total')
pm.expect(response.meta.pagination.page).to.eql(1)
})
Testen Sie BigCommerce APIs mit Apidog – kostenlos
Häufige Fehler und Behebungen
401 Nicht autorisiert
Ursache: Ungültiges oder fehlendes Zugriffstoken.
Behebung:
- Überprüfen Sie, ob Ihr
X-Auth-Token-Header gesetzt ist - Überprüfen Sie, ob das Token nicht widerrufen wurde
- Stellen Sie sicher, dass das API-Konto die richtigen Scopes hat
403 Verboten
Ursache: Token ist gültig, aber es fehlen die erforderlichen Scopes.
Behebung:
- Überprüfen Sie die Berechtigungen Ihres API-Kontos
- Fügen Sie den fehlenden Scope hinzu (Produkte, Bestellungen usw.)
- Generieren Sie ein neues Token mit erweiterten Berechtigungen
404 Nicht gefunden
Ursache: Falscher Endpunkt oder Ressource existiert nicht.
Behebung:
- Überprüfen Sie, ob der Store-Hash korrekt ist
- Überprüfen Sie die API-Version in der URL (v2 vs v3)
- Stellen Sie sicher, dass die Ressourcen-ID existiert
429 Zu viele Anfragen
Ursache: Ratenlimit überschritten.
Behebung: BigCommerce erlaubt unterschiedliche Limits pro Endpunkt. Produkte: 10.000 Anfragen/Stunde. Bestellungen: 30.000 Anfragen/Stunde. Überprüfen Sie den X-Rate-Limit-Remaining-Header und implementieren Sie einen Backoff.
async function callWithBackoff(fn, maxRetries = 3) {
for (let i = 0; i < maxRetries; i++) {
const response = await fn()
if (response.status === 429) {
const retryAfter = response.headers.get('X-Rate-Limit-Reset')
await new Promise(r => setTimeout(r, retryAfter * 1000))
} else {
return response
}
}
}
422 Unverarbeitbare Entität
Ursache: Validierungsfehler im Anfragetext.
Behebung: Überprüfen Sie die Antwort auf Details. BigCommerce gibt spezifische Validierungsfehler zurück:
{
"errors": {
"price": "Price must be greater than zero",
"sku": "SKU already exists"
}
}
Alternativen und Vergleiche
| Merkmal | BigCommerce | Shopify | WooCommerce |
|---|---|---|---|
| API-Versionierung | V2 und V3 | REST und GraphQL | REST |
| Ratenlimits | 10K-30K/Stunde | 2/min (Leaky Bucket) | Abhängig vom Hosting |
| Webhooks | Ja | Ja | Ja (Plugin) |
| GraphQL | Nein | Ja | Nein |
| SDK-Qualität | Gut | Exzellent | Nur PHP |
| Multi-Store | Ja | Nein | Nein |
Die V3 API von BigCommerce ist konsistenter als der fragmentierte Ansatz von Shopify, aber die GraphQL API von Shopify bietet mehr Flexibilität für komplexe Abfragen.
Praktische Anwendungsfälle
Omnichannel-Inventarsynchronisierung. Eine Marke verkauft auf BigCommerce, Amazon und in physischen Geschäften. Sie verwenden die Products API, um die Lagerbestände über alle Kanäle hinweg zu synchronisieren und Überverkäufe zu verhindern. Apidog testet die Synchronisierungsendpunkte vor jeder Bereitstellung.
Bestellautomatisierung. Ein Abo-Box-Unternehmen verwendet Webhooks, um die Abwicklung auszulösen, wenn Bestellungen erstellt werden. Die Orders API aktualisiert Sendungsverfolgungsnummern. Ihr Lager erhält automatisch Kommissionierlisten über Webhook-Handler.
Kundensegmentierung. Eine E-Commerce-Website nutzt die Customers API, um Käufer basierend auf der Kaufhistorie zu segmentieren. VIP-Kunden werden einer speziellen Gruppe mit exklusiven Preisen hinzugefügt. Die Integration wird wöchentlich über einen geplanten Job ausgeführt.
Fazit
Das haben Sie gelernt:
- Die Authentifizierung verwendet API-Tokens (einfache Integrationen) oder OAuth (Marketplace-Apps)
- Die V3 Catalog API verwaltet Produkte und Varianten
- Die V2 Orders API verwaltet die Auftragsbearbeitung und -abwicklung
- Die V3 Customers API verwaltet Kundendaten
- Webhooks senden Echtzeit-Updates an Ihre Endpunkte
- Testen und dokumentieren Sie mit Apidog für zuverlässige Integrationen
Ihre nächsten Schritte:
- Erstellen Sie ein API-Konto in Ihrem BigCommerce-Shop
- Machen Sie Ihren ersten API-Aufruf, um Produkte aufzulisten
- Richten Sie einen Webhook für die Auftragserstellung ein
- Speichern Sie Ihre API-Aufrufe in Apidog
- Erstellen Sie Ihre Integration
Testen Sie BigCommerce APIs mit Apidog – kostenlos
FAQ
Was ist der Unterschied zwischen V2 und V3 APIs?V3 ist die neuere, konsistentere API. Verwenden Sie sie für Produkte, Kategorien, Marken und Kunden. V2 verwaltet Bestellungen, die noch nicht migriert wurden. In den meisten Integrationen werden Sie beide verwenden.
Wie erhalte ich meinen Store-Hash?Er befindet sich in Ihrer BigCommerce-Admin-URL: https://store-abc123.mybigcommerce.com/manage. Der Teil abc123 ist Ihr Store-Hash. Er ist auch in den API-Kontoeinstellungen sichtbar.
Kann ich die API in einem Test-Shop verwenden?Ja. BigCommerce Test-Shops haben vollen API-Zugriff. Dies ist perfekt für die Entwicklung und das Testen, bevor Sie live gehen.
Wie hoch ist das Ratenlimit für API-Aufrufe?Abhängig vom Endpunkt. Produkte: 10.000 Anfragen/Stunde. Bestellungen: 30.000 Anfragen/Stunde. Überprüfen Sie X-Rate-Limit-Remaining in den Antwortheadern, um Ihr aktuelles Limit zu sehen.
Wie gehe ich mit der Paginierung um?Verwenden Sie die Abfrageparameter page und limit. Das Standardlimit ist 50. Überprüfen Sie meta.pagination in den Antworten auf die Gesamtzahl der Seiten. Schleifen Sie, bis Sie alle Datensätze abgerufen haben.
let allProducts = []
let page = 1
while (true) {
const response = await fetch(
`${baseUrl}/v3/catalog/products?page=${page}&limit=100`,
{ headers: { 'X-Auth-Token': token } }
)
const data = await response.json()
allProducts.push(...data.data)
if (page >= data.meta.pagination.total_pages) break
page++
}
Kann ich Produktbilder über die API hochladen?Ja. Verwenden Sie den Endpunkt für Produktbilder:
POST https://api.bigcommerce.com/stores/{store-hash}/v3/catalog/products/{product-id}/images
Content-Type: application/json
{
"image_url": "https://example.com/image.jpg",
"is_thumbnail": true
}
Wie gehe ich mit Währung und Multi-Store um?BigCommerce-Shops haben eine Basiswährung. Multi-Währung wird auf Storefront-Ebene gehandhabt, nicht über die API. Für mehrere Shops erstellen Sie separate API-Konten und verwenden verschiedene Umgebungen in Apidog.
Was passiert, wenn mein Webhook-Endpunkt nicht erreichbar ist?BigCommerce wiederholt fehlgeschlagene Webhooks mit exponentiellem Backoff. Nach 5 Fehlern innerhalb von 24 Stunden wird der Webhook deaktiviert. Überwachen Sie Ihre Endpunkte und lassen Sie sich bei Fehlern benachrichtigen.
