Reten Docs
Comercios

Actualizar Comercio

Actualizar los campos y metadatos de un comercio.

PATCH /api/commerces/:id

Actualiza los campos de un comercio.

Los metadatos se fusionan, no se reemplazan: las claves enviadas sobrescriben las del mismo nombre, las no enviadas se conservan, y enviar una clave con null la elimina. La fusión es recursiva (RFC 7386 JSON Merge Patch): los objetos anidados se fusionan nivel por nivel, así podés actualizar una clave dentro de un objeto anidado sin reenviar sus hermanas. Cualquier otro valor reemplaza al anterior por completo, incluidos los arrays, que nunca se fusionan elemento a elemento. Enviar metadata: null vacía la bolsa entera.

Auth: Requerida — permiso commerce:manage

Parámetros de Ruta

ParámetroTipoDescripción
idUUIDID del comercio

Cuerpo de la Solicitud

Todos los campos son opcionales:

CampoTipoDescripción
namestringNombre del comercio
tax_idstringRUT / ID tributario (único por tenant)
global_external_idstringIdentificador externo global
is_activebooleanEstado activo
metadataobjectJSON arbitrario, fusionado recursivamente; null lo vacía

Ejemplo

curl -X PATCH https://api.reten.ai/api/commerces/880e8400-e29b-41d4-a716-446655440000 \
  -H "Authorization: Bearer <token>" \
  -H "x-tenant-id: <tenant-id>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Updated Store Name",
    "metadata": { "region": "north", "priority": "high" }
  }'
const commerceId = "880e8400-e29b-41d4-a716-446655440000";
const response = await fetch(`https://api.reten.ai/api/commerces/${commerceId}`, {
  method: "PATCH",
  headers: {
    "Authorization": "Bearer <token>",
    "x-tenant-id": "<tenant-id>",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    name: "Updated Store Name",
    metadata: { region: "north", priority: "high" },
  }),
});
const commerce = await response.json();
import requests

commerce_id = "880e8400-e29b-41d4-a716-446655440000"
response = requests.patch(
    f"https://api.reten.ai/api/commerces/{commerce_id}",
    headers={
        "Authorization": "Bearer <token>",
        "x-tenant-id": "<tenant-id>",
    },
    json={
        "name": "Updated Store Name",
        "metadata": {"region": "north", "priority": "high"},
    },
)
commerce = response.json()

Respuesta 200 OK

Devuelve el objeto del comercio actualizado.

Respuestas de Error

EstadoDescripción
404Comercio no encontrado
409El RUT / ID tributario ya existe