josemmo / Facturae-PHP

📝 Genera, firma, envía y recibe facturas electrónicas sin necesidad de ninguna librería adicional
https://josemmo.github.io/Facturae-PHP/
MIT License
211 stars 96 forks source link

Factura simple #166

Closed MiBasDev closed 1 month ago

MiBasDev commented 1 month ago

Como se supone que generas una factura simplificada? Hay que pedir sí o sí el NIF o hay algún genérico que se pueda usar?

josemmo commented 1 month ago

Hola @MiBasDev,

Pues no te sabría decir, esto es más un problema fiscal/legal que técnico... 😅

Según la especificación de FacturaE, el campo <TaxIdentificationNumber /> (CIF o NIF) es siempre obligatorio, independientemente del tipo de documento. No me suena que exista un valor genérico que puedas usar para estos casos.

Ya solo por curiosidad, ¿para qué caso de uso necesitas emitir una facturae simplificada en formato FacturaE?

MiBasDev commented 1 month ago

Estamos desarrollando un plugin para woocomerce y es comun que en las ventas haya clientes que no ponen el NIF o lo ponen pero son extranjeros con dirección de España (turistas) y ambos casos da error a la hora de validar la facturae. No se si la ley dice que es solo entre empresas españolas, en ese caso se nos reduce el numero de facturas. ¿Deberiamos excluir a particulares que el NIF sea correcto?

josemmo commented 1 month ago

No te sabría decir, esto ya es una cuestión fiscal.

La especificación es clara: hay que poner CIF del emisor y del receptor. Si es un organismo extranjero también se puede hacer, tienes la documentación en este enlace.

Se me escapa por qué un particular necesita una FacturaE, si solo se usa para enviar a administraciones públicas (FACe) y rara vez entre empresas (FACeB2B).

dixitalmedia commented 1 month ago

Hola @josemmo

La antigua página de validación de la factura (que ahora ya no existe) validaba las facturas donde ResidenceTypeCode tenía el valor U y el NIF era un VAT-ID de una empresa francesa, por ejemplo. Incluso habíamos previsto en los ajustes del plugin unos datos genéricos Nombre (Contado), CP (36200) y NIF (00000000T) que era lo mínimo que pedía para validar una venta con ResidenceTypeCode R. Así el admin de la web fijaba esos valores por defecto para las compras hechas sin datos de cliente. Ahora en el validador de Face no valida ni un caso ni otro. Lo mismo para un ResidenceTypeCode E que obviamente es imposible verificar (de todo el mundo). Mismo error en todos de DNI incorrecto. Podemos entender el segundo, ya que no existe. Pero una factura intracomunitaria con un documento real de una empresa europea o una extranjera tampoco. ¿Qué sentido tiene validar el NIF de factura emitida a un cliente de Kazajistán?

En cuanto al InvoiceDocumentType si es FA se supone que no hay BuyerParty como puede ser el caso de cliente que compra unos zapatos y no da su NIF, si se espera.

Lo bueno sería tenía facturas de ejemplo para los casos de intracomunitaria, extranjero y una simplificada. Y ver si es que dependen de otros campos además de ResidenceTypeCode y/o InvoiceDocumentType.

Conclusión a la que hemos llegado: emitir solo factura-e si el TaxIdentificationNumber del BuyerParty se valida como NIF español, ya sea el PersonTypeCode J o F porque podría ser un empresario autónomo. En todos los demás casos solo emitimos factura PDF.

Coincidimos contigo en lo que dices "por qué un particular necesita una FacturaE". Como a los particulares (caso de cliente sin NIF) no hay que emitirles factura-e y una empresa de fuera de España poco puede hacer mucho con ella que en sus países habrá otro formato, pues haremos así.

Lo que no entendemos es porque contemplan los supuestos de factura simplificada o a otros países si no se pueden validar.

Saludos