Serwis Fakturowo.pl umożliwia dostęp do wybranych funkcji poprzez interfejs API. Dzięki temu możliwa jest integracja zewnętrznych aplikacji z kontem użytkownika zarejestrowanym w serwisie. Korzystanie z API serwisu możliwe jest na dwa sposoby, które zostały opisane poniżej.
Automatyczne zapisywanie dokumentów
Metoda ta umożliwia automatyczne zapisywanie dokumentów do wystawienia w serwisie. Po zapisaniu, dokument widoczny jest na stronie - Konto Do wystawienia - następnie możliwe jest wystawienie dokumentu i przesłanie go do użytkownika w formacie PDF. System API raz dziennie (około godziny 5.00) sprawdza czy użytkownik posiada dokumenty do wystawienia - są to dokumenty, których wartość parametru api_status = 1 (do wystawienia). Jeśli są takie dokumenty to przesyłane jest powiadomienie na adres email użytkownika (email przypisany do konta w serwisie). Dokumenty, których wartość parametru api_status = 0 (oczekuje) są automatycznie usuwane po 31 dniach. Wartość parametru - api_status - można zmieniać, np. gdy wystawiona faktura zostanie opłacona. Punkt dostępowy API dla tej metody znajduje się pod adresem URL https://www.fakturowo.pl/api (należy zwrócić uwagę, że komunikacja API odbywa się za pomocą szyfrowanego połączenia HTTPS). Aby skorzystać z tej metody należy wywołać adresu URL API metodą POST lub GET z odpowiednimi parametrami opisanymi poniżej. W przypadku metody GET przed wywołaniem adresu, wartość każdego parametru powinna zostać zakodowana metodą kodowania URLi (w przypadku języka PHP jest to funkcja urlencode). W odpowiedzi na wywołanie adresu URL zostaną zwrócone trzy wiersze oddzielone znakiem nowej lini. W pierwszym wierszu zostanie zwrócony wynik operacji 0 (negatywny) lub 1 (pozytywny). W drugim wierszu w przypadku wyniku negatywnego zostanie zwrócony opis błędu lub w przypadku wyniku pozytywnego parametr - api_numer (jest to unikalny numer zapisanego dokumentu). W trzecim wierszu w przypadku wyniku pozytywnego zostanie zwrócony parametr - api_parametr (jest dowolny parametr przysyłany przez użytkownika).
Automatyczne wypełnianie dokumentów
Metoda ta umożliwia automatyczne wypełnianie dokumentów i zapisywanie ich na koncie użytkownika w serwisie. Punkt dostępowy API dla tej metody znajduje się pod adresem URL https://www.fakturowo.pl/wystaw (jest to standardowy adres strony na której wystawia się dokumenty w serwisie). Aby skorzystać z tej metody należy być zalogowanym w serwisie i wywołać adresu URL API metodą GET z odpowiednimi parametrami opisanymi poniżej. Przed wywołaniem adresu, wartość każdego parametru powinna zostać zakodowana metodą kodowania URLi (w przypadku języka PHP jest to funkcja urlencode). W rezultacie wywołania adresu URL formularza wystawiania dokumentu zostanie wypełniony przesłanymi wartościami i możliwe będzie wygenerowanie dokumentu.
Opis parametrów API
Poniżej prezentujemy opis parametrów wykorzystywanych w systemie API (wartości podkreślone są wartościami domyślnymi i są przypisywane automatycznie). Przesyłanie parametrów sprzedawcy nie jest wymagane jeśli jest ustawiony domyślny sprzedawca (ustawienia można dokonać na stronie - Klienci). Parametry oznaczone kolorem czerwonym są obowiązkowe, parametry oznaczone kolorem zielonym wykorzystywane są tylko w przypadku korzystania z automatycznego zapisywania dokumentów.
  • api_id - unikalny numer umożliwiający korzystanie z API, można go wygenerować na stronie - Konto;
  • api_numer - unikalny numer otrzymywany w odpowiedzi po zapisaniu dokumentu, przesyłając ten parametr wykonujemy edycję dokumentu (zmieniane są tylko te parametry, które prześlemy wraz z parametrem api_numer, reszta pozostaje bez zmian);
  • api_status - status dokumentu jaki będzie widoczny na stronie - Konto Do wystawienia:
    • 0 = oczekuje
    • 1 = do wystawienia
  • api_parametr - dowolny parametr przysyłany przez użytkownika, jest on zwracany w przypadku wyniku pozytywnego jako trzeci wiersz odpowiedzi;
  • numer - numer dokumentu, domyślnie kolejny numer w systemie;
  • data_wystawienia - data wystawienia w formacie DD-MM-RRRR, domyślnie aktualna data;
  • data - oznaczenie drugiej daty:
    • 0 = data sprzedaży
    • 1 = data wykonania usługi
    • 2 = data dokonania dostawy towarów
    • 3 = data zakończenia dostawy towarów
    • 4 = data zakończenia świadczenia usług
    • 5 = data otrzymania zaliczki
    • 6 = data otrzymania zapłaty
    • 7 = termin realizacji zamówienia
  • data_wartosc - wartość drugiej daty w formacie DD-MM-RRRR, domyślnie data zgłoszenia API;
  • miejsce - miejsce wystawienia, domyślnie wartość zapisana w systemie;
  • rodzaj - rodzaj wystawianego dokumentu:
    • 0 = faktura
    • 21 = faktura (dawny rachunek)
    • 35 = faktura (odwrotne obciążenie)
    • 1 = faktura korygująca
    • 2 = faktura proforma
    • 3 = faktura zaliczkowa
    • 31 = faktura końcowa
    • 4 = faktura wewnętrzna
    • 5 = faktura marża
    • 12 = faktura uproszczona
    • 13 = faktura metoda kasowa
    • 14 = faktura zbiorcza
    • 26 = faktura RR
    • 6 = rachunek
    • 7 = dowód wewnętrzny
    • 8 = magazyn wyda (MW)
    • 16 = magazyn przyjmie (MP)
    • 29 = wydanie zewnętrzne (WZ)
    • 33 = wydanie zewnętrzne (WZ - tylko ilość)
    • 38 = wydanie zewnętrzne (WZ - VAT)
    • 30 = rozchód wewnętrzny (RW)
    • 36 = przyjęcie wewnętrzne (PW)
    • 37 = przyjęcie zewnętrzne (PZ)
    • 9 = nota obciążeniowa
    • 10 = nota uznaniowa
    • 11 = nota korygująca
    • 34 = zbiorcza nota korygująca
    • 15 = nota wewnętrzna
    • 17 = nota odsetkowa
    • 18 = wezwanie do zapłaty
    • 19 = wezwanie do zapłaty z odsetkami
    • 20 = paragon
    • 22 = kasa wyda (KW)
    • 23 = kasa przyjmie (KP)
    • 24 = dowód dostawy
    • 27 = dowód dostawy (tylko ilość)
    • 25 = formularz zamówienia
    • 28 = oferta handlowa
    • 32 = kosztorys
  • oznaczenie - oznaczenie dokumentu:
    • 0 = bez oznaczeń
    • 1 = oryginał
    • 2 = kopia
    • 4 = oryginał / kopia
    • 3 = duplikat
    • 5 = duplikat oryginału
    • 6 = duplikat kopii
  • jezyk - język dokumentu:
    • 0 = polski
    • 1 = angielski
    • 2 = czeski
    • 3 = duński
    • 4 = francuski
    • 5 = holenderski
    • 6 = niemiecki
    • 7 = norweski
    • 8 = rosyjski
    • 9 = szwedzki
    • 10 = ukraiński
    • 11 = węgierski
    • 12 = włoski
  • waluta - rodzaj waluty:
    • 0 = PLN
    • 1 = EUR
    • 2 = USD
    • 3 = GBP
    • 4 = CHF
    • 5 = CAD
    • 6 = AUD
    • 7 = JPY
    • 8 = THB
    • 9 = HKD
    • 10 = NZD
    • 11 = SGD
    • 12 = HUF
    • 13 = UAH
    • 14 = CZK
    • 15 = DKK
    • 16 = ISK
    • 17 = NOK
    • 18 = SEK
    • 19 = HRK
    • 20 = RON
    • 21 = BGN
    • 22 = TRY
    • 23 = ILS
    • 24 = CLP
    • 25 = PHP
    • 26 = MXN
    • 27 = ZAR
    • 28 = BRL
    • 29 = MYR
    • 30 = RUB
    • 31 = IDR
    • 32 = INR
    • 33 = KRW
    • 34 = CNY
    • 35 = XDR
  • zaplata - rodzaj płatności:
    • 0 = przelew
    • 1 = przelew w terminie 1 dzień
    • 2 = przelew w terminie 2 dni
    • 3 = przelew w terminie 3 dni
    • 4 = przelew w terminie 4 dni
    • 5 = przelew w terminie 5 dni
    • 6 = przelew w terminie 6 dni
    • 7 = przelew w terminie 7 dni
    • 8 = przelew w terminie 14 dni
    • 9 = przelew w terminie 21 dni
    • 10 = przelew w terminie 30 dni
    • 11 = przelew w terminie 60 dni
    • 12 = za pobraniem
    • 13 = gotówka
    • 14 = zapłacono przelewem
    • 15 = zapłacono gotówką
    • 16 = zapłacono poprzez Paypal.com
    • 17 = zapłacono poprzez Dotpay.pl
    • 18 = zapłacono poprzez Payu.pl
    • 19 = zapłacono poprzez Cashbill.pl
    • 20 = zapłacono poprzez Przelewy24.pl
    • 21 = karta płatnicza
    • 22 = barter
    • 23 = czek
    • 24 = weksel
    • 25 = kompensata
    • 26 = akredytywa
    • 27 = rozliczono z przedpłatą
    • 28 = terminal płatniczy
    • 29 = kredyt
  • zaplacono - wartość kwoty zapłaconej, wartość ta zostanie odjęta od całkowitej wartości, domyślnie 0;
  • zaplacono_opis - dodatkowy opis płatności (kwoty zapłaconej);
  • zaplacono_data - dodatkowa data płatności (kwoty zapłaconej);
  • zaplacono_oznaczenie - oznaczenie dodatkowej daty płatności (kwoty zapłaconej):
    • 0 = data płatności
    • 1 = data dokonania płatności
    • 2 = data otrzymania zapłaty
    • 3 = końcowa data płatności
  • zaplacono_oznaczenie1 - oznaczenie kwoty zapłaconej:
    • 0 = zapłacono
    • 1 = zaliczka
  • termin - termin płatności, domyślnie: 14 dni;
  • konto - numer konta bankowego (symbol [n] tworzy nową linię), domyślnie wartość zapisana w systemie;
  • pokazuj_konto - kiedy numer konta bankowego ma być widoczny:
    • 0 = gdy niezapłacono
    • 1 = zawsze
    • 2 = nigdy
  • uwagi - uwagi (symbol [n] tworzy nową linię);
  • uwagi_oznaczenie - oznaczenie pola z uwagami:
    • 0 = Bez oznaczenia
    • 1 = Uwagi
    • 2 = Ważne
    • 3 = Komentarz
    • 4 = Adnotacje
    • 5 = Dopisek
  • email - adres email odbiorcy wiadomości email, można wpisać dwa adresy email oddzielając je znakiem przecinka;
  • tytul - tytuł wiadomości email;
  • tresc - treść wiadomości email (symbol [n] tworzy nową linię);
Parametry sprzedawcy
  • sprzedawca_nazwa - nazwa sprzedawcy;
  • sprzedawca_nip - nip sprzedawcy;
  • sprzedawca_pesel - pesel sprzedawcy;
  • sprzedawca_ulica - ulica sprzedawcy;
  • sprzedawca_miasto - miasto sprzedawcy;
  • sprzedawca_kod - kod sprzedawcy;
  • sprzedawca_panstwo - państwo sprzedawcy;
  • sprzedawca_email - email sprzedawcy;
  • sprzedawca_telefon - telefon sprzedawcy;
  • sprzedawca_fax - fax sprzedawcy;
  • sprzedawca_www - www sprzedawcy;
  • sprzedawca_podpis - podpis sprzedawcy;
  • sprzedawca_oznaczenie - oznaczenie sprzedawcy;
    • 0 = sprzedawca
    • 1 = nabywca
    • 2 = dostawca
    • 3 = odbiorca
    • 4 = wierzyciel
    • 5 = dłużnik
    • 6 = wpłacający
    • 7 = wypłacający
    • 8 = wynajmujący
    • 9 = najemca
    • 10 = sprzedający
    • 11 = kupujący
    • 12 = wystawiający
    • 13 = otrzymujący
    • 14 = zamawiający
    • 15 = odbierający
    • 16 = płatnik
    • 17 = oddział
    • 18 = wystawca
    • 19 = wystawca noty
    • 20 = adres dostawy
  • sprzedawca_nazwa1 - dodatkowe dane sprzedawcy;
  • sprzedawca_oznaczenie1 - oznaczenie dodatkowych danych sprzedawcy (wartość taka sama jak w przypadku parametru - sprzedawca_oznaczenie);
Parametry nabywcy
  • nabywca_nazwa - nazwa nabywcy;
  • nabywca_nip - nip nabywcy;
  • nabywca_pesel - pesel nabywcy;
  • nabywca_ulica - ulica nabywcy;
  • nabywca_miasto - miasto nabywcy;
  • nabywca_kod - kod nabywcy;
  • nabywca_panstwo - państwo nabywcy;
  • nabywca_email - email nabywcy;
  • nabywca_telefon - telefon nabywcy;
  • nabywca_fax - fax nabywcy;
  • nabywca_www - www nabywcy;
  • nabywca_podpis - podpis nabywcy;
  • nabywca_oznaczenie - oznaczenie nabywcy;
    • 0 = sprzedawca
    • 1 = nabywca
    • 2 = dostawca
    • 3 = odbiorca
    • 4 = wierzyciel
    • 5 = dłużnik
    • 6 = wpłacający
    • 7 = wypłacający
    • 8 = wynajmujący
    • 9 = najemca
    • 10 = sprzedający
    • 11 = kupujący
    • 12 = wystawiający
    • 13 = otrzymujący
    • 14 = zamawiający
    • 15 = odbierający
    • 16 = płatnik
    • 17 = oddział
    • 18 = wystawca
    • 19 = wystawca noty
    • 20 = adres dostawy
  • nabywca_nazwa1 - dodatkowe dane nabywcy;
  • nabywca_oznaczenie1 - oznaczenie dodatkowych danych nabywcy (wartość taka sama jak w przypadku parametru - nabywca_oznaczenie);
Parametry produktu
  • nazwa_produktu - nazwa produktu/usługi;
  • jm - jednostka miary:
    • 0 = usł.
    • 1 = szt.
    • 2 = AT
    • 3 = GJ
    • 4 = MW
    • 5 = doba
    • 6 = dzień
    • 7 = godz.
    • 8 = gr
    • 9 = grupa
    • 10 = h
    • 11 = hl
    • 12 = kW
    • 13 = kWh
    • 14 = kg
    • 15 = km
    • 16 = kpl
    • 17 = kurs
    • 18 = l
    • 19 = m
    • 20 = m2
    • 21 = m3
    • 22 = mb
    • 23 = mies.
    • 24 = min.
    • 25 = ml
    • 26 = mp
    • 27 = obw.
    • 28 = opak.
    • 29 = par
    • 30 = pkt.
    • 31 = rolka
    • 32 = strona
    • 33 = słowa
    • 34 = tona
    • 35 = sem.
    • 36 = fracht
    • 37 = osoba
  • ilosc - oznaczenie ilości produktów/usług, domyślnie 1;
  • cena_netto lub wartosc_brutto - cena netto lub wartość brutto;
  • stawka_vat - stawka vat:
    • 27 = 27%
    • 25 = 25%
    • 23 = 23%
    • 22 = 22%
    • 21 = 21%
    • 20 = 20%
    • 19 = 19%
    • 15 = 15%
    • 8 = 8%
    • 7 = 7%
    • 5 = 5%
    • 3 = 3%
    • 0 = 0%
    • zw = ZW
    • np = NP
    • - = -
  • Kolejne pozycje (maksymalnie 100) dodajemy z parametrami nazwa_produktu_1, jm_1, ilosc_1, nazwa_produktu_2, jm_2, ilosc_2, itp...