Listar gastos

GET /api/v1/expenses

Devuelve los gastos (tickets con OCR) de tu empresa, del más reciente al más antiguo. Cada gasto trae su comercio, importe (con su equivalente en euros), impuestos, categoría, estado (processing / imported / error) y si está conciliado con un movimiento bancario. Filtrable por empleado y estado. Se pagina (25 por página, máximo 100) e incluye un objeto meta con page, page_size y total.

Parámetros de consulta

Nombre Tipo Obligatorio Descripción
user_id string No Solo los gastos de este empleado.
status string No Estado: 'processing', 'imported' o 'error'.
page integer No Página (desde 1).
page_size integer No Gastos por página (máx. 100).

Ejemplo

Sustituye db_live_tu_clave por tu clave.

curl -s -H "Authorization: Bearer db_live_tu_clave" \
  "https://api.dutybeat.com/api/v1/expenses?user_id=u-civm1" | jq

Respuesta de ejemplo

Lo que imprime cada snippet al ejecutarlo: cURL devuelve el JSON crudo; los snippets de Python y PowerShell piden campos concretos, así que su salida es la de cada uno.

{
  "data": [
    {
      "id": "exp-dem-4",
      "user_id": "u-civm1",
      "status": "imported",
      "merchant": "Taxi Madrid",
      "expense_date": "2026-06-05",
      "total_amount": 18,
      "tax_amount": 1.64,
      "currency": "EUR",
      "amount_eur": 18,
      "fx_rate": 1,
      "category": "Desplazamiento",
      "reconciled": false,
      "error_reason": null,
      "created_at": "2026-06-05T09:30:00Z",
      "processed_at": "2026-06-05T09:31:00Z"
    },
    {
      "id": "exp-dem-1",
      "user_id": "u-civm1",
      "status": "imported",
      "merchant": "Mercadona",
      "expense_date": "2026-06-01",
      "total_amount": 23.4,
      "tax_amount": 2.13,
      "currency": "EUR",
      "amount_eur": 23.4,
      "fx_rate": 1,
      "category": "Dietas",
      "reconciled": true,
      "error_reason": null,
      "created_at": "2026-06-01T12:00:00Z",
      "processed_at": "2026-06-01T12:01:00Z"
    }
  ],
  "meta": {
    "page": 1,
    "page_size": 25,
    "total": 2
  }
}

Prueba la demo

Déjanos tus datos y accede a tu entorno de prueba al instante.

Para acceder deberás leer y aceptar nuestra Política de Privacidad.

Política de Privacidad

Léela hasta el final para poder continuar.

Al solicitar la demo de DutyBeat tratamos los datos que nos facilitas (nombre, email y teléfono) con el único fin de crear tu entorno de prueba, facilitarte el enlace de acceso y atender tu solicitud comercial. La demo es solo para mayores de 18 años, lo que confirmas en el formulario.

Responsable: DutyBeat. Base jurídica: tu consentimiento y el interés legítimo en responder a tu solicitud. Conservación: el entorno de demo se elimina automáticamente al caducar; conservamos tus datos de contacto como lead comercial un máximo de 12 meses.

No cedemos tus datos a terceros salvo obligación legal ni para fines distintos a los descritos. Puedes ejercer tus derechos de acceso, rectificación, supresión, oposición, limitación y portabilidad escribiendo a [email protected].

Puedes consultar la versión completa en nuestra página de Política de Privacidad.

Al pulsar “He leído y acepto” confirmas haber leído esta información y consientes el tratamiento de tus datos para los fines indicados.