---
audiencia: usuario
screen_key: pagos-proveedores
titulo: Pagos a Proveedores
aliases: [pagar proveedor, pagar a proveedores, pagos a proveedores, pago proveedor, como pago a mi proveedor, cuentas a pagar, cuentas por pagar, cxp, orden de pago, ordenes de pago, op, dar pagado, pagar compra, pagar factura compra, pagar factura proveedor, pagar compra credito, pagar compras a crédito, saldar compra, saldar factura, pago credito proveedor, anticipo proveedor, anticipos a proveedor, dar pagar, registrar pago compra, pago a credito, registrar pago proveedor, vencimientos proveedores, deuda proveedor, deuda con proveedores]
---

# Pagos a Proveedores — Guía para el Usuario

Esta guía cubre cómo **pagar a tus proveedores** desde el ERP: ver lo que debés (Cuentas a Pagar), generar la Orden de Pago, ejecutarla y registrar el pago efectivo, y la integración con tesorería/contabilidad. (El sistema **no** tiene hoy un flujo de anticipo a proveedor antes de la factura — ver la sección "Anticipos a proveedores" más abajo.)

> **Pregunta típica que esta guía responde:** *"¿Dónde puedo darle pagado a las compras que hacemos a crédito?"* — respuesta: **Compras → Orden de Pago** (ver sección "Flujo paso a paso" abajo). También podés llegar desde **Compras → Cuentas a Pagar** y emitir la OP desde ahí.

---

## ¿Dónde encuentro esto en el menú?

> **Corrección**: no existe un módulo "Finanzas" en el sidebar. "Cuentas a Pagar" y "Orden de Pago" son solapas dentro del módulo **Compras** (se movieron ahí desde una antigua sección "Finanzas" — ver `guia-compras.md`).

- **Compras → Cuentas a Pagar**: listado de todo lo que la empresa debe a sus proveedores, con saldos, vencimientos y aging. Es la pantalla principal de control. Solo visible si `generar_cxp_automatico = false` (Configuración → Facturación → Configuración de Compras) y tenés el permiso `CMP_CXP_CUENTA_PAGAR_VER`.
- **Compras → Orden de Pago**: solapa para emitir las órdenes de pago — el documento que materializa el pago al proveedor. Visible si `habilitar_orden_pago = true` y tenés el permiso `CMP_OP_ORDEN_PAGO_VER`.
- **Compras → Facturas**: detalle de la factura de compra que origina la deuda. Cada factura a crédito genera automáticamente cuotas en CxP.
- **Reportes → Administrativos y Financieros → Cuentas por Pagar**: aging de la deuda con proveedores, independiente de si la solapa "Cuentas a Pagar" está visible o no.
- **Tesorería → Movimientos**: para ver el egreso bancario / de caja que generó el pago de la OP.
- **Contabilidad → Asientos**: para ver el asiento contable generado al ejecutar la OP.

> Cada usuario ve la opción según sus permisos. Si tu rol no tiene `CMP_CXP_CUENTA_PAGAR_VER` ni `CMP_OP_ORDEN_PAGO_*`, no vas a ver los ítems del sidebar.

---

## Conceptos generales

### ¿Cómo nace una deuda con proveedor?

Cuando registrás una factura de compra **a crédito** (no contado), el sistema crea automáticamente:

- **1 fila en `cuentas_pagar`** por cada cuota del plan de pagos de la factura.
- Cada cuota tiene su monto, fecha de vencimiento y estado inicial `pendiente`.
- El estado va cambiando a medida que se pagan: `pendiente → parcial → pagada`.

> Lo mismo aplica para **gastos a crédito** (ver `guia-gastos.md`).

> **Compras/gastos de contado también** pueden generar deuda si la empresa activa **"Incluir contado en orden de pago"** (Configuración → Facturación → Configuración de Compras). Con ese flag, el contado no se paga al registrarse: queda como cuota pendiente en `cuentas_pagar` y aparece en la Orden de Pago igual que una a crédito. Útil para centralizar todos los pagos en Tesorería. Ver detalle en `guia-compras.md`.

### ¿Qué es una Orden de Pago (OP)?

Es el **documento que materializa el pago al proveedor**. Selecciona una o varias cuotas pendientes, define el medio de pago (efectivo, transferencia, cheque, etc.) y al ejecutarse:

- Reduce los saldos pendientes en CxP.
- Crea el movimiento en Tesorería (egreso de caja/banco).
- Genera el asiento contable.
- Marca la cuota como `pagada` (o `parcial` si fue pago parcial).

Una OP puede pagar:
- 1 cuota completa
- Múltiples cuotas de la misma factura
- Múltiples facturas del mismo proveedor (multi-factura)
- Con uno o varios medios de pago combinados

### Workflow de Orden de Pago

| Estado | Significado | Quién puede transicionar |
|---|---|---|
| `BORRADOR` | OP creada pero todavía no enviada a aprobación | Quien la creó |
| `PENDIENTE_APROBACION` | Esperando que un supervisor apruebe | Quien crea pasa a este estado con "Enviar a aprobación" |
| `RECHAZADA` | El supervisor la rechazó con motivo | Vuelve al creador, puede reenviar a aprobación |
| `PENDIENTE` | Aprobada por el supervisor, lista para ejecutar | El supervisor la mueve acá al "Aprobar" |
| `PAGADO` | Ejecutada y aplicada en CxP + Tesorería + Contabilidad | Estado final |
| `ANULADA` | Anulada antes o después de ejecutar | El permiso `CMP_OP_ORDEN_PAGO_ANULAR` |

> Si la empresa **no usa aprobaciones**, la OP puede ir directo de `BORRADOR` → `PAGADO` al "Ejecutar".

### Estados de cuota en Cuentas a Pagar

| Estado | Significado |
|---|---|
| `pendiente` | Sin pagos aplicados, saldo = monto original |
| `parcial` | Se aplicó un pago pero falta para cancelar |
| `pagada` | Saldo = 0, cuota cancelada |
| `vencida` | Variante calculada: `pendiente` o `parcial` con `fecha_vencimiento < hoy` |
| `anulada` | Cuota inactiva (factura origen anulada o reversa de pago) |

---

## Flujo paso a paso — Cómo pagar una factura a crédito

### Paso 1 — Consultar lo que se debe

1. Ir a **Compras → Cuentas a Pagar**.
2. Filtrar por proveedor, estado (`pendiente / parcial / vencida`) o rango de vencimiento.
3. La pantalla muestra cuotas con saldo pendiente, días de mora, monto original.

### Paso 2 — Crear la Orden de Pago

1. **Opción A — Desde el listado de CxP**: seleccionar una o varias cuotas y click **"Generar OP"**.
2. **Opción B — Desde Compras → Orden de Pago → Nueva**: elegir proveedor, después marcar las cuotas a pagar.
3. Completar:
   - **Medio de pago** (efectivo / transferencia / cheque)
   - **Cuenta de tesorería** desde la que sale el dinero (caja chica, banco específico)
   - Si es cheque: nro, banco emisor, fecha de emisión/vencimiento, diferido si aplica
   - Si es transferencia: banco origen, banco destino, nro de operación
   - Observación opcional
4. **Guardar** (queda en `BORRADOR`).

> **Atajo**: si la empresa tiene `aplicar_pago_al_guardar = true` en configuración, la OP se ejecuta directamente al guardar — sin pasar por aprobación ni "Ejecutar". Útil para empresas pequeñas sin supervisor de pagos.

### Paso 3 — Aprobación (si aplica)

Si la empresa requiere aprobación (`requiere_aprobacion = true`):

1. El creador click **"Enviar a aprobación"** → estado pasa a `PENDIENTE_APROBACION`.
2. El supervisor (con permiso `CMP_OP_ORDEN_PAGO_APROBAR`) entra al detalle de la OP y elige:
   - **Aprobar** → estado → `PENDIENTE`, lista para ejecutar (no vuelve a `BORRADOR`)
   - **Rechazar** con motivo → estado → `RECHAZADA`, vuelve al creador

### Paso 4 — Ejecutar la OP

1. Click **"Ejecutar"** en una OP en estado `PENDIENTE` (ya aprobada) o `BORRADOR` (si la empresa no requiere aprobación).
2. El sistema en una transacción atómica:
   - Reduce el saldo pendiente de cada cuota CxP afectada
   - Marca las cuotas como `pagada` (o `parcial`)
   - Crea el movimiento de Tesorería (egreso)
   - Genera el asiento contable (DEBE Proveedor / HABER Banco o Caja)
   - Si hay cheque: registra el cheque en `tes_cheques` con estado `EMITIDO`
   - Cambia estado de la OP a `PAGADO`
3. Toast verde "Orden de Pago ejecutada" + descarga del PDF de la OP.

### Paso 5 — Verificar

- **Compras → Cuentas a Pagar**: la cuota ya no aparece en pendientes (o aparece con menor saldo si fue parcial).
- **Tesorería → Movimientos**: aparece el egreso por el monto pagado.
- **Contabilidad → Asientos**: el asiento generado tiene estado `CONFIRMADO`.
- **Compras → Orden de Pago**: la OP figura en estado `PAGADO`.

---

## Pago directo desde la factura de compra (atajo)

Cuando la factura de compra fue **al contado** o querés pagarla inmediatamente al cargarla:

1. **Compras → Facturas → Nueva**.
2. En "Forma de pago" elegir **Contado**.
3. En "Medio" elegir efectivo, transferencia o cheque.
4. Indicar la cuenta de tesorería que cubre el pago.
5. Guardar.

El sistema:
- **NO genera CxP** (no hay deuda pendiente)
- Crea directamente el movimiento de Tesorería
- Genera el asiento contable

> Esta vía no requiere OP — el pago se aplica en el mismo flujo de alta de la factura.

---

## Anticipos a proveedores

> **Corrección — esta funcionalidad no existe hoy en el sistema.** La Orden de Pago (`CreateOrdenPagoProveedorDto`) exige siempre un array `detalles` con **al menos una** cuenta por pagar existente (`ArrayMinSize(1)`, cada detalle con `cuenta_pagar_id` obligatorio): no hay un tipo **"Anticipo"**, no se puede crear una OP "sin facturas asociadas" ni existe un botón **"Aplicar anticipo"** en el flujo de pago de una factura. Lo que sí existe en el ERP es el **anticipo de viático** (adelanto a un empleado que después rinde gastos — ver `guia-gastos.md`), que es un concepto distinto: un anticipo **al personal**, no un anticipo **a un proveedor** antes de recibir su factura.
>
> Si tu empresa necesita pagarle a un proveedor antes de tener la factura, hoy la única vía es registrar el pago por fuera del flujo de Compras (ej. un movimiento de Tesorería manual) y conciliarlo a mano cuando llegue la factura. Modelar un anticipo a proveedor real es una mejora pendiente, no una función disponible.

---

## Pago de gastos a crédito

Los **gastos** (alquiler, luz, honorarios, etc.) cargados con forma de pago **Crédito** generan CxP igual que las facturas de compra. Se pagan con el mismo flujo de Orden de Pago.

Diferencia: el `origen_tipo` en CxP es `gasto` en lugar de `factura_compra`. La OP los maneja indistintamente.

Ver `guia-gastos.md` para el detalle del flujo desde el lado del alta del gasto.

---

## Permisos requeridos

| Acción | Permiso |
|---|---|
| Ver listado de CxP | `CMP_CXP_CUENTA_PAGAR_VER` |
| Editar saldo manual de una cuota | `CMP_CXP_CUENTA_PAGAR_EDITAR` |
| Exportar CxP | `CMP_CXP_CUENTA_PAGAR_EXPORTAR` |
| Ver órdenes de pago | `CMP_OP_ORDEN_PAGO_VER` |
| Crear OP / Enviar a aprobación / Ejecutar | `CMP_OP_ORDEN_PAGO_CREAR` |
| Aprobar / Rechazar OP | `CMP_OP_ORDEN_PAGO_APROBAR` |
| Anular OP | `CMP_OP_ORDEN_PAGO_ANULAR` |

> Estos permisos se asignan desde **Configuración → Usuarios y Permisos → Perfiles y Roles**.

---

## Reportes y consultas útiles

- **Compras → Cuentas a Pagar** (panel Dashboard dentro de la solapa): aging (1-30 / 31-60 / 61-90 / >90 días vencido), totales por proveedor, próximos vencimientos.
- **Compras → Orden de Pago** (panel Dashboard dentro de la solapa): OPs por estado (cuántas pendientes de aprobación, cuántas pagadas en el mes, total pagado).
- **Reportes → Administrativos y Financieros → Cuentas por Pagar**: aging de la deuda con proveedores. *(No existe un reporte "Vencidos Proveedor" bajo Compras — el reporte con ese nombre real, "Reporte por Proveedor" en `Reportes → Inventario`, es sobre lotes/mercadería próximos a vencer por proveedor, no sobre cuotas de pago vencidas.)*
- **PDF de la OP**: cada OP ejecutada tiene un PDF descargable con sello "PAGADO" + datos del medio de pago.

---

## Anular un pago

### ¿Qué pasa al anular una OP ejecutada?

El sistema **reversa todo en cadena**:

1. Las cuotas pagadas vuelven a `pendiente` (saldo restaurado).
2. El movimiento de Tesorería se anula → saldo del banco/caja vuelve a su monto anterior.
3. Si había cheques emitidos → se marcan como `ANULADO` (solo si todavía no fueron debitados).
4. El asiento contable genera un asiento reverso.

### Restricciones

- **No se puede anular una OP** si su cheque ya fue debitado en banco (status `DEBITADO` en `tes_cheques`). Primero hay que revertir el cheque desde Tesorería.
- **No se puede anular una OP** si el período contable está cerrado. Hay que reabrirlo para que el asiento reverso pueda entrar.
- Anular requiere motivo obligatorio.

---

## Validaciones que aplica el backend

- **"Proveedor requerido"** — al crear OP sin seleccionar proveedor.
- **"Debe seleccionar al menos una cuota"** — OP sin cuotas (siempre exige al menos una cuenta por pagar; no hay excepción de tipo "anticipo").
- **"La cuota {X} no pertenece al proveedor seleccionado"** — mezclar cuotas de distintos proveedores.
- **"La cuota {X} ya está paga"** — intentar pagar de nuevo una cuota cancelada.
- **"El monto a pagar supera el saldo pendiente"** — pagar más de lo que se debe en esa cuota.
- **"El número de cheque es obligatorio"** — medio = cheque sin número.
- **"La cuenta de tesorería no tiene saldo suficiente"** — si la cuenta tiene control de saldo activado y no llega el monto.
- **"La OP ya fue ejecutada"** — intentar ejecutar dos veces.
- **"Esta OP requiere aprobación"** — intentar ejecutar una OP en `BORRADOR` cuando la empresa exige aprobación.
- **"El motivo es obligatorio"** — anular o rechazar sin motivo.
- **"No se puede anular: cheque {X} ya fue debitado"** — proteger pagos en circulación bancaria.

---

## Problemas frecuentes

- **"No veo Cuentas a Pagar en el menú"**: falta el permiso `CMP_CXP_CUENTA_PAGAR_VER` o el submódulo COMP_CUENTAS_PAGAR no está habilitado en la suscripción.

- **"Generé la OP pero la cuota sigue en pendiente"**: la OP quedó en `BORRADOR` o `PENDIENTE_APROBACION`. Hay que **ejecutarla** para que aplique en CxP. Solo `PAGADO` reduce el saldo.

- **"Ejecuté la OP pero el banco no muestra el egreso"**: revisar **Tesorería → Movimientos** filtrando por la fecha. Si está pero no aparece en la cuenta esperada, posiblemente la OP se cargó con la cuenta de tesorería incorrecta.

- **"El asiento contable quedó en BORRADOR"**: falta alguna cuenta contable en los mapeos (Proveedores, Caja, Banco, según el medio). Ir a **Contabilidad → Mapeo de Cuentas** y completar.

- **"Quiero pagar parcial pero no me deja"**: en el medio de pago, indicar un monto menor al saldo de la cuota. El sistema marcará la cuota como `parcial` y el resto sigue pendiente.

- **"El proveedor me cobra una factura que yo ya pagué"**: buscar la OP que pagó esa factura desde **Compras → Orden de Pago** → filtrar por proveedor + estado `PAGADO`. Descargar el PDF como comprobante.

---

## Lo que NO se puede hacer

- Pagar una cuota que pertenece a una factura **anulada** (sus cuotas también están anuladas).
- Ejecutar una OP `BORRADOR` cuando la empresa requiere aprobación, sin pasar antes por `PENDIENTE_APROBACION` → `PENDIENTE` (aprobada).
- Editar una OP `PAGADO` (solo se puede anular).
- Pagar con un cheque cuyo número ya fue usado en otra OP del mismo banco emisor.
- Eliminar movimientos de Tesorería generados por una OP — la única forma de revertirlos es anulando la OP.
- Cambiar el medio de pago de una OP ya ejecutada.

---

## Limitaciones actuales

- No hay reporte automático "cuánto le debo a cada proveedor a una fecha cualquiera". Hoy se ve solo el saldo actual. Para corte histórico hay que consultar audit logs o exportar a Excel y filtrar.
- El flujo de aprobación de OP es de **un solo nivel** (BORRADOR → PENDIENTE_APROBACION → PENDIENTE, listo para ejecutar). No soporta cadenas multi-nivel (jefe + gerente) ni un estado `APROBADA` separado.
- No hay integración bancaria automática — el banco no nos notifica cuando un cheque se cobra. El cambio de estado del cheque a `DEBITADO` es manual desde Tesorería.
- No existe un flujo de anticipo a proveedor (pagar antes de tener la factura) — ver la sección "Anticipos a proveedores" más arriba.

---

## Documentos relacionados

- `guia-compras.md` — alta de la factura de compra que genera la CxP.
- `guia-gastos.md` — alta de gastos a crédito que también generan CxP.
- `guia-cobros-finanzas.md` — flujo del lado del cobro (la contraparte: vos cobrás de tus clientes).
- `guia-tesoreria-bancos.md` — movimientos bancarios, cheques, transferencias.
- `guia-contabilidad.md` — mapeos de cuentas, asientos automáticos, períodos.
- `guia-monedas-metodos-pago.md` — configuración de medios de pago disponibles.
