KSeF Faktury
PL
Zapisz się na start
Wczesny dostęp

API jest we wczesnym dostępie: klucze testowe (KSeF TEST) wydajemy partiami osobom z listy startowej. Tryb produkcyjny włączymy później.

Poproś o dostęp

Przewodniki

Faktury w walucie obcej i kurs NBP

Zamówienie może być w euro, dolarach albo innej walucie z tabeli A NBP. Faktura ma kwoty w walucie, a VAT również w złotych po kursie NBP.

Jak to działa

Ustaw order.currency na kod waluty, np. EUR. Ceny pozycji i dostawy podajesz w tej walucie. Faktura ma kwoty w walucie zamówienia, a kwotę VAT również w złotych, przeliczoną po średnim kursie NBP z tabeli A z ostatniego dnia roboczego przed dniem zapłaty (paid_at). Numer tabeli i datę kursu drukujemy na fakturze.

POST /v1/invoices
curl -X POST https://app.ksefshop.pl/v1/invoices \
  -H "Authorization: Bearer $KSEF_API_KEY" \
  -H "Idempotency-Key: order-SO-1002" \
  -H "Content-Type: application/json" \
  -d '{
  "order": {
    "external_id": "SO-1002",
    "paid_at": "2026-10-20T07:15:00Z",
    "currency": "EUR",
    "payment_method": "transfer",
    "buyer": {
      "nip": "7740001454",
      "name": "Przykład S.A.",
      "address_line1": "ul. Długa 5",
      "address_line2": "80-831 Gdańsk"
    },
    "lines": [
      {
        "name": "Lampka biurkowa LED",
        "quantity": 1,
        "unit_price": "123.00",
        "vat_rate": "23"
      }
    ]
  }
}'

Które waluty

PLN oraz każda waluta, którą NBP publikuje w tabeli A kursów średnich (EUR, USD, GBP, CHF, CZK i inne). Waluta spoza tabeli A zwraca 400 currency_not_supported.

Sprawdź kurs przed wysłaniem

Kurs i przeliczenie VAT możesz sprawdzić ręcznie w naszym darmowym narzędziu: kurs NBP do faktury. Liczy tak samo: tabela A z dnia roboczego przed podaną datą.

Na co uważać

  • paid_at decyduje o dacie kursu. Wysyłaj prawdziwy moment płatności, nie moment wysyłki do API.
  • total_gross w obiekcie faktury jest w walucie faktury, nie w złotych.
  • Korekta faktury walutowej jest w tej samej walucie co faktura pierwotna.
KSeF Faktury

Wczesny dostęp do API

Klucze testowe wydajemy partiami. Zostaw e-mail: napiszemy, gdy dostęp będzie gotowy.