# Proveedores

## Paso a paso

Las tareas más comunes, resumidas. El detalle de cada una está en las secciones numeradas.

### Registrar un proveedor

1. En el menú lateral abre **📦 Productos → Proveedores**.
2. Pulsa **➕ Nuevo Proveedor**.
3. Escribe el **Nombre** y, si los tienes, el contacto, teléfono, correo y dirección.
4. Si te da facturas, captura su **RFC**. Si te da crédito, captura sus **Días de crédito**.
5. Pulsa **Guardar**.

Ver sección 4.

### Dejar de usar un proveedor

1. En su menú **⋮** elige **🚫 Desactivar**.
2. Confirma con **Sí, desactivar**. Lo recuperas con el filtro **Inactivos → ✅ Reactivar**.

Ver sección 6.

## 1. ¿Qué es Proveedores?

Es el directorio de las empresas o personas a quienes se les compra mercancía: nombre, contacto, teléfono, correo, dirección, notas, **RFC** y **días de crédito**. Cada producto del inventario se asocia a uno de estos proveedores (ver el campo "Proveedor" en [Inventario](./inventario.md)); si cambias el nombre aquí, el producto muestra el nombre nuevo. El RFC y los días de crédito los usa el módulo de [Compras y Cuentas por Pagar](./compras.md): el RFC para reconocer al proveedor cuando subes una factura XML, y los días de crédito para calcular cuándo vence lo que le debes.

**Quién puede usarlo:** Proveedores es de **administrador únicamente** — como Productos, es "datos maestros" del negocio y requiere permisos de admin (`requireAdmin`). Un cajero no ve estas acciones.

## 2. Llegar al módulo

En el menú lateral abre **📦 Productos → Proveedores**. En la parte superior está el botón **➕ Nuevo Proveedor**.

## 3. La tabla de proveedores

Columnas:

- **ID**
- **Proveedor**: nombre y, si tiene, debajo su RFC y/o "crédito N días" (los días de crédito se muestran aunque el proveedor no tenga RFC) y la dirección.
- **Contacto**: nombre de la persona de contacto (o "Sin contacto").
- **Teléfono**: si tiene teléfono registrado, es un enlace `tel:` para marcar directo.
- **Correo**: si tiene correo, es un enlace `mailto:` para escribirle directo.
- **Productos**: cuántos productos activos tienen a este proveedor asignado (los desactivados no cuentan).
- **Acciones** (botón **⋮**): **✏️ Editar** y **🚫 Desactivar** (o **✅ Reactivar** si ya está inactivo).

Arriba de la tabla hay un **buscador** que filtra la tabla completa por cualquier texto visible en la fila (nombre, contacto, teléfono, correo, dirección, etc.) y un contador con el total de proveedores. El filtro **Activos / Inactivos / Todos** muestra por defecto solo los activos; los inactivos se ven atenuados con la etiqueta **Inactivo**.

## 4. Registrar un proveedor nuevo

1. Clic en **➕ Nuevo Proveedor**.
2. Llena el formulario:
   - **Nombre** (obligatorio) — es el nombre que aparecerá para elegir como proveedor de un producto.
   - **Contacto** (opcional) — nombre de la persona con quien se trata.
   - **Teléfono** (opcional).
   - **Correo** (opcional).
   - **Dirección** (opcional).
   - **Notas** (opcional).
   - **RFC (para leer sus facturas XML)** (opcional) — el RFC del proveedor, de 12 o 13 caracteres (ej. XAXX010101000). Se guarda en mayúsculas y sin espacios. Si el formato no es válido el sistema responde "El RFC no tiene un formato válido". Con él, al subir una factura XML en [Compras](./compras.md) el sistema reconoce al proveedor solo; si no lo tiene registrado, ofrece crearlo con los datos del XML.
   - **Días de crédito** (opcional, por defecto 0) — cuántos días te da el proveedor para pagar. Debe ser un entero entre 0 y 365. En Compras, una compra a crédito sin fecha de vencimiento vence en la fecha del documento + estos días.
3. Clic en **Guardar**.

Al guardar, el nuevo proveedor aparece automáticamente disponible en los selectores de proveedor de **Inventario** (alta de producto, edición de producto y el filtro de proveedor de la tabla de inventario).

## 5. Editar un proveedor

1. Clic en **✏️** en la fila del proveedor.
2. Se abre el mismo formulario con los datos actuales.
3. Clic en **Guardar**.

**Renombrar un proveedor:** cada producto está ligado al proveedor mismo, no a su nombre. Si cambias el **nombre** aquí, todos sus productos muestran el nombre nuevo de inmediato, sin editarlos uno por uno.

## 6. Desactivar o reactivar un proveedor

Los proveedores **no se eliminan**; se desactivan para que no estorben sin perder su información.

1. En el menú **⋮** del proveedor elige **🚫 Desactivar**.
2. Confirma en el diálogo rojo **"Sí, desactivar"**.
3. Un proveedor inactivo deja de aparecer en el selector de proveedor al **dar de alta** un producto. Los productos que ya lo tenían asignado no cambian: lo conservan y, al editarlos, lo siguen viendo en su selector.
4. Para volver a usarlo, cambia el filtro a **Inactivos**, abre su menú **⋮** y elige **✅ Reactivar**.

## 7. Preguntas frecuentes

**Si desactivo un proveedor, ¿pierdo la información de sus productos?**
No. Los productos conservan su nombre, precio, costo y su proveedor. Y el proveedor mismo tampoco se pierde: puedes reactivarlo cuando quieras.

**Si cambio el nombre de un proveedor, ¿tengo que editar sus productos?**
No. Los productos están ligados al proveedor, así que todos muestran el nombre nuevo en cuanto lo guardas.

**Actualicé Anaquelia y algunos productos aparecen "Sin asignar", ¿por qué?**
Antes, cada producto guardaba el nombre de su proveedor como texto. Al actualizar, Anaquelia ligó cada producto con el proveedor registrado que tiene ese nombre (aunque cambien mayúsculas o acentos). Los que tenían un nombre que no corresponde a ningún proveedor de tu lista, por ejemplo los del catálogo precargado, quedaron "Sin asignar". En Inventario, elige **Sin proveedor** en el filtro de proveedor para verlos y asígnales uno al editarlos.

**¿Puedo ver qué productos tiene un proveedor sin ir a Inventario?**
La tabla de Proveedores solo muestra el número total de productos asignados (columna "Productos"); para ver cuáles son, filtra el inventario por ese proveedor desde la pantalla de [Inventario](./inventario.md#3-la-tabla-de-productos).

**¿Para qué sirven el RFC y los días de crédito?**
Son para [Compras](./compras.md). El RFC permite que una factura XML se asigne sola al proveedor correcto, y los días de crédito fijan el vencimiento de lo que le debes. Si no los capturas, todo sigue funcionando, pero las compras a crédito vencerán el mismo día del documento (o tendrás que poner la fecha de vencimiento a mano) y el XML te pedirá elegir o crear al proveedor.

**¿Un cajero puede registrar o editar proveedores?**
No, esta pantalla es exclusiva de administradores.
