Saltar al contenido principal

Productos Webhooks

3 eventos

Cabeceras comunes

Cada petición de webhook incluye estas cabeceras:

x-holded-webhook-eventstring

Nombre del evento, p. ej. invoice.create

x-holded-webhook-datestring · ISO 8601

Momento del envío, p. ej. 2026-06-18T11:10:35Z

x-holded-webhook-signaturestring

Firma HMAC-SHA256 con prefijo sha256= (ver abajo)

x-holded-webhook-idstring

Identificador único del evento; úsalo como clave de idempotencia

x-holded-webhook-account-idstring

Identificador de la cuenta de Holded que origina el evento

x-holded-webhook-versionstring

Versión del sistema de webhooks (p. ej. v1)

product.createPOST

Producto creado

Se envía cuando se crea un producto en Holded.

Payload

object

Datos del producto incluidos en los payloads de webhook

idstring

Identificador único del producto

namestring

Nombre del producto

descriptionstring | null

Descripción del producto

kindstring

Tipo de producto (simple, variants, lots, serial_numbers, pack)

skustring | null

Código de referencia (SKU)

barcodestring | null

Código de barras

pricestring | null

Precio de venta

coststring | null

Precio de coste

stockstring

Stock disponible

variants[]object[]

Variantes del producto

idstring

Identificador único de la variante

skustring | null

Código de referencia (SKU)

barcodestring | null

Código de barras

pricestring | null

Precio de venta

coststring | null

Precio de coste

stockstring | null

Stock disponible

descriptionstring | null

Descripción de la variante

packItems[]object[]

Composición del pack, presente solo en productos tipo pack

productIdstring

Identificador del producto incluido en el pack

variantIdstring | null

Identificador de la variante incluida en el pack, cuando el elemento del pack es una variante

unitsstring

Unidades de este producto incluidas en el pack

Payload de ejemplo

json
{
  "id": "string",
  "name": "string",
  "description": "string",
  "kind": "string",
  "sku": "string",
  "barcode": "string",
  "price": "string",
  "cost": "string",
  "stock": "string",
  "variants": [
    {
      "id": "string",
      "sku": "string",
      "barcode": "string",
      "price": "string",
      "cost": "string",
      "stock": "string",
      "description": "string"
    }
  ],
  "packItems": [
    {
      "productId": "string",
      "variantId": "string",
      "units": "string"
    }
  ]
}
product.updatePOST

Producto actualizado

Se envía cuando se actualiza un producto existente en Holded.

Payload

object

Datos del producto incluidos en los payloads de webhook

idstring

Identificador único del producto

namestring

Nombre del producto

descriptionstring | null

Descripción del producto

kindstring

Tipo de producto (simple, variants, lots, serial_numbers, pack)

skustring | null

Código de referencia (SKU)

barcodestring | null

Código de barras

pricestring | null

Precio de venta

coststring | null

Precio de coste

stockstring

Stock disponible

variants[]object[]

Variantes del producto

idstring

Identificador único de la variante

skustring | null

Código de referencia (SKU)

barcodestring | null

Código de barras

pricestring | null

Precio de venta

coststring | null

Precio de coste

stockstring | null

Stock disponible

descriptionstring | null

Descripción de la variante

packItems[]object[]

Composición del pack, presente solo en productos tipo pack

productIdstring

Identificador del producto incluido en el pack

variantIdstring | null

Identificador de la variante incluida en el pack, cuando el elemento del pack es una variante

unitsstring

Unidades de este producto incluidas en el pack

Payload de ejemplo

json
{
  "id": "string",
  "name": "string",
  "description": "string",
  "kind": "string",
  "sku": "string",
  "barcode": "string",
  "price": "string",
  "cost": "string",
  "stock": "string",
  "variants": [
    {
      "id": "string",
      "sku": "string",
      "barcode": "string",
      "price": "string",
      "cost": "string",
      "stock": "string",
      "description": "string"
    }
  ],
  "packItems": [
    {
      "productId": "string",
      "variantId": "string",
      "units": "string"
    }
  ]
}
product.deletePOST

Producto eliminado

Se envía cuando un producto se mueve a la papelera en Holded.

Payload

object

Datos del producto incluidos en los payloads de webhook de eliminación

idstring

Identificador único del producto

kindstring

Tipo de producto (simple, variants, lots, serialnumbers, pack)

deletedAtstring

Marca de tiempo de eliminación en formato ISO 8601

Payload de ejemplo

json
{
  "id": "string",
  "kind": "string",
  "deletedAt": "string"
}