# Herramientas MCP

> Cada herramienta en el servidor MCP de TradeCatalog, sus entradas, quién puede usarla y qué devuelve.

Las herramientas usan su rol de espacio de trabajo actual en cada llamada. Las conexiones de solo lectura siguen funcionando. Hacer cambios requiere el alcance adicional `tradecatalog:write`. Las acciones consecuentes muestran una tarjeta de Confirmar/Cancelar en clientes compatibles, con un enlace de revisión iniciado sesión como recurso de respaldo, y se ejecutan solo después de que usted apruebe. Los resultados son texto JSON; el formato original de las herramientas de búsqueda muestra precios, mientras que las herramientas de gestión usan unidades menores de moneda enteras y puntos básicos (100 = 1%).

La mayoría de las herramientas toman un `workspace`: la dirección del espacio de trabajo desde `list_workspaces`, como `northgate`. La aplicación de IA normalmente llama a `list_workspaces` primero por sí misma.

Cuando una herramienta no puede hacer algo, por ejemplo, si usted no es personal en ese espacio de trabajo o el cliente no existe, devuelve un mensaje de error que la aplicación de IA puede leer y actuar, como "No hay cliente \"OAK99\". Use list_customers para códigos de cuenta."

Cuando el catálogo de un proveedor solo tiene precios para el cliente seleccionado, `set_basket_quantity`, `send_order` y `reorder` devuelven ese error. `get_basket`, `list_buyer_orders` y `get_buyer_order` siguen funcionando, por lo que los pedidos existentes siguen siendo legibles. El proveedor lo configura en Configuración, y puede anularlo por cliente (`ordering`: `follow`, `prices_only` o `can_order` en `update_customer`).

Cuando el proveedor ha desactivado las descargas de listas de precios, `download_my_price_list` devuelve un error y el enlace CSV iniciado sesión responde con 403.

`quote_configured_product` lee el precio de línea del cuenta de comprador seleccionado para `productId`, `qty` y `configuration` opcionales, sin cambiar un carrito. `set_configured_basket_line` crea una línea separada o actualiza/elimina su `lineId` exacto (`qty: 0` lo elimina). Proporcione la especificación completa en ediciones. Vuelva a leer `get_basket` después de los cambios y revise todas las selecciones, medidas y precios actuales antes de `send_order`. Un cambio en la especificación o versión de precios invalida la revisión anterior incluso si el total no cambia.

El personal puede usar `save_product_family` para metadatos de variantes compartidas y `save_ordering_draft` para un borrador revisado de precios avanzados. Lo último requiere Pro y permiso de precios globales; la publicación usa la revisión de cambio de precio existente. Las importaciones de productos aceptan definiciones opcionales de familia, incremento de orden y ordenación. Vea [configuración de catálogo de comercio](/docs/guides/trade-catalogues).

## Configurar un espacio de trabajo de proveedor

`create_workspace` crea un espacio de trabajo de proveedor Free para la persona iniciada sesión y verificada, después de que confirme una tarjeta. Pida el nombre de la empresa, la moneda de producto, la zona horaria y el país. La persona se convierte en su propietario. No se crea ninguna suscripción o pago. Luego llame a `list_workspaces` nuevamente y use la dirección devuelta para la configuración de producto y cliente. Los inicios de sesión de revisor y invitado no pueden crear espacios de trabajo.

Free incluye hasta 100 productos y aplicaciones de IA conectadas. Cada SKU cuenta, incluidos productos ocultos e inactivos. Al alcanzar el límite, los productos existentes, ediciones y pedidos siguen funcionando; crear más productos no está disponible. Explique este derecho sin promover actualizaciones ni iniciar el proceso de suscripción en el complemento.

## list_workspaces

Espacios de trabajo de proveedor en los que trabaja, y portales de comercio donde compra. Comience aquí.

**¿Quién:** cualquiera iniciado sesión. **Entradas:** ninguna.

```json
{
  "supplierWorkspaces": [
    { "workspace": "northgate", "name": "Northgate Fixings", "role": "owner" }
  ],
  "tradePortals": [
    {
      "workspace": "hartley-timber",
      "supplier": "Hartley Timber",
      "yourAccount": "Northgate Fixings",
      "accountId": "example-account-id"
    }
  ]
}
```

## search_products

Buscar un catálogo por SKU, referencia del fabricante, nombre, marca o categoría. Devuelve hasta **25** productos.

**¿Quién:** personal y compradores.

| Entrada     | Tipo   | Requerido                         | Descripción                                                                                                                               |
| ----------- | ------ | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `workspace` | string | sí                                | Dirección del espacio de trabajo.                                                                                                         |
| `query`     | string | sí                                | Lo que buscar. Una entrada vacía lista productos por nombre.                                                                              |
| `accountId` | string | compradores con más de una cuenta | Seleccione su cuenta exacta de `list_workspaces`.                                                                                         |
| `customer`  | string | no                                | Solo para personal: el código de cuenta o nombre de un cliente, para ver sus precios y solo lo que pueden ver. Ignorado para compradores. |

- **Compradores** siempre ven los precios de su propia cuenta y solo productos activos que pueden ver.
- **Personal** ven precios de lista y todos los productos, o la vista de un cliente nombrado.

```json
{
  "supplier": "Northgate Fixings",
  "pricesFor": "Oakfield Joinery",
  "taxNote": "ex VAT",
  "products": [
    {
      "sku": "HX-8510",
      "name": "Hex bolt M10 x 50 zinc",
      "unit": "Box of 100",
      "availability": "in_stock",
      "price": "£15.73",
      "listPrice": "£18.50",
      "why": "Brand discount −15%"
    }
  ]
}
```

Cuando el proveedor ha desactivado **Mostrar al cliente el precio estándar junto a su propio precio**, los resultados de un comprador omiten `listPrice` y `why`, y `get_buyer_product`, `get_basket` y `get_buyer_order` no llevan precio de lista o razón del precio tampoco.

Pruebe: "Buscar Northgate para tornillos hexagonales M10 a los precios de Oakfield."

## download_products_csv y download_my_price_list

Estas herramientas devuelven un enlace a una descarga CSV existente en TradeCatalog. Ábralo mientras está iniciado sesión; devolver un enlace no descarga ni envía el archivo al chat.

- `download_products_csv`: el personal elige `workspace` para descargar la lista de productos de ese proveedor.
- `download_my_price_list`: los compradores eligen `workspace` y el código exacto `accountId` de `list_workspaces` para descargar solo los precios acordados de esa cuenta.
- `download_my_price_list_pdf`: la misma cuenta, como PDF con marca de agua (Pro). Ambas herramientas están bloqueadas cuando el proveedor ha desactivado las descargas de listas de precios.

## check_price

Cuánto paga un cliente por un SKU en una cantidad, y qué conjunto de reglas estableció el precio.

**Quién:** solo personal.

| Entrada     | Tipo   | Requerido | Descripción                            |
| ----------- | ------ | --------- | -------------------------------------- |
| `workspace` | cadena | sí        | Dirección del espacio de trabajo.      |
| `customer`  | cadena | sí        | Código de cuenta o nombre.             |
| `sku`       | cadena | sí        | El SKU.                                |
| `qty`       | entero | no        | 1 a 1.000.000. Valor predeterminado 1. |

```json
{
  "customer": "Oakfield Joinery",
  "sku": "HX-8510",
  "name": "Hex bolt M10 x 50 zinc",
  "qty": 20,
  "unitPrice": "£15.73",
  "lineTotal": "£314.60",
  "listPrice": "£18.50",
  "why": "Brand discount −15%",
  "taxNote": "ex VAT"
}
```

Prueba: «¿Qué paga OAK01 por 20 de HX-8510 y por qué?»

## list_customers

Clientes comerciales con códigos de cuenta, correos electrónicos de contacto, estado activo y descuento de cuenta.

**Quién:** solo personal. **Entradas:** `workspace`.

```json
[
  {
    "accountCode": "OAK01",
    "name": "Oakfield Joinery",
    "email": "accounts@oakfieldjoinery.co.uk",
    "active": true,
    "discount": "5%"
  }
]
```

Prueba: «¿Qué clientes no tienen descuento establecido?»

## list_orders

Últimas órdenes, en orden descendente, hasta **50**.

**¿Quién:** el personal puede ver todas las órdenes de los clientes; los compradores solo ven las de su cuenta.

| Entrada     | Tipo   | Requerido | Descripción                                                                             |
| ----------- | ------ | --------- | --------------------------------------------------------------------------------------- |
| `workspace` | string | sí        | Dirección del espacio de trabajo.                                                       |
| `status`    | string | no        | `new`, `pending`, `acknowledged`, `processed`, `dispatched`, `completed` o `cancelled`. |

```json
[
  {
    "reference": "SO-000142",
    "customer": "Oakfield Joinery",
    "status": "new",
    "total": "£314.60",
    "poNumber": "PO-88231",
    "placed": "2026-09-27T07:48:12.000Z"
  }
]
```

Pruebe: «¿Hay nuevos pedidos desde ayer? Totalícelos por cliente.»

## recent_activity

El registro de actividades de cambios en clientes, descuentos y precios, más recientes primero, hasta **50** entradas. Opcionalmente, el historial de un cliente.

**Quién:** solo personal de staff. Los propietarios y administradores ven todo el registro; el resto del personal ve solo los cambios relacionados con clientes que pueden ver.

| Campo de entrada | Tipo   | Obligatorio | Descripción                       |
| ---------------- | ------ | ----------- | --------------------------------- |
| `workspace`      | cadena | sí          | Dirección del espacio de trabajo. |
| `customer`       | cadena | no          | Código de cuenta o nombre.        |

```json
[
  {
    "when": "2026-09-26T14:21:03.000Z",
    "who": "Jo Hartley",
    "customer": "Oakfield Joinery",
    "what": "Set Northgate brand discount to 15% (was 12.5%)"
  }
]
```

Pruebe: «¿Quién cambió los precios de Oakfield este mes?»

## Notas

- Los nombres de los clientes y los códigos de cuenta se coinciden sin tener en cuenta mayúsculas y minúsculas. Es más seguro utilizar un código de cuenta exacto.
- `list_workspaces` devuelve los valores del comprador `accountId`. Proporcione el correspondiente a `search_products` y a cada acción del comprador. Nunca adivine entre cuentas.
- Busque productos en la página con `offset` y el `nextOffset` devuelto. Utilice `list_buyer_orders` para una cuenta de comprador seleccionada explícitamente.

## Cambios y confirmaciones

Ediciones del carrito del comprador, marcar actualizaciones como leídas y crear borradores de precios no publicados se ejecutan inmediatamente al autorizarlos. Otros escritos devuelven `awaiting_confirmation`, un `actionId` y un `reviewUrl`. Los clientes de ChatGPT y compatibles muestran una tarjeta con el espacio de trabajo exacto y el cambio propuesto: elija **Confirmar** o **Cancelar** sin salir de la conversación. Los clientes sin tarjetas utilizan el enlace de revisión iniciado sesión. Las revisiones caducan después de 15 minutos y se ejecutan como máximo una vez. Desconectar la aplicación o eliminar el acceso requerido al espacio de trabajo invalida las revisiones pendientes. Los carritos de pedidos modificados y las previas de cambios de precio requieren una nueva revisión. Use `get_action_status` para leer el resultado; una solicitud pendiente no es una acción completada.

El asistente `decide_action` está disponible solo para la interfaz de tarjeta. Su capacidad de confirmación de corta duración está oculta de la salida del modelo y está vinculada a la persona solicitante, la conexión OAuth y la propuesta. Un mensaje de modelo o un ID de acción no pueden aprobar un cambio. Las mismas comprobaciones de rol, instantánea, caducidad y uso único se aplican a las aprobaciones de tarjeta y navegador.

Cada acción del comprador requiere su exacto `accountId`. Para `send_order`, copie el `fingerprint` del carrito en `expectedBasket`, junto con `expectedTotal`. Los precios, cantidades y cuenta se verifican nuevamente antes de enviarlos.

Use las herramientas de transmisión separadas para el trabajo que finaliza en la aplicación iniciada sesión: los propietarios usan `open_api_key_settings`, `download_workspace_export` y `open_logo_settings`; el personal usa `open_import_page`, `open_product_image_upload` y `open_product_file_manager`. Las dos transmisiones de producto requieren un `productId` verificado por el inquilino. Los enlaces de archivo de `get_product` y `get_buyer_product` requieren su navegador iniciado sesión; devolver un enlace no ha leído el documento o completado una carga, eliminación, exportación o creación de credenciales. La administración de la plataforma nunca se delega a través de OAuth.

## Lista de clientes aprobados

El personal usa `get_customer` para leer el alcance del catálogo del cliente y los productos aprobados. `set_catalogue_scope` cambia entre `all` y `approved`. `approve_products` agrega productos explícitos o una categoría; `unapprove_product` elimina un producto. Estos cambios requieren revisión del cliente exacto, lista actual y productos afectados. La membresía en categorías se vuelve a verificar en la confirmación. Los compradores permanecen limitados a su cuenta seleccionada y productos visibles para esa cuenta.

## Herramientas para proveedores y compradores

`create_workspace` está disponible incluso cuando `list_workspaces` está vacío. Crea un espacio de trabajo de proveedor Free y membresía del propietario solo después de la confirmación. La conexión `/mcp/account` opcional también ofrece `open_billing`: los propietarios pueden abrir facturación segura de suscripción y confirmar el pago en Stripe, luego revisar `get_settings` para el estado resultante. Los enlaces de facturación no completan pagos. La conexión estándar `/mcp` usada por el complemento de ChatGPT no expone `open_billing`. Vea [registro y facturación](/docs/mcp#sign-up-and-pay-with-an-agent).

MCP 3.0.0 expone cada operación llamable por modelo de forma anticipada con su propio nombre, descripción, esquema de entrada y anotaciones. Las herramientas anteriores `bulk_products` y `open_workspace_action` se han reemplazado por las operaciones individuales que se muestran a continuación; actualice las definiciones de herramientas de su cliente después de actualizar. La respuesta del MCP `tools/list` es el esquema de entrada autoritativo. Las siguientes herramientas complementan a las herramientas de búsqueda anteriores:

| Herramienta                 | Propósito                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `open_api_key_settings`     | Solo propietario: devuelve la página de configuración de API iniciada sesión para crear credenciales. Abrir el enlace no crea una clave. Nunca pida a los usuarios que peguen secretos en el chat.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `download_workspace_export` | Solo propietario: devuelve el enlace de exportación completo del espacio de trabajo iniciado sesión. El usuario debe abrir el enlace para descargarlo; esta herramienta no lee ni transfiere la exportación.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `open_logo_settings`        | Solo propietario: devolver la página de configuración de marca iniciada sesión para cargar un logotipo de proveedor. Abrir el enlace no carga ni cambia el logotipo.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `open_import_page`          | Personal: devolver la página de importación de archivos iniciada sesión. El usuario carga y revisa el archivo en TradeCatalog; abrir el enlace no importa nada.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `open_product_image_upload` | Personal: devolver el editor iniciado sesión para un producto existente para cargar una imagen. Abrir el enlace no carga ni cambia una imagen.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `open_product_file_manager` | Personal: devolver el editor iniciado sesión para un producto existente para cargar o eliminar archivos del producto. Abrir el enlace no lee, carga ni elimina archivos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `delete_workspace`          | Solo propietario: eliminar permanentemente este espacio de trabajo, su catálogo, acceso de clientes e imágenes, y cancelar su suscripción. Requiere revisión iniciada sesión y escritura del nombre del espacio de trabajo. Esto no se puede deshacer en la aplicación.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `get_workspace`             | Personal: rol actual, catálogo y totales de pedidos. Las cantidades son unidades menores de moneda enteras; los porcentajes son puntos básicos (100 = 1%).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `get_catalogue_options`     | Personal: lista de identificadores de categoría y marca para cambios en el catálogo y descuentos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `get_product`               | Personal: campos del producto, precio actual, visibilidad, restricciones para clientes, imágenes y archivos adjuntos (hojas de especificaciones).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `save_product`              | Crear o editar un producto. Lea primero el producto actual y preservar los campos que el usuario no haya solicitado cambiar. listPrice está en unidades menores; los cambios en el precio existente usan el flujo de cambio de precio de la aplicación. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `set_product_image`         | Elija la foto principal o elimínela. Eliminarla quita esa foto de la galería y la siguiente se convierte en la foto principal. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `create_category`           | Cree una categoría con nombre, opcionalmente bajo una categoría principal. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `update_category`           | Renombrar o mover una categoría. Sus productos permanecen en ella. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `delete_category`           | Eliminar una categoría y sus reglas de descuento de categoría. Los productos y categorías secundarias se mueven un nivel hacia arriba. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `hide_products`             | Personal: ocultar los identificadores de producto explícitos a los compradores sin eliminarlos. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `show_products`             | Personal: hacer activos los identificadores de producto explícitos. Las restricciones del catálogo del cliente siguen aplicándose. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `move_products`             | Personal: mueva los IDs de producto explícitos a una categoría, o pase null para eliminar su categoría. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `delete_products`           | Personal: elimine permanentemente los IDs de producto explícitos, incluidos sus precios, imágenes y líneas de cesta. Los pedidos históricos conservan sus copias. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `clear_catalogue`           | Solo propietario: elimine permanentemente todos los productos, precios y fotos. Requiere revisión iniciada sesión y escribir la frase de eliminación actual.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `get_customer`              | Personal: términos del cliente, lista de precios, alcance del catálogo, productos aprobados, reglas de descuento, precios acordados, compradores y invitaciones pendientes. `priceLists` son las listas que puede asignar con `update_customer`. Asignar una lista de precios diferente no estándar requiere Pro.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `create_customer`           | Cree una cuenta comercial. Su correo electrónico de contacto puede iniciar sesión como esa cuenta, así que confirme la dirección. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `update_customer`           | Cambie los detalles del cliente, código de cuenta (`accountCode`; único por proveedor ignorando mayúsculas, omita para mantener), correo electrónico de inicio de sesión del contacto, correos electrónicos adicionales para actualizaciones (`notifyEmails`), estado activo, porcentaje de toda la lista (`discountBp`, 0 a 10.000) y su `adjustment` (`discount` o `markup`; omita para mantener), ordenación (`follow`, `prices_only` o `can_order`) y `priceListId` (null es Estándar). Puntos básicos: 100 = 1%. Lea get_customer primero. Requiere revisión. Asignar una lista de precios diferente no estándar requiere Pro.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `save_discount_rule`        | Establezca una categoría de cliente, marca o porcentaje de producto, en puntos básicos (0 a 10.000). `adjustment` es `discount` o `markup`; omita para un descuento. La regla más específica gana y nada se apila. Cambia los precios inmediatamente. Requiere revisión. Requiere Pro.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `remove_discount_rule`      | Elimine la regla de descuento del cliente seleccionada. Los precios pueden subir inmediatamente. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `set_fixed_price`           | Establezca un precio de producto específico para el cliente en unidades enteras de moneda menor. Opcional `note` es un comentario; `noteVisible` se muestra a ese cliente. `internalNote` permanece solo para el personal. Requiere revisión. Requiere Pro.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `end_fixed_price`           | Finalice un precio fijo para el cliente ahora para que se apliquen las reglas normales de descuento. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `list_staff`                | Personal: liste el equipo del espacio de trabajo y las invitaciones pendientes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `invite_staff`              | Solo propietario: envíe una invitación por correo electrónico que otorgue acceso de personal o propietario. Requiere revisión del destinatario y el rol.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `invite_buyer`              | Personal: enviar una invitación por correo electrónico a una cuenta de cliente específica. Requiere revisión del destinatario y la cuenta.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `remove_buyer`              | Eliminar un miembro de la cuenta de cliente designada. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `preview_product_import`    | Vea una vista previa de las filas analizadas sin importar. No repare silenciosamente precios de origen inciertos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `import_products`           | Importe como máximo 100 filas analizadas. listPrice va a priceList (omita para Standard); listPrices nombra otras listas. Los cambios de cada lista se unen a un borrador. Requiere revisión. Las URLs de imágenes pueden ser recuperadas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `import_customers`          | Importe como máximo 100 clientes. Opcional priceList nombra su lista; adjustment es descuento o recargo. Un nombre de lista desconocido es un error. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `preview_agreed_prices`     | Vista previa de hasta 2.000 precios acordados (código de cuenta, SKU, precio en unidades menores enteras y una nota opcional) sin guardar. Solo para Pro. Las cuentas y SKUs desconocidos se informan y se omiten. Cuando una cuenta y un SKU se repiten, se utiliza la última fila.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `import_agreed_prices`      | Guarde hasta 2.000 precios acordados para cuentas y SKUs existentes. Solo para Pro. Cada precio se versiona desde ahora, en lotes de 100. Las filas desconocidas se omiten. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `list_import_layouts`       | Muestra los mapas de columnas guardados de este proveedor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `save_import_layout`        | Guarde un mapeo de columnas reutilizable para este proveedor. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `list_price_changes`        | Liste borradores y cambios de precio programados o publicados.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `draft_price_change`        | Cree un cambio de precio porcentual en un listado de precios (`priceListId`; omita para Standard). Un lote nunca mezcla listados. Puntos básicos firmados: 600 = +6%, desde −90% hasta +100%. No publica ni envía correos a los clientes. Requiere Pro.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `preview_price_change`      | Lea el impacto, advertencias, precios fijos y conflictos de programación antes de publicar.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `publish_price_change`      | Publique ahora o en un momento ISO, opcionalmente enviando correos electrónicos a los clientes (al publicar o en un `notifyAt` programado) y cambiando los precios acordados. Requiere revisión de la vista previa actual; las vistas previas modificadas invalidan la aprobación. Se requiere Pro, excepto para importaciones de precios Standard inmediatas sin correos electrónicos o cambios en precios acordados.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `cancel_price_change`       | Cancelar un cambio de precio programado. A los clientes se les puede enviar un correo electrónico de cancelación. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `discard_price_draft`       | Descartar permanentemente un cambio de precio no publicado. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `get_staff_order`           | Personal: líneas de pedido, cliente, notas y historial de estado.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `set_order_status`          | Aceptar, procesar, completar o cancelar un pedido utilizando las transiciones permitidas por la aplicación. Puede enviar un correo electrónico al comprador. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `get_settings`              | Leer configuraciones del proveedor y estado de la suscripción; no se devuelven credenciales de pago.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `save_settings`             | Solo el propietario: cambiar detalles de negocio, destinatarios de pedidos, moneda, lista de directorio, preferencias de búsqueda si los clientes ven el precio estándar junto con el suyo (`showStandardPrice`; `false` muestra solo su propio precio), cómo se ordenan los productos para los clientes (`productOrder`: `name`, `sku`, `category` o `custom`; `category` sigue el orden de la página Categorías, de A a Z por nombre dentro de cada categoría, último sin categorizar), qué columnas de catálogo ven y en qué orden (`catalogueColumns`), el encabezado para cada nota de trato comercial del producto (`dealLabel`), si el inicio de sesión de cliente marca blanca oculta el enlace de inicio de sesión del personal (`hidePortalStaffLink`; propietario o administrador, predeterminado falso), si las subtítulos de página del personal y enlaces de cómo se ocultan (`hideStaffGuides`; solo propietario o administrador, predeterminado falso), si la página de inicio de sesión se abre en nombre de usuario y contraseña (`loginUsernameFirst`; solo propietario o administrador, predeterminado falso, por lo que el correo electrónico sigue siendo primero), y qué partes del listado de precios en PDF marca blanca imprimir (`pdfShowLogo`, `pdfShowDate`, `pdfShowSupplierName`, `pdfShowCustomerName`, `pdfShowPageNumbers`; cada uno es verdadero por defecto, falso oculta esa parte). Lea primero la configuración actual. Requiere revisión. |
| `list_api_keys`             | Solo propietario: listar etiquetas clave y alcances. Nunca devuelve secretos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `revoke_api_key`            | Solo el propietario: desconectar una integración de API inmediatamente. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `list_news`                 | Personal: listar anuncios, incluyendo publicaciones caducadas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `post_news`                 | Publicar un anuncio a compradores, ahora o desde `startsLocal` (hora del proveedor). Opcional `endsOn` lo oculta a partir de `YYYY-MM-DDTHH:mm` en el huso horario del proveedor, o al final de un `YYYY-MM-DD`. emailCustomers también envía correos electrónicos a los suscriptores cuando comienza. Requiere revisión del mensaje exacto y del público objetivo.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `remove_news`               | Eliminar un anuncio publicado. Los correos electrónicos enviados no se pueden recuperar. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `list_support_tickets`      | Solo propietario y administrador: listar los tickets de soporte de este espacio de trabajo.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `get_support_ticket`        | Solo propietario y administrador: leer mensajes en un ticket perteneciente a este espacio de trabajo.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `open_support_ticket`       | Solo propietario y administrador: enviar una solicitud de soporte a Happy Webs. Requiere revisión del mensaje exacto.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `reply_to_support`          | Solo propietario y administrador: envíe una respuesta a una conversación de soporte existente. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `get_buyer_product`         | Leer un producto visible con precios y archivos adjuntos (hojas de especificaciones) para la cuenta seleccionada explícitamente.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `get_basket`                | Leer las cantidades y precios actuales para su cuenta de cliente seleccionada explícitamente.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `set_basket_quantity`       | Establezca una cantidad absoluta (0 elimina la línea). Solo cambia su carrito; no envía un pedido.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `send_order`                | Envíe el carrito de la cuenta seleccionada al proveedor, con copia del correo electrónico del comprador. Requiere revisión de inicio de sesión de los productos exactos, cantidades, precios, PO y notas. Si el carrito cambia, solicite una revisión fresca. Copie expectedBasket de get_basket.fingerprint.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `list_buyer_orders`         | Leer órdenes para la cuenta seleccionada explícitamente.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `get_buyer_order`           | Leer líneas y historial de estado para una orden perteneciente a la cuenta seleccionada.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `reorder`                   | Añada los productos disponibles de un pedido anterior a su carrito a los precios actuales. No envía un pedido. Requiere revisión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `get_buyer_updates`         | Lea las noticias actuales, los cambios de precio y las actualizaciones no leídas para la cuenta de cliente seleccionada.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `mark_updates_read`         | Marque las actualizaciones actualmente disponibles de la cuenta seleccionada como leídas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `get_action_status`         | Lea el resultado de una revisión solicitada por esta conexión.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

La entrada de pedidos del personal usa `preview_customer_order` luego `create_customer_order` revisado con precios exactos y un UUID de reintento. El procesamiento usa `set_order_status` con `note` público, `internalNote`/`correctionReason` privado y `expectedRevision`. `set_order_delivery` revisado registra un método de entrega visible para el cliente y un transportista opcional, referencia y enlace HTTPS. Estas herramientas siguen los permisos y alcance actual de los miembros. Vea [Pedidos](/docs/api/orders) para los campos y comportamiento.
