---
title: "Actualizar múltiples pedidos (cortesías e internos)"
method: PUT
path: "/orders/updateAll"
tags: ["Pedidos"]
---

# Actualizar múltiples pedidos (cortesías e internos)

`PUT /orders/updateAll`

## Request

- Base URL: `https://api.pirpos.com`
- URL: `https://api.pirpos.com/orders/updateAll`
- Auth: HTTP bearer

Actualiza masivamente el estado y datos de una lista de pedidos. Si un pedido
se marca como cortesía (`complementary.isComplementary = true`) o interno
(`internal.isInternal = true`), su precio y total se establecen en 0 y se
descuenta del inventario. Notifica via WebSocket al finalizar.

**Autenticación requerida:** Bearer Token en header `Authorization: Bearer {tokenCurrent}`

**Permiso requerido:** `OR_PUT_ALL` - "Crear cortesías/Internos"

## Request body

- object
  - `group` string, required: ID del grupo de pedidos
  - `orders` object[], required: Lista de pedidos a actualizar
    - `_id` string, required: ID del pedido
    - `status` string: Nuevo estado del pedido
    - `table` string: ID de la mesa
    - `notes` string[]
    - `causeCancel` string: Causa de cancelación
    - `complementary` object
      - `isComplementary` boolean
      - `note` string
    - `internal` object
      - `isInternal` boolean: Si es consumo interno (empleados)
    - `showInReportsProductsCombo` boolean: Mostrar productos combo en reportes

## Response `200`

Pedidos actualizados exitosamente

- Order[]
  - `_id` string: ID único del pedido
  - `business` string: ID del negocio al que pertenece el pedido
  - `product` object: Información del producto pedido
    - `_id` string: ID del producto
    - `name` string: Nombre del producto
    - `price` number: Precio del producto
  - `table` object: Información de la mesa
    - `_id` string: ID de la mesa
    - `name` string: Nombre de la mesa
  - `deliveryProviderOrder` string: ID del pedido del proveedor de entrega
  - `group` string: ID del grupo de pedidos
  - `groupName` string: Nombre del grupo de pedidos
  - `seller` object: Información del vendedor/mesero
    - `_id` string: ID del vendedor
    - `name` string: Nombre del vendedor
    - `lastName` string: Apellido del vendedor
    - `urlImage` string: URL de la imagen del vendedor
  - `notes` string[]: Notas especiales del pedido
  - `causeCancel` string: Motivo de cancelación del pedido
  - `quantity` number: Cantidad del producto
  - `unit_price` number: Precio unitario
  - `total` number: Total del pedido
  - `status` 'Espera' | 'Cocina' | 'Listo' | 'Entregado' | 'Cancelado': Estado del pedido
  - `statusKitchen` 'Espera' | 'Preparacion' | 'Listo': Estado en cocina
  - `productsExtra` object[]: Productos adicionales/complementos
    - `product` object
      - `_id` string: ID del producto extra
      - `name` string: Nombre del producto extra
      - `price` number: Precio del producto extra
    - `quantity` number: Cantidad del producto extra
  - `complementary` object: Información de cortesía
    - `isComplementary` boolean: Si el pedido es cortesía
    - `reason` string: Motivo de la cortesía
  - `modifiedBy` object: Usuario que modificó el pedido
    - `_id` string: ID del usuario
    - `name` string: Nombre del usuario
  - `deleted` boolean: Si el pedido está eliminado
  - `createdOn` string, date-time: Fecha de creación del pedido
  - `modifiedOn` string, date-time: Fecha de última modificación

## Other responses

- `401`: Pedido no encontrado o token inválido
- `403`: Sin permisos
- `500`: Error interno del servidor

---

[API](https://skmtc.dev/loggro/apis/restobar-servicios-del-m-dulo-de-restobar.md) - [All operations](https://skmtc.dev/loggro/apis/restobar-servicios-del-m-dulo-de-restobar/llms.txt) - [OpenAPI document](https://skmtc.dev/loggro/apis/restobar-servicios-del-m-dulo-de-restobar/revisions/9d4431a3cddc?raw)
