production writes → app.brandsgateway.com Examples on this page target the live marketplace.
BG Vendor Integration
Menu
Self-service integration

Put your catalog on BrandsGateway. Without waiting on us.

One endpoint to push your catalog whenever you like, and one place to see exactly what landed and what did not. No bespoke pipeline, no hand-built mapping, no guessing why a product went missing.

Steps to your first product
3
Fields we resolve for you
7
Documented failure reasons
34
the whole integration, abridged
PUT /api/v1/products/2651115145
Authorization: Basic <your credentials>
X-Vendor-Id: 71940

{
  "type": "variable",
  "name": "Beige Cashmere Sweatshirt",
  "sku":  "AL2651115145BB",

  // we resolved these from "Allude", "Donna", "Nero""brands":     [{ "id": 72002 }],
  "categories": [{ "id": 19 }, { "id": 26 }],
  "groups":     [{ "id": 71651 }, { "id": 71673 }],
  "genders":    [{ "id": 71576 }],
  "conditions": [{ "id": 71354 }],
  "color": "Beige",
  "attributes": [
    { "id": 14, "variation": false, "options": ["Beige"] },
    { "id": 10, "variation": true,  "options": ["S", "M"] }
  ],

  // …and these are yours
  "images": [{ "src": "https://cdn.example.com/a.jpg" }],
  "meta_data": [
    { "key": "_external_id",     "value": "2651115145" },
    { "key": "_bgorigincountry", "value": "CN" }
  ],
  "variations": [ /* one entry per sellable size */ ]
}
01

A contract, not a conversation

Every field BrandsGateway needs, why it exists, and what happens if you omit it — including the conditional rules that differ between simple and variable products. The same JSON Schema our own importers run against, published verbatim.

Read the contract →
02

Fail before you send

Paste a product, get every blocking error and every soft warning with the exact JSON path and the fix. It runs the real schema plus the business rules the schema cannot express — price ratios, duplicate barcodes, missing size axes.

Open the validator →
03

See everything, always

Per run and per product: created, updated, unchanged, skipped, failed, zeroed. Failures are grouped by cause and ranked by how long they have been recurring, so you fix the mapping once instead of chasing rows.

Open monitoring →

How a product becomes a listing

The pipeline is four gates. A product that clears all four is live; one that fails any of them is recorded against your vendor account with the reason, never silently dropped.

  1. 1

    Resolve

    Turn your names into BrandsGateway term IDs — brand, category, group, gender, condition, size axis, colour, material, country.

    fails as
    missing_*
  2. 2

    Validate

    Run the payload against the product JSON Schema. Structure, types, required fields, conditional rules per product type.

    fails as
    schema_validation_error
  3. 3

    Check

    Business rules the schema cannot state: sale below retail, a real barcode per sellable unit, at least one sellable variation.

    fails as
    invalid_price_ratio
  4. 4

    Publish

    We forward it to the marketplace as you. Matched on your product ID, so the same call creates the first time and updates thereafter.

    fails as
    product_invalid_global_unique_id

Already sending products through Node-RED?

Nothing breaks. The direct integration hits the same endpoint with the same contract — the pipeline simply moves from our side to yours, and the monitoring here covers both. Run them in parallel until your numbers match, then switch.