Skip to content

Fatture in Cloud Integration (ElectronicBilling)

Overview

The ElectronicBilling integration connects Power Rent with Fatture in Cloud (fattureincloud.it), Italy’s leading online invoicing and business management platform. This integration enables automated electronic billing compliance for Italian rental companies.

About Fatture in Cloud

Fatture in Cloud is a comprehensive cloud-based invoicing platform used by over 580,000 Italian businesses.

Integration Architecture

Components

  • Frontend Component: components/pages/Settings/Integrations/ElectronicBilling/index.js
  • Webhook Handler: pages/api/fattura-elettronica-webhook.js
  • Services: @power-rent/services/fatturaCompanyService
  • Database Models: fattura_companies collection/table

Key Features

  • Country Restriction: Only available for Italian companies (uses CountryVisibilityGuard)
  • Invoice Synchronization: Bi-directional sync of invoice data
  • Status Updates: Real-time invoice status updates via webhooks
  • SDI Integration: Automatic compliance with Italian electronic billing requirements

Setup and Configuration

Prerequisites

  1. Italian company account in TopPent.app
  2. Active Fatture in Cloud account
  3. API credentials from Fatture in Cloud

Enabling the Integration

Frontend Setup

// Located in Settings > Integrations
<ElectronicBilling viewer={viewer} />

The component validates that:

  • Company country is Italy (using ITALY_TRANSLATIONS)
  • Company has electronic billing ID if previously configured
  • User has proper permissions

Company Registration Flow

  1. User enables electronic billing in settings
  2. If no electronicBillingId exists, AddCompanyModal opens
  3. Company information is sent to Fatture in Cloud API
  4. Integration stores the returned company ID
  5. Electronic billing is marked as enabled

Webhook Integration

Webhook Endpoint

URL: /api/fattura-elettronica-webhook Method: POST Purpose: Receives invoice status updates from Fatture in Cloud

Status Mapping

The webhook updates invoices with SDI status codes:

  • SDI Status: Italian tax authority processing status
  • Electronic Billing ID: Fatture in Cloud invoice identifier
  • Status Sync: Keeps TopRent.app invoices synchronized with tax authority status

API Integration

Service Layer

The integration uses fatturaCompanyService for:

  • Company registration with Fatture in Cloud
  • Retrieving company mappings
  • Managing integration credentials

Authentication

  • Uses scoped Fauna client keys per tenant
  • Webhook authentication via company ID matching
  • Secure credential storage in environment variables

User Interface

Settings Integration Card

<IntegrationCard
integrationTitle="Electronic Billing"
actionDescription="Connect with Fatture in Cloud"
cardMedia="/integrations/fattura_elettronica.png"
checked={!!electronicBilling}
onCheck={handleCheck}
>
  • ConfirmationModal: Enable/disable confirmation
  • AddCompanyModal: Company registration form
  • CompanyList: Display connected companies

Feature Flags

The integration uses feature flags for:

  • Migration between Fauna and Prisma databases
const isMigration = Statsig.checkGateWithExposureLoggingDisabledSync(
user,
faunaMigrationFatturaCompanies.key
);