Zum Hauptinhalt springen
Eine Fabrixa-API-Anfrage auf dem Bildschirm – JSON-Bestell-Payload mit Auth-Headern, vor gewebtem Textil
Entwickler · Integrationsleitfaden

Von Auth bis Fulfilment in fünfzehn Minuten.

Es gibt zwei Möglichkeiten, Bestellungen an Fabrixa zu übermitteln: Verbinden Sie Ihren bestehenden Shop – Shopify oder WooCommerce – ganz ohne Programmierkenntnisse oder nutzen Sie direkt die API-Integration. Diese Anleitung behandelt beide Vorgehensweisen: Verbinden Sie einen Vertriebskanal in wenigen Minuten oder erledigen Sie den gesamten Prozess von der Autorisierung bis zum Fulfilment in fünfzehn Minuten.

No-Code-Lösungen für Shopify und WooCommerce · REST + JSON API · Authentifizierung mit zwei Headern · 30 Anfragen/Minute

Ohne Programmierkenntnisse · Shopify & WooCommerce

Verkaufen Sie bereits über Shopify oder WooCommerce? Die Anbindung ist in wenigen Minuten erledigt.

Die meisten Shops fassen die API nie an. Fügen Sie Fabrixa als Vertriebskanal hinzu, und Bestellungen aus Ihrem Shop fließen direkt in die Produktion – Produkte werden synchronisiert, Statusmeldungen zurückgemeldet, ohne dass Code geschrieben oder gepflegt werden muss. Der weiter unten aufgeführte API-Weg ist für benutzerdefinierte Shop-Frontends und POD-Plattformen vorgesehen.

Kanal erstellen → Verkaufsart auswählen

Öffnen Sie in Ihrem Dashboard Create channel und wählen Sie Ihre Integrationsart aus. Jeder Kanal verwaltet seine eigenen Produkte, importierten Bestellungen und Importregeln – Sie können so viele Kanäle verbinden, wie Sie betreiben.

  • Shopify — OAuth mit einem Klick über Ihren Shopify-Adminbereich
  • WooCommerce — Verbindung mit REST API-Schlüsseln herstellen
  • Custom API — POD-Plattformen und maßgeschneiderte Shop-Auftritte über die API-Integration
  • Druckpartner — Produktionsaufträge von einem Fabrixa-Partner entgegennehmen
account.fabrixa.com/channels/create
Der Bildschirm „Kanal anlegen“ bei Fabrixa – Auswahl eines Integrationstyps: Shopify, WooCommerce, benutzerdefiniertes API oder Druckpartner, mit dem WooCommerce-VerbindungsformularDer Bildschirm „Kanal anlegen“ bei Fabrixa – Auswahl eines Integrationstyps: Shopify, WooCommerce, benutzerdefiniertes API oder Druckpartner, mit dem WooCommerce-Verbindungsformular
Shopify

OAuth mit einem Klick

Es müssen keine Schlüssel kopiert werden. Autorisieren Sie Fabrixa in Ihrem Shopify-Adminbereich, und schon ist die Verbindung hergestellt.

  1. In Create channel, wählen Sie Shopify.
  2. Genehmigen Sie die Verbindung in Ihrem Shopify-Adminbereich (OAuth) – es müssen keine Schlüssel kopiert werden.
  3. Produkte und Bestellungen werden automatisch synchronisiert. Jede neue Shopify-Bestellung wird in Fabrixa importiert und in die Produktion übernommen.
WooCommerce

Verbindung mit REST API-Schlüsseln herstellen

Ein WordPress-Shop wird über ein REST-Schlüsselpaar (Lese-/Schreibzugriff) verbunden – dieses wird in WooCommerce generiert und einmalig in Fabrixa eingefügt.

  1. In WooCommerce: Settings → Advanced → REST API → Add key mit Lesen/Schreiben Berechtigungen.
  2. Füge den folgenden Text ein: ck_ Schlüssel, cs_ Geben Sie den Geheimcode und Ihre Shop-Domain in Fabrixa ein.
  3. Speichern – Bestellungen werden automatisch synchronisiert, sobald eine Verbindung besteht. Die Importregeln können später in den Kanaleinstellungen geändert werden.

Verkaufen Sie maßgeschneiderte Produkte? Fabrixa Studio — der White-Label-Design-Editor — ist auch in Shopify- und WooCommerce-Shops verfügbar, sodass Ihre Kunden Produkte unter Ihrer Marke individuell gestalten können. Siehe Fabrixa Studio →

account.fabrixa.com/channels
Die Ansicht „Fabrixa-Kanäle“ – verbundene Shopify-, WooCommerce- und API-Vertriebskanäle nebeneinander, mit synchronisierten Produkten, importierten Bestellungen und Umsätzen pro KanalDie Ansicht „Fabrixa-Kanäle“ – verbundene Shopify-, WooCommerce- und API-Vertriebskanäle nebeneinander, mit synchronisierten Produkten, importierten Bestellungen und Umsätzen pro Kanal
Ein Dashboard

Jeder Kanal, jede Bestellung, eine Übersicht.

Verbundene Shops werden in der Ansicht „Kanäle“ neben Ihren API- und Partnerkanälen angezeigt – mit synchronisierten Produkten, eingegangenen Bestellungen, der zuletzt importierten Referenz und dem Umsatz pro Kanal. Schalten Sie einen Kanal von „Entwurf“ auf „Live“, sobald Sie bereit sind; nachgelagerte Prozesse bleiben davon unberührt.

Möchten Sie lieber einen individuellen Shop oder Ihre eigene POD-Plattform erstellen? Der Rest dieses Leitfadens befasst sich mit dem API-Ansatz – von der Authentifizierung bis zum Fulfilment in vier Schritten.

Voraussetzungen

Was Sie brauchen, bevor Sie anfangen.

Drei Dinge bringen Sie von null bis zur ersten Live-Bestellung. Alle drei werden über Ihr Fabrixa-Dashboard oder von Ihrem Solutions Engineer veranlasst.

01
API-Zugangsdaten

Ein Application Access Token und ein Application Key. Beide sind bei jeder Anfrage erforderlich – das Token im „Authorization“-Header, der Schlüssel im „X-Application-Key“-Header. Erstellen Sie in Ihrem Dashboard einen Vertriebskanal, um diese sofort zu generieren – ganz ohne Anfrage.

02
Webhook-Endpoint

Ein öffentlich erreichbarer HTTPS-Endpoint, der JSON-POST-Anfragen akzeptiert. In der Entwicklungsumgebung funktioniert „localhost“ über einen Tunnel. Sie überprüfen die HMAC-SHA256-Signatur jedes Payloads vor der Verarbeitung.

03
Druckdateien

Ihre Druckvorlagendatei – PDF, TIFF, JPG oder PNG – muss über HTTPS ohne Authentifizierung zugänglich sein. RGB-Farbmodus, bis zu 50 MB und 15.000 px pro Seite. Bei mehrseitigen PDFs entspricht jede Ebene einer Seite. Wir laden die Datei herunter und erstellen die korrekten Druckdateien, wenn wir die Bestellung rendern.

Schritt 1 – Authentifizieren

Überprüfen Sie Ihre Anmeldedaten mit einem Ping.

Jede Anfrage geht an die Basis-URL https://api.fabrixa.com/v2/integration wobei beide Header gesetzt sind. GET /ping bestätigt, dass Token und Schlüssel gültig sind, bevor Sie weitere Schritte unternehmen.

A 401 bedeutet, dass ein Header fehlt oder das Token widerrufen wurde. Ein 403 bedeutet, dass die Anmeldedaten zwar gültig sind, jedoch keine Berechtigung für die Ressource vorliegt.

GET /v2/integration/ping
# Verify auth before anything else
curl https://api.fabrixa.com/v2/integration/ping \
  -H "Accept: application/json" \
  -H "Authorization: Bearer APPLICATION_ACCESS_TOKEN" \
  -H "X-Application-Key: APPLICATION_KEY"

# 200 OK   → credentials valid
# 401      → missing header or revoked token
# 403      → valid, but no access to the resource
Schritt 2 – Produkte auflisten

Finden Sie die für Ihr Konto verfügbaren SKUs.

Der Katalog gibt Produktvarianten mit ihrer SKU und variant_idzurück. Jede Listenantwort ist in den Standard-Envelope links / meta / data verpackt, paginieren Sie also mit dem next_page Link. Lokal zwischenspeichern – der Katalog ändert sich nicht von Anfrage zu Anfrage.

Ausführliche Informationen zu den Feldern finden Sie in der Swagger-Referenz.

GET /v2/integration/products
GET /v2/integration/products?page=1

{
  "links": {
    "self":      ".../products?page=1",
    "next_page": ".../products?page=2",
    "prev_page": null
  },
  "meta":  { "total": 248, "current_page": 1, "per_page": 10 },
  "data": [
    { "id": 1306, "name": "Unisex AOP T-shirt", "SKU": "COF099191" }
  ]
}
Schritt 3 – Bestellung aufgeben

Ein POST-Aufruf leitet die Bestellung in die Produktion weiter.

Senden rows (SKU + Menge + eine Quell-PDF), customer und shipping_address. Legen Sie Ihre eigene number als Referenz fest – lassen Sie sie weg, dann generieren wir eine. Speichern Sie die zurückgegebene Fabrixa-Bestell-ID zu Ihrer Bestellung.

Studio-Bestellungen ersetzen sources durch einen cart_item_key — alles andere ist identisch.

POST /v2/integration/orders
POST /v2/integration/orders

{
  "number":       "ORD-2026-0142",
  "purchased_at": "2026-05-28 14:22:01",
  "rows": [
    {
      "sku":      "COF099191",
      "quantity": 1,
      "sources": [
        { "type": "file", "url": "https://cdn.you.com/art/9812.pdf" }
      ]
    }
  ],
  "customer": {
    "first_name": "Maria", "last_name": "Silva",
    "email": "maria@example.com", "phone": "+351912345678"
  },
  "shipping_address": {
    "address": "Rua do Carmo 42", "city": "Lisboa",
    "postal_code": "1200-094",
    "country_code": "PT", "country": "Portugal"
  }
}
Schritt 4 – Webhooks

Behalten Sie den Überblick über den Bestell-Lebenszyklus.

Legen Sie Ihre Webhook-URL im Dashboard fest. Wir senden order.created und order.updated per POST dorthin, mit dem vollständigen Bestell-Body, einem x-webhook-signature Header (HMAC-SHA256) und einem x-webhook-topic Header. Signatur prüfen, schnell 200 zurückgeben, asynchron verarbeiten.

Alle Events und die Code-Snippets zur Verifizierung finden Sie in der Webhooks-Referenz.

POST → Ihr Endpoint
# Request headers
content-type:       application/json
x-webhook-topic:    order.updated
x-webhook-signature: YmEwNjBhMGMy...AxMw==

# Body (truncated)
{
  "id": 23069,
  "number": "1250211835",
  "status": "imported",
  "fulfillment_status": "unfulfilled",
  "updated_at": "2026-05-28T07:43:52Z"
}
Fehler und Rate Limits

Was zu erwarten ist, wenn etwas schief geht.

Fehler werden als JSON zurückgegeben, niemals als HTML. Die errors.messages „array“ gibt an, was fehlgeschlagen ist; bei einem 400-Fehler werden die Felder aufgelistet, die die Validierung nicht bestanden haben.

400 / 401 / 403 / 404

Validierungsfehler, fehlende oder widerrufene Anmeldedaten, unzureichende Berechtigung oder unbekannte Ressource.

429 Too Many Requests

30 Anfragen pro Anwendung pro Minute. X-RateLimit-Limit und X-RateLimit-Remaining stehen in jeder Antwort.

5xx

Serverseitig. Versuchen Sie es erneut mit Back-off; sollte das Problem weiterhin bestehen, senden Sie die Anfrage-ID an Ihren Solutions Engineer.

Error Response
{
  "links": { "self": ".../v2/integration/orders" },
  "meta":  [],
  "errors": {
    "messages": [
      "Application Key is not specified."
    ]
  }
}
Nicht weiter?

Sprechen Sie mit einem Solutions Engineer.

Bei Fragen zur Integrationsunterstützung, zu Anmeldedaten oder Vertriebskanälen, zu individuellen Anforderungen oder zur Kapazitätsplanung – wenden Sie sich bitte an den technischen SE-Kanal, nicht an den Vertrieb. Antwort innerhalb eines Werktags.