Pole FA(3)

P_1 w FA(3): data wystawienia faktury

Jak wypełnić pole P_1 (data wystawienia) w fakturze FA(3): format daty, zasady, częste błędy i poprawny przykład XML.

Aktualizacja

Wprowadzenie

P_1 to data wystawienia faktury. Jest polem obowiązkowym w sekcji Fa dokumentu FA(3) i zapisuje dzień kalendarzowy, w którym faktura została wystawiona. Wartość musi mieć format ISO 8601 RRRR-MM-DD — na przykład 2026-10-12 dla 12 października 2026.

Częste błędy

  • Wysyłanie znacznika czasu zamiast samej daty.
  • Używanie polskiego formatu (12.10.2026) zamiast ISO 8601.
  • Kopiowanie DataWytworzeniaFa do P_1 bez zamiany na datę.
  • Zostawianie P_1 pustego, bo faktura „będzie datowana później”.

Każdy z tych błędów powoduje odrzucenie przez walidację. API Notaly sprawdza to pole po drodze, więc zła wartość jest wyłapywana wcześnie i nie zużywa jednej z trzech darmowych faktur testowych.

Czym P_1 jest, a czym nie jest

P_1 to nie to samo co DataWytworzeniaFa. DataWytworzeniaFa znajduje się w Nagłówku i zapisuje dokładny moment wygenerowania pliku XML, zwykle jako znacznik czasu w stylu 2026-10-12T07:23:07Z. P_1 natomiast to biznesowa data faktury. Zwykle obie przypadają tego samego dnia, ale opisują co innego, a pomylenie ich to częsty błąd integracji.

W praktyce wystarczą trzy zasady. Po pierwsze, wysyłaj P_1 jako datę, nigdy jako znacznik czasu. Po drugie, wpisuj datę, od której faktura działa dla kupującego — przy subskrypcji SaaS jest to zwykle początek okresu rozliczeniowego. Po trzecie, trzymaj P_1 spójne z P_2 (numerem faktury), żeby faktury porządkowały się i archiwizowały w przewidywalny sposób.

Strefy czasowe i przełom roku

W P_1 nie ma strefy czasowej i to celowe. Wysyłasz samą datę, więc nigdy nie musisz przeliczać UTC na czas lokalny dla tego pola. Jedyne miejsce, gdzie strefa czasowa ma znaczenie, to DataWytworzeniaFa — znacznik czasu. Na przełomie roku pilnuj granicy: faktura wygenerowana 31 grudnia, ale wystawiona 2 stycznia musi mieć w P_1 datę 2 stycznia, a nie datę wygenerowania. Dzięki temu numeracja i okresy VAT zgadzają się z kalendarzem, którego oczekuje urząd skarbowy.

Gdzie P_1 pojawia się później

Po przyjęciu faktury P_1 występuje w trzech miejscach. Oficjalny kod QR KSeF wyświetla je jako DD-MM-RRRR, rejestr urzędowy indeksuje fakturę po NIP sprzedawcy razem z P_1 i P_2, a PDF z Notaly drukuje je w nagłówku faktury. Ponieważ data służy do identyfikacji, a nie tylko do wyświetlania, poprawne i stabilne P_1 ma znaczenie nawet po tym, jak faktura opuści Twój system.

Poniżej kompletny, poprawny przykład FA(3). Zmień sprzedawcę i nabywcę na własne dane testowe i wyślij do środowiska testowego KSeF przez API Notaly.

<Faktura xmlns="http://crd.gov.pl/wzor/2025/06/25/13775/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Naglowek>
    <KodFormularza kodSystemowy="FA (3)" wersjaSchemy="1-0E">FA</KodFormularza>
    <WariantFormularza>3</WariantFormularza>
    <DataWytworzeniaFa>2026-10-12T07:23:07Z</DataWytworzeniaFa>
    <SystemInfo>einvoice-api</SystemInfo>
  </Naglowek>
  <Podmiot1>
    <DaneIdentyfikacyjne><NIP>2745013933</NIP><Nazwa>Example Sp. z o.o. (FICTIONAL)</Nazwa></DaneIdentyfikacyjne>
    <Adres><KodKraju>PL</KodKraju><AdresL1>ul. Testowa 1, 00-001 Warszawa</AdresL1></Adres>
  </Podmiot1>
  <Podmiot2>
    <DaneIdentyfikacyjne><NIP>1234563218</NIP><Nazwa>Test Customer S.A. (FICTIONAL)</Nazwa></DaneIdentyfikacyjne>
    <Adres><KodKraju>PL</KodKraju><AdresL1>ul. Probna 2, 30-001 Kraków</AdresL1></Adres>
    <JST>2</JST>
    <GV>2</GV>
  </Podmiot2>
  <Fa>
    <KodWaluty>PLN</KodWaluty>
    <P_1>2026-10-12</P_1>
    <P_2>FV/2026/10/001</P_2>
    <P_13_1>1000.00</P_13_1><P_14_1>230.00</P_14_1>
    <P_13_2>301.00</P_13_2><P_14_2>24.08</P_14_2>
    <P_15>1555.08</P_15>
    <Adnotacje>
      <P_16>2</P_16><P_17>2</P_17><P_18>2</P_18><P_18A>2</P_18A>
      <Zwolnienie><P_19N>1</P_19N></Zwolnienie>
      <NoweSrodkiTransportu><P_22N>1</P_22N></NoweSrodkiTransportu>
      <P_23>2</P_23>
      <PMarzy><P_PMarzyN>1</P_PMarzyN></PMarzy>
    </Adnotacje>
    <RodzajFaktury>VAT</RodzajFaktury>
    <FaWiersz>
      <NrWierszaFa>1</NrWierszaFa>
      <P_7>SaaS subscription - October</P_7>
      <P_8A>pcs.</P_8A>
      <P_8B>1</P_8B>
      <P_9A>1000.00</P_9A>
      <P_11>1000.00</P_11>
      <P_12>23</P_12>
    </FaWiersz>
    <FaWiersz>
      <NrWierszaFa>2</NrWierszaFa>
      <P_7>Support</P_7>
      <P_8A>hrs.</P_8A>
      <P_8B>2</P_8B>
      <P_9A>150.50</P_9A>
      <P_11>301.00</P_11>
      <P_12>8</P_12>
    </FaWiersz>
  </Fa>
</Faktura>

Źródła

Źródło: crd.gov.pl

Najczęstsze pytania

Czy P_1 jest obowiązkowe w każdej fakturze FA(3)?

Tak. P_1 jest polem obowiązkowym w sekcji Fa każdej faktury wysyłanej do KSeF.

Jaki format daty stosuje P_1?

ISO 8601: RRRR-MM-DD, na przykład 2026-10-12 dla 12 października 2026.

Czy P_1 zawiera godzinę albo strefę czasową?

Nie. P_1 to sama data kalendarzowa. Znacznik czasu występuje tylko w DataWytworzeniaFa w nagłówku.

Wystaw pierwszą fakturę testową w KSeF jeszcze dziś

Załóż konto sandbox: klucz API w kilka sekund, 3 darmowe faktury testowe w KSeF TEST, bez karty płatniczej.