馃摑 Genera, firma, env铆a y recibe facturas electr贸nicas sin necesidad de ninguna librer铆a adicional
Facturae-PHP es un paquete escrito puramente en PHP que permite generar facturas electr贸nicas siguiendo el formato estructurado Facturae, a帽adirlas firma electr贸nica XAdES y sellado de tiempo, e incluso enviarlas a FACe o FACeB2B sin necesidad de ninguna librer铆a o clase adicional.
En apenas 25 l铆neas de c贸digo y con un tiempo de ejecuci贸n inferior a 0,4 碌s es posible generar, firmar y exportar una factura electr贸nica totalmente v谩lida:
$fac = new Facturae();
$fac->setNumber('FAC201804', '123');
$fac->setIssueDate('2018-04-01');
$fac->setSeller(new FacturaeParty([
"taxNumber" => "A00000000",
"name" => "Perico de los Palotes S.A.",
"address" => "C/ Falsa, 123",
"postCode" => "12345",
"town" => "Madrid",
"province" => "Madrid"
]));
$fac->setBuyer(new FacturaeParty([
"isLegalEntity" => false,
"taxNumber" => "00000000A",
"name" => "Antonio",
"firstSurname" => "Garc铆a",
"lastSurname" => "P茅rez",
"address" => "Avda. Mayor, 7",
"postCode" => "54321",
"town" => "Madrid",
"province" => "Madrid"
]));
$fac->addItem("L谩mpara de pie", 20.14, 3, Facturae::TAX_IVA, 21);
$fac->sign("certificado.pfx", null, "passphrase");
$fac->export("mi-factura.xsig");
Tambi茅n permite firmar facturas que hayan sido generadas con otro programa:
$signer = new FacturaeSigner();
$signer->loadPkcs12("certificado.pfx", "passphrase");
$xml = file_get_contents(__DIR__ . "/factura.xml");
$signedXml = $signer->sign($xml);
file_put_contents(__DIR__ . "/factura.xsig", $signedXml);
Estas son algunas de las organizaciones y soluciones software que usan Facturae-PHP o mantienen un fork interno basado en el c贸digo de la librer铆a:
Facturae-PHP se encuentra bajo licencia MIT. Eso implica que puedes utilizar este paquete en cualquier proyecto (incluso con fines comerciales), siempre y cuando hagas referencia al uso y autor铆a de la misma.