Documentación de integración

Proveedores → Marketplace OMODA

Tres modos de catálogo: REST API, fichero JSON o CSV. La misma API Key también sirve para leer y confirmar pedidos.

1. REST API

Nosotros publicamos el endpoint. El proveedor autentica con su API Key: catálogo y pedidos.

  • Base: https://omoda.atic.red/api/v1/supplier
  • Auth: Header X-API-Key: <key> o Authorization: Bearer <key>
  • GET /products — listar
  • POST /products — alta/actualización (batch)
  • PUT /products/{sku} — upsert unitario
  • DELETE /products/{sku} — desactivar
  • GET /orders — listar pedidos (?open=1 pendientes)
  • GET /orders/{id} — detalle con líneas
  • POST /orders/{id}/confirm — confirmar envío (o action:cancel)
# Catálogo
curl -X POST https://omoda.atic.red/api/v1/supplier/products \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{"products":[{"sku":"DEMO-001","name":"Demo part","cost_price":10,"stock":5,"models":["C5"]}]}'

# Pedidos abiertos
curl https://omoda.atic.red/api/v1/supplier/orders?open=1 \
  -H "X-API-Key: YOUR_API_KEY"

# Confirmar envío (genera documentación / factura)
curl -X POST https://omoda.atic.red/api/v1/supplier/orders/123/confirm \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{"action":"ship"}'

1b. Pedidos (flujo)

Estados relevantes para el proveedor: CONFIRMED / SENT_TO_SUPPLIER (pendiente de envío) → al confirmar envío pasa a SHIPPED y el ciclo documental deja el pedido en INVOICED. can_confirm=true indica que se puede confirmar.

2. JSON

Publicad un fichero JSON accesible por URL (o usad la muestra local). Debe contener un array `products` con el schema canónico.

Descarga de ejemplo: /samples/canonical-products.json

{
  "products": [
    {
      "sku": "LMX-5W30-5L",
      "name": "Aceite sintético 5W30 5L",
      "name_en": "Synthetic oil 5W30 5L",
      "description": "Aceite para motores OMODA",
      "description_en": "Oil for OMODA engines",
      "category": "oils",
      "cost_price": 28.5,
      "dealer_price": null,
      "stock": 120,
      "models": [
        "C5",
        "E5",
        "C7",
        "O5"
      ],
      "image_url": null,
      "active": true
    },
    {
      "sku": "NG-DASH-4K",
      "name": "Dashcam 4K dual",
      "name_en": "Dual 4K dashcam",
      "category": "electronics",
      "cost_price": 78,
      "dealer_price": 109,
      "stock": 22,
      "models": "C5,E5,C7,O5,J7",
      "active": true
    }
  ]
}

3. CSV

UTF-8, separador coma, primera fila = cabeceras exactas. Campo `models` entre comillas si hay varios códigos.

sku,name,name_en,description,description_en,category,cost_price,dealer_price,stock,models,image_url,active

Descarga de ejemplo: /samples/canonical-products.csv

sku,name,name_en,description,description_en,category,cost_price,dealer_price,stock,models,image_url,active
LMX-5W30-5L,Aceite sintético 5W30 5L,Synthetic oil 5W30 5L,Aceite para motores OMODA,Oil for OMODA engines,oils,28.50,,120,"C5,E5,C7,O5",,true
NG-DASH-4K,Dashcam 4K dual,Dual 4K dashcam,,,electronics,78.00,109.00,22,"C5,E5,C7,O5,J7",,true

Atributos de producto

FieldTypeReq.DescriptionExample
skustringSíReferencia única del producto en el proveedorLMX-5W30-5L
namestringSíNombre comercial (ES)Aceite sintético 5W30 5L
name_enstring—Nombre en inglésSynthetic oil 5W30 5L
descriptionstring—Descripción larga ESAceite para motores gasolina/diésel OMODA
description_enstring—Descripción larga ENOil for OMODA petrol/diesel engines
categorystring (slug)—Categoría: oils, mats, tires, accessories, parts, care, lighting, electronicsoils
attributesobject (code → value)—Valores del attribute set de la categoría (p.ej. viscosity, width, season){"width":"215","season":"Verano"}
cost_pricenumberSíPrecio de coste (modelo MARGIN) / coste interno28.50
dealer_pricenumber—Precio dealer (obligatorio en práctica para modelo RAPPEL)39.90
stockinteger—Unidades disponibles120
modelsstring[] | CSV string—Compatibilidad por código de variante: C5 (OMODA 5 Gasolina), C5-SHS (híbrido), E5 (EV), C7 (OMODA 7), O5 (OMODA 9), J5/J5-EV, J7/J7-SHS-H/J7-SHS-P, J8C5,C5-SHS,E5
image_urlstring (URL)—URL pública de imagenhttps://cdn.example.com/lmx-5w30.jpg
activeboolean—Si false, desactiva el producto en catálogotrue

Modelos válidos de compatibilidad: C5, E5, C7, O5, J7. Categorías: oils, mats, accessories, parts, care, lighting, electronics.

MARGIN: se usa cost_price + margen del dealer. RAPPEL: se usa dealer_price; el rappel se factura a fin de año.

OMODA Aftersales B2B · Iniciar sesión