Import z Excela i eksport danych
Jak wczytać klientów z Excela i jak wyjąć z programu swoje dane. Ten adres możesz wysłać informatykowi albo asystentowi AI.
Klienci z Excela — 4 kroki
- 1W Excelu: Plik → Zapisz jako → CSV UTF-8. Inne kodowanie da „krzaki” zamiast polskich liter.
- 2Pierwszy wiersz to nagłówki: Nazwa;NIP;Email;Telefon;Miasto;Adres;Kod. Obowiązkowa jest tylko Nazwa (min. 2 znaki). Do 1000 wierszy w jednym pliku.
- 3W aplikacji: Klienci → Importuj. Wgraj plik albo wklej jego treść — zobaczysz podgląd, zanim cokolwiek się doda.
- 4Zatwierdź. Klient z tym samym NIP-em się nie zdubluje, więc ten sam plik możesz bezpiecznie wczytać drugi raz.
Przykładowy plik
Zapisz jako klienci.csv (UTF-8) albo wklej wprost do okna importu.
Nazwa;NIP;Email;Telefon;Miasto;Adres;Kod ELEKTRO-MAX Kowalski;1234567890;biuro@elektro-max.pl;600 100 200;Kraków;Kwiatowa 5/2;31-000 Wspólnota Mieszkaniowa Lipowa 8;9876543210;zarzad@lipowa8.pl;12 345 67 89;Kraków;Lipowa 8;30-100 Anna Nowak;;anna.nowak@example.com;501 234 567;Wieliczka;Solna 1;32-020
Gotowe polecenie dla asystenta AI (przerobi Twój plik)
Skopiuj, wklej asystentowi AI razem ze swoim plikiem i odbierz gotowy CSV do Klienci → Importuj. Wszystkie reguły są w środku — asystent nie musi otwierać tej strony.
Przerób mój plik z bazą klientów na format importu programu Firmbit. Wynik ma być plikiem CSV o takich zasadach: 1. Kodowanie UTF-8 (bez BOM), separator: średnik, koniec wiersza: zwykły enter. 2. Pierwszy wiersz to nagłówek DOKŁADNIE taki: Nazwa;NIP;Email;Telefon;Miasto;Adres;Kod 3. Jeden klient = jeden wiersz. Kolumna Nazwa jest obowiązkowa i musi mieć co najmniej 2 znaki. Jeśli w moim pliku imię i nazwisko są w osobnych kolumnach, połącz je w jedną Nazwę. 4. NIP: same cyfry albo z myślnikami (10 cyfr). Jeśli numer ma inną długość albo go nie ma, zostaw puste miejsce zamiast wpisywać zero, myślnik czy słowo brak. 5. Email: pojedynczy adres. Jeśli w źródle jest kilka adresów, zostaw pierwszy. Jeśli nie ma adresu, zostaw puste. 6. Telefon: przepisz jak jest. Jeśli jest kilka numerów, zostaw pierwszy. 7. Adres: ulica i numer w jednej kolumnie, kod pocztowy osobno w kolumnie Kod. 8. WAŻNE: w żadnej wartości nie może być średnika ani przejścia do nowej linii — zamień je na przecinek albo spację. Cudzysłowy nie chronią wartości w tym imporcie. 9. Usuń duplikaty po numerze NIP (Firmbit i tak pominie drugi taki sam NIP). 10. Nie dopisuj żadnych dodatkowych kolumn, komentarzy ani wierszy podsumowania. Maksymalnie 1000 wierszy w jednym pliku. Oddaj mi gotowy plik CSV do pobrania. Specyfikacja formatu: https://firmbit.pl/import
Kolumny — nazwy, formaty, co gdy wartość nie pasuje
| Nagłówek kolumny | Wymagana | Format | Przykład | Gdy wartość nie pasuje |
|---|---|---|---|---|
| Nazwalub: Name, Imię, Imie, Klient | tak | Tekst, co najmniej 2 znaki | ELEKTRO-MAX Kowalski | Wiersz jest pomijany — bez nazwy nie ma czego dodać do bazy. |
| NIP | nie | 10 cyfr; myślniki i spacje usuwamy sami | 123-456-78-90 | Klient trafia do bazy BEZ numeru NIP (reszta danych zostaje). Nie sprawdzamy sumy kontrolnej. |
| Emaillub: E-mail, Mail | nie | Adres z małpą i kropką w domenie | biuro@elektro-max.pl | Pole zostaje puste, klient i tak jest dodawany. |
| Telefonlub: Phone, Tel, Komórka, Komorka | nie | Dowolny tekst — zapisujemy dokładnie tak, jak w pliku | 600 100 200 | Nie ma czego zepsuć — nie sprawdzamy numeru. |
| Miastolub: City | nie | Tekst | Kraków | Puste pole. |
| Adreslub: Address, Ulica | nie | Tekst — ulica z numerem, w JEDNEJ kolumnie | Kwiatowa 5/2 | Puste pole. Działa tylko w pliku z nagłówkiem. |
| Kodlub: Kod pocztowy, PostalCode, Zip | nie | Tekst | 31-000 | Puste pole. Działa tylko w pliku z nagłówkiem. |
Jak program czyta plik (separator, nagłówek, cudzysłowy)
- Separator ustalamy z PIERWSZEGO wiersza: jest średnik — separatorem jest średnik, w przeciwnym razie tabulator, a na końcu przecinek. Nie wstawiaj średników w nazwach kolumn ani w danych.
- Nagłówek rozpoznajemy, gdy w pierwszym wierszu stoi choć jedna znana nazwa kolumny. Porównanie jest dokładne (wielkość liter bez znaczenia): „Nazwa” zadziała, „Nazwa klienta” — nie (kolumna zostanie pominięta).
- Bez nagłówka czytamy kolumny po kolei: Nazwa, NIP, Email, Telefon, Miasto. Adres i kod pocztowy w takim pliku nie wejdą.
- Puste wiersze pomijamy, spacje na brzegach obcinamy, cudzysłów na początku i końcu wartości zdejmujemy. To NIE jest pełna obsługa cytowania: wartość ze średnikiem albo przejściem do nowej linii rozjedzie wiersz mimo cudzysłowów.
- Nieznane kolumny ignorujemy — nadmiarowe kolumny w pliku nie przeszkadzają.
Co się dzieje z błędnym wierszem
- Brak nazwy (albo krótsza niż 2 znaki) — wiersz jest pomijany. Import się nie przerywa; na końcu dostajesz podsumowanie „dodano / pominięto / błędne”.
- Powtórzony NIP — wiersz jest pomijany. Sprawdzamy klientów, których już masz, i duplikaty w samym pliku.
- Klient bez NIP-u (osoba prywatna) jest dodawany zawsze — po samej nazwie nie łączymy wpisów, bo dwie osoby mogą nazywać się tak samo.
- Zły NIP lub e-mail nie wywala wiersza — klient wchodzi, a złe pole zostaje puste do uzupełnienia.
- Liczba klientów nie ma limitu w żadnym pakiecie — import dodaje wszystkie poprawne wiersze z pliku.
Krzaki zamiast polskich liter?
To zawsze kodowanie. Excel domyślnie zapisuje CSV w kodowaniu windowsowym, a my czytamy UTF-8. W Excelu wybierz „Zapisz jako → CSV UTF-8 (rozdzielany przecinkami)”, w Arkuszach Google „Pobierz → Wartości rozdzielane przecinkami”, w Notatniku przy zapisie ustaw kodowanie UTF-8.
Co jeszcze wczytamy
Z pliku CSV — tylko klientów. Resztę przenosi wyłącznie własna kopia zapasowa Firmbita. Nie mamy publicznego API ani webhooków — dane wymieniasz plikami.
Pełna lista: co da się wczytać, a co nie
- KlienciPlik CSV wgrywasz w Klienci → Importuj. To jedyny import z pliku w całym programie.Z pliku CSV
- Zlecenia, koszty, faktury, magazyn, wyceny, notatkiZ CSV ani z Excela nie wczytamy. Wchodzą wyłącznie z własnej kopii zapasowej Firmbita.Tylko z kopii zapasowej
- Zadania ekipy, koszty stałeNie wczytamy ich z żadnego pliku — nie przenosi ich nawet kopia zapasowa.Nie z pliku
- Protokoły pomiaroweKopia je zapisuje, ale przy przywracaniu nie odtwarza. Gotowy PDF z innego programu dołączysz do protokołu jako załącznik.Nie z pliku
- Faktury zakupoweNie z plików XML ani PDF — zaciągamy je prosto z KSeF, z podglądem pozycji (od pakietu Premium).Nie z pliku
Zdjęć nie wczytamy z pliku. Firmbit trzyma je w zmniejszonej wersji (podgląd i dowód); oryginały w pełnej rozdzielczości trzymaj na swoim dysku i podepnij link w zleceniu. Potrzebujesz integracji, której nie ma? Napisz — takie zgłoszenia ustawiają kolejność prac.
Kopia zapasowa (backup.json) — co przywraca
- Wczytasz ją w Ustawieniach → Kopia zapasowa (cały ZIP z eksportu, sam backup.json albo plik z cotygodniowej paczki mailem). Program najpierw pokazuje, co doda i co nadpisze.
- Tego pliku nie buduje się ręcznie — ma własną wersję formatu i wewnętrzne powiązania. Z innego programu przenosisz klientów przez CSV.
- Przywraca: klientów, zlecenia razem z kosztami, faktury, magazyn, wyceny, notatki (ze zdjęciami, gdy wgrasz cały ZIP) oraz listy firmowe (statusy zleceń, kategorie, profile cen). Przy wczytaniu wybierasz, które z tych rzeczy odtworzyć; zaznaczenie zleceń wymusza listę statusów.
- Nie przywraca: zadań ekipy, kosztów stałych, wydarzeń kalendarza, list zakupowych, danych pracowników, godzin pracy ani zdjęć zleceń (leżą w ZIP-ie w folderze zdjecia-zlecen). Protokoły pomiarowe są w pliku, ale przywracanie ich nie odtwarza.
Eksport — jak wyjąć dane
Wszystko da się wyjąć: Ustawienia → Kopia zapasowa i eksport. Przed pobraniem program prosi o kod 2FA (jedno potwierdzenie działa 10 minut), a każde pobranie trafia do dziennika konta.
Pełna kopia ZIP — co jest w środku
Archiwum robocznik-backup-RRRR-MM-DD.zip:
- backup.json — plik główny; JEDYNY, który da się wczytać z powrotem.
- dane.xlsx — Excel z arkuszami: Info, Klienci, Zlecenia, Faktury, Koszty, Protokoły, Obwody, Statusy, Kategorie (do czytania).
- csv/ — klienci, zlecenia, faktury, koszty, magazyn, magazyn-ruchy, protokoly, protokoly-obwody. Średnik, UTF-8 z BOM (żeby Excel pokazał ogonki); wartości zaczynające się od „=”, „+” lub „@” poprzedzamy apostrofem (ochrona przed formułami).
- faktury-pdf/, protokoly-pdf/ — PDF-y faktur (nazwane numerem) i protokołów wgranych z innych programów; README.txt — opis paczki.
- Kwoty są netto, w złotych, z kropką dziesiętną; daty — pełny format ISO 8601.
Eksport jednej tabeli (CSV, XLSX, JSON)
- Adres: /api/export/<tabela>?format=<format> — tylko dla zalogowanej osoby (to nie jest publiczne API).
- Tabele: clients (klienci), jobs (zlecenia), invoices (faktury), costs (koszty), materials (magazyn), protocols (protokoły).
- Formaty: csv (domyślny), xlsx, json (wycinek kopii — nie da się go wczytać z powrotem).
- Zakres dat: from i to w formacie RRRR-MM-DD (działa też dla pełnego archiwum).
- Eksport jest bogatszy niż import: ma rozwiązane nazwy powiązań (klient, status, kategoria) i policzone sumy — ma być czytelny dla człowieka i innego programu.
Firmbit