Skip to content

Szybki start

Jak w 5 minut wystawić pierwszą fakturę przez API inFakt w środowisku testowym.

Zaktualizowano

Poniżej opisano, jak wystawić fakturę VAT przez API i pobrać jej plik PDF. Wszystkie operacje odbywają się w sandboxie, więc nie wpływają na prawdziwe dane.

Wymagania

  • Terminal z zainstalowanym curl.
  • Adres e-mail do założenia konta testowego.

Kroki

  1. Założenie konta w sandboxie

    Konto zakłada się na stronie konto.sandbox-infakt.pl/rejestracja ↗. Konto testowe jest bezpłatne, a dane firmy są na nim zanonimizowane.

  2. Wygenerowanie klucza API

    Klucz generuje się w aplikacji sandboxa, w Ustawienia → Inne opcje → API: należy dodać opis klucza, wpisać hasło, zaznaczyć uprawnienia Odczyt danych faktur, klientów i produktów oraz Zarządzanie fakturami, klientami i produktami i kliknąć Wygeneruj. Klucz zapisuje się w zmiennej środowiskowej:

    export INFAKT_API_KEY="<klucz-api>"
  3. Sprawdzenie połączenia

    Połączenie sprawdza się, pobierając listę faktur. Na nowym koncie lista jest pusta:

    curl "https://api.sandbox-infakt.pl/v3/invoices.json" \
      -H "X-inFakt-ApiKey: $INFAKT_API_KEY"
    {
      "metainfo": {
        "count": 0,
        "total_count": 0,
        "next": "<adres-następnej-strony>",
        "previous": "<adres-poprzedniej-strony>"
      },
      "entities": []
    }
  4. Wystawienie faktury

    Poniższe żądanie wystawia fakturę VAT na jedną usługę o wartości 100,00 zł netto. Dane nabywcy są przekazywane bezpośrednio w treści faktury:

    curl -X POST "https://api.sandbox-infakt.pl/v3/invoices.json" \
      -H "X-inFakt-ApiKey: $INFAKT_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "invoice": {
          "payment_method": "cash",
          "client_company_name": "Testowa Firma sp. z o.o.",
          "client_tax_code": "2222222222",
          "services": [
            { "name": "Usługa programistyczna", "tax_symbol": "23", "quantity": 1, "unit_net_price": 10000 }
          ]
        }
      }'

    W odpowiedzi 201 Created API zwraca całą fakturę. Najważniejsze pola:

    {
      "id": <id-faktury>,
      "uuid": "<uuid-faktury>",
      "number": "<numer-faktury>",
      "kind": "vat",
      "status": "draft",
      "net_price": 10000,
      "tax_price": 2300,
      "gross_price": 12300
    }

    Kwoty są podawane w groszach: 12300 oznacza 123,00 zł brutto. Identyfikator id faktury zapisuje się na potrzeby kolejnego kroku:

    export INVOICE_ID=<id-faktury>
  5. Pobranie PDF

    curl "https://api.sandbox-infakt.pl/v3/invoices/$INVOICE_ID/pdf.json?document_type=original" \
      -H "X-inFakt-ApiKey: $INFAKT_API_KEY" \
      -o faktura.pdf

Oczekiwany wynik

W bieżącym katalogu pojawi się plik faktura.pdf z fakturą VAT na kwotę 123,00 zł brutto dla „Testowa Firma sp. z o.o.”. Faktura jest też widoczna w aplikacji sandboxa, w zakładce Przychody.

API utworzyło fakturę synchronicznie, nadało jej numer i wyliczyło VAT według stawki 23%. Przykład pomija obsługę błędów, klientów zapisanych w bazie i wysyłkę do KSeF.

Następny krok

Wysyłka tej faktury do KSeF.

Type to search…

↑↓ wybór↵ otwórzEsc zamyka