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

Referencja API

Zdarzenia

Zdarzenia o stanach końcowych faktur i korekt. Te same obiekty wysyłają webhooki; lista służy do uzgadniania, gdy coś nie dotarło.

Obiekt Event

Zdarzenie o końcowym stanie dokumentu. Te same obiekty dostajesz webhookiem i z listy /v1/events.

Pola

  • idstringwymagane

    Id zdarzenia (to samo co w nagłówku KSeF-Event-Id).

    Prefiks evt_

  • objectstringwymagane

    Rodzaj obiektu.

    Zawsze event

  • typestringwymagane

    Typ zdarzenia. Typy

    Jedna z: invoice.accepted, invoice.rejected, invoice.skipped, correction.accepted, correction.rejected, correction.skipped

  • livemodebooleanwymagane

    Tryb dokumentu.

  • createdintegerwymagane

    Kiedy powstało zdarzenie (sekundy Unix).

  • dataobjectwymagane

    Dane zdarzenia.

    Pokaż pola
    • objectInvoice | Correctionwymagane

      Faktura albo korekta w stanie z chwili zdarzenia.

Obiekt Event
{
  "id": "evt_Qa1Ws2Ed3Rf4Tg5Yh6Uj7Ik8",
  "object": "event",
  "type": "invoice.accepted",
  "livemode": false,
  "created": 1760865214,
  "data": {
    "object": {
      "id": "inv_4fJ2kP9xQwErTy7uI0oPaSdF",
      "object": "invoice",
      "livemode": false,
      "status": "accepted",
      "order": {
        "external_id": "SO-1001",
        "number": "1001"
      },
      "number": "FV/2026/10/1",
      "ksef_number": "4235405606-20261019-0E7570400000-57",
      "ksef_environment": "test",
      "issue_date": "2026-10-19",
      "currency": "PLN",
      "total_gross": "163.99",
      "buyer_nip": "5260250274",
      "pdf_url": "https://app.ksefshop.pl/pdf/cmgxa1b2c0000/Qk9tZ2FsX3ZhbGlkX3Rva2VuX2V4YW1w",
      "last_error": null,
      "created": 1760865185,
      "updated": 1760865214,
      "corrections": []
    }
  }
}

Lista zdarzeń

GET /v1/events

Te same zdarzenia, które wysyłają webhooki, od najnowszych. Przydaje się do uzgadniania, gdy Twój serwer nie odbierał webhooków. Filtr type zawęża listę do jednego typu.

Parametry

  • limitquery · integer

    Ile obiektów na stronie.

    Domyślnie 10 · 1-100

  • starting_afterquery · string

    Id ostatniego obiektu poprzedniej strony.

  • typequery · string

    Tylko zdarzenia tego typu.

    Jedna z: invoice.accepted, invoice.rejected, invoice.skipped, correction.accepted, correction.rejected, correction.skipped

Odpowiedzi

GET /v1/events
curl "https://app.ksefshop.pl/v1/events?limit=10" \
  -H "Authorization: Bearer $KSEF_API_KEY"
Odpowiedź
{
  "object": "list",
  "url": "/v1/events",
  "has_more": false,
  "data": []
}

Pobierz zdarzenie

GET /v1/events/{id}

Jedno zdarzenie po id evt_... (to samo id przychodzi w nagłówku KSeF-Event-Id).

Parametry

  • idpath · stringwymagane

    Identyfikator obiektu.

    Prefiks evt_

Odpowiedzi

GET /v1/events/{id}
curl https://app.ksefshop.pl/v1/events/evt_Qa1Ws2Ed3Rf4Tg5Yh6Uj7Ik8 \
  -H "Authorization: Bearer $KSEF_API_KEY"
Odpowiedź
{
  "id": "evt_Qa1Ws2Ed3Rf4Tg5Yh6Uj7Ik8",
  "object": "event",
  "type": "invoice.accepted",
  "livemode": false,
  "created": 1760865214,
  "data": {
    "object": {
      "id": "inv_4fJ2kP9xQwErTy7uI0oPaSdF",
      "object": "invoice",
      "livemode": false,
      "status": "accepted",
      "order": {
        "external_id": "SO-1001",
        "number": "1001"
      },
      "number": "FV/2026/10/1",
      "ksef_number": "4235405606-20261019-0E7570400000-57",
      "ksef_environment": "test",
      "issue_date": "2026-10-19",
      "currency": "PLN",
      "total_gross": "163.99",
      "buyer_nip": "5260250274",
      "pdf_url": "https://app.ksefshop.pl/pdf/cmgxa1b2c0000/Qk9tZ2FsX3ZhbGlkX3Rva2VuX2V4YW1w",
      "last_error": null,
      "created": 1760865185,
      "updated": 1760865214,
      "corrections": []
    }
  }
}
KSeF Faktury

Wczesny dostęp do API

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