Cómo funciona
POST /api/v1/reports/query ejecuta una consulta analítica agrupada. Enviá JSON con:
source: qué datos consultar (sales,purchases,payments,inventory).dimensions: cómo agrupar resultados (producto, fecha, proveedor, etc.). Máximo 4.measures: qué calcular en cada grupo (total vendido, unidades, stock, etc.). Al menos 1.period: rango de fechas (obligatorio parasales,purchasesypayments; condicional parainventory).dimension_filters: filtros opcionales que reducen el dataset antes de agrupar.include_totals: cuando estrue, la respuesta incluye totales de todas las filas entotals.
product_status, customer_status, supplier_status o warehouse_status con valores active o archived.
Forma de la respuesta
rows tiene:
Las métricas
currency son centavos enteros. Dividí por 100 para obtener pesos o dólares.Fuente: sales
Consulta las ventas de la organización.
period: obligatorio. Filtra por fecha de venta (commercial) o fecha contable (fiscal), según date_basis.
date_basis: commercial (default) o fiscal.
Dimensiones disponibles (sales)
Métricas disponibles (sales)
Dimensiones filtrables (sales)
customer, customer_status, customer_tax_category, province, city, product, product_status, category, product_type, salesperson, point_of_sale, point_of_sale_status, warehouse, warehouse_status, register, register_status, integration_source, voucher_type, currency, payment_status, cae_status, invoice_status, formatted_invoice_number, payment_method, payment_method_status, tax_rate.
Fuente: purchases
Consulta las compras de la organización.
period: obligatorio. Filtra por fecha de factura.
Dimensiones disponibles (purchases)
Métricas disponibles (purchases)
Dimensiones filtrables (purchases)
supplier, supplier_status, supplier_tax_category, supplier_province, supplier_city, product, product_status, category, product_type, warehouse, warehouse_status, voucher_type, currency, tax_rate.
Fuente: payments
Consulta cobranzas de clientes y pagos a proveedores.
period: obligatorio. Filtra por fecha de pago/cobranza.
Dimensiones disponibles (payments)
Métricas disponibles (payments)
Dimensiones filtrables (payments)
payment_contact, payment_contact_status, payment_contact_name, payment_contact_tax_category, payment_contact_province, payment_contact_city, point_of_sale, point_of_sale_status, register, register_status, pos_session, safe, safe_status, payment_type, payment_record_status, currency, settlement_currency, formatted_payment_number, payment_method, payment_method_status, payment_method_type.
Fuente: inventory
Consulta el estado de stock. Tiene dos modos según las métricas seleccionadas:
Métricas snapshot (sin period)
Devuelven el estado actual del stock. No aceptan period ni date_basis.
Métricas derivadas de ventas (requieren period)
Se calculan a partir de ventas del período. Requieren period y aceptan date_basis.
Cuando se usan métricas derivadas, solo son compatibles las dimensiones
product, variant, category, product_type y warehouse.Dimensiones disponibles (inventory)
Dimensiones filtrables (inventory)
product, product_status, category, product_type, warehouse, warehouse_status, currency.
dimension_filters
Filtra datos antes de agrupar. Cada clave es una dimensión filtrable para la fuente; el valor es un array de IDs a incluir. La lógica es OR dentro de un filtro y AND entre filtros.
Ejemplos
Ventas por producto en Q1 2026
Ventas por mes y categoría (fiscal)
Compras por proveedor en marzo de 2026
Cobranzas y pagos por método en marzo de 2026
Stock disponible por producto y depósito
Días de inventario restante por categoría
Scope requerido
reports:read
