Control de facturación y pedidos de despacho
Visible solo a roles propietario y administrador. Vive en Finanzas → Control de facturación.
Control de facturación
Cruza cada factura emitida contra los viajes asignados a ella y te muestra un semáforo según la diferencia entre el total de la factura y la suma de las tarifas de esos viajes:
| Semáforo | Diferencia |
|---|---|
| Verde (OK) | hasta 1% |
| Amarillo (revisar) | entre 1% y 5% |
| Rojo (error) | más de 5% |
| Gris (sin asignar) | la factura no tiene viajes asignados |
La diferencia se calcula como porcentaje sobre el total de la factura. El listado tiene un KPI de "facturas con diferencias" para detectar problemas de un vistazo.
Asignar viajes a una factura
Desde la fila de la factura entrás a la pantalla de asignación: lista los viajes del cliente que todavía no están asignados a ninguna factura, los marcás con checkbox y guardás. Cada viaje asignado guarda un snapshot de la tarifa al momento de asignarlo (trazabilidad: si después cambia la tarifa del viaje, la factura conserva el valor original).
Pedidos de despacho
Un pedido de despacho es el documento (PDF) que un cliente grande te manda listando qué viajes te va a pagar en el período: posiciones con remito, destino, cantidad y precio. Hoy la app interpreta los pedidos de un dador de carga.
Cargar el PDF
En Control de facturación → Pedidos de despacho subís el PDF (hasta 4 MB). La app extrae:
- Cabecera: número de pedido, fecha, emisor y CUIT.
- Cada posición: código, número de remito, destino, fecha de entrega, cantidad y precio.
- Totales, con aviso si la suma de posiciones no coincide con el total declarado.
Matching automático contra tus viajes
Cada posición se cruza contra tus viajes:
- Posiciones con remito → se buscan por número de remito del viaje.
Estados posibles de cada posición:
- OK: viaje encontrado y el monto coincide.
- Monto distinto: viaje encontrado pero el monto del PDF difiere del viaje → conciliable.
- Sin match: no se encontró viaje con ese remito.
- Sin remito: el PDF no trae remito en esa línea.
- No facturable / duplicado: el viaje está marcado no facturable, o hay más de un viaje con el mismo remito.
Desde cada posición matcheada podés abrir el viaje en un modal flotante para revisarlo sin salir de la pantalla.
Conciliar diferencias
Cuando una posición da monto distinto, el botón "Conciliar" ofrece estas opciones según el caso:
- Fletes:
- Ajustar el peso: recalcula el peso de la carga para que monto = peso × tarifa/tn (disponible si el viaje tiene una sola carga y tarifa por tonelada).
- Corregir la tarifa: recalcula la tarifa/tn manteniendo el peso (pide confirmación explícita porque cambia la tarifa del viaje).
- Fijar monto facturado: pisa la tarifa total del viaje con el monto del PDF, sin tocar peso ni tarifa/tn (siempre disponible).
El botón "Ajustar todos" concilia en masa todas las posiciones conciliables: en retornos de pallets aplica el monto a los pallets, en fletes ajusta peso si se puede o fija el monto. Nunca toca tarifas en el ajuste masivo. Antes de aplicar muestra un resumen y avisa si hay diferencias mayores al 5%.
Generar la factura
Con el pedido conciliado, generás una factura en borrador con los viajes matcheados. Cada viaje queda vinculado con el monto del PDF como snapshot, y las diferencias conciliadas quedan anotadas para auditoría.
Estados e historial
Un pedido pasa por: ingerido (cargado, sin factura) → facturado (factura generada) o anulado. El historial lista todos los pedidos cargados con fecha, emisor, total del PDF, total facturado, posiciones con match y estado.