Emitir PDF de ARCA en NodeJS
Con pocas líneas de código
Ivan Muñoz
mar 01, 2024 - Ultima edicion mar 01, 2026
Podemos usar Afip SDK para crear los PDF de comprobantes de AFIP luego de obtener el CAE
Consultá la documentación de emisión de PDFs de Afip SDK para ver todos los templates y ejemplos actualizados.
Requisitos previos
Para poder seguir esta guía, primero necesitarás:
Instalación
Lo primero es instalar la librería Afip.js
npm
npm install --save @afipsdk/afip.js
Yarn
yarn add @afipsdk/afip.js
Creamos una instancia de la clase Afip
const Afip = require('@afipsdk/afip.js');
const afip = new Afip({
access_token: 'TU_ACCESS_TOKEN'
});
Creamos el PDF
Para este tutorial vamos a crear una Factura B usando templates de Afip SDK.
(async () => {
const res = await afip.ElectronicBilling.createPDF({
file_name: 'factura-b-ejemplo.pdf',
template: {
name: 'invoice-b',
params: {
voucher_number: 97,
sales_point: 1,
issue_date: '01/03/2026',
cae_due_date: '15/03/2026',
issuer_cuit: 30123456789,
cae: '12345678901234',
issuer_business_name: 'Empresa imaginaria S.A.',
issuer_address: 'Calle falsa 123',
issuer_iva_condition: 'Responsable inscripto',
issuer_gross_income: 'CM 901-123456-7',
issuer_activity_start_date: '01/01/2020',
receiver_name: 'Consumidor Final',
receiver_address: '-',
receiver_document_type: 99,
receiver_document_number: 0,
receiver_iva_condition: 'Consumidor Final',
sale_condition: 'Contado',
currency_id: 'ARS',
currency_rate: 1,
concept: 1,
items: [
{
code: '001',
description: 'Servicio de ejemplo',
quantity: 1,
unit_price: 121,
subtotal: 121
}
],
vat_amount: 21,
tributes_amount: 0,
total_amount: 121
}
}
});
console.log(res.file);
})();
// Los PDFs creados con Afip SDK duran 24hs.
// Debes descargar el archivo antes de que expire la URL.
Ya tenemos el PDF listo para enviarle al cliente.
Lo único que nos queda es pasar a modo producción, para más información de cómo hacerlo pueden dirigirse a la documentación de la librería https://docs.afipsdk.com/