Link Search Menu Expand Document

Factura simple

require_once 'ruta/hacia/vendor/autoload.php';

use josemmo\Facturae\Facturae;
use josemmo\Facturae\FacturaeParty;

// Creamos la factura
$fac = new Facturae();

// Asignamos el n煤mero EMP2017120003 a la factura
// N贸tese que Facturae debe recibir el lote y el
// n煤mero separados
$fac->setNumber('EMP201712', '0003');

// Asignamos el 01/12/2017 como fecha de la factura
$fac->setIssueDate('2017-12-01');

// Incluimos los datos del vendedor
$fac->setSeller(new FacturaeParty([
  "taxNumber" => "A00000000",
  "name"      => "Perico de los Palotes S.A.",
  "address"   => "C/ Falsa, 123",
  "postCode"  => "12345",
  "town"      => "Madrid",
  "province"  => "Madrid"
]));

// Incluimos los datos del comprador,
// con finos demostrativos el comprador ser谩
// una persona f铆sica en vez de una empresa
$fac->setBuyer(new FacturaeParty([
  "isLegalEntity" => false,       // Importante!
  "taxNumber"     => "00000000A",
  "name"          => "Antonio",
  "firstSurname"  => "Garc铆a",
  "lastSurname"   => "P茅rez",
  "address"       => "Avda. Mayor, 7",
  "postCode"      => "54321",
  "town"          => "Madrid",
  "province"      => "Madrid"
]));

// A帽adimos los productos a incluir en la factura
// En este caso, probaremos con tres l谩mpara por
// precio unitario de 20,14鈧 con 21% de IVA ya inclu铆do
$fac->addItem("L谩mpara de pie", 20.14, 3, Facturae::TAX_IVA, 21);

// Ya solo queda firmar la factura ...
$fac->sign(
  "ruta/hacia/clave_publica.pem",
  "ruta/hacia/clave_privada.pem",
  "passphrase"
);

// ... y exportarlo a un archivo
$fac->export("ruta/de/salida.xsig");