Gestione fatture elettroniche.
import { InvoicesClient } from '@fatturazione-elettronica-aruba/invoices';
const invoices = new InvoicesClient(httpClient);
Invia fattura non firmata.
const result = await invoices.upload({
dataFile: string; // XML in Base64
credential?: string; // Firma remota
domain?: string;
senderPIVA?: string; // Per TD26
skipExtraSchema?: boolean;
dryRun?: boolean; // Solo validazione
});
Invia fattura gia firmata.
const result = await invoices.uploadSigned({
dataFile: string; // .p7m o XAdES in Base64
});
Ricerca fatture inviate.
const result = await invoices.findSent({
creationStartDate: string; // ISO 8601
creationEndDate: string; // Max 2 giorni
status?: InvoiceStatus;
documentType?: DocumentType;
receiverVatcode?: string;
page?: number;
size?: number; // Max 100
});
Dettaglio fattura inviata.
const detail = await invoices.getSentDetail({
id?: string;
filename?: string;
idSdi?: string;
includePdf?: boolean;
includeFile?: boolean;
});
Ricerca fatture ricevute.
const result = await invoices.findReceived({
creationStartDate: string;
creationEndDate: string;
senderVatcode?: string;
page?: number;
size?: number;
});
const detail = await invoices.getReceivedDetail({
id?: string;
filename?: string;
includeFile?: boolean;
includeUnsignedFile?: boolean;
});
Invia esito committente.
await invoices.sendEsitoCommittente({
filename: string;
sdiId: string;
esito: 'EC01' | 'EC02';
descrizione?: string;
});
Download ZIP fattura.
Download PDD (Pacchetto di Distribuzione).
Download massivo.
const job = await invoices.downloadSent(
['12345', '12346'],
['xml', 'pdf', 'notifications']
);
Recupera risultato download massivo.
type InvoiceStatus =
| 'Inviata'
| 'Consegnata'
| 'Non Consegnata'
| 'Scartata'
| 'Accettata'
| 'Rifiutata'
| 'Decorrenza Termini'
| 'Errore Elaborazione'
| 'In Elaborazione';
type DocumentType =
| 'TD01' | 'TD02' | 'TD03' | 'TD04' | 'TD05' | 'TD06'
| 'TD07' | 'TD08' | 'TD09' | 'TD10' | 'TD11' | 'TD12'
| 'TD16' | 'TD17' | 'TD18' | 'TD19' | 'TD20' | 'TD21'
| 'TD22' | 'TD23' | 'TD24' | 'TD25' | 'TD26' | 'TD27' | 'TD28';