{"id":2,"date":"2024-04-19T09:47:36","date_gmt":"2024-04-19T09:47:36","guid":{"rendered":"http:\/\/ksef24.com\/?page_id=2"},"modified":"2026-06-08T09:20:19","modified_gmt":"2026-06-08T09:20:19","slug":"ksef-dokumentacja-integracyjna-rest-api","status":"publish","type":"page","link":"https:\/\/ksef24.com\/en\/","title":{"rendered":"KSeF REST API"},"content":{"rendered":"\r\n<div class=\"wp-block-columns\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\u00a0<\/div>\r\n<\/div><!-- \/wp:columns --><!-- wp:post-content --><p style=\"text-align: right;\">Wersja dokumentacji: 2.1 (<a href=\"\/ksef-changelog\">changelog<\/a>)<\/p>\r\n<p style=\"text-align: right;\">Data wersji: 2026-03-14<\/p>\r\n<h1 style=\"text-align: center;\">Dokumentacja integracyjna interfejsu REST API <br \/>dla Krajowego Systemu e-Faktur (KSeF 2.0)<\/h1>\r\n\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Komponenty\"><\/span>Komponenty<span class=\"ez-toc-section-end\"><\/span><\/h2><div id=\"ez-toc-container\" class=\"ez-toc-v2_0_87 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Spis tre\u015bci<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/ksef24.com\/en\/#Komponenty\" >Komponenty<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/ksef24.com\/en\/#Procesy_obslugi_faktur_KSeF\" >Procesy obs\u0142ugi faktur KSeF<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/ksef24.com\/en\/#Wygenerowanie_faktury_KSeF_ustrukturyzowanej_zgodnej_ze_schema_FA_v3\" >Wygenerowanie faktury KSeF (ustrukturyzowanej)  zgodnej ze schem\u0105 FA_v3<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/ksef24.com\/en\/#Wyslanie_faktur_w_sesji_interaktywnej_do_KSeF_i_pobranie_UPO\" >Wys\u0142anie faktur w sesji interaktywnej do KSeF i pobranie UPO<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/ksef24.com\/en\/#Wyszukanie_i_pobranie_faktur_z_KSeF_kosztowych_lub_sprzedazowych\" >Wyszukanie i pobranie faktur z KSeF (kosztowych lub sprzeda\u017cowych)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/ksef24.com\/en\/#Pobranie_pojedynczej_faktury_z_KSeF_kosztowej_lub_sprzedazowej\" >Pobranie pojedynczej faktury z KSeF (kosztowej lub sprzeda\u017cowej)<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/ksef24.com\/en\/#Operacje\" >Operacje<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/ksef24.com\/en\/#GET\" >GET<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/ksef24.com\/en\/#ksefPublicKey\" >ksefPublicKey<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/ksef24.com\/en\/#ksefSessionStatus\" >ksefSessionStatus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/ksef24.com\/en\/#ksefSessionClose\" >ksefSessionClose<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/ksef24.com\/en\/#ksefSessionUpo\" >ksefSessionUpo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceStatus\" >ksefInvoiceStatus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceGet\" >ksefInvoiceGet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceQueryStatus\" >ksefInvoiceQueryStatus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceQueryResult\" >ksefInvoiceQueryResult<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/ksef24.com\/en\/#ksefSessionInvoices\" >ksefSessionInvoices<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/ksef24.com\/en\/#POST\" >POST<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/ksef24.com\/en\/#ksefSessionOpenOnline\" >ksefSessionOpenOnline<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/ksef24.com\/en\/#ksefSessionOpenBatch\" >ksefSessionOpenBatch<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceGenerate\" >ksefInvoiceGenerate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/ksef24.com\/en\/#Uwaga_Szczegolowy_opis_klas_i_atrybutow_wejsciowych_dla_operacji_zostal_zamieszczony_na_dedykowanej_podstronie_REST_API_%E2%80%93_generowanie_faktur_KSeF_20\" >Uwaga! Szczeg\u00f3\u0142owy opis klas i atrybut\u00f3w wej\u015bciowych dla operacji, zosta\u0142 zamieszczony na dedykowanej podstronie: REST API &#8211; generowanie faktur KSeF 2.0.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceValidate\" >ksefInvoiceValidate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceSend\" >ksefInvoiceSend<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceQueryStart\" >ksefInvoiceQueryStart<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceVisualize\" >ksefInvoiceVisualize<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/ksef24.com\/en\/#ksefInvoiceLinks\" >ksefInvoiceLinks<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/ksef24.com\/en\/#Parametry\" >Parametry<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/ksef24.com\/en\/#Path\" >Path<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/ksef24.com\/en\/#SessionId\" >SessionId<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/ksef24.com\/en\/#InvoiceId\" >InvoiceId<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/ksef24.com\/en\/#InvoiceKsefNumber\" >InvoiceKsefNumber<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/ksef24.com\/en\/#QueryId\" >QueryId<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-34\" href=\"https:\/\/ksef24.com\/en\/#QueryPartNumber\" >QueryPartNumber<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-35\" href=\"https:\/\/ksef24.com\/en\/#RequestBody\" >RequestBody<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-36\" href=\"https:\/\/ksef24.com\/en\/#KsefInvoiceEncrypted\" >KsefInvoiceEncrypted<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-37\" href=\"https:\/\/ksef24.com\/en\/#KsefInvoiceQueryStartRange\" >KsefInvoiceQueryStartRange<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-38\" href=\"https:\/\/ksef24.com\/en\/#KsefInvoiceQueryStartRequest\" >KsefInvoiceQueryStartRequest<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-39\" href=\"https:\/\/ksef24.com\/en\/#KsefInvoiceSendRequest\" >KsefInvoiceSendRequest<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-40\" href=\"https:\/\/ksef24.com\/en\/#KsefSessionOpenOnlineRequest\" >KsefSessionOpenOnlineRequest<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-41\" href=\"https:\/\/ksef24.com\/en\/#KsefInvoiceVisualizeRequest\" >KsefInvoiceVisualizeRequest<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-42\" href=\"https:\/\/ksef24.com\/en\/#Enumeracje\" >Enumeracje<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-43\" href=\"https:\/\/ksef24.com\/en\/#InvoiceStatus\" >InvoiceStatus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-44\" href=\"https:\/\/ksef24.com\/en\/#Algorithm\" >Algorithm<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-45\" href=\"https:\/\/ksef24.com\/en\/#KsefInvoiceVersion\" >KsefInvoiceVersion<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-46\" href=\"https:\/\/ksef24.com\/en\/#OutputFormat\" >OutputFormat<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-47\" href=\"https:\/\/ksef24.com\/en\/#OutputLanguage\" >OutputLanguage<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-48\" href=\"https:\/\/ksef24.com\/en\/#SessionStatus\" >SessionStatus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-49\" href=\"https:\/\/ksef24.com\/en\/#SubjectType\" >SubjectType<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-50\" href=\"https:\/\/ksef24.com\/en\/#Odpowiedzi_typu_content\" >Odpowiedzi typu content<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-51\" href=\"https:\/\/ksef24.com\/en\/#Content\" >Content<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-52\" href=\"https:\/\/ksef24.com\/en\/#ApplicationZipContent\" >ApplicationZipContent<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-53\" href=\"https:\/\/ksef24.com\/en\/#ApplicationOctetStreamContent\" >ApplicationOctetStreamContent<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-54\" href=\"https:\/\/ksef24.com\/en\/#TextXmlContent\" >TextXmlContent<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-55\" href=\"https:\/\/ksef24.com\/en\/#ApplicationPdfContent\" >ApplicationPdfContent<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-56\" href=\"https:\/\/ksef24.com\/en\/#TextHtmlContent\" >TextHtmlContent<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-57\" href=\"https:\/\/ksef24.com\/en\/#Komunikaty_bledow\" >Komunikaty b\u0142\u0119d\u00f3w<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-58\" href=\"https:\/\/ksef24.com\/en\/#Error\" >Error<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-59\" href=\"https:\/\/ksef24.com\/en\/#Autoryzacja_i_szyfrowanie\" >Autoryzacja i szyfrowanie<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-60\" href=\"https:\/\/ksef24.com\/en\/#Sesja\" >Sesja<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-61\" href=\"https:\/\/ksef24.com\/en\/#Faktura\" >Faktura<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-62\" href=\"https:\/\/ksef24.com\/en\/#Wyszukiwanie\" >Wyszukiwanie<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n\r\n<p>Na potrzeby niniejszej dokumentacji zosta\u0142y przyj\u0119te 3 podstawowe komponenty, kt\u00f3re uczestnicz\u0105 w procesach biznesowych zwi\u0105zanych z obs\u0142ug\u0105 faktur w ramach KSeF 2.0:<\/p>\r\n<ul>\r\n<li><a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">System wywo\u0142uj\u0105cy<\/a><\/li>\r\n<li><a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a><\/li>\r\n<li><a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF 2.0<\/a><\/li>\r\n<\/ul>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-10.png\" width=\"1128\" height=\"252\" alt=\"REST API KSeF 2.0 - komponenty\" class=\"wp-image-189 size-full aligncenter\" title=\"REST API KSeF 2.0 - komponenty\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-10.png 1128w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-10-300x67.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-10-1024x229.png 1024w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-10-768x172.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-10-18x4.png 18w\" sizes=\"auto, (max-width: 1128px) 100vw, 1128px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Komponenty\u00a0<\/p>\r\n<h6><a id=\"post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\"><\/a>System wywo\u0142uj\u0105cy<\/h6>\r\n<p>System IT klienta, kt\u00f3ry komunikuje si\u0119 z Systemem KSeF za po\u015brednictwem interfejsu REST API KSEF.<\/p>\r\n<h6><a id=\"post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\"><\/a>Krajowy System e-Faktur (KSeF 2.0)<\/h6>\r\n<p><a href=\"https:\/\/ksef.mf.gov.pl\/\">Krajowy System e-Faktur<\/a> jest centralnym repozytorium ustrukturyzowanych faktur elektronicznych, kt\u00f3re jest zarz\u0105dzane i utrzymywany przez Ministerstwo Finans\u00f3w.<\/p>\r\n<h6><a id=\"post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\"><\/a>REST API KSeF 2.0<\/h6>\r\n<p>Interfejs REST udost\u0119pniaj\u0105cy <a href=\"#post-449-BKM_5F662507_70BF_4E7A_A7F0_5FFC1D1B6F95\">operacje (metody)<\/a> umo\u017cliwiaj\u0105ce kompleksow\u0105 realizacj\u0119 <a href=\"#post-449-BKM_C9933E96_1B60_4648_AF07_E8A62082F94B\">proces\u00f3w biznesowych<\/a> zwi\u0105zanych z obs\u0142ug\u0105 faktur ustrukturyzowanych KSeF<\/p>\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Procesy_obslugi_faktur_KSeF\"><\/span><a id=\"post-449-PROCESY_OBS\u00a3UGI_FAKTUR_KSEF\"><\/a><a id=\"post-449-BKM_C9933E96_1B60_4648_AF07_E8A62082F94B\"><\/a>Procesy obs\u0142ugi faktur KSeF<span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n<p>W rozdziale szczeg\u00f3\u0142owo opisane zosta\u0142y cztery g\u0142\u00f3wne procesy zwi\u0105zane z obs\u0142ug\u0105 faktur KSeF:<\/p>\r\n<ul>\r\n<li>Wygenerowanie faktury KSeF (ustrukturyzowanej) zgodnie ze schem\u0105 FA_v3<\/li>\r\n<li>Wys\u0142anie faktur w sesji interaktywnej do KSeF i pobranie UPO<\/li>\r\n<li>Wyszukanie i pobranie faktur z KSeF (kosztowych lub sprzeda\u017cowych)<\/li>\r\n<li>Pobranie pojedynczej faktury z KSeF (kosztowej lub sprzeda\u017cowej)<\/li>\r\n<\/ul>\r\n<p>Poszczeg\u00f3lne kroki ka\u017cdego z proces\u00f3w zwieraj\u0105 odno\u015bniki do operacji kt\u00f3re nale\u017cy wywo\u0142a\u0107 w celu realizacji danego kroku.<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Wygenerowanie_faktury_KSeF_ustrukturyzowanej_zgodnej_ze_schema_FA_v3\"><\/span>Wygenerowanie faktury KSeF (ustrukturyzowanej) <br \/>zgodnej ze schem\u0105 FA_v3<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p style=\"text-align: left;\">Celem opisanego procesu jest umo\u017cliwinie wygenerowania faktury KSeF, kt\u00f3rej format i struktura b\u0119dzie zgodna z najnowsz\u0105, aktualnie obowi\u0105zuj\u0105c\u0105 schem\u0105. Proces opisuje pozytywny scenariusz i kroki jakie nale\u017cy wykona\u0107, aby wygenerowa\u0107 faktur\u0119 ustrukturyzowan\u0105 KSeF z wykorzystaniem interfejsu <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KseF 2.0<\/a>. Ka\u017cde wywo\u0142anie operacji udost\u0119pnionej w interfejsie <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a> mo\u017ce spowodowa\u0107 wygenerowanie b\u0142\u0119du. Mo\u017cliwe do wyst\u0105pienia b\u0142\u0119dy, wynikaj\u0105ce z obs\u0142ugi \u017c\u0105dania przez <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a>, zosta\u0142y szczeg\u00f3\u0142owo opisane w rozdziale <a href=\"#post-449-BKM_FB59E57F_F3F5_41DF_90B9_4A86EB621297\">Komunikaty b\u0142\u0119d\u00f3w<\/a>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-11.png\" width=\"1017\" height=\"496\" alt=\"REST API KSeF 2.0 - generowanie faktury ustrukturyzowanej (XML) w wersji FA_v3\" class=\"aligncenter wp-image-190 size-full\" title=\"REST API KSeF 2.0 - generowanie faktury ustrukturyzowanej (XML) w wersji FA_v3\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-11.png 1017w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-11-300x146.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-11-768x375.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-11-18x9.png 18w\" sizes=\"auto, (max-width: 1017px) 100vw, 1017px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Wygenerowanie faktury ustrukturyzowanej KSeF<\/p>\r\n<p>Opis przebiegu procesu:<\/p>\r\n<p>1. <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">System wywo\u0142uj\u0105cy<\/a> przygotowuje odpowiednio \u017c\u0105danie <a href=\"#post-449-BKM_D0838924_3476_452F_AC1F_E736D36F1362\">KsefInvoiceGenerateRequest<\/a> i wywo\u0142uje metod\u0119 <a href=\"#post-449-BKM_50F79695_ADB8_4A0D_8322_D287CC1E262B\">ksefInvoiceGenerate<\/a>.<\/p>\r\n<p>2. Nast\u0119pnie <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a> na podstawie danych zawartych w \u017c\u0105daniu generuje plik XML faktury zgodny z bie\u017c\u0105c\u0105 (aktualn\u0105) wersj\u0105 schemy.<\/p>\r\n<p>3. Wygenerowany plik XML faktury jest zwracany do <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">systemu wywo\u0142uj\u0105cego<\/a>, kt\u00f3ry zapisuje plik XML faktury po swojej stronie.<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Wyslanie_faktur_w_sesji_interaktywnej_do_KSeF_i_pobranie_UPO\"><\/span><a id=\"post-449-WYS\u00a3ANIE_FAKTUR_W_SESJI_INTERAKTYWNEJ_DO\"><\/a><a id=\"post-449-BKM_6D6ED1D4_1729_4DE3_BFC0_4BC80014765B\"><\/a>Wys\u0142anie faktur w sesji interaktywnej do KSeF i pobranie UPO<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p style=\"text-align: left;\">Celem opisanego procesu jest wys\u0142anie faktury (lub faktur) KSeF, do <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">Krajowego Systemu e-Faktur<\/a> w ramach utworzonej sesji interaktywnej oraz pobranie Urz\u0119dowego Po\u015bwiadczenia Odbioru z KSeF potwierdzaj\u0105cego przyj\u0119cie wys\u0142anych faktur przez <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">system KSeF<\/a>. Proces opisuje pozytywny scenariusz i kroki jakie nale\u017cy wykona\u0107, aby przes\u0142a\u0107 faktur\u0119 ustrukturyzowan\u0105 do KSeF z wykorzystaniem interfejsu <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a>. Ka\u017cde wywo\u0142anie operacji udost\u0119pnionej w interfejsie <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a> mo\u017ce spowodowa\u0107 wygenerowanie b\u0142\u0119du. Mo\u017cliwe do wyst\u0105pienia b\u0142\u0119dy, wynikaj\u0105ce z obs\u0142ugi \u017c\u0105dania przez <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a>, ale te\u017c <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a> zosta\u0142y szczeg\u00f3\u0142owo opisane w rozdziale <a href=\"#post-449-BKM_FB59E57F_F3F5_41DF_90B9_4A86EB621297\">Komunikaty b\u0142\u0119d\u00f3w<\/a>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-12.png\" width=\"779\" height=\"1227\" alt=\"REST API KSeF 2.0 - wys\u0142anie faktury ustrukturyzowanej do KSeF i pobranie UPO\" class=\"aligncenter wp-image-191 size-full\" title=\"REST API KSeF 2.0 - wys\u0142anie faktury ustrukturyzowanej do KSeF i pobranie UPO\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-12.png 779w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-12-190x300.png 190w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-12-650x1024.png 650w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-12-768x1210.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-12-8x12.png 8w\" sizes=\"auto, (max-width: 779px) 100vw, 779px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Wys\u0142anie faktur w sesji interaktywnej do KSeF i pobranie UPO<\/p>\r\n<p>Opis przebiegu procesu:<\/p>\r\n<p>1. Dla ka\u017cdej wygenerowanej <span style=\"text-decoration: underline;\">poza<\/span> <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF<\/a> faktury rekomendujemy wywo\u0142anie operacji <a href=\"#post-449-BKM_9BFAFDBE_A342_404F_9DC0_5CBED265ABC4\">ksefInvoiceValidate<\/a> w celu sprawdzenia poprawno\u015bci faktury ze schem\u0105. <br \/><strong>Uwaga<\/strong>! Jedn\u0105 z przyczyn odrzucenia faktury przez KSeF mo\u017ce by\u0107 niezgodno\u015b\u0107 z obowi\u0105zuj\u0105c\u0105 schem\u0105 XSD.<\/p>\r\n<p>2. Po zweryfikowaniu poprawno\u015bci wygenerowanych faktur, nale\u017cy wywo\u0142a\u0107 operacj\u0119 <a href=\"#ksefSessionOpenOnline\">ksefSessionOpenOnline<\/a> w celu utworzenia sesji interaktywnej w ramach kt\u00f3rej zostanie przeprowadzona wysy\u0142ka. Szczeg\u00f3\u0142y opisuj\u0105ce sposoby i rodzaje tworzonej sesji, a tak\u017ce mo\u017cliwo\u015bci z nimi zwi\u0105zane zosta\u0142y opisane w rozdziale opisuj\u0105cym dan\u0105 metod\u0119.<\/p>\r\n<p>3. Po pomy\u015blnym zestawieniu sesji interaktywnej, <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a> zwraca identyfikator sesji (<a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>), kt\u00f3ry nale\u017cy zapisa\u0107 po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego<\/a>, poniewa\u017c identyfikator ten b\u0119dzie wykorzystywany do wywo\u0142ania innych operacji.<\/p>\r\n<p>4. Nast\u0119pnie &#8211; zanim przyst\u0105pimy do wysy\u0142ki faktur &#8211; nale\u017cy sprawdzi\u0107 czy sesja, kt\u00f3r\u0105 wcze\u015bniej utworzyli\u015bmy nadal aktywna. Krok jest szczeg\u00f3lnie istotny w przypadku, kiedy od utworzenia sesji min\u0119\u0142o kilka minut lub jako\u015b\u0107 po\u0142\u0105czenia sieciowego jest s\u0142aba. W celu weryfikacji aktywno\u015bci sesji nale\u017cy wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-KSEFSESSIONSTATUS\">ksefSessionStatus<\/a>, a jako parametr wywo\u0142ania poda\u0107 identyfikator sesji interaktywnej (<a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>).<\/p>\r\n<p>5. Je\u015bli w odpowiedzi na wywo\u0142anie metody <a href=\"#post-449-KSEFSESSIONSTATUS\">ksefSessionStatus<\/a>, otrzymali\u015bmy informacj\u0119 o aktywnym statusie sesji, to mo\u017cemy przyst\u0105pi\u0107 do iteracyjnej wysy\u0142ki wszystkich faktur wywo\u0142uj\u0105c tyle razy operacj\u0119 <a href=\"#post-449-BKM_A746644D_69CD_44A9_98E8_6C12405264CE\">ksefInvoiceSend<\/a>, ile faktur zamierzamy przes\u0142a\u0107 do <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">KSeF<\/a>. W odpowiedzi <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a> powinien zwr\u00f3ci\u0107 w atrybucie <a href=\"#post-449-BKM_C03DEBBC_C4C2_493E_BB68_84FA80CDBE1C\">id<\/a>, identyfikator techniczny faktury (<a href=\"#post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\">InvoiceId<\/a>).<\/p>\r\n<p>6. Zwr\u00f3cony identyfikator techniczny faktury (<a href=\"#post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\">InvoiceId<\/a>) nale\u017cy zapisa\u0107 po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego<\/a>, poniewa\u017c identyfikator ten b\u0119dzie wykorzystywany do wywo\u0142ania operacji sprawdzaj\u0105cej status odebrania faktury (<a href=\"#post-449-BKM_4E604362_F662_48C7_B38C_8BE64F4F0738\">ksefInvoiceStatus<\/a>) wys\u0142anej do <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a>.<\/p>\r\n<p>7. Po wys\u0142aniu do KSeF wszystkich faktur [5], oraz zapisaniu ich identyfikator\u00f3w technicznych [6] nale\u017cy sprawdzi\u0107 status odebrania ka\u017cdej z wys\u0142anych faktur. W tym celu nale\u017cy dla ka\u017cdej wys\u0142anej faktury wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-BKM_4E604362_F662_48C7_B38C_8BE64F4F0738\">ksefInvoiceStatus<\/a> z parametrem <a href=\"#post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\">InvoiceId<\/a>, zawieraj\u0105cy identyfikator techniczny faktury.<\/p>\r\n<p>8. Je\u017celi w odpowiedzi (<a href=\"#post-449-BKM_5A623BA4_65E7_40EB_8218_16C9A3739076\">KsefInvoiceStatusResponse<\/a>) status danej faktury (<a href=\"#StatusInfo\">StatusInfo<\/a>.code) ma warto\u015b\u0107 <strong>200<\/strong>, oznacza to, \u017ce faktura zosta\u0142a poprawnie zapisana w systemie KSeF i mo\u017cemy zapisa\u0107 wygenerowany przez KSeF numer faktury (<a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">invoiceKsefNumber<\/a>) oraz dat\u0119 akwizycji (acquisitionDat<a href=\"#post-449-BKM_0F039184_2427_4648_9D61_26C6B2B346CC\"><\/a>), czyli dok\u0142adn\u0105 dat\u0119 i godzin\u0119 zapisania w <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">Systemie KSeF<\/a>.<\/p>\r\n<p>9. Po pobraniu wszystkich numer\u00f3w KSeF wysta\u0142ych faktur (<a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">invoiceKsefNumber<\/a>) trzeba poprawnie zako\u0144czy\u0107 sesj\u0119 interaktywn\u0105 wywo\u0142uj\u0105c operacj\u0119 <a href=\"#post-449-BKM_E969B48C_1604_4449_9C3F_C30D467B7614\">ksefSessionClose<\/a> z parametrem <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a> (identyfikator sesji zwr\u00f3cony podczas jej tworzenia w kroku 3).<\/p>\r\n<p>10. Dopiero po zamkni\u0119ciu sesji interaktywnej mo\u017cliwe jest wywo\u0142anie operacji <a href=\"#post-449-BKM_1D26730A_5896_4AD6_8096_B488C2140502\">ksefSessionUpo<\/a>, z parametrem <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a> (identyfikator sesji zwr\u00f3cony podczas jej tworzenia w kroku 3) zwracaj\u0105cej Urz\u0119dowe Potwierdzenie Otrzymania (UPO). UPO jest zwracane jako obiekt <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a>.<\/p>\r\n<p>11. Ostatnim krokiem procesu jest zapisanie pobranego UPO (<a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a>) po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego.<\/a><\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Wyszukanie_i_pobranie_faktur_z_KSeF_kosztowych_lub_sprzedazowych\"><\/span><a id=\"post-449-WYSZUKANIE_I_POBRANIE_FAKTUR_Z_KSEF__KOS\"><\/a><a id=\"post-449-BKM_6533E600_B7A5_4C34_9CB4_9F9540613BF8\"><\/a>Wyszukanie i pobranie faktur z KSeF (kosztowych lub sprzeda\u017cowych)<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p style=\"text-align: left;\">Celem opisanego procesu jest asynchroniczne wyszukanie i pobranie znalezionych faktur (kosztowych lub sprzeda\u017cowych) w <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">Krajowym Systemie e-Faktur<\/a>. Poszczeg\u00f3lne operacje wykonywane s\u0105 w ramach utworzonej sesji interaktywnej. Proces opisuje pozytywny scenariusz i kroki jakie nale\u017cy wykona\u0107, aby wyszuka\u0107 i pobra\u0107 znalezione faktury, kt\u00f3re spe\u0142niaj\u0105 zdefiniowane kryteria wyszukiwania. W ramach jednego wywo\u0142ania mo\u017cna wyszuka\u0107 albo swoje faktury kosztowe albo swoje faktury sprzeda\u017cowe. Ka\u017cde wywo\u0142anie operacji udost\u0119pnionej w interfejsie <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a> mo\u017ce spowodowa\u0107 wygenerowanie b\u0142\u0119du. Mo\u017cliwe do wyst\u0105pienia b\u0142\u0119dy, wynikaj\u0105ce z obs\u0142ugi \u017c\u0105dania przez <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a>, ale te\u017c <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a> zosta\u0142y szczeg\u00f3\u0142owo opisane w rozdziale <a href=\"#post-449-BKM_FB59E57F_F3F5_41DF_90B9_4A86EB621297\">Komunikaty b\u0142\u0119d\u00f3w<\/a>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-13.png\" width=\"883\" height=\"1007\" alt=\"REST API KSeF 2.0 - wyszukiwanie i pobieranie faktur kosztowych i sprzeda\u017cowych\" class=\"aligncenter wp-image-192 size-full\" title=\"REST API KSeF 2.0 - wyszukiwanie i pobieranie faktur kosztowych i sprzeda\u017cowych\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-13.png 883w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-13-263x300.png 263w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-13-768x876.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-13-11x12.png 11w\" sizes=\"auto, (max-width: 883px) 100vw, 883px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Wyszukanie i pobranie faktur z KSeF (kosztowych lub sprzeda\u017cowych).<\/p>\r\n<p>Opis przebiegu procesu:<\/p>\r\n<p>1. W pierwszej kolejno\u015bci nale\u017cy odpowiednio przygotowa\u0107 kryteria wyszukiwania (<a href=\"#post-449-BKM_380F543B_A59E_417C_B15F_FBC666DFC45B\">KsefInvoiceQueryStartRequest<\/a>) i zainicjowa\u0107 asynchroniczny proces wyszukiwania faktu, wywo\u0142uj\u0105c operacj\u0119 <a href=\"#post-449-BKM_085D7653_C47C_4DF3_A9A7_AA3865243668\">ksefInvoiceQueryStart<\/a>.<\/p>\r\n<p>2. Po pomy\u015blnym wys\u0142aniu zapytania, <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a> zwraca identyfikator wyszukiwania (<a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">QueryId<\/a>), kt\u00f3ry nale\u017cy zapisa\u0107 po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego<\/a>, poniewa\u017c identyfikator ten b\u0119dzie wykorzystywany do wywo\u0142ania operacji sprawdzenia statusu wyszukiwania (czy uda\u0142o si\u0119 znale\u017a\u0107 faktury) oraz do pobrania znalezionych paczek faktur.<\/p>\r\n<p>3. W celu sprawdzenia czy jakie\u015b faktury spe\u0142niaj\u0105 zdefiniowane kryteria wyszukiwania i zosta\u0142y znalezione, nale\u017cy wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-BKM_A750875A_D53F_4B2E_9B81_17E7D02A9821\">ksefInvoiceQueryStatus<\/a>. W zwr\u00f3conej odpowiedzi <a href=\"#post-449-BKM_BEC9F82F_09FF_4D8B_8793_B3A3605DA235\">KsefInvoiceQueryStatusResponse<\/a>, zawarto\u015b\u0107 atrybutu <a href=\"#post-449-BKM_B78B9B4A_99E1_4988_A234_6F2125F92269\">items[]<\/a> informuje o liczbie paczek ze znalezionymi fakturami. Ka\u017cda paczka identyfikowana jest przez identyfikator paczki (<a href=\"#post-449-BKM_BC3C4915_1195_411B_B2F3_2E6B406EAB11\">QueryPartNumber<\/a>).<\/p>\r\n<p>4. W celu pobrania faktur spe\u0142niaj\u0105cych zdefiniowane kryteria wyszukiwania, nale\u017cy dla ka\u017cdej zwr\u00f3conej paczki faktur (<a href=\"#post-449-BKM_BC3C4915_1195_411B_B2F3_2E6B406EAB11\">QueryPartNumber<\/a>) wywo\u0142a\u0107 operacj\u0119 <a href=\"https:\/\/ksef24.com\/#ksefInvoiceQueryResult\">ksefInvoiceQueryResult<\/a>.<\/p>\r\n<p>5. Po pobraniu wszystkich znalezionych faktur (wszystkich paczek), nale\u017cy odszyfrowa\u0107 wszystkie pobrane paczki.<\/p>\r\n<p>6. Nast\u0119pnie nale\u017cy rozpakowa\u0107 ka\u017cd\u0105 pobran\u0105 paczk\u0119 (archiwum ZIP) i zapisa\u0107 po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego<\/a>.<\/p>\r\n<p>7. W celu wygenerowania wizualizacji dla pobranego pliku XML faktury z KSeF nale\u017cy dla ka\u017cdej faktury wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-BKM_EEDE0DC9_EFBD_49F6_B250_A748C985221D\">ksefInvoiceVisualize<\/a>.<\/p>\r\n<p>8. Ostatnim krokiem procesu jest zapisanie pobranego pliku (PDF lub HTML) zawieraj\u0105cego wizualizacj\u0119 faktury KSeF.<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Pobranie_pojedynczej_faktury_z_KSeF_kosztowej_lub_sprzedazowej\"><\/span><a id=\"post-449-POBRANIE_POJEDYNCZEJ_FAKTURY_Z_KSEF__KOS\"><\/a><a id=\"post-449-BKM_5C12AFD1_8613_4E2E_9C1D_1C0C82FEE014\"><\/a>Pobranie pojedynczej faktury z KSeF (kosztowej lub sprzeda\u017cowej)<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p style=\"text-align: left;\">Celem opisanego procesu jest pobranie konkretnej faktury (kosztowej lub sprzeda\u017cowej) w <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">Krajowym Systemie e-Faktur<\/a>. Poszczeg\u00f3lne operacje wykonywane s\u0105 w ramach utworzonej sesji interaktywnej. Proces opisuje pozytywny scenariusz i kroki jakie nale\u017cy wykona\u0107, aby pobra\u0107 pojedyncz\u0105 faktur\u0119, dla kt\u00f3rej znany jest <a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">numer KSeF fakury<\/a>. Ka\u017cde wywo\u0142anie operacji udost\u0119pnionej w interfejsie <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a> mo\u017ce spowodowa\u0107 wygenerowanie b\u0142\u0119du. Mo\u017cliwe do wyst\u0105pienia b\u0142\u0119dy, wynikaj\u0105ce z obs\u0142ugi \u017c\u0105dania przez <a href=\"#post-449-BKM_8B8E7387_2644_4057_9B27_0DDAFD03F5A8\">REST API KSeF 2.0<\/a>, ale te\u017c <a href=\"#post-449-BKM_A30627E5_CC2C_43B7_B656_95C94A111764\">System KSeF<\/a> zosta\u0142y szczeg\u00f3\u0142owo opisane w rozdziale <a href=\"#post-449-BKM_FB59E57F_F3F5_41DF_90B9_4A86EB621297\">Komunikaty b\u0142\u0119d\u00f3w<\/a>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-14.png\" width=\"897\" height=\"548\" alt=\"REST API KSeF 2.0 - obranie pojedynczej faktury (kosztowej lub sprzeda\u017cowej)\" class=\"aligncenter wp-image-194 size-full\" title=\"REST API KSeF 2.0 - obranie pojedynczej faktury (kosztowej lub sprzeda\u017cowej)\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-14.png 897w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-14-300x183.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-14-768x469.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-14-18x12.png 18w\" sizes=\"auto, (max-width: 897px) 100vw, 897px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Pobranie pojedynczej faktury z KSeF (kosztowej lub sprzeda\u017cowej).<\/p>\r\n<p>Opis przebiegu procesu:<\/p>\r\n<p>1. W pierwszym kroku, nale\u017cy wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-BKM_E16AE26F_B84A_480B_89C6_95DC926FFEB8\">ksefInvoiceGet<\/a>, kt\u00f3rej jednym z parametr\u00f3w jest numer faktury nadany przez KSeF (<a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">InvoiceKsefNumber<\/a>) .<\/p>\r\n<p>2. Pobran\u0105 faktur\u0119 w postaci pliku XML, nale\u017cy zapisa\u0107 po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego<\/a>.\u00a0Je\u015bli chcemy posiadamy jeszcze jakie\u015b numery KSeF faktur dla kt\u00f3rych chcemy pobra\u0107 faktury z KSeF, to nale\u017cy powt\u00f3rzy\u0107 kroki opisane w punktach 1-2.<\/p>\r\n<p>3. Krok opcjonalny. W zale\u017cno\u015bci od potrzeb biznesowych, ostatnim krokiem procesu mo\u017ce by\u0107 wygenerowanie wizualizacji faktury w postaci PDF lub HTML. W tym celu nale\u017cy wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-BKM_EEDE0DC9_EFBD_49F6_B250_A748C985221D\">ksefInvoiceVisualize<\/a> i w \u017c\u0105daniu wybra\u0107 odpowiednie parametry dotycz\u0105ce wizualizacji.<\/p>\r\n<p>4. Na koniec pozostaje zapisa\u0107 zwr\u00f3con\u0105 wizualizacj\u0119 faktury po stronie <a href=\"#post-449-BKM_270E933B_936D_4A01_BFA2_B7B4829EFCF3\">Systemu wywo\u0142uj\u0105cego<\/a>.\u00a0<\/p>\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Operacje\"><\/span><a id=\"post-449-OPERACJE\"><\/a><a id=\"post-449-BKM_5F662507_70BF_4E7A_A7F0_5FFC1D1B6F95\"><\/a>Operacje<span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n<p>Rozdzia\u0142 zawiera opis metod udost\u0119pnionych w ramach interfejsu REST API KSeF 2.0.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-15.png\" width=\"669\" height=\"469\" alt=\"REST API KSeF 2.0 - operacje\" class=\"aligncenter wp-image-195 size-full\" title=\"REST API KSeF 2.0 - operacje\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-15.png 669w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-15-300x210.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-15-18x12.png 18w\" sizes=\"auto, (max-width: 669px) 100vw, 669px\" \/><\/p>\r\n<p style=\"text-align: center;\">Rysunek: Interfejs REST API KSeF 2.0.<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"GET\"><\/span>GET<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Metody typu HTTP GET.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefPublicKey\"><\/span><a id=\"post-449-BKM_DA691A51_7832_4BB5_83F4_604D2B065754\"><\/a><a id=\"post-449-BKM_17968CD3_B61C_4A13_8029_9926483007D9\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefPublicKey\">ksefPublicKey<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefPublicKey<\/strong>(): KsefPublicKeyResponse<\/code> Metoda umo\u017cliwia pobranie klucza publicznego KSeF, kt\u00f3ry s\u0142u\u017cy do zaszyfrowania klucza symetrycznego AES256, s\u0142u\u017c\u0105cego do szyfrowania przesy\u0142anych faktur XML z wykorzystaniem operacji <a href=\"#post-449-BKM_A746644D_69CD_44A9_98E8_6C12405264CE\">ksefInvoiceSend<\/a> w trybie z szyfrowaniem w sesji &#8211; czyli ustawionych parametr\u00f3w: <a href=\"#encryptedKey\">encryptedKey<\/a> oraz <a href=\"#initVector\">initVector<\/a> podczas tworzenia sesji (<a href=\"#post-449-BKM_663A19D5_1CA9_45A4_9D58_95D3B0DAFBCD\">KsefSessionOpenOnlineRequest<\/a>). Metoda na wej\u015bciu nie wymaga \u017cadnego parametru, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_12332196_A513_4F5D_8750_6FFC1E360A5F\">KsefPublicKeyResponse<\/a>.\u00a0<\/p>\r\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-17.png\" width=\"607\" height=\"172\" alt=\"REST API KSeF 2.0 - pobranie klucza publicznego KSeF\" class=\"aligncenter wp-image-197 size-full\" title=\"REST API KSeF 2.0 - pobranie klucza publicznego KSeF\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-17.png 607w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-17-300x85.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-17-18x5.png 18w\" sizes=\"auto, (max-width: 607px) 100vw, 607px\" \/>Diagram: Operacja ksefPublicKey<\/p>\r\n<h5><em>Algorithm<\/em><\/h5>\r\n<p>Wspierane algorytmy kluczy kryptograficznych przez KSeF. Enumeracja zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_AA76CC42_39D3_4287_B024_34CF08DF017F\">Algorithm<\/a>.\u00a0<\/p>\r\n<h5><em><a id=\"post-449-BKM_12332196_A513_4F5D_8750_6FFC1E360A5F\"><\/a>KsefPublicKeyResponse<\/em><\/h5>\r\n<p>Klasa zawiera klucz publiczny systemu KSeF oraz informacje o algorytmie wg kt\u00f3rego zosta\u0142 utworzony.<\/p>\r\n<p><code><a id=\"post-449-BKM_CAABDC4E_165C_4DB2_882E_B0821FBD8437\"><\/a><strong>algorithm<\/strong><\/code> : <a href=\"#post-449-BKM_AA76CC42_39D3_4287_B024_34CF08DF017F\">Algorithm<\/a> &#8211; Algorytm zgodnie z kt\u00f3rym zosta\u0142 wygenerowany klucz publiczny<\/p>\r\n<p><a id=\"post-449-BKM_8C6AAFD4_2558_434B_AE6A_3E62FD11DC49\"><\/a><code><strong>publicKey<\/strong><\/code> : string &#8211; Klucz publiczny w postaci kodowania DER obiektu ASN.1 SubjectPublicKeyInfo w postaci ci\u0105gu base64. Klucz publiczny KSeF s\u0142u\u017cy do szyfrowania klucza symetrycznego (AES256), kt\u00f3ry to klucz powinien zosta\u0107 wygenerowany przed utworzeniem sesji z szyfrowaniem, a nast\u0119pnie tym kluczem symetrycznym powinna zosta\u0107 zaszyfrowane faktury XML przesy\u0142ane do KSeF.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefSessionStatus\"><\/span><a id=\"post-449-KSEFSESSIONSTATUS\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefSessionStatus\">ksefSessionStatus<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefSessionStatus<\/strong>(sessionId : SessionId): KsefSessionStatusResponse<\/code> Metoda umo\u017cliwia pobranie bie\u017c\u0105cego statusu sesji. W \u015bcie\u017cce wywo\u0142ania (URL) przyjmuje parametr <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>. W odpowiedzi zwraca natomiast <a href=\"#post-449-BKM_B469E2A6_26E8_44DA_910A_F89F7C73C44A\">KsefSessionStatusResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-9.png\" width=\"1219\" height=\"409\" alt=\"KSeF REST API - sprawdzanie statusu sesji\" class=\"aligncenter wp-image-188 size-full\" title=\"KSeF REST API - sprawdzanie statusu sesji\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-9.png 1219w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-9-300x101.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-9-1024x344.png 1024w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-9-768x258.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-9-18x6.png 18w\" sizes=\"auto, (max-width: 1219px) 100vw, 1219px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefSessionStatus<\/p>\r\n<h5><em>SessionId<\/em><\/h5>\r\n<p>Parametr zosta\u0142 opisany w rozdziale <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>.\u00a0<\/p>\r\n<h5><em><a id=\"post-449-BKM_B469E2A6_26E8_44DA_910A_F89F7C73C44A\"><\/a>KsefSessionStatusResponse<\/em><\/h5>\r\n<p>Odpowied\u017a zawieraj\u0105ca status danej sesji interaktywnej lub wsadowej (batch)<\/p>\r\n<p><code><strong>sessionInfo<\/strong> <\/code>: <a href=\"#SessionInfo\">SessionInfo<\/a> &#8211; Jeden z dw\u00f3ch mo\u017cliwych status\u00f3w sesji interaktywnej zdefiniowanych w klasie SessionInfo.<\/p>\r\n<h5 id=\"SessionInfo\"><em>SessionInfo<\/em><\/h5>\r\n<p>Klasa zwraca informacje o aktualnym statusie sesji.<\/p>\r\n<p><strong><code>status <\/code><\/strong>: <a href=\"#StatusInfo\">StatusInfo<\/a> &#8211; Atrybut typu z\u0142o\u017conego, kt\u00f3ry zwraca szczeg\u00f3\u0142ow\u0105 informacj\u0119 o bie\u017c\u0105cy statusie sesji.<\/p>\r\n<p><code><strong>batch <\/strong><\/code>: boolean &#8211; Warto\u015b\u0107 <strong>true<\/strong> atrybutu oznacza, \u017ce dana sesja jest sesj\u0105 wsadow\u0105, umo\u017cliwiaj\u0105c\u0105 wysy\u0142k\u0119 faktur w trybie batch.<\/p>\r\n<p><code><strong>invoiceCount<\/strong><\/code> : int &#8211; Atrybut okre\u015bla liczb\u0119 przyj\u0119tych faktur w ramach sesji.<\/p>\r\n<p><code><strong>successfulInvoiceCount<\/strong><\/code> : int &#8211; Atrybut okre\u015bla liczb\u0119 faktur przeprocesowanych w ramach sesji z sukcesem.<\/p>\r\n<p><strong><code>failedInvoiceCount<\/code><\/strong> : int &#8211; Atrybut okre\u015bla liczb\u0119 faktur przeprocesowanych w ramach sesji z b\u0142\u0119dem.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefSessionClose\"><\/span><a id=\"post-449-KSEFSESSIONCLOSE\"><\/a><a id=\"post-449-BKM_E969B48C_1604_4449_9C3F_C30D467B7614\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefSessionClose\">ksefSessionClose<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefSessionClose<\/strong>(sessionId : SessionId): KsefSessionCloseResponse<\/code> Metoda umo\u017cliwia zamkni\u0119cie sesji interaktywnej (online) lub wsadowej zestawionej z KSeF. <br \/><strong>Uwaga<\/strong>! Poprawne zamkni\u0119cie sesji interaktywnej jest niezb\u0119dne do pobrania UPO, czyli obiektu potwierdzaj\u0105cego odebrane przez KSeF faktury. W \u015bcie\u017cce wywo\u0142ania (URL) przyjmuje parametr <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>. W odpowiedzi zwraca natomiast <a href=\"#post-449-BKM_C2AC3C9D_2ADE_4B03_B1F1_82B742649FEE\">KsefSessionCloseResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-18.png\" width=\"600\" height=\"132\" alt=\"REST API KSeF 2.0 - zamkni\u0119cie sesji (interaktywnej lub wsadowej)\" class=\"aligncenter wp-image-198 size-full\" title=\"REST API KSeF 2.0 - zamkni\u0119cie sesji (interaktywnej lub wsadowej)\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-18.png 600w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-18-300x66.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-18-18x4.png 18w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefSessionClose<\/p>\r\n<h5><em>SessionId<\/em><\/h5>\r\n<p>Parametr zosta\u0142 opisany w rozdziale <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>.\u00a0<\/p>\r\n<h5><em><a id=\"post-449-BKM_C2AC3C9D_2ADE_4B03_B1F1_82B742649FEE\"><\/a>KsefSessionCloseResponse<\/em><\/h5>\r\n<p>Odpowied\u017a zawieraj\u0105ca informacj\u0119 czy uda\u0142o si\u0119 poprawnie zako\u0144czy\u0107 sesj\u0119 interaktywn\u0105<\/p>\r\n<p><code><a id=\"post-449-BKM_646D6E4B_DD0B_4686_AA82_259D97612460\"><\/a><strong>result<\/strong> <\/code>: boolean &#8211; Warto\u015b\u0107 True (1) oznacza poprawne zako\u0144czenie sesji, natomiast warto\u015b\u0107 False (0) informuje, \u017ce nie uda\u0142o si\u0119 poprawnie zako\u0144czy\u0107 sesji.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefSessionUpo\"><\/span><a id=\"post-449-KSEFSESSIONUPO\"><\/a><a id=\"post-449-BKM_1D26730A_5896_4AD6_8096_B488C2140502\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefSessionUpo\">ksefSessionUpo<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefSessionUpo<\/strong>(sessionId : SessionId): TextXmlContent<\/code> Metoda umo\u017cliwia pobranie Urz\u0119dowego Potwierdzenia Odbioru (UPO) dla wszystkich faktur, kt\u00f3re zosta\u0142y przes\u0142ane w ramach danej sesji interaktywnej zestawionej z KSeF. <br \/><strong>Uwaga<\/strong>! Przed wywo\u0142aniem operacji ksefSessionUpo nale\u017cy wcze\u015bniej zamkn\u0105\u0107 poprawnie sesj\u0119 interaktywn\u0105 korzystaj\u0105c z operacji <a href=\"#post-449-BKM_E969B48C_1604_4449_9C3F_C30D467B7614\">ksefSessionClose<\/a>. UPO mo\u017cna pobra\u0107 tylko dla sesji w kt\u00f3rej poprawnie zosta\u0142a wystawiona przynajmniej jedna faktura. W \u015bcie\u017cce wywo\u0142ania (URL) przyjmuje parametr <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>. W odpowiedzi operacja zwraca obiekt <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a> zawieraj\u0105cy UPO. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-19.png\" width=\"768\" height=\"118\" alt=\"REST API KSeF 2.0 - pobranie UPO\" class=\"aligncenter wp-image-199 size-full\" title=\"REST API KSeF 2.0 - pobranie UPO\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-19.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-19-300x46.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-19-18x3.png 18w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefSessionUpo<\/p>\r\n<h5><em>SessionId<\/em><\/h5>\r\n<p>Parametr zosta\u0142 opisany w rozdziale <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>.\u00a0<\/p>\r\n<h5><em>TextXmlContent<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a>.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceStatus\"><\/span><a id=\"post-449-KSEFINVOICESTATUS\"><\/a><a id=\"post-449-BKM_4E604362_F662_48C7_B38C_8BE64F4F0738\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceStatus\">ksefInvoiceStatus<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceStatus<\/strong>(invoiceId : InvoiceId): KsefInvoiceStatusResponse<\/code> Metoda umo\u017cliwia sprawdzenie statusu przetwarzania wys\u0142anej do KSeF faktury. <br \/><strong>Uwaga<\/strong>! Metoda sprawdza status przetwarzania faktury wys\u0142anej do KSeF z wykorzystaniem operacji <a href=\"#post-449-BKM_A746644D_69CD_44A9_98E8_6C12405264CE\">ksefInvoiceSend<\/a>. Metoda na wej\u015bciu wymaga przes\u0142ania w \u015bcie\u017cce wywo\u0142ania (URL) parametru <a href=\"#post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\">InvoiceId<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_5A623BA4_65E7_40EB_8218_16C9A3739076\">KsefInvoiceStatusResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-20.png\" width=\"1014\" height=\"327\" alt=\"REST API KSeF 2.0 - sprawdzenie statusu wys\u0142anej faktury\" class=\"aligncenter wp-image-200 size-full\" title=\"REST API KSeF 2.0 - sprawdzenie statusu wys\u0142anej faktury\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-20.png 1014w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-20-300x97.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-20-768x248.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-20-18x6.png 18w\" sizes=\"auto, (max-width: 1014px) 100vw, 1014px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceStatus<\/p>\r\n<h5><em>InvoiceId<\/em><\/h5>\r\n<p>Klasa reprezentuje identyfikator techniczny faktury, kt\u00f3ry jest zwracany jako atrybut <a href=\"#post-449-BKM_C03DEBBC_C4C2_493E_BB68_84FA80CDBE1C\">id<\/a> klasy <a href=\"#post-449-BKM_1C28A96A_30E8_4D8E_AEDB_02C85E1EF62D\">KsefInvoiceSendResponse<\/a>, a nast\u0119pnie mo\u017ce zosta\u0107 wykorzystany do sprawdzenia statusu przetwarzania faktury wywo\u0142uj\u0105c operacj\u0119 <a href=\"#post-449-BKM_4E604362_F662_48C7_B38C_8BE64F4F0738\">ksefInvoiceStatus<\/a>.<\/p>\r\n<p><code><strong>invoiceId<\/strong><\/code> : string &#8211; Identyfikator faktury (techniczny)<\/p>\r\n<h5><em><a id=\"post-449-BKM_5A623BA4_65E7_40EB_8218_16C9A3739076\"><\/a>KsefInvoiceStatusResponse<\/em><\/h5>\r\n<p>Klasa reprezentuje odpowied\u017a systemu KSeF w kontek\u015bcie statusu przetwarzania przes\u0142anej do KSeF faktury.<\/p>\r\n<p><strong><code>invoices[]<\/code><\/strong> : <a href=\"#InvoiceInfo\">InvoiceInfo<\/a> &#8211; Atybut zawiera tablice z informacjami opisuj\u0105cymi status wys\u0142anych faktur.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceGet\"><\/span><a id=\"post-449-KSEFINVOICEGET\"><\/a><a id=\"post-449-BKM_E16AE26F_B84A_480B_89C6_95DC926FFEB8\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceGet\">ksefInvoiceGet<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceGet<\/strong>(invoiceKsefNumber : InvoiceKsefNumber): KsefInvoiceGetContent<\/code> Metoda pozwala pobra\u0107 pojedyncz\u0105 faktur\u0119 z KSeF podaj\u0105c <a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">numer KSeF faktury<\/a>. <br \/>Metoda na wej\u015bciu wymaga przes\u0142ania w \u015bcie\u017cce wywo\u0142ania (URL) parametru <a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">InvoiceKsefNumber<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a> je\u015bli pobierana faktura nie jest szyfrowana lub <a href=\"#post-449-BKM_14FB405A_D772_455F_8B44_3252BB80A3DC\">ApplicationOctetStreamContent<\/a> w przypadku pobierania faktury w formie zaszyfrowanej. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-21.png\" width=\"807\" height=\"308\" alt=\"REST API KSeF 2.0 - pobranie faktury z KSeF (kosztowej lub sprzeda\u017cowej)\" class=\"aligncenter wp-image-201 size-full\" title=\"REST API KSeF 2.0 - pobranie faktury z KSeF (kosztowej lub sprzeda\u017cowej)\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-21.png 807w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-21-300x114.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-21-768x293.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-21-18x7.png 18w\" sizes=\"auto, (max-width: 807px) 100vw, 807px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceGet<\/p>\r\n<h5><em>InvoiceKsefNumber<\/em><\/h5>\r\n<p>Parametr zosta\u0142 opisany w rozdziale <a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">InvoiceKsefNumber<\/a>.<\/p>\r\n<h5><em>Content<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#Content\">Content<\/a>.<\/p>\r\n<h5><em>ApplicationOctetStreamContent<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_14FB405A_D772_455F_8B44_3252BB80A3DC\">ApplicationOctetStreamContent<\/a>.<\/p>\r\n<h5><em>TextXmlContent<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a>.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceQueryStatus\"><\/span><a id=\"post-449-KSEFINVOICEQUERYSTATUS\"><\/a><a id=\"post-449-BKM_A750875A_D53F_4B2E_9B81_17E7D02A9821\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceQueryStatus\">ksefInvoiceQueryStatus<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceQueryStatus<\/strong>(queryId : QueryId): KsefInvoiceQueryStatusResponse<\/code> Metoda pozwala uzyska\u0107 status wyszukiwania faktur w KSeF. <br \/>Metoda na wej\u015bciu wymaga przes\u0142ania w \u015bcie\u017cce wywo\u0142ania (URL) parametru: <a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">QueryId<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_BEC9F82F_09FF_4D8B_8793_B3A3605DA235\">KsefInvoiceQueryStatusResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-22.png\" width=\"668\" height=\"142\" alt=\"REST API KSeF 2.0 - sprawdzenie statusu wyszukiwania faktur\" class=\"aligncenter wp-image-202 size-full\" title=\"REST API KSeF 2.0 - sprawdzenie statusu wyszukiwania faktur\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-22.png 668w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-22-300x64.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-22-18x4.png 18w\" sizes=\"auto, (max-width: 668px) 100vw, 668px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceQueryStatus<\/p>\r\n<h5><em>QueryId<\/em><\/h5>\r\n<p>Klasa zawiera identyfikator wyszukiwania, kt\u00f3ry jest generowany przez KSeF <br \/><code><strong>queryId<\/strong><\/code> : string &#8211; Identyfikator procesu wyszukiwania<\/p>\r\n<h5><em><a id=\"post-449-BKM_BEC9F82F_09FF_4D8B_8793_B3A3605DA235\"><\/a>KsefInvoiceQueryStatusResponse<\/em><\/h5>\r\n<p>Obiekt reprezentuje wynik wyszukiwania faktur w KSeF<\/p>\r\n<p><code>numberOfInvoices<\/code> : int &#8211; \u0141\u0105czna liczba zwr\u00f3conych faktur w paczce.<\/p>\r\n<p><code>packageSize<\/code> : int &#8211; Rozmiar paczki w bajtach dla kontroli, czy po odebraniu wszystkich cz\u0119\u015bci zgadza si\u0119 ich \u0142\u0105czna suma.<\/p>\r\n<p><code>isTruncated<\/code> : boolean &#8211; Warto\u015b\u0107 <strong>true<\/strong> atrybutu okre\u015bla, \u017ce osi\u0105gni\u0119to maksymalny dopuszczalny zakres wynik\u00f3w zapytania (10 000).<\/p>\r\n<p><code><strong>partNumbers[]<\/strong><\/code><strong><\/strong>: string &#8211; Atrybut zawiera tablic\u0119 z identyfikatorami paczek (ka\u017cda paczka to plik ZIP) znalezionych faktur (<a href=\"#post-449-BKM_BC3C4915_1195_411B_B2F3_2E6B406EAB11\">QueryPartNumber<\/a>), kt\u00f3re spe\u0142ni\u0142y kryteria wyszukiwania zdefiniowane w klasie <a href=\"#post-449-BKM_380F543B_A59E_417C_B15F_FBC666DFC45B\">KsefInvoiceQueryStartRequest<\/a>.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceQueryResult\"><\/span><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceQueryResult\">ksefInvoiceQueryResult<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceQueryResult<\/strong>(queryId : QueryId, queryPartNumber : QueryPartNumber): KsefInvoiceQueryResultZipContent<\/code> Metoda pozwala pobra\u0107 wszystkie faktury znalezione w KSeF. <br \/><strong>Uwaga<\/strong>! Wywo\u0142anie metody wymaga wcze\u015bniejszego wywo\u0142ania operacji <a href=\"#post-449-BKM_085D7653_C47C_4DF3_A9A7_AA3865243668\">ksefInvoiceQueryStart<\/a>, kt\u00f3ra w odpowiedzi zwraca identyfikator wyszukiwania (<a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">QueryId<\/a>). <br \/><strong>Uwaga<\/strong>! Pobrane paczki faktur w postaci ZIP (identyfikowane za pomoc\u0105 <a href=\"#post-449-BKM_BC3C4915_1195_411B_B2F3_2E6B406EAB11\">QueryPartNumber<\/a>), nale\u017cy przed rozpakowaniem odszyfrowa\u0107. Ka\u017cd\u0105 paczk\u0119 nale\u017cy odszyfrowa\u0107 z wykorzystaniem symetrycznego klucza AES256 (<a href=\"#encryptedKey\">encryptedKey<\/a>), kt\u00f3ry by\u0142 generowany przy tworzeniu sesji (<a href=\"#ksefSessionOpenOnline\">ksefSessionOpenOnline<\/a>). Metoda na wej\u015bciu wymaga przes\u0142ania w \u015bcie\u017cce wywo\u0142ania (URL) dw\u00f3ch parametr\u00f3w: <a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">QueryId<\/a> oraz <a href=\"#post-449-BKM_BC3C4915_1195_411B_B2F3_2E6B406EAB11\">QueryPartNumber<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_0F091857_5CA9_4A1C_9E5F_B65F98CDF963\">ApplicationZipContent<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-23.png\" width=\"778\" height=\"240\" alt=\"REST API KSeF 2.0 - pobranie wynik\u00f3w wyszukiwania\" class=\"aligncenter wp-image-203 size-full\" title=\"REST API KSeF 2.0 - pobranie wynik\u00f3w wyszukiwania\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-23.png 778w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-23-300x93.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-23-768x237.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-23-18x6.png 18w\" sizes=\"auto, (max-width: 778px) 100vw, 778px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceQueryResult<\/p>\r\n<h5><em>QueryId<\/em><\/h5>\r\n<p>Klasa zawiera identyfikator wyszukiwania, kt\u00f3ry jest generowany przez KSeF. <br \/><code><strong>queryId<\/strong><\/code> : string &#8211; Identyfikator procesu wyszukiwania<\/p>\r\n<h5><em>QueryPartNumber<\/em><\/h5>\r\n<p>Klasa reprezentuje numer paczki wyszukiwania.<\/p>\r\n<p><code><strong>partNumber<\/strong><\/code> : string &#8211; Identyfikator fragmentu (paczki) wyniku wyszukiwania<\/p>\r\n<h5><em>ApplicationZipContent<\/em><\/h5>\r\n<p>Klasa reprezentuje archiwum ZIP z fakturami KSeF w postaci XML <br \/><code><strong>description<\/strong> <\/code>: string &#8211; = Archiwum ZIP z fakturami XML<\/p>\r\n<h4 id=\"ksefSessionInvoices\" style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefSessionInvoices\"><\/span><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefSessionInvoices\">ksefSessionInvoices<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefSessionInvoices<\/strong>(sessionId : SessionId): KsefSessionInvoicesResponse<\/code> Metoda umo\u017cliwia sprawdzenie statusu przetwarzania wszystkich wys\u0142anych do KSeF faktur. <br \/><strong>Uwaga<\/strong>! Metoda sprawdza status przetwarzania faktur wys\u0142anych do KSeF z wykorzystaniem operacji <a href=\"#KsefSessionOpenBatch\">ksefSessionOpenBatch<\/a>. Metoda na wej\u015bciu wymaga przes\u0142ania w \u015bcie\u017cce wywo\u0142ania (URL) parametru <a href=\"#post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\">SessionId<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#KsefSessionInvoicesResponse\">KsefSessionInvoicesResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-24.png\" width=\"978\" height=\"323\" alt=\"REST API KSeF 2.0 - sprawdzenie statusu faktur przes\u0142anych w danej sesji\" class=\"aligncenter wp-image-204 size-full\" title=\"REST API KSeF 2.0 - sprawdzenie statusu faktur przes\u0142anych w danej sesji\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-24.png 978w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-24-300x99.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-24-768x254.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-24-18x6.png 18w\" sizes=\"auto, (max-width: 978px) 100vw, 978px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefSessionInvoices<\/p>\r\n<h5 id=\"KsefSessionInvoicesResponse\"><em>KsefSessionInvoicesResponse<\/em><\/h5>\r\n<p><code>invoices[]<\/code> : <a href=\"#InvoiceInfo\">InvoiceInfo<\/a> &#8211; Atybut zawiera tablice z informacjami opisuj\u0105cymi status wys\u0142anych faktur.<\/p>\r\n<h5 id=\"InvoiceInfo\"><em>InvoiceInfo<\/em><\/h5>\r\n<p>Klasa reprezentuje obiekt zawieraj\u0105cy informacje o statusie wys\u0142anych faktur<\/p>\r\n<p><code>status<\/code> : <a href=\"#StatusInfo\">StatusInfo<\/a> &#8211; Atrybut zawiera kompletne informacje opisuj\u0105ce status faktury.<\/p>\r\n<p><code>ordinal<\/code> : string &#8211; Atrybut zawiera numer sekwencyjny faktury w ramach sesji.<\/p>\r\n<p><code>invoiceNumber<\/code> : string &#8211; Atrybut zawiera numer faktury.<\/p>\r\n<p><code>ksefNumber<\/code> : string &#8211; Atrybut zawiera nadany numer KSeF.<\/p>\r\n<p id=\"acquisitionDate\"><code>acquisitionDate<\/code> : string &#8211; Atrybut okre\u015bla dok\u0142ady czas przyj\u0119cia faktury w przez system KSeF (nadania numeru KseF). Zwracany format zgodny z date-time.<\/p>\r\n<p><code>permanentStorageDate<\/code> : string &#8211; Data trwa\u0142ego zapisu faktury w repozytorium KSeF. Warto\u015b\u0107 uzupe\u0142niana asynchronicznie w momencie trwa\u0142ego zapisu; zawsze p\u00f3\u017aniejsza ni\u017c <a href=\"#acquisitionDate\">acquisitionDate<\/a>. Podczas sprawdzania statusu mo\u017ce by\u0107 jeszcze niedost\u0119pna Zwracany format zgodny z date-time.<\/p>\r\n<h5 id=\"StatusInfo\"><em>StatusInfo<\/em><\/h5>\r\n<p>Klasa zawiera szczeg\u00f3\u0142owe informacje dotycz\u0105ce statusu przes\u0142anych faktur.<\/p>\r\n<p><code>code<\/code> : int &#8211; Kod statusu faktury<\/p>\r\n<p><code>description<\/code> : string &#8211; S\u0142owny opis statusu faktury<\/p>\r\n<p><code>details<\/code> : string &#8211; Dodatkowe szczeg\u00f3\u0142y statusu<\/p>\r\n<p><code>extensions[ ]<\/code> : <a href=\"#StatusInfoAttribute\">StatusInfoAttribute<\/a> &#8211; Zbi\u00f3r dodatkowych informacji zwi\u0105zanych ze statusem faktury, zapisanych jako pary klucz\u2013warto\u015b\u0107. Umo\u017cliwia rozszerzenie modelu o dane specyficzne dla danego przypadku.<\/p>\r\n<p>Poni\u017csza tabela zawiera mo\u017cliwe do zw\u00f3rcenia przez KSeF informacje dotycz\u0105ce status\u00f3w faktur:<\/p>\r\n<table>\r\n<thead>\r\n<tr>\r\n<th><strong>Code<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<th><strong>Details<\/strong><\/th>\r\n<th><strong>Extensions<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n<tr>\r\n<td>100<\/td>\r\n<td>Faktura przyj\u0119ta do dalszego przetwarzania<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>150<\/td>\r\n<td>Trwa przetwarzanie<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>200<\/td>\r\n<td>Sukces<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>405<\/td>\r\n<td>Przetwarzanie anulowane z powodu b\u0142\u0119du sesji<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>410<\/td>\r\n<td>Nieprawid\u0142owy zakres uprawnie\u0144<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>415<\/td>\r\n<td>Brak mo\u017cliwo\u015bci wysy\u0142ania faktury z za\u0142\u0105cznikiem<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>430<\/td>\r\n<td>B\u0142\u0105d weryfikacji pliku faktury<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>435<\/td>\r\n<td>B\u0142\u0105d odszyfrowania pliku<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>440<\/td>\r\n<td>Duplikat faktury<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8217;originalSessionReferenceNumber&#8217;, 'originalKsefNumber&#8217;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>450<\/td>\r\n<td>B\u0142\u0105d weryfikacji semantyki dokumentu faktury<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>500<\/td>\r\n<td>Nieznany b\u0142\u0105d ({statusCode})<\/td>\r\n<td>&#8211;<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>550<\/td>\r\n<td>Operacja zosta\u0142a anulowana przez system<\/td>\r\n<td>Przetwarzanie zosta\u0142o przerwane z przyczyn wewn\u0119trznych systemu. Spr\u00f3buj ponownie<\/td>\r\n<td>&#8211;<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<h5 id=\"StatusInfoAttribute\"><em>StatusInfoAttribute<\/em><\/h5>\r\n<p>Klasa reprezentuje dodatkowe informacje dotycz\u0105ce statusu przes\u0142anych faktur w formacie klucz-warto\u015b\u0107.<\/p>\r\n<p id=\"StatusInfoAttributeKey\"><code>key<\/code> : string &#8211; Atrybut zawiera nazw\u0119 (klucz).<\/p>\r\n<p><code>value<\/code> : string &#8211; Atrybut zawiera warto\u015b\u0107 odpowiadaj\u0105c\u0105 danemu kluczowi (atrybut <a href=\"#StatusInfoAttributeKey\">key<\/a>).<\/p>\r\n<p>&nbsp;<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"POST\"><\/span>POST<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Metody typu HTTP POST.<\/p>\r\n<h4 id=\"ksefSessionOpenOnline\" style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefSessionOpenOnline\"><\/span><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefSessionOpenOnline\">ksefSessionOpenOnline<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefSessionOpenOnline<\/strong>(invoice : KsefSessionOpenOnlineRequest): KsefSessionOpenOnlineResponse<\/code> Metoda umo\u017cliwia zestawienie sesji interaktywnej z systemem KSeF, dzi\u0119ki kt\u00f3rej mo\u017cliwe b\u0119dzie wys\u0142anie faktur do KSeF z wykorzystaniem operacji <a href=\"#post-449-BKM_A746644D_69CD_44A9_98E8_6C12405264CE\">ksefInvoiceSend<\/a>. Metoda na wej\u015bciu wymaga utworzenia \u017c\u0105dania zgodnego z <a href=\"#post-449-BKM_663A19D5_1CA9_45A4_9D58_95D3B0DAFBCD\">KsefSessionOpenOnlineRequest<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_B38BB36D_B873_4B21_9B57_6700ACD76F46\">KsefSessionOpenOnlineResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-25.png\" width=\"903\" height=\"352\" alt=\"REST API KSeF 2.0 - otwarcie sesji interaktywnej (online)\" class=\"aligncenter wp-image-205 size-full\" title=\"REST API KSeF 2.0 - otwarcie sesji interaktywnej (online)\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-25.png 903w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-25-300x117.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-25-768x299.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-25-18x7.png 18w\" sizes=\"auto, (max-width: 903px) 100vw, 903px\" \/><\/p>\r\n<p style=\"text-align: center;\"><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefSessionOpenOnline<\/p>\r\n<h5><em>KsefSessionOpenOnlineRequest<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_663A19D5_1CA9_45A4_9D58_95D3B0DAFBCD\">KsefSessionOpenOnlineRequest<\/a>.<\/p>\r\n<h5><em>EncryptionInfo<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#EncryptionInfo\">EncryptionInfo<\/a>.<\/p>\r\n<h5><em>KsefInvoiceVersion<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#KsefInvoiceVersion\">KsefInvoiceVersion<\/a>.<\/p>\r\n<h5><em><a id=\"post-449-BKM_B38BB36D_B873_4B21_9B57_6700ACD76F46\"><\/a>KsefSessionOpenOnlineResponse<\/em><\/h5>\r\n<p>Odpowied\u017a w przypadku poprawnie utworzonej sesji zawieraj\u0105ca nast\u0119puj\u0105ce atrybuty:<\/p>\r\n<p><a id=\"post-449-BKM_B4E2F9F2_43E3_4B05_8C85_5888E4A9BACC\"><\/a><code><strong>id<\/strong><\/code> : string &#8211; Atrybut zawiera identyfikator utworzonej sesji. Nale\u017cy go zapisa\u0107 po stronie systemu wywo\u0142uj\u0105cego, poniewa\u017c b\u0119dzie on wykorzystywany w wi\u0119kszo\u015bci pozosta\u0142ych operacji.<\/p>\r\n<p><a id=\"post-449-BKM_70D38C86_7AC4_4917_B36E_8B39AF95A73E\"><\/a><code><strong>created<\/strong><\/code> : string &#8211; Atrybut zawiera dat\u0119 i czas utworzenia sesji w formacie data-czas.<\/p>\r\n<h4 id=\"KsefSessionOpenBatch\" style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefSessionOpenBatch\"><\/span><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefSessionOpenBatch\">ksefSessionOpenBatch<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code>ksefSessionOpenBatch(invoice : KsefSessionOpenBatchRequest): KsefSessionOpenBatchResponse<\/code> Metoda umo\u017cliwia zestawienie sesji wsadowej z systemem KSeF, dzi\u0119ki kt\u00f3rej mo\u017cliwe b\u0119dzie wys\u0142anie wielu faktur do KSeF w ramach jednej paczki. Metoda na wej\u015bciu wymaga utworzenia \u017c\u0105dania zgodnego z <a href=\"#KsefSessionOpenBatchRequest\">KsefSessionOpenBatchRequest<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#KsefSessionOpenBatchResponse\">KsefSessionOpenBatchResponse<\/a>. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-26.png\" width=\"1211\" height=\"360\" alt=\"REST API KSeF 2.0 - otwarcie sesji wsadowej (batch)\" class=\"aligncenter wp-image-206 size-full\" title=\"REST API KSeF 2.0 - otwarcie sesji wsadowej (batch)\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-26.png 1211w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-26-300x89.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-26-1024x304.png 1024w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-26-768x228.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-26-18x5.png 18w\" sizes=\"auto, (max-width: 1211px) 100vw, 1211px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefSessionOpenBatch<\/p>\r\n<h5 id=\"KsefSessionOpenBatchRequest\"><em>KsefSessionOpenBatchRequest<\/em><\/h5>\r\n<p>Klasa reprezentuje atrybuty wej\u015bciowe dla operacji otwarcia sesji w trybie wsadowym.<\/p>\r\n<p><code>invoiceVersion<\/code> :\u00a0<a href=\"#post-449-BKM_A99F02C7_8367_44FB_9233_EDEF13514E5D\">KsefInvoiceVersion<\/a> &#8211; Jedna z dw\u00f3ch mo\u017cliwych wersji schemy zdefiniowanych w enumie <a href=\"#post-449-BKM_A99F02C7_8367_44FB_9233_EDEF13514E5D\">KsefInvoiceVersion<\/a>. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>encryptionInfo<\/code> : <a href=\"#EncryptionInfo\">EncryptionInfo<\/a> &#8211; Typ zosta\u0142 opisany w rozdziale <a href=\"#EncryptionInfo\">EncryptionInfo<\/a>. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>offline<\/code> : boolean &#8211; Atrybut okre\u015bla czy przesy\u0142ane faktury s\u0105 wystawione w trybie offline24. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>batchInfo<\/code> : BatchInfo &#8211; Typ zosta\u0142 opisany w rozdziale <a href=\"#BatchInfo\">BatchInfo<\/a>. Wymagalno\u015b\u0107: [1]<\/p>\r\n<h5 id=\"BatchInfo\"><em>BatchInfo<\/em><\/h5>\r\n<p>Klasa reprezentuje informacje opisuj\u0105ce paczk\u0119 wysy\u0142anych faktur.<\/p>\r\n<p><code>batchSize<\/code> : int &#8211; Atrybut okre\u015blaj\u0105cy rozmiar ca\u0142ej paczki. Rozmiar pliku paczki w bajtach. Wymagalno\u015b\u0107: [1]. Maksymalny rozmiar paczki to 5GB. Zakres: <span><span class=\"sc-Nxspf sc-fxwrCY lmPAIU jExHJM\">[1 .. 5000000000]<\/span><\/span><\/p>\r\n<p><code>batchHash<\/code> : string &#8211; Atrybut zawieraj\u0105cy hash (funkcj\u0119 skr\u00f3tu) z ca\u0142ej paczki, zakodowany w formacie Base64. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>batchParts<\/code>: <a href=\"#BatchPartInfo\">BatchPartInfo<\/a> &#8211; Atrybut typu tablicowego (array) zawieraj\u0105cy informacj\u0119 o danych cz\u0119\u015bciach paczki. Typ zosta\u0142 opisany w rozdziale <a href=\"#BatchPartInfo\">BatchPartInfo<\/a>. Wymagalno\u015b\u0107: [1]. Maksymalna liczba cz\u0119\u015bci to 50. Zakres: <span><span class=\"sc-Nxspf sc-fxwrCY lmPAIU jExHJM\">[1 .. 50]. Maksymalny dozwolony rozmiar cz\u0119\u015bci przed zaszyfrowaniem to 100MB.<\/span><\/span><\/p>\r\n<h5 id=\"BatchPartInfo\"><em>BatchPartInfo<\/em><\/h5>\r\n<p>Klasa reprezentuje dan\u0105 cz\u0119\u015b\u0107 paczki.<\/p>\r\n<p><code>ordinal<\/code>: int &#8211; Atrybut porz\u0105dkowy wskazuj\u0105cy kolejny numer cz\u0119\u015bci paczki. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>partSize<\/code>: int &#8211; Atrybut okre\u015blaj\u0105cy rozmiar cz\u0119\u015bci paczki. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>partHash<\/code>: string &#8211; Atrybut zawieraj\u0105cy hash (funkcj\u0119 skr\u00f3tu) z danej cz\u0119\u015bci paczki, zakodowany w formacie Base64. Wymagalno\u015b\u0107: [1]<\/p>\r\n<h5 id=\"KsefSessionOpenBatchResponse\"><em>KsefSessionOpenBatchResponse<\/em><\/h5>\r\n<p>Klasa reprezentuje zwracan\u0105 odpowied\u017a po poprawnym zestawieniu sesji wsadowej\u00a0<\/p>\r\n<h5><em>PartUploadInfo<\/em><\/h5>\r\n<p><code>ordinal<\/code> : int &#8211; Atrybut porz\u0105dkowy, okre\u015bla cz\u0119\u015b\u0107 pliku paczki.<\/p>\r\n<p><code>method<\/code> : string &#8211; Metoda HTTP, kt\u00f3rej nale\u017cy u\u017cy\u0107 przy wysy\u0142ce cz\u0119\u015bci pliku paczki.<\/p>\r\n<p><code>url<\/code> : string &#8211; Adres pod kt\u00f3ry nale\u017cy wys\u0142a\u0107 cz\u0119\u015b\u0107 pliku paczki.<\/p>\r\n<p><code>headers<\/code> : <a href=\"#PartUploadHeader\">PartUploadHeader<\/a> &#8211;\u00a0 Atrybut typu tablicowego (array), kt\u00f3ry zosta\u0142 opisany w rozdziale <a href=\"#PartUploadHeader\">PartUploadHeader<\/a>.<\/p>\r\n<h5 id=\"PartUploadHeader\"><em>PartUploadHeader<\/em><\/h5>\r\n<p>Klasa reprezentuje nag\u0142\u00f3wek, kt\u00f3rego nale\u017cy u\u017cy\u0107 przy wysy\u0142ce cz\u0119\u015bci pliku paczki<\/p>\r\n<p><code>name<\/code> : string &#8211; Nazwa nag\u0142\u00f3wka<\/p>\r\n<p><code>value<\/code> : string &#8211; Warto\u015b\u0107 nag\u0142\u00f3wka<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceGenerate\"><\/span><a id=\"post-449-KSEFINVOICEGENERATE\"><\/a><a id=\"post-449-BKM_50F79695_ADB8_4A0D_8322_D287CC1E262B\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceGenerate\">ksefInvoiceGenerate<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceGenerate<\/strong>(ksefInvoiceGenerateRequest : KsefInvoiceGenerateRequest): KsefInvoiceGenerateResponse<\/code> Metoda umo\u017cliwiaj\u0105ca wygenerowanie faktury ustrukturyzowanej XML zgodnej z bie\u017c\u0105c\u0105 (aktualn\u0105) wersj\u0105 schemy wykorzystywanej w KSeF. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Uwaga_Szczegolowy_opis_klas_i_atrybutow_wejsciowych_dla_operacji_zostal_zamieszczony_na_dedykowanej_podstronie_REST_API_%E2%80%93_generowanie_faktur_KSeF_20\"><\/span><strong>Uwaga<\/strong>! Szczeg\u00f3\u0142owy opis klas i atrybut\u00f3w wej\u015bciowych dla operacji, zosta\u0142 zamieszczony na dedykowanej podstronie: <a href=\"\/ksef-rest-api-generowanie-faktur\">REST API &#8211; generowanie faktur KSeF 2.0<\/a>.<span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-651\" src=\"https:\/\/ksefapi.pl\/wp-content\/uploads\/2024\/04\/15.png\" alt=\"KSeF REST API - generowanie faktury\" width=\"556\" height=\"80\" \/>Diagram: Operacja ksefInvoiceGenerate<\/p>\r\n<h5><em><a id=\"post-449-BKM_D0838924_3476_452F_AC1F_E736D36F1362\"><\/a>KsefInvoiceGenerateRequest<\/em><\/h5>\r\n<p>Klasa reprezentuje atrybuty wej\u015bciowe opisuj\u0105ce faktur\u0119 KSeF. Klasa zosta\u0142a szczeg\u00f3\u0142owo opisna w rozdziale <a href=\"\/ksef-rest-api-generowanie-faktur\/#KsefInvoiceGenerateRequest\">KsefInvoiceGenerateRequest<\/a>.<\/p>\r\n<h5><em><a id=\"post-449-BKM_BE083D7B_7D88_4483_8750_324FF0889975\"><\/a>KsefInvoiceGenerateResponse<\/em><\/h5>\r\n<p>Klasa reprezentuje odpowied\u017a zwracan\u0105 przez operacj\u0119 <a href=\"#post-449-BKM_50F79695_ADB8_4A0D_8322_D287CC1E262B\">ksefInvoiceGenerate<\/a>, kt\u00f3ra zawiera wygenerowan\u0105 faktur\u0119 KSeF zgodn\u0105 ze schem\u0105 obowi\u0105zuj\u0105c\u0105 w KSeF. Klasa zosta\u0142a szczeg\u00f3\u0142owo opisna w rozdziale <a href=\"\/ksef-rest-api-generowanie-faktur\/#KsefInvoiceGenerateResponse\">KsefInvoiceGenerateResponse<\/a>.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceValidate\"><\/span><a id=\"post-449-KSEFINVOICEVALIDATE\"><\/a><a id=\"post-449-BKM_9BFAFDBE_A342_404F_9DC0_5CBED265ABC4\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceValidate\">ksefInvoiceValidate<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceValidate<\/strong>(ksefInvoice : KsefInvoice): KsefInvoiceValidateResponse<\/code> Metoda umo\u017cliwia weryfikacj\u0119 faktury KSeF na zgodno\u015b\u0107 ze schem\u0105. Jako parametr wywo\u0142ania operacji nale\u017cy przes\u0142a\u0107 obiekt <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a> zawieraj\u0105cy wygenerowan\u0105 faktur\u0119 KSeF. Do wygenerowania faktury mo\u017cna wykorzysta\u0107 zewn\u0119trzne narz\u0119dzie lub operacj\u0119 <a href=\"#post-449-BKM_50F79695_ADB8_4A0D_8322_D287CC1E262B\">ksefInvoiceGenerate<\/a>. W odpowiedzi operacja zwraca obiekt <a href=\"#post-449-BKM_9EE0569D_8FC8_4DBA_8884_7420EF52505D\">KsefInvoiceValidateResponse<\/a> z informacj\u0105 w jakiej wersji schemy jest wygenerowana faktura oraz czy jest ona zgodna z t\u0105 struktur\u0105. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-27.png\" width=\"955\" height=\"299\" alt=\"REST API KSeF - walidacja pliku XML faktury ustrukturyzowanej\" class=\"aligncenter wp-image-207 size-full\" title=\"REST API KSeF - walidacja pliku XML faktury ustrukturyzowanej\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-27.png 955w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-27-300x94.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-27-768x240.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-27-18x6.png 18w\" sizes=\"auto, (max-width: 955px) 100vw, 955px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceValidate<\/p>\r\n<h5><em>TextXmlContent<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\">TextXmlContent<\/a>.<\/p>\r\n<h5><em><a id=\"post-449-BKM_9EE0569D_8FC8_4DBA_8884_7420EF52505D\"><\/a>KsefInvoiceValidateResponse<\/em><\/h5>\r\n<p>Odpowied\u017a zawieraj\u0105ca informacje dotycz\u0105ce wersji schemy w jakiej zosta\u0142a wygenerowana przes\u0142ana faktura KSeF oraz czy jest ona zgodna z t\u0105 schem\u0105. <br \/><code><strong>invoiceVersion<\/strong><\/code> : <a href=\"#KsefInvoiceVersion\">KsefInvoiceVersion<\/a> &#8211; Jedna z obs\u0142ugiwanych wersji schemy zdefiniowanych w enumie <a href=\"#KsefInvoiceVersion\">KsefInvoiceVersion<\/a>.<\/p>\r\n<p><code><strong>valid<\/strong><\/code> : boolean &#8211; Warto\u015b\u0107 True (1) oznacza zgodno\u015b\u0107 przes\u0142anej do weryfikacji faktury ze schem\u0105, natomiast w przypadku wykrycia niezgodno\u015bci pliku XML faktury ze schem\u0105, to zwracany jest kodHttp i obiekt <a href=\"#post-449-BKM_10DB3E1E_4E99_4AE7_B63C_11FF70E9C13B\">Error<\/a> z opisem pierwszego wykrytego b\u0142\u0119du niezgodno\u015bci ze schem\u0105 w atrybucie <a href=\"#post-449-BKM_332861F1_6F93_490C_9977_2A6D30C258D8\">details<\/a>.<\/p>\r\n<p><code>canonicalForm<\/code> : string &#8211; Atrybut zawiera\u00a0 kanoniczn\u0105 form\u0119 przes\u0142anej do walidacji faktury. Warto\u015b\u0107 jest kodowana z wykorzystaniem Base64.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceSend\"><\/span><a id=\"post-449-KSEFINVOICESEND\"><\/a><a id=\"post-449-BKM_A746644D_69CD_44A9_98E8_6C12405264CE\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceSend\">ksefInvoiceSend<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceSend<\/strong>(invoice : KsefInvoiceSendRequest): KsefInvoiceSendResponse<\/code> Metoda umo\u017cliwia wys\u0142anie jednej faktury do systemu KSeF w ramach zestawionej sesji interaktywnej. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<br \/><strong>Uwaga<\/strong>! Metod\u0119 mo\u017cna wywo\u0142a\u0107 dowoln\u0105 liczb\u0119 razy w ramach zestawionej sesji i dzi\u0119ki temu przes\u0142a\u0107 do KSeF wi\u0119cej faktur. <strong><br \/>Uwaga<\/strong>! Aby wys\u0142a\u0107 faktury do KSeF z wykorzystaniem tej metody, nale\u017cy wcze\u015bniej wywo\u0142a\u0107 operacj\u0119 <a href=\"#ksefSessionOpenOnline\">ksefSessionOpenOnline<\/a> w celu zestawienia sesji interaktywnej. Metoda na wej\u015bciu wymaga utworzenia \u017c\u0105dania zgodnego z <a href=\"#KsefInvoiceSendRequest\">KsefInvoiceSendRequest<\/a>, a na wyj\u015bciu zwraca odpowied\u017a zgodn\u0105 z <a href=\"#post-449-BKM_1C28A96A_30E8_4D8E_AEDB_02C85E1EF62D\">KsefInvoiceSendResponse<\/a>.\u00a0<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-28.png\" width=\"815\" height=\"311\" alt=\"REST API KSeF 2.0 - wys\u0142anie faktury ustrukturyzowanej do KSeF\" class=\"aligncenter wp-image-209 size-full\" title=\"REST API KSeF 2.0 - wys\u0142anie faktury ustrukturyzowanej do KSeF\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-28.png 815w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-28-300x114.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-28-768x293.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-28-18x7.png 18w\" sizes=\"auto, (max-width: 815px) 100vw, 815px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceSend<\/p>\r\n<h5><a id=\"post-449-BKM_2DF5E4BB_F801_4566_A088_CF9A6D2C8007\"><\/a><em>KsefInvoiceSendRequest<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#KsefInvoiceSendRequest\">KsefInvoiceSendRequest<\/a>.<\/p>\r\n<h5><em>KsefInvoiceEncrypted<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#KsefInvoiceEncrypted\">KsefInvoiceEncrypted<\/a>.<\/p>\r\n<h5><em><a id=\"post-449-BKM_1C28A96A_30E8_4D8E_AEDB_02C85E1EF62D\"><\/a>KsefInvoiceSendResponse<\/em><\/h5>\r\n<p>Klasa reprezentuje odpowied\u017a uzyskan\u0105 z KSeF w przypadku przes\u0142ania faktury zako\u0144czonego sukcesem. <br \/><strong>Uwaga<\/strong>! Odpowied\u017a informuje o poprawnym wys\u0142aniu faktury do KSeF, jednak aby mie\u0107 pewno\u015b\u0107, \u017ce faktura zosta\u0142a poprawnie zapisana w KSeF nale\u017cy wywo\u0142a\u0107 operacj\u0119 <a href=\"#post-449-BKM_4E604362_F662_48C7_B38C_8BE64F4F0738\">ksefInvoiceStatus<\/a>, kt\u00f3rej jednym z parametr\u00f3w wej\u015bciowych jest <a href=\"#post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\">identyfikator techniczny faktury<\/a> zwr\u00f3cony jako warto\u015b\u0107 atrybutu <a href=\"#post-449-BKM_C03DEBBC_C4C2_493E_BB68_84FA80CDBE1C\">id<\/a>. <br \/><code><a id=\"post-449-BKM_E3583970_16D0_4D19_A513_9F7E6A70164A\"><\/a><strong>created<\/strong> <\/code>: string &#8211; Atrybut zawiera informacje o dok\u0142adnej dacie i czasie przes\u0142ania faktury do KSeF <br \/><code><a id=\"post-449-BKM_C03DEBBC_C4C2_493E_BB68_84FA80CDBE1C\"><\/a><strong>id<\/strong> <\/code>: string &#8211; Atrybut zawiera <a href=\"#post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\">identyfikator techniczny faktury<\/a> wys\u0142anej do KSeF<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceQueryStart\"><\/span><a id=\"post-449-KSEFINVOICEQUERYSTART\"><\/a><a id=\"post-449-BKM_085D7653_C47C_4DF3_A9A7_AA3865243668\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceQueryStart\">ksefInvoiceQueryStart<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceQueryStart <\/strong>(KsefInvoiceQueryStartRequest : KsefInvoiceQueryStartRequest): KsefInvoiceQueryStartResponse<\/code> Metoda pozwala okre\u015bli\u0107 i wys\u0142a\u0107 do KSeF kryteria wyszukiwania faktur. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<br \/><strong>Uwaga<\/strong>! Wywo\u0142anie metody wymaga wcze\u015bniejszego otwarcia sesji interaktywnej z wykorzystaniem operacji <a href=\"#ksefSessionOpenOnline\">ksefSessionOpenOnline<\/a>. Metoda na wej\u015bciu wymaga przes\u0142ania \u017c\u0105dania zgodnego z <a href=\"#post-449-BKM_380F543B_A59E_417C_B15F_FBC666DFC45B\">KsefInvoiceQueryStartRequest<\/a>. Metoda zwraca obiekt zgodny z <a href=\"#post-449-BKM_2965E670_555F_4AD5_A22A_70C4AE897D00\">KsefInvoiceQueryStartResponse<\/a>, kt\u00f3ry zawiera <a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">identyfikator wyszukiwania<\/a>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-29.png\" width=\"913\" height=\"344\" alt=\"REST API KSeF 2.0 - wyszukaj faktury kosztowe lub sprzeda\u017cowe\" class=\"aligncenter wp-image-210 size-full\" title=\"REST API KSeF 2.0 - wyszukaj faktury kosztowe lub sprzeda\u017cowe\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-29.png 913w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-29-300x113.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-29-768x289.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-29-18x7.png 18w\" sizes=\"auto, (max-width: 913px) 100vw, 913px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceQueryStart<\/p>\r\n<h5><em>KsefInvoiceQueryStartRequest<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_380F543B_A59E_417C_B15F_FBC666DFC45B\">KsefInvoiceQueryStartRequest<\/a>.<\/p>\r\n<h5><em>SubjectType<\/em><\/h5>\r\n<p>Enumeracja zosta\u0142a opisana w rozdziale <a href=\"#SubjectType\">SubjectType<\/a>.\u00a0<\/p>\r\n<h5><em>KsefInvoiceQueryStartRange<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_A4AA4DAB_30D5_45CC_BF4A_818BF2ED74B6\">KsefInvoiceQueryStartRange<\/a>.<\/p>\r\n<h5><em><a id=\"post-449-BKM_2965E670_555F_4AD5_A22A_70C4AE897D00\"><\/a>KsefInvoiceQueryStartResponse<\/em><\/h5>\r\n<p>Obiekt reprezentuje odpowied\u017a z systemu KSeF zawieraj\u0105c\u0105 <a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">identyfikator wyszukiwania<\/a>, kt\u00f3re to wyszukiwanie zosta\u0142o uruchomione asynchronicznie po stronie KSeF. <br \/><a id=\"post-449-BKM_3A272247_1DAF_4F57_AC28_F795A0BF7649\"><\/a><code><strong>queryId<\/strong><\/code> : string &#8211; Atrybut okre\u015bla <a href=\"#post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\">identyfikator wyszukiwania<\/a>, kt\u00f3ry jest generowany przez KSeF.<\/p>\r\n<h4 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceVisualize\"><\/span><a id=\"post-449-KSEFINVOICEVISUALIZE\"><\/a><a id=\"post-449-BKM_EEDE0DC9_EFBD_49F6_B250_A748C985221D\"><\/a><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceVisualize\">ksefInvoiceVisualize<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code><strong>ksefInvoiceVisualize<\/strong>(KsefInvoiceVisualizeRequest : KsefInvoiceVisualizeRequest): KsefInvoiceVisualizeContent<\/code> Metoda umo\u017cliwiaj\u0105ca wygenerowanie wizualizacji faktury ustrukturyzowanej XML w jednym z format\u00f3w: HTML oraz PDF. Metoda na wej\u015bciu wymaga przygotowania \u017c\u0105dania zgodnie z <a href=\"#post-449-BKM_971DE727_C4DE_4C3F_A3B6_94318FC8866B\">KsefInvoiceVisualizeRequest<\/a>, a w odpowiedzi zwraca obiekt typu <a href=\"#post-449-BKM_A98BD425_F9DF_41D1_9D4A_6520F08ED831\">TextHtmlContent<\/a> dla wizualizacji HTML albo <a href=\"#post-449-BKM_B4C5AFC5_C4FA_4E6C_AD88_49F26B7AF795\">ApplicationPdfContent<\/a> dla wizualizacji w pliku PDF. Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do <strong><a href=\"https:\/\/ksefapi.pl\/public\/rest\/\">Swagger UI<\/a><\/strong>.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-30.png\" width=\"973\" height=\"406\" alt=\"REST API KSeF 2.0 - wizualizacja faktury\" class=\"aligncenter wp-image-211 size-full\" title=\"REST API KSeF 2.0 - wizualizacja faktury\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-30.png 973w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-30-300x125.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-30-768x320.png 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-30-18x8.png 18w\" sizes=\"auto, (max-width: 973px) 100vw, 973px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceVisualize<\/p>\r\n<h5><em>KsefInvoiceVisualizeRequest<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_971DE727_C4DE_4C3F_A3B6_94318FC8866B\">KsefInvoiceVisualizeRequest<\/a>.<\/p>\r\n<h5><em>OutputFormat<\/em><\/h5>\r\n<p>Enumeracja zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_228F709D_A191_4EC3_B3D0_1E5C58CBE49E\">OutputFormat<\/a>.<\/p>\r\n<h5><em>OutputLanguage<\/em><\/h5>\r\n<p>Enumeracja zosta\u0142a opisana w rozdziale <a href=\"#post-449-BKM_D4CAA4F7_067E_4E52_817E_931699AB95DE\">OutputLanguage<\/a>.<\/p>\r\n<h5><em>Content<\/em><\/h5>\r\n<p>Klasa zosta\u0142a opisana w rozdziale <a href=\"#Content\">Content<\/a>.<\/p>\r\n<h5><em>ApplicationPdfContent<\/em><\/h5>\r\n<p>Klasa reprezentuje wygenerowan\u0105 wizualizacj\u0119 faktury KSeF w postaci pliku PDF. <br \/><code><strong>description<\/strong> <\/code>: string &#8211; = Wizualizacja PDF<\/p>\r\n<h5><em>TextHtmlContent<\/em><\/h5>\r\n<p>Klasa reprezentuje wygenerowan\u0105 wizualizacj\u0119 faktury KSeF w postaci pliku HTML. <br \/><code><strong>description<\/strong> <\/code>: string<a id=\"post-449-Att.Scope.Start\"><\/a> &#8211; <a id=\"post-449-Att.Const.End\"><\/a> = Wizualizacja HTML<\/p>\r\n<h4 id=\"ksefInvoiceLinks\" style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"ksefInvoiceLinks\"><\/span><a href=\"https:\/\/ksefapi.pl\/public\/rest\/#\/invoice\/ksefInvoiceLinks\">ksefInvoiceLinks<\/a><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p><code>ksefInvoiceLinks(KsefInvoiceLinksRequest : KsefInvoiceLuinksRequest): KsefInvoiceLinksResponse<\/code>.\u00a0Metoda umo\u017cliwiaj\u0105ca wygenerowanie link\u00f3w i QR kod\u00f3w. Operacja wej\u015bciu przyjmuje niezb\u0119dne metadane faktury takie jak: nip sprzedawcy, dat\u0119 wystawienia, skr\u00f3t sha256 z XML faktury i opcjonalnie invoiceKsefNumber. W odpowiedzi operacja zwraca link i QR kod do pobrania faktury, a jak si\u0119 nie zosta\u0142 podany invoiceKsefNumber (co oznacza tryb OFFLINE), to operacja zwraca te\u017c drugi link i QR kod z podpisem offline.\u00a0Kliknij w nazw\u0119 operacji, aby przej\u015b\u0107 do Swagger UI.<\/p>\r\n<p style=\"text-align: center;\"><a href=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/03\/ksefInvoiceLinks.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/03\/ksefInvoiceLinks.jpg\" alt=\"Ksef Links and QR Code\" width=\"985\" height=\"396\" class=\"alignnone wp-image-275 size-full\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/03\/ksefInvoiceLinks.jpg 985w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/03\/ksefInvoiceLinks-300x121.jpg 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/03\/ksefInvoiceLinks-768x309.jpg 768w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/03\/ksefInvoiceLinks-18x7.jpg 18w\" sizes=\"auto, (max-width: 985px) 100vw, 985px\" \/><\/a><\/p>\r\n<p style=\"text-align: center;\">Diagram: Operacja ksefInvoiceLinks<\/p>\r\n<h5><em>KsefInvoiceLinksRequest<\/em><\/h5>\r\n<p>Klasa reprezentuje \u017c\u0105danie niezb\u0119dne do pobrania wygenrowanych link\u00f3w i kod\u00f3w QR.\u00a0<br \/><code>nip<\/code>: string &#8211; Numer Identyfikacji Podtakowej sprzedawcy. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>issueDate<\/code>: datetime &#8211; Data wystawieni faktury ustrukturyzowanej KSeF. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>invoiceHash<\/code>: string &#8211; Warto\u015b\u0107 skr\u00f3tu z faktury ustrukturyzowanej KSeF (XML). Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>invoiceKsefNumber<\/code>: string &#8211; Atrybut opisany w rozdziale InvoiceKsefNumber. Wymagalno\u015b\u0107: [0..1]<\/p>\r\n<h5><em>KsefInvoiceLinksResponse<\/em><\/h5>\r\n<p>Klasa reprezentuje odpowied\u017a zawieraj\u0105c\u0105 wygenrowane linki do pobrania faktury KseF wystwionej w trybie ONLINE lub OFFLINE. Je\u015bli w klasie <code>KsefInvoiceLinksRequest<\/code>, nie zosta\u0142 podany <code>invoiceKsefNumber<\/code>, (co oznacza wystawienie faktury w trybie OFFLINE), to zwracany jest te\u017c drugi atrybut (<code>certificate<\/code>) zawieraj\u0105cy link i kod QR z podpisem OFFLINE.<\/p>\r\n<p><code>invoice<\/code>: KsefQrCode &#8211; Atrybut opisany w rozdziale KsefQrCode. Zwraca link i kod QR niezb\u0119dny do pobrania faktury. Wymagalno\u015b\u0107: [1].<\/p>\r\n<p><code>certificate<\/code>: KsefQrCode &#8211; Atrybut opisany w rozdziale KsefQrCode. Zwraca link i kod QR z podpisem OFFLINE. Wymagalno\u015b\u0107: [0..1].<\/p>\r\n<h5><em>KsefQrCode<\/em><\/h5>\r\n<p>Klasa zawiera link oraz kod QR umo\u017cliwiaj\u0105cy pobranie faktury KSeF.<\/p>\r\n<p><code>image<\/code>: string &#8211; Kod QR do pobrania faktury<\/p>\r\n<p><code>link<\/code>: string &#8211; Link do pobrania faktury<\/p>\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Parametry\"><\/span><a id=\"post-449-PARAMETRY\"><\/a><a id=\"post-449-BKM_4050067F_D17B_4C47_9E37_765376AE8406\"><\/a>Parametry<span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n<p>Rozdzia\u0142 zawiera zestawienie wszystkich parametr\u00f3w w podziale na typ:<\/p>\r\n<ul>\r\n<li>path &#8211; parametr przekazywany w \u015bcie\u017cce URL<\/li>\r\n<li>requestBody &#8211; parametr przekazywany w tre\u015bci \u017c\u0105dania<\/li>\r\n<\/ul>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-31.png\" width=\"753\" height=\"817\" alt=\"REST API KSeF 2.0 - parametry\" class=\"aligncenter wp-image-212 size-full\" title=\"REST API KSeF 2.0 - parametry\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-31.png 753w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-31-276x300.png 276w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-31-11x12.png 11w\" sizes=\"auto, (max-width: 753px) 100vw, 753px\" \/><\/p>\r\n<p style=\"text-align: center;\">\u00a0Diagram: Parametry<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Path\"><\/span>Path<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Parametry wywo\u0142ania operacji zawarte w \u015bcie\u017cce (path).<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"SessionId\"><\/span><a id=\"post-449-BKM_5FDFF597_22B9_49D7_BD55_5B0A5A057D46\"><\/a><em>SessionId<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje identyfikator sesji generowany przez system KSEF <br \/><a id=\"post-449-BKM_BB12D693_5AA3_4D52_BAFD_9638B04BDE6F\"><\/a><code><strong>sessionId<\/strong><\/code> : string &#8211; Unikalny identyfikator sesji<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"InvoiceId\"><\/span><em><a id=\"post-449-BKM_F42656AB_ADAE_4E26_B039_484273B3C51A\"><\/a>InvoiceId<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje identyfikator techniczny faktury, kt\u00f3ry jest zwracany jako atrybut <a href=\"#post-449-BKM_C03DEBBC_C4C2_493E_BB68_84FA80CDBE1C\">id<\/a> klasy <a href=\"#post-449-BKM_1C28A96A_30E8_4D8E_AEDB_02C85E1EF62D\">KsefInvoiceSendResponse<\/a>, a nast\u0119pnie mo\u017ce zosta\u0107 wykorzystany do sprawdzenia statusu przetwarzania faktury wywo\u0142uj\u0105c operacj\u0119 <a href=\"#post-449-BKM_4E604362_F662_48C7_B38C_8BE64F4F0738\">ksefInvoiceStatus.<\/a> <br \/><a id=\"post-449-BKM_8331B5B0_7855_4C5F_A2F8_6B21FCA07298\"><\/a><code><strong>invoiceId<\/strong><\/code> : string &#8211; Identyfikator faktury (techniczny)<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"InvoiceKsefNumber\"><\/span><em><a id=\"post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\"><\/a>InvoiceKsefNumber<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Numer KSeF faktury generowany przez KSeF. <br \/><code><a id=\"post-449-BKM_154AFA1C_9D0C_4C75_AAD7_29BB63423C6E\"><\/a><strong>invoiceKsefNumber<\/strong> <\/code>: string &#8211; Wygenerowany przez KSeF Identyfikator faktury. Wygenerowanie tego identyfikatora potwierdza zapisanie przes\u0142anej faktury w KSeF.<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"QueryId\"><\/span><em><a id=\"post-449-BKM_5EDA1BCB_C6D9_4C25_8D89_4EBC94C91214\"><\/a>QueryId<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa zawiera identyfikator wyszukiwania, kt\u00f3ry jest generowany przez KSeF. <br \/><a id=\"post-449-BKM_5ED45ACC_8176_4DA5_85DD_F8C3EAE2FC4B\"><\/a><code><strong>queryId<\/strong><\/code> : string &#8211; Identyfikator procesu wyszukiwania<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"QueryPartNumber\"><\/span><em><a id=\"post-449-BKM_BC3C4915_1195_411B_B2F3_2E6B406EAB11\"><\/a>QueryPartNumber<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje numer paczki wyszukiwania. <br \/><a id=\"post-449-BKM_4D45BFA7_7251_4801_A2B2_7D9CE337DEE7\"><\/a><code><strong>partNumber<\/strong><\/code> : string &#8211; Identyfikator fragmentu (paczki) wyniku wyszukiwania<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"RequestBody\"><\/span>RequestBody<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Paramtery typu requestBody.<\/p>\r\n<h4 id=\"KsefInvoiceEncrypted\"><span class=\"ez-toc-section\" id=\"KsefInvoiceEncrypted\"><\/span><em>KsefInvoiceEncrypted<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Obiekt reprezentuje przesy\u0142an\u0105 faktur\u0119 w formie zaszyfrowanej.<br \/><a id=\"post-449-BKM_713C307A_E504_4167_951E_FC2B6BD04566\"><\/a><code>encryptedInvoice<\/code> : string &#8211; Atrybut zawieraj\u0105cy plik XML faktury w postaci zaszyfrowanej, kt\u00f3ra jest wysy\u0142ana do KSeF. Plik XML faktury jest zaszyfrowany algorytmem AES256 z u\u017cyciem wektora inicjalizuj\u0105cego (atrybut <a href=\"#initVector\">initVector<\/a> klasy <a href=\"#post-449-BKM_663A19D5_1CA9_45A4_9D58_95D3B0DAFBCD\">KsefSessionOpenOnlineRequest<\/a>) i klucza symetrycznego wygenerowanego przy tworzeniu sesji. <br \/><a id=\"post-449-BKM_FF7AC31E_AA3C_43C4_8B5A_69CD0DAAD3BD\"><\/a><code><strong>invoiceHash<\/strong><\/code> : string &#8211; Atrybut zawiera warto\u015b\u0107 skr\u00f3tu z funkcji SHA256 z oryginalnej (niezaszyfrowanej) postaci XML faktury, kt\u00f3ra jest wysy\u0142ana do KSeF.<br \/><a id=\"post-449-BKM_57CB7FB1_75D9_486F_A485_7C9A09FCDB3C\"><\/a><code><strong>invoiceSize<\/strong><\/code> : int &#8211; Atrybut zawieraj\u0105cy wyliczon\u0105 wielko\u015b\u0107 faktury (rozmiar w bajtach oryginalnej, niezaszyfrowanej postaci XML faktury), kt\u00f3ra jest wysy\u0142ana do KSeF.<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"KsefInvoiceQueryStartRange\"><\/span><a id=\"post-449-BKM_A4AA4DAB_30D5_45CC_BF4A_818BF2ED74B6\"><\/a><em>KsefInvoiceQueryStartRange<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje okres dla jakiego maj\u0105 zosta\u0107 wyszukane faktury. Daty <code>from<\/code> oraz <code>to<\/code>, okre\u015blaj\u0105 dat\u0119 <code>PermanentStorage<\/code>, czyli dat\u0119 trwa\u0142ego zapisu faktury w repozytorium systemu KSeF. Dla przyrostowego pobierania faktur konieczne jest u\u017cycie daty typu <code>PermanentStorage<\/code>, kt\u00f3re zapewnia wiarygodno\u015b\u0107 danych. Oznacza moment trwa\u0142ej materializacji rekordu, jest odporna na asynchroniczne op\u00f3\u017anienia procesu przyjmowania danych i pozwala bezpiecznie wyznacza\u0107 okna przyrostu.<br \/><code><strong>from<\/strong><\/code> : string &#8211; Data od kt\u00f3rej b\u0119d\u0105 wyszukiwane faktury. <br \/><code><strong>to<\/strong><\/code> : string &#8211; Data do kt\u00f3rej b\u0119d\u0105 wyszukiwane faktury.<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"KsefInvoiceQueryStartRequest\"><\/span><a id=\"post-449-BKM_380F543B_A59E_417C_B15F_FBC666DFC45B\"><\/a><em>KsefInvoiceQueryStartRequest<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje \u017c\u0105danie pozwalaj\u0105ce na zdefiniowanie parametr\u00f3w wyszukiwania.<\/p>\r\n<p><code><strong>range<\/strong> <\/code>: <a href=\"#KsefInvoiceQueryStartRange\">KsefInvoiceQueryStartRange<\/a> &#8211; Wyb\u00f3r okresu dla jakiego maj\u0105 zosta\u0107 wyszukane faktury. Wymagalno\u015b\u0107: [1]<strong>.<br \/><\/strong><code>encryptionInfo<\/code> : <a href=\"#EncryptionInfo\">EncryptionInfo<\/a> &#8211; Typ zosta\u0142 opisany w rozdziale <a href=\"#EncryptionInfo\">EncryptionInfo<\/a>. Wymagalno\u015b\u0107: [1].<br \/><code><strong>subjectType<\/strong><\/code> : <a href=\"#SubjectType\">SubjectType<\/a> &#8211; Okre\u015blenie jakiego typu faktury wyszukujemy. Wymagalno\u015b\u0107: [1]:<\/p>\r\n<ul>\r\n<li>sprzeda\u017cowe (Subject1),<\/li>\r\n<li>kosztowe (Subject2),<\/li>\r\n<li>podmiotu trzeciego (Subject3),<\/li>\r\n<li>podmiotu uprawnionego (SubjectAuthorized)<\/li>\r\n<\/ul>\r\n<h5 id=\"SubjectType\"><em>SubjectType<\/em><\/h5>\r\n<p>Enumeracja okre\u015bla mo\u017cliwe typy podmiotu <br \/><code><strong>Subject1<\/strong><\/code> : &#8211; Atrybut oznacza podmiot wystawiaj\u0105cy faktur\u0119 <br \/><code><strong>Subject2<\/strong><\/code> : &#8211; Atrybut oznacza podmiot przyjmuj\u0105cy faktur\u0119 <br \/><code><strong>Subject3<\/strong><\/code> : &#8211; Atrybut oznacza podmiot trzeci <br \/><code><strong>SubjectAuthorized<\/strong><\/code> : &#8211; Atrybut oznacza podmiot uprawniony<\/p>\r\n<h4 id=\"KsefInvoiceSendRequest\"><span class=\"ez-toc-section\" id=\"KsefInvoiceSendRequest\"><\/span><em>KsefInvoiceSendRequest<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje \u017c\u0105danie wys\u0142ania faktury w dw\u00f3ch trybach: szyfrowania albo braku szyfrowania faktur <br \/><code><strong>encrypted<\/strong><\/code> : <a href=\"#KsefInvoiceEncrypted\">KsefInvoiceEncrypted<\/a> &#8211; Atrybut okre\u015bla wariant (choice), kt\u00f3ry s\u0142u\u017cy do przes\u0142ania faktury zaszyfrowanej w sesji utworzonej z szyfrowaniem, czyli ustawione parametry: <a href=\"#encryptedKey\">encryptedKey<\/a> oraz <a href=\"#initVector\">initVector<\/a> podczas tworzenia sesji (<a href=\"#post-449-BKM_663A19D5_1CA9_45A4_9D58_95D3B0DAFBCD\">KsefSessionOpenOnlineRequest<\/a>). Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code><strong>sessionId<\/strong><\/code> : string &#8211; <a href=\"#post-449-BKM_B4E2F9F2_43E3_4B05_8C85_5888E4A9BACC\">Identyfikator sesji<\/a> uzyskany podczas ustanawiania sesji interaktywnej: <a href=\"#ksefSessionOpenOnline\">ksefSessionOpenOnline<\/a>. Wymagalno\u015b\u0107: [1]<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"KsefSessionOpenOnlineRequest\"><\/span><a id=\"post-449-BKM_663A19D5_1CA9_45A4_9D58_95D3B0DAFBCD\"><\/a><em>KsefSessionOpenOnlineRequest<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa reprezentuje \u017c\u0105danie utworzenia sesji interaktywnej.<\/p>\r\n<p><code><strong>invoiceVersion<\/strong><\/code> : <a href=\"#KsefInvoiceVersion\">KsefInvoiceVersion<\/a> &#8211; Wskazanie w jakiej wersji schemy b\u0119d\u0105 przesy\u0142ane faktury KSeF w ramach ustanowionej sesji. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p><code>encryptionInfo<\/code> : <a href=\"#EncryptionInfo\">EncryptionInfo<\/a> &#8211; Typ zosta\u0142 opisany w rozdziale <a href=\"#EncryptionInfo\">EncryptionInfo<\/a>. Wymagalno\u015b\u0107: [1]<\/p>\r\n<h5><em><a id=\"EncryptionInfo\"><\/a>EncryptionInfo<\/em><\/h5>\r\n<p id=\"encryptedKey\"><code><strong>encryptedKey<\/strong><\/code> : string &#8211; Je\u015bli w ramach sesji interaktywnej ma by\u0107 wykorzystane szyfrowanie przesy\u0142anych danych (faktury), to w atrybucie powinien zosta\u0107 zawarty symetryczny klucz szyfruj\u0105cy (AES256) wygenerowany przed otworzeniem nowej sesji i zaszyfrowany kluczem publicznym RSA platformy KSeF pobranym z wykorzystaniem operacji <a href=\"#post-449-BKM_DA691A51_7832_4BB5_83F4_604D2B065754\">ksefPublicKey<\/a>. Wymagalno\u015b\u0107: [1]<\/p>\r\n<p id=\"initVector\"><code><strong>initVector<\/strong><\/code> : string &#8211; Atrybut opisuje tzw. wektor inicjalizacyjny. Dopuszczalny algorytm szyfrowania kluczem symetrycznym AES to AES\/CBC\/PKCS5Padding (PKCS#7). Dopuszczalny klucz symetryczny to AES o d\u0142ugo\u015bci 256 bit\u00f3w wspierany losowym wektorem inicjalizacyjnym d\u0142ugo\u015bci 16 bajt\u00f3w. Wymagalno\u015b\u0107: [1]<\/p>\r\n<h4><span class=\"ez-toc-section\" id=\"KsefInvoiceVisualizeRequest\"><\/span><a id=\"post-449-BKM_971DE727_C4DE_4C3F_A3B6_94318FC8866B\"><\/a><em>KsefInvoiceVisualizeRequest<\/em><span class=\"ez-toc-section-end\"><\/span><\/h4>\r\n<p>Klasa umo\u017cliwia zdefiniowanie parametr\u00f3w zwi\u0105zanych z wizualizacj\u0105 faktury ustrukturyzowanej (faktury KSeF) <br \/><code><strong>templateName<\/strong><\/code>: string &#8211; Atrybut definiuje nazw\u0119 szablonu jaki ma by\u0107 wykorzystany do wizualizacji faktury.<\/p>\r\n<p><code>offline<\/code>: boolean &#8211; Atrybut okre\u015bla czy do wizualizacji ma zosta\u0107 do\u0142\u0105czony kod QR. Opcja mo\u017ce mie\u0107 zastosowanie dla faktur wystawianych kontrahentom zagranicznym, kt\u00f3rzy i tak nie b\u0119d\u0105 mie\u0107 dost\u0119pu do KSeF, a spos\u00f3b przekazania (dostarczenia) faktury b\u0119dzie zale\u017ca\u0142 od podmiotu wystawiaj\u0105cego.<\/p>\r\n<p><strong><\/strong><code><strong>invoiceKsefNumber<\/strong><\/code>: string &#8211; Atrybut zawiera unikalny <a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">numer KSeF faktury<\/a> nadany przez Krajowy System e-Faktur podczas poprawnego wys\u0142ania faktury do KSeF.\u00a0<\/p>\r\n<p><code><strong>invoiceData<\/strong><\/code>: string &#8211; Atrybut przekazuje plik XML faktury KSeF dla kt\u00f3rej ma zosta\u0107 wykonana wizualizacja. Plik XML faktury powinien by\u0107 zakodowany base64.<\/p>\r\n<p><code><strong>outputFormat<\/strong><\/code>: <a href=\"#post-449-BKM_228F709D_A191_4EC3_B3D0_1E5C58CBE49E\">OutputFormat<\/a> &#8211; Atrybut mo\u017ce przyjmowa\u0107 jedn\u0105 z dw\u00f3ch mo\u017cliwych do wprowadzenia warto\u015bci zdefiniowanych w enumeracji <a href=\"#post-449-BKM_228F709D_A191_4EC3_B3D0_1E5C58CBE49E\">OutputFormat.<\/a><\/p>\r\n<p><strong>outputLanguage<\/strong> : <a href=\"#post-449-BKM_D4CAA4F7_067E_4E52_817E_931699AB95DE\">OutputLanguage<\/a> &#8211; Atrybut mo\u017ce przyjmowa\u0107 jedn\u0105 z trzech mo\u017cliwych do wprowadzenia warto\u015bci zdefiniowanych w enumeracji <a href=\"#post-449-BKM_D4CAA4F7_067E_4E52_817E_931699AB95DE\">OutputLanguage.<\/a><\/p>\r\n<p>&nbsp;<\/p>\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Enumeracje\"><\/span><a id=\"post-449-ENUMERACJE\"><\/a><a id=\"post-449-BKM_D9A08F90_A57A_4C3D_B5D8_E226CDFA5A5B\"><\/a>Enumeracje<span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n<p>Rozdzia\u0142 zawiera zestawienie wszystkich enumeracji mo\u017cliwych do u\u017cycia w interfejsie.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-32.png\" width=\"662\" height=\"457\" alt=\"REST API KSeF 2.0 - enumeracje\" class=\"aligncenter wp-image-213 size-full\" title=\"REST API KSeF 2.0 - enumeracje\" srcset=\"https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-32.png 662w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-32-300x207.png 300w, https:\/\/ksef24.com\/wp-content\/uploads\/2026\/01\/image-32-18x12.png 18w\" sizes=\"auto, (max-width: 662px) 100vw, 662px\" \/><\/p>\r\n<p style=\"text-align: center;\">Diagram: Enumeracje<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"InvoiceStatus\"><\/span><a id=\"post-449-BKM_3107DB78_BF59_438B_8455_BC16B7B2E84B\"><\/a><em>InvoiceStatus<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Enumeracja okre\u015blaj\u0105ca mo\u017cliwe statusu przes\u0142anej faktury zwr\u00f3cone przez <a href=\"#post-449-BKM_5A623BA4_65E7_40EB_8218_16C9A3739076\">KsefInvoiceStatusResponse<\/a> <br \/><a id=\"post-449-BKM_B6FF2C38_D527_4216_AADD_43EA4F2AAA24\"><\/a><code><strong>processing<\/strong><\/code> : string &#8211; Zwr\u00f3cony z KSeF status oznacza \u017ce wys\u0142ana faktura nadal jest przetwarzana. Nale\u017cy odczeka\u0107 chwilk\u0119 i jeszcze raz sprawdzi\u0107 status faktury. <br \/><a id=\"post-449-BKM_BC2A5432_4439_4CE2_91BF_527E7C711E59\"><\/a><code><strong>accepted<\/strong><\/code> : string &#8211; Zwr\u00f3cony z KSeF status oznacza \u017ce wys\u0142ana faktura zosta\u0142a poprawnie odebrana i zosta\u0142 dla niej nadany unikalny numer KSeF (<a href=\"#post-449-BKM_A332AC3F_A29E_4CCD_964A_114B6C3F7A90\">InvoiceKsefNumber<\/a>). <br \/><a id=\"post-449-BKM_E18D6FC2_ABE2_485E_A480_5252E27BBB73\"><\/a><code><strong>rejected<\/strong><\/code> : string &#8211; Zwr\u00f3cony z KSeF status oznacza \u017ce wys\u0142ana faktura zosta\u0142a odrzucona przez KSeF. W szczeg\u00f3\u0142ach komunikatu b\u0142\u0119du (<a href=\"#post-449-BKM_ED51A11B_2565_461E_9F49_113848DDC4F1\">Error<\/a>), nale\u017cy sprawdzi\u0107 co by\u0142o powodem odrzucenia faktury.<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"Algorithm\"><\/span><a id=\"post-449-BKM_AA76CC42_39D3_4287_B024_34CF08DF017F\"><\/a><em>Algorithm<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Wspierane algorytmy kluczy kryptograficznych przez KSeF <br \/><a id=\"post-449-BKM_A0CE3580_2292_4A6B_932F_9386439ED3EC\"><\/a><code><strong>RSA<\/strong><\/code> : &#8211; Obs\u0142ugiwany algorytm kluczy kryptograficznych<\/p>\r\n<h3 id=\"KsefInvoiceVersion\"><span class=\"ez-toc-section\" id=\"KsefInvoiceVersion\"><\/span><em>KsefInvoiceVersion<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Wersja schemy dla faktur KSeF \u00a0<br \/><code><strong>v2<\/strong><\/code> : &#8211; Druga wersja schemy <br \/><code><strong>v3<\/strong><\/code> : &#8211; Trzecia wersja schemy (obowi\u0105zuj\u0105ca).<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"OutputFormat\"><\/span><a id=\"post-449-BKM_228F709D_A191_4EC3_B3D0_1E5C58CBE49E\"><\/a><em>OutputFormat<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Enumeracja definiuje format w jakim ma zosta\u0107 wygenerowana wizualizacja faktury <br \/><code><strong>html<\/strong><\/code> : string &#8211; Warto\u015b\u0107 okre\u015bla, \u017ce wizualizacja faktury powinna by\u0107 zwr\u00f3cona w formacie HTML. <br \/><code><strong>pdf<\/strong><\/code> : string &#8211; Warto\u015b\u0107 okre\u015bla, \u017ce wizualizacja faktury powinna by\u0107 zwr\u00f3cona w formacie PDF.<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"OutputLanguage\"><\/span><a id=\"post-449-BKM_D4CAA4F7_067E_4E52_817E_931699AB95DE\"><\/a><em>OutputLanguage<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Enumeracja definiuje j\u0119zyk w jakim ma zosta\u0107 wygenerowana wizualizacja faktury <br \/><code><strong>pl<\/strong><\/code> : string &#8211; Warto\u015b\u0107 okre\u015bla, \u017ce wizualizacji faktury powinna by\u0107 w j\u0119zyku polskim. <br \/><code><strong>en<\/strong><\/code> : string &#8211; Warto\u015b\u0107 okre\u015bla, \u017ce wizualizacji faktury powinna by\u0107 w j\u0119zyku angielskim. <br \/><code><strong>pl_en<\/strong><\/code> : string &#8211; Warto\u015b\u0107 okre\u015bla, \u017ce wizualizacji faktury powinna by\u0107 w j\u0119zyku polskim i angielskim.<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"SessionStatus\"><\/span><a id=\"post-449-BKM_6D341082_98B9_42D2_B3BC_E8325D57AF97\"><\/a><em>SessionStatus<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Enumeracja definiuje jakie statusy mo\u017ce mie\u0107 sesja interaktywna <br \/><a id=\"post-449-BKM_7C82D54C_343F_4384_8E86_771F1B33E3A8\"><\/a><code><strong>active<\/strong><\/code> : string &#8211; Atrybut oznacza aktywn\u0105 sesj\u0119<br \/><a id=\"post-449-BKM_267D3F3E_3F3D_4E80_A40D_DFCF26125384\"><\/a><code><strong>closed<\/strong><\/code> : string &#8211; Atrybut oznacza zako\u0144czon\u0105 sesj\u0119.<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"SubjectType\"><\/span><em>SubjectType<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Enumeracja okre\u015bla mo\u017cliwe typy podmiotu <br \/><code><strong>subject1<\/strong><\/code> : &#8211; Atrybut oznacza podmiot wystawiaj\u0105cy faktur\u0119 <br \/><code><strong>subject2<\/strong><\/code> : &#8211; Atrybut oznacza podmiot przyjmuj\u0105cy faktur\u0119 <br \/><code><strong>subject3<\/strong><\/code> : &#8211; Atrybut oznacza podmiot trzeci <br \/><code><strong>subjectAuthorized<\/strong><\/code> : &#8211; Atrybut oznacza podmiot uprawniony<\/p>\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Odpowiedzi_typu_content\"><\/span>Odpowiedzi typu content<span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n<p>Rozdzia\u0142 identyfikuje i grupuje klasy zwi\u0105zane z poszczeg\u00f3ln\u0105 zawarto\u015bci\u0105, jaka mo\u017ce wyst\u0105pi\u0107 podczas wymiany informacji z KSeF.<\/p>\r\n<p style=\"text-align: center;\"><a id=\"post-449-BKM_745E1B39_4BEC_4008_ABE9_A8CCCE40CF88\"><\/a><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-634\" src=\"https:\/\/ksefapi.pl\/wp-content\/uploads\/2024\/04\/5.png\" alt=\"KSeF REST API - zawarto\u015b\u0107 (content)\" width=\"720\" height=\"300\" \/>Diagram:\u00a0 Odpowiedzi typu content<\/p>\r\n<h3 id=\"Content\"><span class=\"ez-toc-section\" id=\"Content\"><\/span><em>Content<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Nadrz\u0119dna klasa opisuj\u0105ca zawarto\u015b\u0107 po kt\u00f3rej dziedzicz\u0105 pozosta\u0142e klasy <br \/><a id=\"post-449-BKM_B7EF5834_1374_4C1E_B543_9A164F6809D5\"><\/a><code><strong>description<\/strong><\/code> : string &#8211; Opis zawarto\u015bci dla danej klasy <br \/><a id=\"post-449-BKM_3DD9DA92_7C63_4A87_8116_D15B1247DBB8\"><\/a><code><strong>format<\/strong><\/code> : binary &#8211; Format zawarto\u015bci &#8211; zawsze BINARY <br \/><a id=\"post-449-BKM_94BBE744_5A94_4590_903D_EEAB9D128EA4\"><\/a><code><strong>type<\/strong><\/code> : string &#8211; Typ zawarto\u015bci &#8211; zawsze STRING<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"ApplicationZipContent\"><\/span><em><a id=\"post-449-BKM_0F091857_5CA9_4A1C_9E5F_B65F98CDF963\"><\/a>ApplicationZipContent<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Klasa reprezentuje archiwum ZIP z fakturami KSeF w postaci XML <br \/><code><strong>description<\/strong><\/code> : string &#8211; Archiwum ZIP z fakturami XML<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"ApplicationOctetStreamContent\"><\/span><a id=\"post-449-BKM_14FB405A_D772_455F_8B44_3252BB80A3DC\"><\/a><em>ApplicationOctetStreamContent<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Klasa reprezentuje dane w jednej z dw\u00f3ch mo\u017cliwych postaci: a) zaszyfrowan\u0105 pojedyncz\u0105 faktur\u0119 KSeF (XML), b) zaszyfrowane archiwum ZIP z wieloma fakturami KSeF (XML) <br \/><code><strong>description<\/strong><\/code> : string &#8211; Zaszyfrowana pojedyncza faktura XML albo zaszyfrowane archiwum ZIP z fakturami XML<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"TextXmlContent\"><\/span><a id=\"post-449-BKM_4ABF7647_7686_47D5_B5B0_70C5513BF908\"><\/a><em>TextXmlContent<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Klasa reprezentuje Faktur\u0119 KSeF lub Urz\u0119dowe Potwierdzenie Otrzymania (UPO) w postaci XML <br \/><code><strong>description<\/strong><\/code> : string &#8211; Faktura lub UPO<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"ApplicationPdfContent\"><\/span><a id=\"post-449-BKM_B4C5AFC5_C4FA_4E6C_AD88_49F26B7AF795\"><\/a><em>ApplicationPdfContent<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Klasa reprezentuje wygenerowan\u0105 wizualizacj\u0119 faktury KSeF w postaci pliku PDF <br \/><a id=\"post-449-BKM_066A9F50_094B_4E3C_AADE_8E16D453063F\"><\/a><code><strong>description<\/strong><\/code> : string &#8211; = Wizualizacja PDF<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"TextHtmlContent\"><\/span><em>TextHtmlContent<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Klasa reprezentuje wygenerowan\u0105 wizualizacj\u0119 faktury KSeF w postaci pliku HTML <br \/><a id=\"post-449-BKM_207D48DD_B04F_4E80_B8FE_E7B954EF2AE5\"><\/a><code><strong>description<\/strong><\/code> : string &#8211; = Wizualizacja HTML<\/p>\r\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Komunikaty_bledow\"><\/span><a id=\"post-449-KOMUNIKATY_B\u00a3\u00caD\u00d3W\"><\/a><a id=\"post-449-BKM_FB59E57F_F3F5_41DF_90B9_4A86EB621297\"><\/a>Komunikaty b\u0142\u0119d\u00f3w<span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n<p>Rozdzia\u0142 zawiera opis klasy odpowiedzialnej za obs\u0142ug\u0119 komunikat\u00f3w b\u0142\u0119d\u00f3w.<\/p>\r\n<h3><span class=\"ez-toc-section\" id=\"Error\"><\/span><em><a id=\"post-449-BKM_10DB3E1E_4E99_4AE7_B63C_11FF70E9C13B\"><\/a>Error<\/em><span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Klasa reprezentuje struktur\u0119 zwracanych b\u0142\u0119d\u00f3w <br \/><a id=\"post-449-BKM_440F2C0D_B02E_40C8_83F4_FF6089EE9CA9\"><\/a><code><strong>code<\/strong><\/code> : string &#8211; Unikalny kod b\u0142\u0119du <br \/><a id=\"post-449-BKM_205B6F52_6695_4462_9F87_1131B5D3DC1D\"><\/a><code><strong>description<\/strong><\/code> : string &#8211; Opis b\u0142\u0119du<br \/><a id=\"post-449-BKM_332861F1_6F93_490C_9977_2A6D30C258D8\"><\/a><code><strong>details<\/strong><\/code> : string &#8211; Szczeg\u00f3\u0142owy opis b\u0142\u0119du. Atrybut wykorzystywany w szczeg\u00f3lno\u015bci podczas generowania pliku XML faktury (<a href=\"#post-449-BKM_50F79695_ADB8_4A0D_8322_D287CC1E262B\">ksefInvoiceGenerate<\/a>) w przypadku kiedy wyst\u0105pi\u0142 b\u0142\u0105d niezgodno\u015bci ze schem\u0105. Zawsze zwracana jest informacja o pierwszym napotkanym b\u0142\u0119dzie. (Wymagalno\u015b\u0107: [0..1]).\u00a0B\u0142\u0119dy wyst\u0119puj\u0105ce w obszarze generowania faktur zosta\u0142y szczeg\u00f3\u0142owo opisane w rozdziale <a href=\"#post-449-BKM_D0DBD58D_D4AD_400E_9BC6_DD7A925B0B35\">Komunikaty b\u0142\u0119d\u00f3w &#8211; Faktura<\/a>.<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Autoryzacja_i_szyfrowanie\"><\/span><a id=\"post-449-AUTORYZACJA_I_SZYFROWANIE\"><\/a><a id=\"post-449-BKM_2BDC9422_4B92_476A_B551_76F2B179E4A9\"><\/a>Autoryzacja i szyfrowanie<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Zbi\u00f3r b\u0142\u0119d\u00f3w zwi\u0105zany z obszarem autroyzacji i szyfrowania.<\/p>\r\n<p style=\"text-align: center;\"><a id=\"post-449-BKM_ED51A11B_2565_461E_9F49_113848DDC4F1\"><\/a> <img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-639\" src=\"https:\/\/ksefapi.pl\/wp-content\/uploads\/2024\/04\/6.png\" alt=\"KSeF REST API - komunikaty b\u0142\u0119d\u00f3w (autoryzacja i szyfrowanie)\" width=\"560\" height=\"437\" \/>Diagram: Komunikaty b\u0142\u0119d\u00f3w &#8211; autoryzacja i szyfrowanie<\/p>\r\n<h4><a id=\"post-449-BKM_05AA074B_45D0_45B9_9612_67F8126D0B84\"><\/a>AES_IV_LENGTH\u00a0&#8211; Niepoprawna d\u0142ugo\u015b\u0107 wektora inicjuj\u0105cego<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1002 <br \/><code><strong>description<\/strong> <\/code>= Wektor inicjuj\u0105cy ma nieprawid\u0142ow\u0105 d\u0142ugo\u015b\u0107<\/p>\r\n<h4>AES_KEY_LENGTH &#8211; Niepoprawna d\u0142ugo\u015b\u0107 klucza symetrycznego, s\u0142u\u017c\u0105cego do szyfrowania danych<\/h4>\r\n<p><code><strong>code<\/strong><\/code> = 1003 <br \/><code><strong>description<\/strong><\/code> = Klucz symetryczny ma nieprawid\u0142ow\u0105 d\u0142ugo\u015b\u0107<\/p>\r\n<h4><a id=\"post-449-BKM_4DF7C840_6CA0_4F12_84AE_7C13E0BE196F\"><\/a>AUTH_CHALLENGE &#8211; B\u0142\u0105d pobrania wyzwania autoryzuj\u0105cego<\/h4>\r\n<p><code><strong>code<\/strong><\/code> = 1001 <br \/><code><strong>description<\/strong><\/code> = Nie uda\u0142o si\u0119 pobra\u0107 wyzwania autoryzacyjnego z systemu KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_D622D6B5_ABEB_4B8D_8FD3_AE4655EF9AE9\"><\/a>B64_DECODE &#8211; B\u0142\u0119dnie kodowana warto\u015b\u0107 z wykorzystaniem base64<\/h4>\r\n<p><code><strong>code<\/strong><\/code> = 1005 <br \/><code><strong>description<\/strong><\/code> = Nieprawid\u0142owe kodowanie base64 warto\u015bci<\/p>\r\n<h4><a id=\"post-449-BKM_C8DCAC4C_3CB4_4126_BC42_EA46CDC95604\"><\/a>KSEF_PUBLIC_KEY &#8211; B\u0142\u0105d pobierania klucza publicznego KSeF<\/h4>\r\n<p><code><strong>code<\/strong><\/code> = 1004 <br \/><code><strong>description<\/strong><\/code> = Nie uda\u0142o si\u0119 pobra\u0107 klucza publicznego systemu KSeF<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Sesja\"><\/span><a id=\"post-449-SESJA\"><\/a><a id=\"post-449-BKM_EAE18B50_220A_42F6_840F_19CE03BB8E3B\"><\/a>Sesja<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Zbi\u00f3r b\u0142\u0119d\u00f3w zwi\u0105zany z zarz\u0105aniem sesj\u0105 interaktywn\u0105.<\/p>\r\n<p style=\"text-align: center;\"><a id=\"post-449-BKM_F0AC801E_65ED_4A4E_8C1D_257EC354C5EC\"><\/a> <img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-640\" src=\"https:\/\/ksefapi.pl\/wp-content\/uploads\/2024\/04\/7.png\" alt=\"KSeF REST API - komunikaty b\u0142\u0119d\u00f3w (sesja)\" width=\"766\" height=\"867\" \/>Diagram: Komunikaty b\u0142\u0119d\u00f3w &#8211; sesja<\/p>\r\n<h4><a id=\"post-449-BKM_A2B1E0CA_BB97_4E48_80F0_2D48EBC42260\"><\/a>SESSION_ACCESS &#8211; B\u0142\u0105d dost\u0119pu do sesji<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1110 <br \/><code><strong>description<\/strong> <\/code>= U\u017cytkownik nie ma dost\u0119pu do podanej sesji<\/p>\r\n<h4><a id=\"post-449-BKM_570A7B8B_2753_4F77_8DD1_AE3A820AE40C\"><\/a>SESSION_CLOSE &#8211; B\u0142\u0105d podczas pr\u00f3by zamkni\u0119cia sesji interaktywnej<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1106 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 zamkn\u0105\u0107 sesji w systemie KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_93311677_C938_425A_BE3C_7980DDB074DF\"><\/a>SESSION_INIT &#8211; B\u0142\u0105d inicjacji sesji interaktywnej z systemem KSeF<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1102 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 zainicjowa\u0107 nowej sesji w systemie KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_921BF248_7E0F_4029_A5CE_B4A070809704\"><\/a>SESSION_NO_UPO &#8211; Obiekt UPO nie zosta\u0142 jeszcze wygenerowany<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1111 <br \/><code><strong>description<\/strong> <\/code>= Brak UPO<\/p>\r\n<h4>SESSION_OPEN &#8211; B\u0142\u0105d tworzenia nowej sesji interaktywnej z KSeF<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1103 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 utworzy\u0107 nowej sesji w systemie KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_8751B452_9D5B_4295_A792_0FC3D86650DF\"><\/a>SESSION_REF_NUM &#8211; Niepoprawny identyfikator sesji interaktywnej KSeF<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1104 <br \/><code><strong>description<\/strong> <\/code>= Brak identyfikatora nowej sesji KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_F777D6B3_99EF_4824_A942_554FBA18D7CB\"><\/a>SESSION_SAVE &#8211; B\u0142\u0105d aktualizacji sesji<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1108 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 zaktualizowa\u0107 danych sesji KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_B3DBC2B6_B6C6_42DA_B74F_E65A977046F5\"><\/a>SESSION_STATUS &#8211; B\u0142\u0105d pobierania statusu sesji interaktywnej w KSeF<\/h4>\r\n<p><code><strong>code<\/strong><\/code> = 1105 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 pobra\u0107 bie\u017c\u0105cego statusu sesji z systemu KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_C24B5BC2_C0D8_4591_8CBA_F4FD074879DF\"><\/a>SESSION_TOKEN &#8211; B\u0142\u0105d przygotowania wyzwania autoryzacyjnego<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1101 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 przygotowa\u0107 odpowiedzi na wyzwanie autoryzacyjne dla systemu KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_BDD8BC9D_FBD6_4B9A_B3DA_F03C76AD7724\"><\/a>SESSION_UNKNOWN &#8211; B\u0142\u0119dny identyfikator sesji<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1109 <br \/><code><strong>description<\/strong> <\/code>= Nieznany identyfikator sesji KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_44587751_4678_4FD1_AB0B_DA2685E2AD6E\"><\/a>SESSION_UPO &#8211; B\u0142\u0105d pobrania UPO<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1107 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 pobra\u0107 UPO z systemu KSeF<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Faktura\"><\/span><a id=\"post-449-FAKTURA\"><\/a><a id=\"post-449-BKM_D0DBD58D_D4AD_400E_9BC6_DD7A925B0B35\"><\/a>Faktura<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Zbi\u00f3r b\u0142\u0119d\u00f3w zwi\u0105zany z generowaniem, wysy\u0142k\u0105, pobieraniem oraz wizualizacj\u0105 faktur.<\/p>\r\n<p style=\"text-align: center;\"><a id=\"post-449-BKM_F6264D58_F4C2_4D53_85ED_908571B83AF4\"><\/a> <img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-643\" src=\"https:\/\/ksefapi.pl\/wp-content\/uploads\/2024\/04\/8.png\" alt=\"KSeF REST API - komunikaty b\u0142\u0119d\u00f3w (faktura)\" width=\"639\" height=\"707\" \/>Diagram: Komunikaty b\u0142\u0119d\u00f3w &#8211; faktura<\/p>\r\n<h4><a id=\"post-449-BKM_C9DD9726_B4B1_43E4_A4FB_8DF204AE457E\"><\/a>INVOICE_FORMAT &#8211; B\u0142\u0119dny format przes\u0142anej faktury<\/h4>\r\n<p><strong><code>code <\/code>= 1203<br \/><code>description<\/code><\/strong> = Faktura ma nieprawid\u0142owy format<\/p>\r\n<h4><a id=\"post-449-BKM_E218F5D7_D0BD_4A57_A826_18DEC27F90B4\"><\/a>INVOICE_INPUT &#8211; Brak wymaganych metadanych opisuj\u0105cych faktur\u0119<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1208 <br \/><code><strong>description<\/strong> <\/code>= Brak wymaganych metadanych faktury<\/p>\r\n<h4><a id=\"post-449-BKM_ECFB8D38_DF27_4FDD_9969_3B6C2D77C905\"><\/a>INVOICE_SAVE &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas aktualizacji danych faktury<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1206 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 zaktualizowa\u0107 danych faktury<\/p>\r\n<h4><a id=\"post-449-BKM_6BBCE424_A084_4686_B4FE_3A99359CA922\"><\/a>INVOICE_SEND &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas przesy\u0142ania faktury do KSeF<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1204 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 wys\u0142a\u0107 faktury do systemu KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_1AEA9A93_A06E_4119_B269_CC61B304FF4D\"><\/a>INVOICE_SIZE &#8211; Za du\u017cy rozmiar faktury<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1202 <br \/><code><strong>description<\/strong> <\/code>= Faktura ma niedopuszczalny rozmiar<\/p>\r\n<h4><a id=\"post-449-BKM_EA59C349_9CA4_4730_92A4_9CEE996DBFA8\"><\/a>INVOICE_STATUS &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas pobierania statusu faktury<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1205 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 pobra\u0107 bie\u017c\u0105cego statusu faktury z systemu KSeF<\/p>\r\n<h4><a id=\"post-449-BKM_BF80D85C_3DC8_40AB_AF95_025A54E6655B\"><\/a>INVOICE_UNKNOWN &#8211; B\u0142\u0119dny identyfikator faktury<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1207 <br \/><code><strong>description<\/strong> <\/code>= Nieznany identyfikator faktury<\/p>\r\n<h4><a id=\"post-449-BKM_DCB669EA_E73D_4E0A_A083_BF32CC1FDAF3\"><\/a>INVOICE_VERSION &#8211; B\u0142\u0119dna wersja schemy faktury<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1201 <br \/><code><strong>description<\/strong> <\/code>= Nieprawid\u0142owa wersja formatu faktury<\/p>\r\n<h4><a id=\"post-449-BKM_63351713_B0B0_49BB_B268_ED3072DBD40D\"><\/a>INVOICE_VISUALIZE &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas generowania wizualizacji faktury<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1209 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 wygenerowa\u0107 wizualizacji faktury<\/p>\r\n<h3 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Wyszukiwanie\"><\/span><a id=\"post-449-WYSZUKIWANIE\"><\/a><a id=\"post-449-BKM_34B67330_F5BA_4B8E_8493_123D2BEEBBDC\"><\/a>Wyszukiwanie<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n<p>Zbi\u00f3r b\u0142\u0119d\u00f3w zwi\u0105zany z wszykiwaniem faktur w KSeF<\/p>\r\n<p style=\"text-align: center;\"><a id=\"post-449-BKM_9A507DC2_4F40_430C_AC2A_C4280427ACF9\"><\/a> <img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-645\" src=\"https:\/\/ksefapi.pl\/wp-content\/uploads\/2024\/04\/9.png\" alt=\"KSeF REST API - wyszukiwanie\" width=\"639\" height=\"319\" \/>Diagram: Komunikaty b\u0142\u0119d\u00f3w &#8211; wyszukiwanie<\/p>\r\n<h4><a id=\"post-449-BKM_5736024C_DC45_4459_ADD1_D00D39621D24\"><\/a>QUERY_INVOICE_INIT &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas inicjacji procesu wyszukiwania faktur<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1302 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 rozpocz\u0105\u0107 procesu wyszukiwania faktur<\/p>\r\n<h4><a id=\"post-449-BKM_74C732A8_4230_44F6_8AA1_78CF9CA73E71\"><\/a>QUERY_INVOICE_PARAMS &#8211; B\u0142\u0119dne kryteria wyszukiwania<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1301 <br \/><code><strong>description<\/strong> <\/code>= Nieprawid\u0142owe lub niekompletne kryteria wyszukiwania faktur<\/p>\r\n<h4><a id=\"post-449-BKM_C2F6549E_7944_4356_B8FA_047AA593855E\"><\/a>QUERY_INVOICE_RESULT &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas pobierania wynik\u00f3w wyszukiwania faktur<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1304 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 pobra\u0107 wyniku wyszukiwania faktur<\/p>\r\n<h4><a id=\"post-449-BKM_8C805E80_0CA0_4D0E_B344_4201B636589A\"><\/a>QUERY_INVOICE_STATUS &#8211; Wyst\u0105pi\u0142 b\u0142\u0105d podczas sprawdzania statusu wyszukiwania faktur<\/h4>\r\n<p><code><strong>code<\/strong> <\/code>= 1303 <br \/><code><strong>description<\/strong> <\/code>= Nie uda\u0142o si\u0119 pobra\u0107 statusu procesu wyszukiwania faktur<\/p>\r\n<!-- wp:columns -->\r\n<div class=\"wp-block-columns\"><!-- wp:column {\"width\":\"100%\"} -->\r\n<div class=\"wp-block-column\">\u00a0<\/div>\r\n<\/div><!-- \/wp:post-content -->","protected":false},"excerpt":{"rendered":"<p>\u00a0 Wersja dokumentacji: 2.1 (changelog) Data wersji: 2026-03-14 Dokumentacja integracyjna interfejsu REST API dla Krajowego Systemu e-Faktur (KSeF 2.0) Komponenty Na potrzeby niniejszej dokumentacji zosta\u0142y przyj\u0119te 3 podstawowe komponenty, kt\u00f3re uczestnicz\u0105 w procesach biznesowych zwi\u0105zanych z obs\u0142ug\u0105 faktur w ramach KSeF 2.0: System wywo\u0142uj\u0105cy REST API KSeF 2.0 System KSeF [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"page-templates\/template-fullwidth.php","meta":{"footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/ksef24.com\/en\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_GB\" \/>\n\t\t<meta property=\"og:site_name\" content=\"KSeF REST API - dokumentacja integracyjna dla faktur KSeF - REST API dla Krajowego Systemu e-Faktur - kompleksowa obs\u0142uga KSeF\" \/>\n\t\t<meta property=\"og:type\" content=\"website\" \/>\n\t\t<meta property=\"og:title\" content=\"KSeF REST API - dokumentacja integracyjna dla faktur KSeF\" \/>\n\t\t<meta property=\"og:description\" content=\"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/ksef24.com\/en\/\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"KSeF REST API - dokumentacja integracyjna dla faktur KSeF\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en#listItem\",\"position\":1,\"name\":\"Dom\",\"item\":\"https:\\\/\\\/ksef24.com\\\/en\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#listItem\",\"name\":\"KSeF REST API\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#listItem\",\"position\":2,\"name\":\"KSeF REST API\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en#listItem\",\"name\":\"Dom\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#organization\",\"name\":\"KSeF REST API - dokumentacja integracyjna dla faktur KSeF\",\"description\":\"REST API dla Krajowego Systemu e-Faktur - kompleksowa obs\\u0142uga KSeF\",\"url\":\"https:\\\/\\\/ksef24.com\\\/en\\\/\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#webpage\",\"url\":\"https:\\\/\\\/ksef24.com\\\/en\\\/\",\"name\":\"KSeF REST API - dokumentacja integracyjna dla faktur KSeF\",\"description\":\"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\\u00f3w biznesowych generowania, wys\\u0142ania oraz pobrania faktur KSeF\",\"inLanguage\":\"en-GB\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#breadcrumblist\"},\"datePublished\":\"2024-04-19T09:47:36+00:00\",\"dateModified\":\"2026-06-08T09:20:19+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/ksef24.com\\\/en\\\/\",\"name\":\"KSeF REST API - dokumentacja integracyjna dla faktur KSeF\",\"description\":\"REST API dla Krajowego Systemu e-Faktur - kompleksowa obs\\u0142uga KSeF\",\"inLanguage\":\"en-GB\",\"publisher\":{\"@id\":\"https:\\\/\\\/ksef24.com\\\/en\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"KSeF REST API - integration documentation for KSeF invoices","description":"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF","canonical_url":"https:\/\/ksef24.com\/en\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/ksef24.com\/en\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/ksef24.com\/en#listItem","position":1,"name":"Dom","item":"https:\/\/ksef24.com\/en","nextItem":{"@type":"ListItem","@id":"https:\/\/ksef24.com\/en\/#listItem","name":"KSeF REST API"}},{"@type":"ListItem","@id":"https:\/\/ksef24.com\/en\/#listItem","position":2,"name":"KSeF REST API","previousItem":{"@type":"ListItem","@id":"https:\/\/ksef24.com\/en#listItem","name":"Dom"}}]},{"@type":"Organization","@id":"https:\/\/ksef24.com\/en\/#organization","name":"KSeF REST API - dokumentacja integracyjna dla faktur KSeF","description":"REST API dla Krajowego Systemu e-Faktur - kompleksowa obs\u0142uga KSeF","url":"https:\/\/ksef24.com\/en\/"},{"@type":"WebPage","@id":"https:\/\/ksef24.com\/en\/#webpage","url":"https:\/\/ksef24.com\/en\/","name":"KSeF REST API - dokumentacja integracyjna dla faktur KSeF","description":"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF","inLanguage":"en-GB","isPartOf":{"@id":"https:\/\/ksef24.com\/en\/#website"},"breadcrumb":{"@id":"https:\/\/ksef24.com\/en\/#breadcrumblist"},"datePublished":"2024-04-19T09:47:36+00:00","dateModified":"2026-06-08T09:20:19+00:00"},{"@type":"WebSite","@id":"https:\/\/ksef24.com\/en\/#website","url":"https:\/\/ksef24.com\/en\/","name":"KSeF REST API - dokumentacja integracyjna dla faktur KSeF","description":"REST API dla Krajowego Systemu e-Faktur - kompleksowa obs\u0142uga KSeF","inLanguage":"en-GB","publisher":{"@id":"https:\/\/ksef24.com\/en\/#organization"}}]},"og:locale":"en_GB","og:site_name":"KSeF REST API - dokumentacja integracyjna dla faktur KSeF - REST API dla Krajowego Systemu e-Faktur - kompleksowa obs\u0142uga KSeF","og:type":"website","og:title":"KSeF REST API - dokumentacja integracyjna dla faktur KSeF","og:description":"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF","og:url":"https:\/\/ksef24.com\/en\/","twitter:card":"summary_large_image","twitter:title":"KSeF REST API - dokumentacja integracyjna dla faktur KSeF","twitter:description":"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF"},"aioseo_meta_data":{"post_id":"2","title":"KSeF REST API - integration documentation for KSeF invoices","description":"Dokumentacja interfejsu REST API dla Krajowego Systemu e-Faktur. Opis klas, operacji oraz proces\u00f3w biznesowych generowania, wys\u0142ania oraz pobrania faktur KSeF","keywords":null,"keyphrases":{"focus":{"keyphrase":"ksef","score":67,"analysis":{"keyphraseInTitle":{"score":9,"maxScore":9,"error":0},"keyphraseInDescription":{"score":9,"maxScore":9,"error":0},"keyphraseLength":{"score":9,"maxScore":9,"error":0,"length":1},"keyphraseInIntroduction":{"score":3,"maxScore":9,"error":1},"keyphraseInSubHeadings":{"score":3,"maxScore":9,"error":1},"keyphraseInImageAlt":{"score":9,"maxScore":9,"error":0},"keywordDensity":{"type":"high","score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"website","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"WebPage","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"titles":[],"descriptions":[],"socialPosts":{"email":[],"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2024-04-19 11:42:37","updated":"2026-06-08 09:34:41","focus_keyword":"ksef","additional_keywords":null,"truseo_locale":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/ksef24.com\/en\" title=\"Dom\">Dom<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tKSeF REST API\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Dom","link":"https:\/\/ksef24.com\/en"},{"label":"KSeF REST API","link":"https:\/\/ksef24.com\/en\/"}],"_links":{"self":[{"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/comments?post=2"}],"version-history":[{"count":85,"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/pages\/2\/revisions"}],"predecessor-version":[{"id":289,"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/pages\/2\/revisions\/289"}],"wp:attachment":[{"href":"https:\/\/ksef24.com\/en\/wp-json\/wp\/v2\/media?parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}