> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fire.rest/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtener orden

> Lee una orden puntual por cualquiera de sus referencias, con projection de campos. La orden debe pertenecer al account y vendor de tu API key.

Devuelve una orden proyectada según `fields`. Si la orden no existe — o pertenece a otro tenant — la
respuesta es `404` (nunca se filtra la existencia entre tenants).

## Autenticación

<ParamField header="x-api-key" type="string" required>
  Tu API key de Fire con scope `orders:read`. La key **debe ser vendor-scoped** — las keys sin
  `vendorId` se rechazan con `403`.
</ParamField>

## Path params

<ParamField path="orderId" type="string" required>
  Cualquiera de las tres referencias públicas de la orden:

  | referencia          | qué es                                  |
  | ------------------- | --------------------------------------- |
  | `orders.id`         | el UUID interno de Fire                 |
  | `order_external`    | el id que asignaste al crear la orden   |
  | `metadata.order_id` | copia del id externo dentro de la orden |

  No hace falta traducir: usa el id que ya conoces.
</ParamField>

<Note>
  Es el mismo conjunto de referencias que acepta [Cancelar orden](/es/api-reference/cancel-order), así
  que el id con el que creaste la orden te sirve también para leerla.
</Note>

## Query params

<ParamField query="fields" type="string">
  Projection — ver [Projection de campos](/es/api-reference/list-orders#projection-de-campos). Omitir
  para devolver todos los campos.
</ParamField>

## Petición

<RequestExample>
  ```http theme={null}
  GET https://api.fire.rest/api/v1/fire/external/orders/7e2b8c10-1a2b-4c3d-8e9f-0a1b2c3d4e5f?fields=id,orderCode,status,orderLines,totals
  x-api-key: <tu_api_key>
  ```
</RequestExample>

## Respuesta

Un objeto orden, proyectado según `fields`. Ver la lista completa de campos en
[Projection de campos](/es/api-reference/list-orders#projection-de-campos).

Para seguir una orden que se está cobrando por partes, pedí `settlement` (cuánto se cobró) y
`payments` (con qué) — ver
[Progreso del cobro](/es/api-reference/list-orders#progreso-del-cobro-settlement-y-payments).

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "7e2b8c10-1a2b-4c3d-8e9f-0a1b2c3d4e5f",
    "orderCode": "OC-1024",
    "status": "COMPLETED",
    "orderLines": [
      { "productId": "p1", "quantity": 2 }
    ],
    "totals": [
      { "currencyCode": "USD", "total": 125000 }
    ]
  }
  ```

  ```json 200 — una orden que todavía se está cobrando (fields=orderCode,status,settlement,payments) theme={null}
  {
    "orderCode": "OC-1024",
    "status": "OPEN",
    "settlement": {
      "status": "recorded",
      "origin": "ledger",
      "paidSoFar": "200000",
      "total": "359000",
      "currencyCode": "BRL",
      "tenderCount": 1,
      "declinedCount": 0,
      "amountMismatch": true
    },
    "payments": [
      {
        "status": "approved",
        "amount": "200000",
        "currencyCode": "BRL",
        "method": "CASH",
        "transactionId": "POS-0001",
        "occurredAt": "2026-07-30T16:20:04.000Z"
      }
    ]
  }
  ```

  ```json 409 — la referencia matchea más de una orden theme={null}
  {
    "success": false,
    "error": "CONFLICT",
    "message": "External order id ORD-77 matches 2 orders across vendors; cannot disambiguate"
  }
  ```

  ```json 404 — no existe o es de otro tenant theme={null}
  {
    "success": false,
    "error": "NOT_FOUND",
    "message": "Order not found with ID 7e2b8c10-1a2b-4c3d-8e9f-0a1b2c3d4e5f"
  }
  ```
</ResponseExample>

## Relacionado

<CardGroup cols={2}>
  <Card title="Listar órdenes" icon="receipt" href="/es/api-reference/list-orders">
    Lista todas las órdenes de tu account y vendor.
  </Card>

  <Card title="Listar órdenes de tienda" icon="store" href="/es/api-reference/list-store-orders">
    Lista las órdenes de una tienda específica.
  </Card>
</CardGroup>
