get
https://app.fracttal.com/api/warehouse_purchase_orders/
Mediante este EndPoint se puede consultar las órdenes de compra de un almacén creadas durante un periodo de tiempo, o el detalle de una orden de compra puntual —con sus ítems y totales— indicando su identificador en la URL.
GET https://app.fracttal.com/api/warehouse_purchase_orders/GET https://app.fracttal.com/api/warehouse_purchase_orders/{id_movement}Parámetros de entrada — Modo detalle (por ID)
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
id_movement (en la URL) | Entero | Sí (para este modo) | Id de la Orden de Compra, enviado como segmento de la URL (parámetro de ruta), no como parámetro de query. Ejemplo: /api/warehouse_purchase_orders/53168742. Retorna el encabezado junto con los bloques items y totals. |
Parámetros de entrada — Modo listado
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
warehouse_code | Texto | No | Código del Almacén. Si se omite, no se filtra por almacén y se listan las órdenes de compra de todos los almacenes de la compañía. |
since | Texto | Opcional | Fecha inicial de la consulta. Formato: 'YYYY-MM-DDTHH:MM:SS-UTC' Ejemplo:'2016-07-12T20:00:00-03'. (Por defecto 30 días antes) |
until | Texto | Opcional | Fecha final de la consulta. Formato: 'YYYY-MM-DDTHH:MM:SS-UTC' Ejemplo:'2016-07-12T20:00:00-03'. (Por defecto la fecha actual.) |
page | Entero | Opcional | Número de página a consultar. |
start | Entero | Opcional | Número de registro inicial que mostrará la consulta. |
limit | Entero | Opcional | Número de registro final que retornará la consulta. |
Diferencia entre modos
- Modo listado (sin
id_movementen la URL): retorna el encabezado de cada orden de compra que cumpla los filtros, sin los bloquesitemsnitotals.- Modo detalle (
id_movementen la URL): retorna una única orden de compra, con el encabezado más los bloquesitemsytotals.
Parámetros de salida
| Parámetro | Tipo | Descripción |
|---|---|---|
id_movement | Entero | Id del movimiento |
folio_source | Texto | Id del movimiento del almacén fuente |
folio_target | Texto | Id del movimiento del almacén de destino |
date | Fecha | Fecha de entrega |
description | Texto | Descripción de la entrada. |
document | Texto | Referencia |
movements_types_description | Texto | Tipo de Movimiento |
movements_states_description | Texto | Descripción del estado del movimiento |
warehouses_target_description | Texto | Almacén fuente |
warehouses_target_code | Texto | Código del almacén fuente |
third_parties_name | Texto | Nombre del tercero |
costs_center_description | Texto | Centro de Costos |
responsible_description | Texto | Responsable |
priorities_description | Texto | Prioridad |
date_create | Texto | Fecha de creación del movimiento |
third_parties_code | Texto | Código del tercero |
third_parties_address | Texto | Dirección del tercero |
third_parties_telephone_1 | Texto | Teléfono 1 del tercero |
third_parties_telephone_2 | Texto | Teléfono 2 del tercero |
third_parties_email | Texto | Email del tercero |
number_details | Número | Cantidad de items del movimiento |
id_movement_reference | Entero | Identificador de la orden de compra relacionada a la entrada de material. Se utiliza para vincular un registro de entrada de material con un movimiento de orden de compra. |
items | Array de objetos | Detalle de los ítems de la orden de compra. Ver tabla items más abajo. |
totals | Objeto | Totales calculados de la orden de compra (subtotal, impuestos, total). Ver tabla totals más abajo. |
Estructura de items
itemsCada elemento del array items representa un ítem de la orden de compra:
| Parámetro | Tipo | Descripción |
|---|---|---|
code | Texto | Código del ítem. |
items_description | Texto | Descripción del ítem. |
units_description | Texto | Descripción de la unidad de medida. |
qty | Número | Cantidad pedida. |
qty_pending | Número | Cantidad pendiente de recibir. |
unit_cost | Número | Costo unitario. |
tax_name | Texto o null | Nombre del impuesto aplicado. null si el ítem no tiene impuesto asignado. |
item_tax_rate | Número | Porcentaje de impuesto. 0 cuando tax_name es null. |
Estructura de totals
totals| Parámetro | Tipo | Descripción |
|---|---|---|
subtotal | Número | Suma de (qty × unit_cost) de todos los ítems, sin impuestos. |
taxes | Array de objetos | Desglose por tipo de impuesto. Ver tabla a continuación. |
total | Número | Total general de la orden de compra (subtotal + impuestos). |
Estructura de cada elemento de taxes
taxes| Parámetro | Tipo | Descripción |
|---|---|---|
tax_name | Texto | Nombre del impuesto. |
tax_rate | Número | Porcentaje del impuesto. |
tax_amount | Número | Monto de impuesto calculado para ese tipo. |
Notas:
- Si la orden de compra no tiene ítems registrados,
itemsretorna[]ytotalsretorna{ "subtotal": 0, "taxes": [], "total": 0 }. - Si un ítem no tiene impuesto asignado,
tax_nameesnulleitem_tax_ratees0. - Los montos se devuelven en la moneda propia de la orden de compra, sin conversión (ver
currency_description/currency_symboldel encabezado). - Los 22 campos existentes del encabezado (tabla de arriba) no cambian — esta es una extensión retrocompatible.
Errores
| Código | Causa |
|---|---|
401 | No autenticado. |
404 | El warehouse_code indicado no existe (modo listado, si se envía). |
404 | El id_movement indicado no existe (modo detalle). |
Ejemplo:
Modo listado
Petición: (GET)https://app.fracttal.com/api/warehouse_purchase_orders/?warehouse_code=1254
{
"success": true,
"message": "200",
"data": [
{
"id_movement": 2133,
"folio_source": null,
"folio_target": "TUER3640",
"date": "2018-05-31",
"description": null,
"document": "PLAN JUNIO",
"movements_types_description": "PURCHASE_ORDER",
"movements_states_description": "NOT_DELIVERED",
"warehouses_source_description": null,
"warehouses_target_description": "ALMACEN",
"third_parties_name": "Máchena",
"costs_center_description": "PRODUCCIÓN",
"costs_center_value": "11000",
"responsible_description": " ",
"conditions_description": "CREDITO 30 DIAS",
"priorities_description": "VERY_HIGH",
"date_create": "2018-05-25T16:15:09.253565+00:00",
"third_parties_code": "234",
"third_parties_address": null,
"third_parties_telephone_1": "",
"third_parties_telephone_2": "",
"third_parties_email": null,
"number_details": 1,
"currency_description": "PESO CHILENO",
"currency_symbol": "$",
"id_movement_reference": 11111111,
"items": [
{
"code": "REP-001",
"items_description": "Rodamiento 6205",
"units_description": "Unidad",
"qty": 2,
"qty_pending": 0,
"unit_cost": 15000,
"tax_name": "IVA",
"item_tax_rate": 19
}
],
"totals": {
"subtotal": 30000,
"taxes": [
{ "tax_name": "IVA", "tax_rate": 19, "tax_amount": 5700 }
],
"total": 35700
}
}
],
"total": 1
}Ejemplo — orden de compra sin ítems
{
"success": true,
"message": "200",
"data": [
{
"id_movement": 2140,
"folio_source": null,
"folio_target": "TUER3651",
"date": "2018-06-02",
"description": null,
"document": "PLAN JUNIO",
"movements_types_description": "PURCHASE_ORDER",
"movements_states_description": "NOT_DELIVERED",
"warehouses_source_description": null,
"warehouses_target_description": "ALMACEN",
"third_parties_name": "Máchena",
"costs_center_description": "PRODUCCIÓN",
"costs_center_value": "11000",
"responsible_description": " ",
"conditions_description": "CREDITO 30 DIAS",
"priorities_description": "VERY_HIGH",
"date_create": "2018-06-01T10:05:00.000000+00:00",
"third_parties_code": "234",
"third_parties_address": null,
"third_parties_telephone_1": "",
"third_parties_telephone_2": "",
"third_parties_email": null,
"number_details": 0,
"currency_description": "PESO CHILENO",
"currency_symbol": "$",
"id_movement_reference": 11111112,
"items": [],
"totals": {
"subtotal": 0,
"taxes": [],
"total": 0
}
}
],
"total": 1
}Modo detalle
Petición: (GET)https://app.fracttal.com/api/warehouse_purchase_orders/53168742
{
"success": true,
"message": "200",
"data": [
{
"id_movement": 53168742,
"folio_source": null,
"folio_target": "TUER4820",
"date": "2026-08-15",
"description": null,
"document": "PLAN AGOSTO",
"movements_types_description": "PURCHASE_ORDER",
"movements_states_description": "NOT_DELIVERED",
"warehouses_source_description": null,
"warehouses_target_description": "ALMACEN",
"third_parties_name": "Proveedor Ejemplo",
"costs_center_description": "PRODUCCIÓN",
"costs_center_value": "11000",
"responsible_description": " ",
"conditions_description": "CREDITO 30 DIAS",
"priorities_description": "MEDIUM",
"date_create": "2026-08-10T09:30:00.000000+00:00",
"third_parties_code": "512",
"third_parties_address": null,
"third_parties_telephone_1": "",
"third_parties_telephone_2": "",
"third_parties_email": null,
"number_details": 1,
"currency_description": "PESO CHILENO",
"currency_symbol": "$",
"id_movement_reference": 22222222,
"items": [
{
"code": "REP-014",
"items_description": "Filtro de aceite",
"units_description": "Unidad",
"qty": 4,
"qty_pending": 4,
"unit_cost": 8500,
"tax_name": "IVA",
"item_tax_rate": 19
}
],
"totals": {
"subtotal": 34000,
"taxes": [
{ "tax_name": "IVA", "tax_rate": 19, "tax_amount": 6460 }
],
"total": 40460
}
}
],
"total": 1
}Response — Error (401 / 404)
401 / 404){
"success": false,
"message": "404",
"data": null
}PROBAR CONEXION
OpenAPI definition
{
"openapi": "3.1.0",
"info": {
"title": "consulta-ordenes-de-compra",
"version": "1-Es"
},
"servers": [
{
"url": "https://app.fracttal.com/api/warehouse_purchase_orders"
}
],
"security": [
{}
],
"paths": {
"/": {
"get": {
"summary": "Consultar ordenes de compra",
"description": "Mediante este EndPoint se puede consultar las órdenes de compra de un almacén creadas durante un periodo de tiempo.",
"operationId": "consulta-ordenes-de-compra",
"parameters": [
{
"name": "warehouse_code",
"in": "query",
"required": false,
"schema": { "type": "string" },
"description": "Código del Almacén. Si se omite, no se filtra por almacén."
},
{
"name": "since",
"in": "query",
"required": false,
"schema": { "type": "string" }
},
{
"name": "until",
"in": "query",
"required": false,
"schema": { "type": "string" }
},
{
"name": "page",
"in": "query",
"required": false,
"schema": { "type": "integer" }
},
{
"name": "start",
"in": "query",
"required": false,
"schema": { "type": "integer" }
},
{
"name": "limit",
"in": "query",
"required": false,
"schema": { "type": "integer" }
}
],
"deprecated": false,
"security": []
}
},
"/{id_movement}": {
"get": {
"summary": "Consultar el detalle de una orden de compra",
"description": "Devuelve el encabezado de una orden de compra puntual junto con los bloques items y totals.",
"operationId": "consulta-orden-de-compra-detalle",
"parameters": [
{
"name": "id_movement",
"in": "path",
"required": true,
"schema": { "type": "integer" },
"description": "Id de la Orden de Compra."
}
],
"deprecated": false,
"security": []
}
}
},
"x-readme": {
"headers": [],
"explorer-enabled": false,
"proxy-enabled": true
},
"x-readme-fauxas": true
}