API : Compras
https://www.obuma.cl/ayuda/articulo/159/api--compras
API Endpoint: Compras
Listar Compras
- URL:
/compras.list.json
- Método:
GET
- Descripción: Obtiene una lista de todas las compras registradas. Este endpoint permite aplicar filtros para refinar la búsqueda.
- Parámetros (opcional):
id_dcto_desde
: Filtra las compras cuyo ID sea mayor o igual al especificado.tipo_dcto
: Filtra las compras por el tipo de documento.folio_dcto
: Filtra las compras por el folio del documento.mes_contable
: Filtra las compras por el mes contable.ano_contable
: Filtra las compras por el año contable.fecha
: Filtra las compras por una fecha específica (formato:dd-mm-yyyy
).fecha_desde
: Filtra las compras con fecha desde el valor especificado (formato:dd-mm-yyyy
).fecha_hasta
: Filtra las compras con fecha hasta el valor especificado (formato:dd-mm-yyyy
).total
: Filtra las compras por el total, permitiendo operadores de comparación (>
,<
,>=
,<=
,!=
).total_pagado
: Filtra las compras por el total pagado, permitiendo operadores de comparación.total_por_pagar
: Filtra las compras por el total por pagar, permitiendo operadores de comparación.proveedor
: Filtra las compras por el ID del proveedor.proveedor_rut
: Filtra las compras por el RUT del proveedor.sucursal
: Filtra las compras por el ID de la sucursal.bodega
: Filtra las compras por el ID de la bodega.
- Respuesta:
- Devuelve un array de objetos que representan las compras encontradas con base en los filtros aplicados.
Crear Compra
- URL:
/compras.create.json
- Método:
POST
- Descripción: Permite crear un nuevo registro de compra. Se reciben los datos en formato JSON.
- Parámetros (en el cuerpo de la solicitud):
- Datos de la Compra:
proveedor_rut
: RUT del proveedor. Si no existe, se crea un nuevo proveedor.compra_fecha
: Fecha de la compra (formato:yyyy-mm-dd
).compra_fecha_vcto
: Fecha de vencimiento de la compra (formato:yyyy-mm-dd
).compra_periodo_contable
: Período contable de la compra (formato:yyyy-mm
).compra_sucursal
: Código de la sucursal.compra_usuario
: Código del usuario que realiza la compra.compra_centro_costo
: Código del centro de costo.compra_concepto_gasto
: Código del concepto de gasto.compra_enviar_email_proveedor
: Indicador para enviar email al proveedor (0 = no, 1 = sí).compra_enviar_emails
: Lista de correos electrónicos para enviar, separados por;
.compra_total
: Total de la compra.compra_estado
: Estado de la compra (por defecto,SOLICITADA
).
- Detalle de Items (
compra_detalle
):- Array de objetos donde cada objeto contiene:
codigo_comercial
: Código del producto (si existe).producto_nombre
: Nombre del producto.producto_descripcion
: Descripción del producto.producto_exento
: Indica si el producto está exento.unidad_medida
: Unidad de medida del producto.cantidad
: Cantidad del producto.producto_precio
: Precio del producto.descuento
: Descuento aplicado al producto.subtotal
: Subtotal del producto.
- Array de objetos donde cada objeto contiene:
- Referencias (
compra_referencias
):- Array de objetos donde cada objeto contiene:
tipo_dcto_ref
: Tipo de documento de referencia.folio_dcto_ref
: Folio del documento de referencia.fecha_dcto_ref
: Fecha del documento de referencia (formato:dd-mm-yyyy
).codigo_ref
: Código de referencia.razon_ref
: Razón de la referencia.
- Array de objetos donde cada objeto contiene:
- Meta Datos (
compra_extra_datos
):- Array de objetos para almacenar información adicional, con las claves
key
yvalue
.
- Array de objetos para almacenar información adicional, con las claves
- Datos de la Compra:
{
"docs": [
{
"proveedor_rut": "12345678-9",
"proveedor_razon_social": "Proveedor Ejemplo",
"compra_id": 1001,
"compra_fecha": "2024-08-20",
"compra_periodo_contable": "2024-08",
"compra_total": 150000,
"compra_estado": "APROBADA",
"compra_detalle": [
{
"codigo_comercial": "PRD001",
"producto_nombre": "Producto 1",
"producto_precio": 50000,
"cantidad": 3,
"subtotal": 150000
}
],
"compra_referencias": [
{
"tipo_dcto_ref": 33,
"folio_dcto_ref": "12345",
"fecha_dcto_ref": "20-08-2024"
}
]
}
]
}
Actualizar Compra
- URL:
/compras.update.json
- Método:
POST
- Descripción: Permite actualizar un registro existente de compra. Se reciben los datos en formato JSON.
- Parámetros (en el cuerpo de la solicitud):
- Datos de la Compra:
- Todos los parámetros del endpoint
create
son aplicables. compra_id
: ID de la compra que se desea actualizar.
- Todos los parámetros del endpoint
- Detalle de Items (
compra_detalle
):- La estructura es la misma que en el endpoint
create
.
- La estructura es la misma que en el endpoint
- Referencias (
compra_referencias
):- La estructura es la misma que en el endpoint
create
.
- La estructura es la misma que en el endpoint
- Meta Datos (
compra_extra_datos
):- La estructura es la misma que en el endpoint
create
.
- La estructura es la misma que en el endpoint
- Datos de la Compra: