## id
doc_factures_agrupades

## nom
Factures Agrupades (CSV) — guia detallada

## descripcio
Consulta aquest document quan calgui explicar amb precisió el format exacte del fitxer CSV, com
es reparteix la informació entre el document comptable generat, per què el proveïdor/client no
s'identifica automàticament pel NIF de cada línia, com es detecta l'ISP, o quines limitacions
conegudes té aquesta pantalla. No és l'explicació general, que cobreix `flux_factures_agrupades`.

## contingut
### Format del fitxer CSV

Fitxer de text separat per `;`, codificat en UTF-8, **sense fila de capçalera** — totes les files
són dades. Ha de tenir entre 6 i 9 columnes:

| # | Contingut | Format | Obligatòria |
|---|---|---|---|
| 1 | Data de l'operació | `dd/mm/aaaa` | Sí |
| 2 | Número de document | Text | Sí |
| 3 | Concepte / descripció | Text | Sí |
| 4 | Import total de l'operació | Número decimal | Sí |
| 5 | Identificació fiscal | Codi país + NIF (p. ex. `ESB17854697`) | Sí |
| 6 | Nom del proveïdor o client | Text | Sí |
| 7 | Base imposable | Número decimal | Opcional |
| 8 | Tipus d'IVA aplicat | Número decimal (com a fracció, p. ex. `0.21` per 21%) | Opcional |
| 9 | Import de l'IVA | Número decimal | Opcional |

### Com es comptabilitza tot el fitxer

Es crea **un únic document comptable** per a tota la càrrega (no un per línia ni un per grup):

1. Es crea la capçalera del document (amb el número "Factures Diverses").
2. S'hi afegeix una línia de Diari General amb la **suma de totes les bases** del fitxer, al
   compte de despesa/ingrés triat.
3. S'hi afegeix una segona línia de Diari General amb la **suma de tot l'IVA** del fitxer, al
   compte fiscal triat.
4. Per cada grup de línies que comparteixen NIF + número de document + tipus d'IVA, es crea un
   **registre fiscal** (per al llibre d'IVA i les liquidacions AEAT) amb el NIF i el nom tal com
   consten al fitxer CSV.

### El proveïdor/client és sempre el triat al formulari, no el del CSV

Aquest és el punt que més sol confondre: **el NIF i el nom de cada línia del CSV només s'utilitzen
per als registres fiscals** (llibre d'IVA/AEAT) — no serveixen per buscar ni per crear
automàticament un proveïdor o client. Tot el lot es comptabilitza contra el **proveïdor o client
únic triat manualment** al desplegable del formulari, encara que el fitxer contingui diverses
empreses diferents.

Per això aquesta eina és més adequada quan totes les línies pertanyen realment al mateix tercer
(compres a un mateix proveïdor) o quan el client és irrellevant per a la comptabilitat (vendes de
caixa sense client identificat) — no per barrejar en un sol fitxer factures de proveïdors o
clients diferents esperant que cadascuna quedi vinculada al seu propi tercer.

### ISP (Inversió del Subjecte Passiu)

Quan el NIF d'una línia correspon a un país de la UE, o a un NIF espanyol de no-resident, **i**
l'import d'IVA de la columna 9 és zero, l'aplicació dona per fet que es tracta d'una operació amb
inversió del subjecte passiu (intracomunitària o d'importació de serveis): en aquest cas, ignora
el tipus d'IVA indicat al CSV i aplica automàticament el tipus general configurat per al tipus de
document triat.

Fora d'aquest cas, el tipus d'IVA de la columna 8 **no es valida contra cap taula de tipus
d'IVA real** — s'accepta tal com ve al fitxer.

### Validació del fitxer (des del 2026-08-30)

Si alguna línia del fitxer no es pot interpretar correctament (data amb un format no reconegut,
un import no numèric a una columna que n'hauria de tenir, o menys de 6 columnes), **es rebutja tot
el fitxer sencer** — no es mostra cap previsualització ni es comptabilitza res, i l'aplicació
indica quantes línies tenen problemes. Cal corregir el fitxer i tornar-lo a carregar.

Abans d'aquesta data, aquestes línies es descartaven en silenci una a una i la resta del fitxer es
comptabilitzava igualment — els totals podien sortir per sota del que hi havia realment al fitxer
sense cap avís a l'usuari.

### Limitacions conegudes

- El selector "Agrupada / Desagrupada" que apareix (amagat) al formulari **no fa res** — no té
  cap efecte al resultat, sigui quina sigui l'opció.
- Encara que el desplegable de Tipus de document permet triar-ne d'altres, **només Despesa i
  Ingrés funcionen realment** en aquesta pantalla — amb qualsevol altre tipus, els desplegables de
  proveïdor/client i de comptes fiscals surten buits.
- No hi ha cap límit explícit de mida configurat per al fitxer CSV a l'aplicació — només els
  límits per defecte de la infraestructura on s'executa.
- Aquesta pantalla és antiga i té una millora pendent coneguda: separar-la en dues pantalles
  independents (una per a compres, una per a vendes) i revisar-ne el funcionament en general.

## comprovacions
Si el fitxer es rebutja sencer en carregar-lo:
- comprova el format de la data (columna 1) a totes les files;
- comprova que l'import (columna 4) i, si hi són, la base/tipus/import d'IVA (columnes 7-9) siguin
  números vàlids;
- comprova que cap fila tingui menys de 6 columnes.

Si els imports comptabilitzats no queden vinculats al proveïdor/client que apareix al CSV:
- recorda que el tercer comptable és sempre el triat manualment al formulari, no el NIF de cada
  línia — el NIF del CSV només queda registrat als registres fiscals, per al llibre d'IVA.

Si un tipus d'IVA sembla incorrecte a un registre fiscal generat:
- comprova si l'operació s'ha detectat com a ISP (NIF de la UE o de no-resident amb import d'IVA
  0 a la columna 9) — en aquest cas el tipus s'ha substituït pel tipus general de l'aplicació, no
  pel que constava al CSV.
