Different invoice formats (depending on type...)

First of all thanks and congrats for the great software you made!

I have a problem trying to implement dolibarr for Argentina, related with the invoice type (as discused in www.dolibarr.org/t/different-invoice-type-reference-number/6335/1

I’ve already made the changes to have the different invoices number series, but there’s another difference between the invoices types. In one type we have to specify product/service price without the VAT and that tax separately, and in the other we should show the total price, with the VAT included.

Is there a way to achieve this through configuration? I didn’t found anything for this. If not, I suppose that I could have two invoice models and modify some code to choose the right one depending on the invoice type. What do you think?

Thanks in advance, any clue or idea is welcomed!

Well, I modified the oursin model as I needed and I have two models now (based on copies of oursin), one for each invoice type. I’ve seen that, when two (or more) invoice models are active the user can choose between them to generate de pdf file.

What I need is (then) to make the choose for the user, depending on the client type. Would it be difficult? Would it be enought to modify htdocs/compta/facture.php ? I think its the page that renders the invoice info and options, so the code to choose the model should be there…

Any comment/link/documentation/whatever related to this is welcomed! By the way, is there someone using dolibarr in Argentina? (I mean in production) How did you manage to use invoices A and B?

Best regards.-

Lo que he visto yo que hacen en Argentina es tener diferente numeración para los A y B, basándose en el tipo de Cliente.

Por ejemplo:
FA-1001-001 para el A
FB-1001-002 para el B

¿No te sirve?

Pues sí, pero no soluciona todo el problema. Algunas empresas con poca facturación solo emiten un tipo de factura (los monotributistas, factura C), el resto puede emitir tipo A o B, dependiendo del cliente. En este último caso estoy yo.

Separar la numeración soluciona la mitad (por decir algo) del problema, pero las facturas en sí tienen algunas diferencias de formato. En las A se discrimina el IVA por el total de la factura (por ejemplo precio $100 / IVA $21 / Total $121) y en las facturas B se pone el precio de los productos/servicios con IVA incluido.

No es mucho pero no encontré cómo introducir una regla para decidir el modelo de factura a usar, así que creo que tendré que modificar el código (…o al menos intentarlo) Si tienes alguna pista de como hacerlo estaré muy agradecido.

Y gracias por la respuesta!


Well, yes, but it doesn’t solve the whole problem. Some small companies use just one invoice type (they are called “monotributistas”, and use “C type” invoices), the other have to use type A or B invoices, depending on the client. That’ where I am.

Separate the numbering series solves half of the problem, but the invoices do have some differences in format. In the A type we must discriminate the VAT on the total bill (eg price $ 100 / VAT $ 21 / Total $ 121) and in the B type invoices we put the price of products / services including VAT.

Not much, but could not find how to introduce a rule to decide which invoice model to use, so I suppose I’ll have to modify the code (or at least try to…) If you have any clue how to do it I’ll be very grateful.

And thanks for the reply!

Lo fácil:

Activa todos los modelos de documentos (incluyendo los que has realizado tú)

A la hora de generar el documento, selecciona el modelo que quieres usar dependiendo el tipo de cliente.

Lo menos fácil: crea un campo en la ficha del cliente que indique el modelo a usar y lo lees en la generación de la factura para saber el modelo a usar.

Gracias por el interés! De a poco se va acomodando a lo que necesito.

“Lo fácil” ya está andando, si los dos modelos se dejan activos se puede elegir uno u otro y funciona sin problemas. Lo que quiero es “lo mendo fácil”, ya que los usuarios finales esperan (y es bastante lógico) que el sistema seleccione el modelo por ellos.

Como pasa con estás cosas normalmente, no es que no sepa ajustar un tornillo, es que no se cual debería ajustar. Traducido: no es que no sepa escribir un if, es que no se exactamente donde debería ir…

Por ahora estoy buscando en facture.php, que es el archivo que muestra la información de la factura y sus opciones. Ya que ella renderiza toda la página, mi primer idea fue buscar partes del html cerca de la lista con los modelos: si identifico lo que renderíza la lista puedo reemplazarlo por tomar la decisión y mostrar un “voy a usar el modelo X”. Pero no es taaaaaaan sencillo. Estaré buscando con esa lógica a ver si da resultado.

Como siemprem cualquier idea se agradece! Y gracias nuevamente por el interés simnandez! Nos vemos por aquí.

Hola, si encontras o podes hacer algo asi… joya yo estoy intentando hacer lo mismo…

veamos si podemos compartir esto:D

juan.otto wrote:

¿Alguien encontró alguna solución satisfactoria para este muy generalizado caso? IVA incluido en precio unitario de Fac “B” ? conviviendo con la común práctica de discriminar IVA en la forma de Fac “A”?

Amigos, alguien soluciono este tema?
Saludos
Catriel

Solucione el tema de las Facturas A y B, ahora el sistema puede hacer Factuas A a Responsables Inscriptos y B a Responsables no Incriptos.
Cualquier consulta sera bienvenida
Saludos

Hola Catriel,

Felicitaciones por haber resuelto este gran problema. Quisiera pedirte tu ayuda para poder realizar lo mismo dentro de mi empresa. He podido realizar algunas modificaciones que también necesitábamos, pero lamentablemente no pude llegar muy lejos con respecto a la facturación A y B, podrías compartir conmigo cómo lo has lorado realizar?.

Por otra parte, quería consultarte si también te has encontrado en la situación de tener que emitir Tickets en vez de facturas, y que lleven otro tipo de identificación, para lograr discriminar unas de otras. Si es así, cómo lo hiciste?

Muchas gracias de antemano Catriel.
Leandro

Hola Leandro, lo que tenes que hacer es crear en diccionarios 3 tipos de empresa: A B y C
Despues tenes modificar el template “pdf_crabe.modules.php” (hacete una copia antes) y ahi te fijas que tipo de empresa es el cliente y haces la discriminacion de IVA correspondiente.

Con el tema de Tikets, estoy viendo como hago… tengo que hacer que imprima en una controladora fiscal… cuando lo termine te cuento como lo solucione.

Abrazo.

Hola Catriel, podrias compartir el segmento modificado de tu modulo o el modulo completo para verlo? no tengo mucha idea de PHP y me serviria mucho tener un ejemplo

Buenas tardes, estoy necesitando hacer la misma discriminación, tengo algunos conocimientos de php, pero no me doy cuenta donde tengo que hacer las modificaciones.
Espero que alguien me pueda ayudar.
Muchas gracias!!
Carlos