Getting Started

Quick Start

Get started quickly with the SDK

Quick Start

Quick guide to send your first electronic invoice.

1. Authentication

import { ArubaClient } from '@fatturazione-elettronica-aruba/core';

const client = new ArubaClient({
  environment: 'demo',
});

await client.auth.signin('username', 'password');

const userInfo = await client.auth.getUserInfo();
console.log('VAT:', userInfo.vatCode);

2. Send Invoice

import { InvoicesClient } from '@fatturazione-elettronica-aruba/invoices';
import { encodeBase64 } from '@fatturazione-elettronica-aruba/utils';

const invoices = new InvoicesClient(client.http);

const result = await invoices.upload({
  dataFile: encodeBase64(xmlContent),
});

console.log('Filename:', result.uploadFileName);

3. Check Status

const sent = await invoices.findSent({
  creationStartDate: '2024-01-01T00:00:00.000Z',
  creationEndDate: '2024-01-02T00:00:00.000Z',
});

for (const invoice of sent.content) {
  console.log(`${invoice.filename}: ${invoice.invoices[0]?.status}`);
}

4. Notifications

import { NotificationsClient } from '@fatturazione-elettronica-aruba/notifications';

const notifications = new NotificationsClient(client.http);

const notifs = await notifications.getSentNotifications({
  invoiceFilename: 'IT01234567890_00001.xml',
});

for (const n of notifs.notifications) {
  console.log(`${n.docType}: ${n.filename}`);
}

Next Steps