Pues... yo permitiría varios formatos, y que sea el usuario el que decida en qué formato quiere bajarse las facturas.
Si solo quisiese que vieran las facturas ya formadas, y que los usuarios solo pudieran imprimirlas o guardarlas en su disco duro, valdría con generarlas en PDF.
Pero si sé que algunos de los clientes quieren importar los datos de las facturas en su propio sistema informático, entonces puedo dárselas en XML, en el formato que pueda entender ese sistema (pero sistemas de contabilidad hay muchos). Hay formatos estándares, como los
EDI, o los de
facturae.
Más información en
Factura electrónica.
En cuanto a cómo generarlas con esos formatos, hay muchos módulos en CPAN (para XML y PDF).