Trasforma un CSV
Trasformare un CSV significa cambiare la struttura delle colonne senza toccare i dati riga per riga: rinominare le intestazioni, spostarle, unirle o dividerle, aggiungere una colonna calcolata come l'IVA o il totale. Il KIT lo fa nel browser, così prepari il file per il gestionale o per il commercialista in pochi secondi.
Esegui gratis nel browser
Funziona nel tuo browser: gratis, senza registrazione, i file non escono dal tuo dispositivo.
Cosa puoi cambiare
Rinomini un'intestazione poco chiara ("col3" diventa "Imponibile"), sposti le colonne nell'ordine che ti chiede il gestionale, ne elimini quelle inutili, unisci "Nome" e "Cognome" in un campo solo o, al contrario, dividi "Indirizzo" in via e città. Puoi anche creare una colonna nuova a partire da quelle esistenti — per esempio il totale con IVA — senza aprire un foglio di calcolo e senza formule complicate.
Gratis nel browser, senza registrazione
La modalità gratuita gira tutta sul tuo dispositivo: trascini il CSV, imposti le trasformazioni e scarichi il risultato. I dati non vengono inviati da nessuna parte, il che conta parecchio quando il file contiene anagrafiche di clienti. Nessun account, nessun limite. Se invece devi trasformare tanti file di fila in modo automatico, c'è la via API, che costa $0.002 a richiesta. Il tetto per file è 25 MB.
Colonne calcolate al volo
L'esempio più tipico in Italia è il totale con IVA al 22%: parti dall'imponibile e ottieni una colonna "Totale" senza scrivere formule a mano riga per riga. Puoi concatenare campi, mettere tutto in maiuscolo, tagliare gli spazi di troppo o formattare un importo con la virgola dei decimali (1.234,56). Il file esce già pronto per l'import, senza il passaggio manuale su Excel.
Casi d'uso
Export dal gestionale da sistemare
Rossi & Figli S.r.l. esporta le fatture dal gestionale, ma le colonne hanno nomi criptici e sono nell'ordine sbagliato. In due passaggi le rinomini e le riordini come le vuole il commercialista.
Anagrafica clienti da unire
Hai un elenco con "Nome" e "Cognome" separati e il tuo CRM vuole un campo unico "Cliente". Unisci le due colonne e scarichi il CSV pronto da importare.
Listino per il marketplace
Devi caricare i prodotti su un marketplace che pretende una colonna "prezzo_ivato": parti dall'imponibile, aggiungi il 22% e ottieni la colonna calcolata senza toccare Excel.
Domande frequenti
Posso creare una colonna con il totale IVA inclusa?
Sì. Parti dalla colonna dell'imponibile e imposti una colonna calcolata con l'aliquota che ti serve, per esempio il 22%. Il KIT la aggiunge a tutte le righe in un colpo solo.
Excel mi salva il CSV con il punto e virgola: funziona lo stesso?
Sì. Il CSV italiano di Excel usa spesso il punto e virgola come separatore e la virgola per i decimali: il KIT riconosce il separatore da solo e mantiene i numeri corretti.
È davvero gratis o dopo qualche uso chiede un abbonamento?
La modalità nel browser è gratis e senza limiti, senza abbonamenti nascosti. Paghi solo se scegli la via API per automatizzare, a $0.002 a richiesta.
I dati dei miei clienti finiscono su un server?
No, se usi lo strumento nel browser i dati restano sul tuo dispositivo e non vengono inviati da nessuna parte. È l'opzione più in linea con il GDPR per le anagrafiche.
Quanto può essere grande il file?
Fino a 25 MB per file. Per elenchi molto lunghi conviene dividerli, oppure usare le API se devi elaborarne parecchi in sequenza.
Funziona dal telefono?
Sì, gira nel browser del telefono senza installare niente. Utile per una sistemata veloce mentre sei fuori ufficio.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/data/transform-csv \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/data/transform-csv", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/transform-csv",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/transform-csv", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/transform-csv", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"text": "…"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.transform_csv",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_mb | 25 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |