Requiply
SDK de TypeScript

Informes

Obtén los informes de ingresos, reservas, tasa de uso, clientes, saldos, reservas con retraso y previsión.

Todos los recursos de informes necesitan una clave secreta en código de servidor de confianza. Los objetos de parámetros de los informes son opcionales, y todos los métodos aceptan también las opciones de petición como último argumento.

reports.revenue()

reports.revenue(
  params?: RevenueReportParams,
  options?: RequiplyRequestOptions,
): Promise<RevenueReportResponse>

Parámetros: dateFrom, dateTo, dateField (startDate, createdAt o endDate), groupBy (day, week, month, category o status) y excludeCancelled.

const report = await requiply.reports.revenue({
  dateFrom: '2026-07-01',
  dateTo: '2026-07-31',
  groupBy: 'week',
  excludeCancelled: true,
});

Devuelve la moneda, los filtros aplicados, los totales, las filas del desglose y unas notes opcionales.

reports.bookingsSummary()

reports.bookingsSummary(
  params?: BookingsSummaryParams,
  options?: RequiplyRequestOptions,
): Promise<BookingsSummaryResponse>

Parámetros: dateFrom, dateTo y dateField. Devuelve los totales de reservas e ingresos, las tasas de cancelación y de finalización, las métricas de tiempos y los desgloses por estado. La antelación media y la duración media pueden ser null; los ID de estado pueden ser null.

const summary = await requiply.reports.bookingsSummary({
  dateFrom: '2026-07-01',
  dateTo: '2026-07-31',
});

reports.utilization()

reports.utilization(
  params?: UtilizationReportParams,
  options?: RequiplyRequestOptions,
): Promise<UtilizationReportResponse>

Parámetros: dateFrom, dateTo, groupBy (overall, itemGroup o category), sort (highest o lowest) y limit. El breakdown detallado es opcional.

const utilization = await requiply.reports.utilization({
  groupBy: 'itemGroup',
  sort: 'highest',
  limit: 10,
});

reports.topItems()

reports.topItems(
  params?: TopItemsReportParams,
  options?: RequiplyRequestOptions,
): Promise<TopItemsReportResponse>

Parámetros: dateFrom, dateTo, rankBy (revenue, bookings, rentedDays o unitsRented) y limit. Los ID y los nombres de categoría de las entradas pueden ser null.

const topItems = await requiply.reports.topItems({ rankBy: 'revenue', limit: 10 });

reports.topClients()

reports.topClients(
  params?: TopClientsReportParams,
  options?: RequiplyRequestOptions,
): Promise<TopClientsReportResponse>

Parámetros: dateFrom, dateTo, rankBy (spend o bookings), excludeCancelled y limit. Los campos de contacto y de nombre del cliente pueden ser null.

const topClients = await requiply.reports.topClients({ rankBy: 'spend', limit: 10 });

reports.outstanding()

reports.outstanding(
  params?: OutstandingReportParams,
  options?: RequiplyRequestOptions,
): Promise<OutstandingReportResponse>

Parámetros: dateFrom, dateTo, minBalance y limit. Devuelve los totales facturados, pagados y pendientes, además de las reservas ordenadas por saldo. Los campos de número de reserva de la organización, estado y cliente pueden ser null.

const outstanding = await requiply.reports.outstanding({ minBalance: 1, limit: 25 });

reports.overdue()

reports.overdue(
  params?: OverdueReportParams,
  options?: RequiplyRequestOptions,
): Promise<OverdueReportResponse>

Parámetros: limit y minDaysOverdue. Devuelve una marca de tiempo asOf, los totales por gravedad y las entradas cuyo severity es info, warning o critical. Los campos de reserva, estado, cliente y coste total pueden ser null.

Cada entrada lleva también stillOutUnits, una lista de { itemId, sku } con las unidades que una devolución parcial confirmada dejó en manos del cliente y que no han vuelto desde entonces. Está vacía cuando no se ha confirmado ninguna devolución.

const overdue = await requiply.reports.overdue({ minDaysOverdue: 2, limit: 25 });

reports.pipeline()

reports.pipeline(
  params?: PipelineReportParams,
  options?: RequiplyRequestOptions,
): Promise<PipelineReportResponse>

Parámetros: horizonDays y groupBy (day, week o month). Devuelve la ventana del informe aplicada, los totales de las próximas reservas e ingresos y los tramos de tiempo.

const pipeline = await requiply.reports.pipeline({
  horizonDays: 90,
  groupBy: 'month',
});
Copyright © 2026