Invovate ← Torna al Generatore Fatture

API Generatore Fatture

Genera fatture PDF professionali con semplici chiamate API

v1.0.0

Panoramica

L'API Generatore Fatture ti permette di creare fatture PDF professionali con supporto per multiple lingue, layout RTL e vari template di design. Ogni chiamata API consuma 1 credito.

Prezzi Semplici

1 credito per generazione fattura

Multilingua

Inglese, Arabo, Francese, Spagnolo e altro

Supporto RTL

Layout completo da destra a sinistra per l'Arabo

Template Professionali

Multiple opzioni di design

URL Base:
https://invovate.com/api

Guida Rapida

Genera la tua prima fattura in 3 semplici passaggi:

Passo 1: Ottieni la tua Chiave API
Registrati su invovate.com e genera la tua chiave API nel dashboard
Passo 2: Crea file JSON fattura
Salva i tuoi dati fattura come file JSON (vedi esempi sotto)
Passo 3: Effettua chiamata API
curl -X POST https://invovate.com/api/render -H "Content-Type: application/json" -H "Authorization: inv_sk_your_api_key_here" -d "@invoice.json"

Autenticazione

Tutte le richieste API richiedono una chiave API per l'autenticazione. Includi la tua chiave API nell'header Authorization.

Authorization: inv_sk_your_api_key_here
Formato Chiave API: La tua chiave API inizia con inv_sk_ seguito da un identificatore univoco.
Importante: Mantieni la tua chiave API sicura e non esporla mai nel codice client-side. La tua chiave API fornisce accesso completo ai crediti del tuo account.

Sistema Crediti

Ogni generazione PDF di successo consuma 1 credito dal saldo del tuo account.

Prezzi Semplici: 1 credito = 1 fattura generata

Controlla il tuo Saldo Crediti

Ogni risposta API include il tuo attuale saldo crediti:

{ "credits": { "remaining": 95, "used": 1, "userType": "api", "verified": true } }

Acquisto Crediti

Per acquistare crediti aggiuntivi, visita invovate.com e naviga alla sezione di fatturazione.

Nota: Le chiamate API falliranno se non hai crediti sufficienti. Controlla sempre il tuo saldo nella risposta API.

Genera Fattura PDF

POST
/api/render

Genera una fattura PDF da dati JSON. Consuma 1 credito in caso di successo.

Header Richiesta

Content-Type: application/json Authorization: inv_sk_your_api_key_here

Body Richiesta

Invia i tuoi dati fattura come file JSON o oggetto JSON inline.

Formato Richiesta

Campi Obbligatori

Campo Tipo Obbligatorio Descrizione
title string Nome della tua azienda
invno string Numero fattura
date string Data fattura (YYYY-MM-DD)
to string Indirizzo cliente (multiriga)
currency string Codice valuta (USD, EUR, AED, etc.)
lang string Codice lingua (it, en, ar, fr, es, etc.)
template string Nome template (neat-pro, etc.)
rows array Array di voci

Campi Voce

Campo Tipo Obbligatorio Descrizione
desc string Descrizione articolo
qty number/string Quantità
rate number/string Prezzo unitario
disc number/string No Percentuale sconto
tax number/string No Percentuale tasse

Campi Opzionali

Campo Tipo Descrizione
due string Data scadenza (YYYY-MM-DD)
po string Numero ordine d'acquisto
terms string Termini di pagamento
ship string Indirizzo di spedizione
notes string Note aggiuntive
refund string Politica di rimborso
logo string Immagine logo codificata Base64
sig string Immagine firma codificata Base64
customLabels object Etichette testo personalizzate per diverse lingue

Formato Risposta

Risposta Successo

{ "success": true, "pdf": "base64_encoded_pdf_string_here", "credits": { "remaining": 95, "used": 1, "userType": "api", "verified": true }, "mode": "api", "metadata": { "template": "neat-pro", "language": "it", "direction": "ltr", "fileSize": 15432, "creditsRemaining": 95, "itemsCount": 3, "hasLogo": true, "hasSignature": false } }

Campi Risposta

Campo Tipo Descrizione
success boolean Stato successo richiesta
pdf string File PDF codificato Base64
credits.remaining number Il tuo saldo crediti rimanente
credits.used number Crediti usati in questa chiamata (sempre 1)
credits.userType string Sempre "api" per chiamate API
mode string Sempre "api" per chiamate API
metadata object Informazioni aggiuntive sul PDF generato

Gestione Errori

Formato Risposta Errore

{ "success": false, "error": "Descrizione messaggio errore", "code": "ERROR_CODE" }

Codici Errore Comuni

Codice Errore Stato HTTP Descrizione
API_KEY_REQUIRED 401 Chiave API mancante nell'header Authorization
INVALID_API_KEY 401 Chiave API non valida o scaduta
EMAIL_VERIFICATION_REQUIRED 403 Email account non verificata
INVALID_JSON 400 JSON non valido nel body della richiesta
INSUFFICIENT_CREDITS 402 Crediti insufficienti per generare PDF
API_SECURITY_LIMIT_EXCEEDED 429 Limite di frequenza superato
RENDER_ERROR 400 Generazione PDF fallita
INTERNAL_ERROR 500 Errore interno del server

Esempi di Codice

Esempio Fattura Italiana (invoice_it.json)

{ "title": "Azienda Campione SRL", "invno": "FATT-2025-001", "date": "2025-11-13", "due": "2025-12-13", "currency": "EUR", "lang": "it", "template": "neat-pro", "to": "Cliente Azienda\n123 Via Affari\[email protected]", "ship": "Global Tech Solutions - Magazzino\n456 Via Spedizione\nMilano, 20100", "notes": "Grazie per il tuo business!", "rows": [ { "desc": "Sviluppo Sito Web", "qty": "10", "rate": "75", "disc": "0", "tax": "22" }, { "desc": "Ore di Consulenza", "qty": "5", "rate": "120", "disc": "0", "tax": "22" } ] }

Esempio Fattura Inglese (invoice_en.json)

{ "title": "Sample Business Inc.", "invno": "INV-2025-001", "date": "2025-11-13", "due": "2025-12-13", "currency": "USD", "lang": "en", "template": "neat-pro", "to": "Client Company\n123 Business Ave\[email protected]", "ship": "Global Tech Solutions - Warehouse\n456 Shipping Lane\nNew York, NY 10001", "notes": "Thank you for your business!", "rows": [ { "desc": "Website Development", "qty": "10", "rate": "75", "disc": "0", "tax": "20" }, { "desc": "Consulting Hours", "qty": "5", "rate": "120", "disc": "0", "tax": "20" } ] }

Comando cURL

# Utilizzo file JSON curl -X POST https://invovate.com/api/render -H "Content-Type: application/json" -H "Authorization: inv_sk_your_api_key_here" -d "@invoice_it.json" # Salva risposta in file curl -X POST https://invovate.com/api/render -H "Content-Type: application/json" -H "Authorization: inv_sk_your_api_key_here" -d "@invoice_it.json" --output response.json

Esempio JavaScript

async function generateInvoice(invoiceData) { const API_KEY = 'inv_sk_your_api_key_here'; try { const response = await fetch('https://invovate.com/api/render', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': API_KEY // Nessun prefisso "Bearer" }, body: JSON.stringify(invoiceData) }); const result = await response.json(); if (result.success) { // Decodifica PDF Base64 const pdfBytes = Uint8Array.from(atob(result.pdf), c => c.charCodeAt(0)); const blob = new Blob([pdfBytes], { type: 'application/pdf' }); // Download PDF const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = `fattura-${invoiceData.invno}.pdf`; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); console.log(`PDF generato! Crediti rimanenti: ${result.credits.remaining}`); } else { console.error('Errore:', result.error); } } catch (error) { console.error('Richiesta fallita:', error); } } // Utilizzo const invoiceData = { title: "La Mia Azienda", invno: "FATT-001", date: "2024-01-15", currency: "EUR", lang: "it", template: "neat-pro", to: "Nome Cliente\nIndirizzo Cliente", rows: [ { desc: "Web Design", qty: 1, rate: 1000 } ] }; generateInvoice(invoiceData);

Esempio Python

import requests import base64 import json API_KEY = "inv_sk_your_api_key_here" URL = "https://invovate.com/api/render" invoice_data = { "title": "La Mia Azienda", "invno": "FATT-001", "date": "2024-01-15", "currency": "EUR", "lang": "it", "template": "neat-pro", "to": "Cliente Azienda\n123 Via Cliente", "rows": [ {"desc": "Web Design", "qty": 1, "rate": 1000} ] } headers = { "Content-Type": "application/json", "Authorization": API_KEY # Nessun prefisso "Bearer" } response = requests.post(URL, headers=headers, json=invoice_data) result = response.json() if result["success"]: # Salva PDF in file pdf_data = base64.b64decode(result["pdf"]) with open("fattura.pdf", "wb") as f: f.write(pdf_data) print(f"PDF generato! Crediti rimanenti: {result['credits']['remaining']}") else: print(f"Errore: {result['error']}")

Lingue Supportate

Codice Lingua Lingua Direzione
it Italiano LTR
en Inglese LTR
ar Arabo RTL
ar-e Arabo Orientale RTL
fr Francese LTR
es Spagnolo LTR
hi Hindi LTR
pt Portoghese LTR

Template Disponibili

Nome Template Descrizione
neat-pro Design pulito e professionale
modern-right Layout moderno allineato a destra
classic-left Design classico allineato a sinistra
elegant-gray-pro Schema colori grigio elegante
band-blue-pro Design banda intestazione blu
cool-waves-pro Design motivo onde moderno