Restofy Docs
Salón y mesas POST

Listar órdenes abiertas sin mesa

POST /api/pos-zone/get-floating-orders

Descripción

Devuelve, de forma paginada, las órdenes abiertas que no tienen mesa asignada y están pendientes de pago o en transición.

Detalles

Retorna las órdenes que siguen abiertas pero no están asociadas a una mesa activa: típicamente órdenes liberadas de su mesa, pedidos para llevar, mostrador, drive-thru, etc. Cada orden incluye su tipo de entrega y los datos específicos del tipo (cliente, vehículo, habitación, hora de retiro) según corresponda. El resultado llega paginado y ordenado por hora de apertura.

Permisos requeridos

orders.module

Request

Este endpoint no recibe parámetros.

Paginación

defaultLimit 50
maxLimit 50
allowedSorts [openedAt]
defaultSort openedAt
defaultDir asc
withTotal true

Ejemplo de request

curl -X POST https://restofy.pro/api/pos-zone/get-floating-orders \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <accessToken>" \
  -H "X-Tenant-Key: <tenantKey>"

Los valores son demo: reemplázalos por datos reales del negocio.

Ejemplo de respuesta

Actualizado: 2026-09-08T16:35:34Z
HTTP 200

Request

[]

Response

{
    "success": true,
    "message": "Operación realizada correctamente",
    "data": {
        "orders": [
            {
                "id": 2,
                "uuid": "ca9c0c43-60f5-4019-a8eb-3babb477667f",
                "code": "34X-W92",
                "tableId": null,
                "tableName": null,
                "fulfillmentTypeName": "Autoservicio",
                "fulfillmentTypeCode": "fulfillment.counter",
                "callerMode": "name",
                "status": "occupied",
                "orderLifecycleStatus": "closed",
                "openedAt": "2026-09-08T16:34:02.000Z",
                "notes": null,
                "guestCount": null,
                "isSplit": 0,
                "splitLabel": null,
                "paymentStatus": "paid",
                "paymentOptionType": null,
                "grandTotalCents": 2300000,
                "paidCents": 2300000,
                "isDispatched": 0,
                "dispatchedAt": null,
                "counterCustomerName": null,
                "counterCustomerPhone": null,
                "counterCallerCode": null,
                "counterCallerInfo": null,
                "curbsideCustomerName": null,
                "curbsideCustomerPhone": null,
                "curbsideVehiclePlate": null,
                "curbsideVehicleModel": null,
                "curbsideVehicleColor": null,
                "waiters": [
                    "App Testing"
                ]
            }
        ],
        "pagination": {
            "page": 1,
            "limit": 50,
            "total": 1,
            "totalPages": 1,
            "hasNext": false,
            "hasPrev": false
        }
    }
}