Base URL https://api.afer.pro aferapp.com
Alquiler y disponibilidad

Disponibilidad por variaciones

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

Devuelve, para uno o varios artículos, la disponibilidad de cada variación en un rango de fechas: stock, unidades reservadas y unidades libres.

La consulta de disponibilidad para listados y buscadores de tu web de alquiler. Para cada variación de los artículos indicados devuelve el stock configurado, cuántas unidades están reservadas en el rango y la disponibilidad resultante.

Se consideran reservas las líneas de albarán y las líneas de factura directa (no procedente de albaranes) cuyo período startDateendDate se solape con el rango consultado.

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 →

Parámetros del cuerpo

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

articulosint[]
obligatorio
Array de IDs de artículo a consultar.
fecha_iniciodate
obligatorio
Inicio del período (YYYY-MM-DD).
fecha_findate
opcional
Fin del período. Si se omite, se consulta solo el día de fecha_inicio.

Ejemplo de petición

curl -X POST 'https://api.afer.pro/consultarDisponibilidadArticulos' \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: afer_tk_TU_TOKEN' \
  -H 'X-API-SECRET: afer_sk_TU_SECRET' \
  -d '{
    "articulos": [
        52087,
        344722
    ],
    "fecha_inicio": "2026-09-05",
    "fecha_fin": "2026-09-10"
}'
<?php

$data = [
  'articulos' => [
    0 => 52087,
    1 => 344722,
  ],
  'fecha_inicio' => '2026-09-05',
  'fecha_fin' => '2026-09-10',
];

$ch = curl_init('https://api.afer.pro/consultarDisponibilidadArticulos');
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/consultarDisponibilidadArticulos', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-KEY': 'afer_tk_TU_TOKEN',
    'X-API-SECRET': 'afer_sk_TU_SECRET'
  },
  body: JSON.stringify({
      "articulos": [
          52087,
          344722
      ],
      "fecha_inicio": "2026-09-05",
      "fecha_fin": "2026-09-10"
  })
});

const resultado = await respuesta.json();

Respuesta

Devuelve un objeto con la clave variaciones: una entrada por cada variación de los artículos consultados.

stock son las unidades configuradas, u_reservadas las reservadas en el rango y disponibilidad la resta de ambas. es_es y en_uk son los títulos de la variación en español e inglés.

200 · application/json
{
    "errorCode": 200,
    "errorMsg": "",
    "data": {
        "variaciones": [
            {
                "articulo_descripcion": "CANNONDALE SYNAPSE CARBON",
                "variacion_titulo": "Talla 58",
                "stock": "4",
                "u_reservadas": "1",
                "disponibilidad": "3",
                "es_es": "Talla 58",
                "en_uk": "Size 58",
                "variacion_id": "524997",
                "articulo_fk": "52087",
                "variacion1_fk": "18"
            }
        ]
    }
}

Errores

CasoResultado
articulos vacío errorMsg "Error on service call: El parametro artículos está vacío."
fecha_inicio vacío errorMsg "Error on service call: El parametro fecha inicio está vacío."
Notas
  • Solo se devuelven variaciones reales (artículos con variación configurada).
  • Para ver el detalle de cada reserva que ocupa el rango, usa consultarReservasArticulos.