Base URL https://api.afer.pro aferapp.com
Consultas e informes

Resultado y margen

POST https://api.afer.pro/consultarResultado

Ventas menos compras del período: margen bruto en euros y en porcentaje, con serie mensual opcional.

Compone consultarVentas y consultarCompras sobre el mismo rango y devuelve el margen bruto (€ y %). Con agrupar: "mes", la serie mensual trae las tres cifras por mes — la gráfica de evolución del negocio en una llamada.

Autenticación

Envía tus claves API en las cabeceras X-API-KEY y X-API-SECRET. La cuenta sobre la que se opera se resuelve automáticamente a partir de la clave. Cómo obtener tus claves →

Este endpoint requiere autenticación con API key: sin credenciales responde 401.

Parámetros del cuerpo

El cuerpo de la petición es un objeto JSON con Content-Type: application/json.

fecha_iniciodate
obligatorio
Inicio del período (YYYY-MM-DD), incluido.
fecha_findate
obligatorio
Fin del período (YYYY-MM-DD), incluido.
agruparstring
opcional
Con "mes" añade la serie mensual de ventas, compras y margen.

Ejemplo de petición

curl -X POST 'https://api.afer.pro/consultarResultado' \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: afer_tk_TU_TOKEN' \
  -H 'X-API-SECRET: afer_sk_TU_SECRET' \
  -d '{
    "fecha_inicio": "2026-01-01",
    "fecha_fin": "2026-06-30",
    "agrupar": "mes"
}'
<?php

$data = [
  'fecha_inicio' => '2026-01-01',
  'fecha_fin' => '2026-06-30',
  'agrupar' => 'mes',
];

$ch = curl_init('https://api.afer.pro/consultarResultado');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'X-API-KEY: afer_tk_TU_TOKEN',
    'X-API-SECRET: afer_sk_TU_SECRET',
]);

$respuesta = json_decode(curl_exec($ch), true);
curl_close($ch);
const respuesta = await fetch('https://api.afer.pro/consultarResultado', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-KEY': 'afer_tk_TU_TOKEN',
    'X-API-SECRET': 'afer_sk_TU_SECRET'
  },
  body: JSON.stringify({
      "fecha_inicio": "2026-01-01",
      "fecha_fin": "2026-06-30",
      "agrupar": "mes"
  })
});

const resultado = await respuesta.json();

Respuesta

200 · application/json
{
    "errorCode": 200,
    "errorMsg": "",
    "data": {
        "fecha_inicio": "2026-01-01",
        "fecha_fin": "2026-06-30",
        "ventas": 184230.55,
        "compras": 98750.6,
        "margen": 85479.95,
        "margen_pct": 46.4,
        "agrupacion": {
            "por": "mes",
            "grupos": [
                {
                    "periodo": "2026-01",
                    "ventas": 28450.1,
                    "compras": 15200.1,
                    "margen": 13250
                }
            ]
        }
    }
}
Notas
  • Es margen bruto sobre facturas de venta y compra (sin IVA); no incluye nóminas ni otros costes que no entren como factura de compra.