Krajowy system e-Faktur

0

Cześć mam pytanie bo nie wiem czy dobrze myślę. Jak mam fakturę bazową w walucie PLN, ale aktualnie na fakturze mam czasem pozycje z różnymi walutami (EUR/USD), to teraz w istniejąej aplikacji klienta na początku mam ceny w walucie bazowej pozycji np. EUR lub USD dopiero w nastepnej kolumnie mam przeliczanie na walutę bazową faktury, KSEF wymaga aby podać kwoty od razu już przeliczone na walutę bazową faktury. I teraz pytanie, czy mogę za pomocą tych dodatkowych odniesień do faktury (pola opcjonalne) stworzyć kolumny dla tych pozycji, któe w oryginalne były np. w EUR i USD i tam wstawić kurs "ręcznie" po jakim był to liczone na walutę bazową?

Przykład:
Faktura bazowo jest w PLN, ale mam 2 pozycje na fakturze w aktualnej aplikacji (jedna w EUR, druga w USD), przeliczanie na PLN następuje w 3 kolumnie tych obu pozycji, a KSEF wymaga, abym od razu podał kwoty w walucie bazowje, przez co klient nie widzi teraz oryginalnych kwot pozycji, ale w KSEF mogę dodać wartości opcjonalne odnoszące się do danej pozycji na fakturze i tak też chcę zrobić, ze była by tam informacja o kwocie w oryginalnej walucie (np. EUR, USD), oraz informacje o przeliczniku na kwotę bazową faktury, w tym przypadku na PLN.

Czy to jednak nie tak ma wyglądać?

0

Testuję interaktywną wysyłkę faktur do serwera testowego oraz pobranie statusu.
Do południa (do ok. godz 11) wyszystko było ok.
Teraz, za każdym razem, kiedy chcę pobrać status wysłanej faktury (processingCode=100) otrzymuję błąd z opisem
'Faktura o podanym identyfikatorze nie istnieje.'
Zastanawiam się, gdzie jest błąd. W moim kodzie czy po stronie testowego serwera który już nieraz robił "psikusy" ?
Czy ktoś, na podstawie swoich testów, może potwierdzić albo zaprzeczyć że w tym punkcie (endpoint 'online/Invoice/Status') testowy serwer MF działa prawidłowo ?

0

Wracam ze sprawą wystawiania faktur w imieniu in a rzecz..

Po moim pytaniu do KSeF:
"jak powinna być przeprowadzona sprzedaż w imieniu i na rzecz ?
Tzn Firma B jest wystawcą faktur dla firmy A i jest to sprzedaż w imieniu i na rzecz co jest bardzo często w branży turystycznej.
Czy dobrze myślę, że w tej sytuacji Firma A powinna nadać uprawnienia do wystawiania faktury dla firmy B (dla jej NIP) i firma B w swoim XMLu powinna w Podmiot1 wpisać dane Firmy A a siebie w Podmiot3 z Rolą nr 5? "

po 50 dniach dostałem odpowiedź:

"Tak, dane Firmy A należy wpisać w Podmiot1, a dane Firmy B w Podmiot3 z rolą nr 5.
Rola podmiotu trzeciego nr „5” dotyczy wystawcy faktury, w przypadku, gdy na fakturze występują dane podmiotu wystawiającego fakturę w imieniu podatnika.
Podatnik (Firma A) powinien nadać uprawnienia do wystawiania faktur przez Firmę B.
W opisanej sytuacji po nadaniu przez firmę A uprawnień do wystawiania faktur dla firmy B, firma B w celu wystawiania faktur firmy A musi autoryzować się w KSeF w kontekście firmy A.
Ponadto informujemy, że dane podmiotu lub osoby fizycznej uprawnionej do wystawiania faktur mogą być podawane w sekcji Podmiot3, jednak pozostaje to bez wpływu na funkcjonowanie nadanego w KSeF uprawnienia do wystawiania faktur dla osoby fizycznej lub dla podmiotu, nie jest ono warunkowane występowaniem danych podmiotu/osoby wystawiającej faktury w treści tej faktury."

Albo ja czegoś nie rozumiem albo coś tu nie ma sensu. Zapytałem też ich o to ale pewnie za 50 dni odpowiedzą.. ale może ktoś z Was to testował.

Odpisałem
"Czyli rozumiem, że mając sesję dla firmy B przy użyciu tokena, chcąc wysłać fakturę gdzie sprzedawcą jest firma A muszę zalogować się od nowa tym samym tokenem ale z NIP firmy A, czy muszę mieć wręcz inny token? "

Przetestowałem to, mając nadane uprawnienia próbowałem się zalogować z użyciem bieżącego tokena ale na nip firmy A.. oczywiście błąd, brak autoryzacji.
To niby jak mam skorzystać z tego uprawnienia.. ? wygenerować token dla firmy A ? Jaki wtedy sens ma w ogóle nadawanie uprawnienia skoro w tej sytuacji zaloguje się jako firma A... ?

0

Cześć wszystkim, jestem tu nowy. Pytanie pewnie wyda Wam się śmieszne, ale skąd czerpiecie informacje o tym jak się połączyć z KSeF? W sensie czy gdzieś są opisane metody autoryzacji, wysyłki czy pobierania faktur? I nie chodzi mi oczywiście o opisy w stylu "trzeba się zautoryzować NIP-em" tylko o konkretne metody web serwisu. Samą strukturę plików znalazłem (choć np wystawienie korekty zaliczki jest właściwie niemożliwe). A może ktoś ma gotowy kod w C# i chciałby się podzielić ew. sprzedać kod?

0

Cześć.
Próbuję zainicjować sesję na testowym systemie za pomocą tokena. Nie wiem czy błąd jest w metodzie czy coś błędnie wyznaczam.
Parę wątków wcześniej był podobny problem Link
Tylko Ja cały czas dostaję "Nieprawidłowe żądanie".

  1. wchodzę na stronę https://ksef-test.mf.gov.pl/web/login - loguję się dla np. NIP 1111111111
  2. generuję token
  3. następnie zapytuję endpoint https://ksef-test.mf.gov.pl/api/online/Session/AuthorisationChallenge
  4. otrzymany timestamp zmieniam na wartość liczbową
  5. łączę token z wartością liczbową $stringToEncrypt = $token . '|' . $timestampInMilliseconds;
  6. szyfruję za pomocą klucza publicznego pobranego ze strony ksef-test: openssl_public_encrypt($stringToEncrypt, $encrypted, $publicKey)
  7. generuję xml który wygląda następująco:
<?xml version="1.0" encoding="UTF-8" ?>
<ns3:InitSessionTokenRequest xmlns="http://ksef.mf.gov.pl/schema/gtw/svc/online/types/2021/10/01/0001" xmlns:ns2="http://ksef.mf.gov.pl/schema/gtw/svc/types/2021/10/01/0001" xmlns:ns3="http://ksef.mf.gov.pl/schema/gtw/svc/online/auth/request/2021/10/01/0001">
<ns3:Context> 
<Challenge>20231002-CR-BF8FC00302-444F357F6C-8C</Challenge>
<Identifier xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:SubjectIdentifierByCompanyType">
<ns2:Identifier>1111111111</ns2:Identifier>
</Identifier>
<DocumentType> 
    <ns2:Service>KSeF</ns2:Service>
    <ns2:FormCode>
    <ns2:SystemCode>FA (2)</ns2:SystemCode>
    <ns2:SchemaVersion>1-0E</ns2:SchemaVersion>
    <ns2:TargetNamespace>http://crd.gov.pl/wzor/2021/11/29/11089/</ns2:TargetNamespace> 
    <ns2:Value>FA</ns2:Value>
    </ns2:FormCode>
    </DocumentType> <Token>oorHnzyTz/N2fLAWwZBi/LecnaTJKaAHxWpaTEFMfym32ymVBr1IJ9DXLl5nejCwbl37mwk+speVRD9cKDRStIVqzbCJKpHn6ie9rkSRsNmx8lHDeOgw0Aisf/dtz4LtnPOArXL65qu+uzM55pzWGUpJaOzr7yCy7qmhLmRc5MxHNxTKxAGoSAe1dUdUd5okTzRVpWSzyQ/D1CGtLOaOESLnwPmUiLhG9n4WSgqCVTTuhplvKtlr5IrY5ZqUahmVjfLXfqptuXV41ooup5s/CgFZ9U5fhsIKyujSI3Uw08AzxliyaAu8wQqyYbkzjLuMnoM32zB1mV5LKVSOq05erg==</Token>
    </ns3:Context>
</ns3:InitSessionTokenRequest>

  1. tak przygotowany plik wysyłam
$client->request('POST', 'http://ksef-test.mf.gov.pl/api/online/Session/InitToken', [
                'body' => file_get_contents($xmlPath),
                'headers' => [
                    'Accept' => 'application/json',
                    'Content-Type' => 'application/octet-stream',
                    'Content-Length' =>  strlen($xmlDocument),
                ]
            ])->getBody();

W odpowiedzi dostaję nieprawidłowe żądanie.

0

Cześć,

czy będzie ktoś mi w stanie pomóc, wskazując problem z moją treścią zapytania https://ksef-test.mf.gov.pl/api/online/Invoice/Send/

{
    "invoiceHash": {
        "hashSHA": {
            "algorithm": "SHA-256",
            "encoding": "Base64",
            "value": "ndeJt2MSJXAPbidtqM8Hnq7c2iIa7qY/y/dgkJUaQT4="
        },
        "fileSize": 2135
    },
    "invoicePayload": {
        "type": "encrypted",
        "encryptedInvoiceHash": {
            "hashSHA": {
                "algorithm": "SHA-256",
                "encoding": "Base64",
                "value": "CpecTP+QmTAbzC4i1rlJ0VKVZwJSXp/cKxkkvdElFG0="
            },
            "fileSize": 2144
        },
        "encryptedInvoiceBody": "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"
    }
}

za każdym razem otrzymuję zwrotkę:

{
    "exception": {
        "serviceCtx": "srvTEMFB",
        "serviceCode": "86C24291-E8AF-4309-A49F-9CE785428112",
        "serviceName": "exception.handler",
        "timestamp": "2023-10-03T15:24:36.398Z",
        "exceptionDetailList": [
            {
                "exceptionCode": 21180,
                "exceptionDescription": "Nieprawidłowe żądanie."
            }
        ]
    }
}
0

Czy jest jakiś limit na liczbę nawiązanych sesji za pomocą jednego tokena?}
Np. mam jeden token o nazwie "robot_ksef" i on nawiazuje sesje z roznych stanowisk ?

0

Hello,
I am using this json to send an invoice, but somehow it does not work. Do someone know where could be the problem? Thank you so much.

My API request: ksef-test.mf.gov.pl/api/online/Invoice/Send
Method: PUT
Software: PostMan

{
   "invoiceHash": {
      "hashSHA": {
         "algorithm": "SHA-256",
         "encoding": "Base64",
         "value": "{hash}"
      },
      "fileSize": "{size}"
   },
   "invoicePayload": {
      "payloadtype": "plain",
      "invoiceBody": "{invoice}"
   }
}

Response:

{
    "exception": {
        "serviceCtx": "srvTEMFC",
        "serviceCode": "20231004-EX-3DABA55CF8-8B11B8886E-9F",
        "serviceName": "online.invoice.invoice.send",
        "timestamp": "2023-10-04T08:43:20.675Z",
        "exceptionDetailList": [
            {
                "exceptionCode": 21001,
                "exceptionDescription": "Nieczytelna treść."
            }
        ]
    }
}
0
Vojtěch Zapletal napisał(a):

Hello,
I am using this json to send an invoice, but somehow it does not work. Do someone know where could be the problem? Thank you so much.

My API request: ksef-test.mf.gov.pl/api/online/Invoice/Send
Method: PUT
Software: PostMan

{
   "invoiceHash": {
      "hashSHA": {
         "algorithm": "SHA-256",
         "encoding": "Base64",
         "value": "{hash}"
      },
      "fileSize": "{size}"
   },
   "invoicePayload": {
      "payloadtype": "plain",
      "invoiceBody": "{invoice}"
   }
}

Response:

{
    "exception": {
        "serviceCtx": "srvTEMFC",
        "serviceCode": "20231004-EX-3DABA55CF8-8B11B8886E-9F",
        "serviceName": "online.invoice.invoice.send",
        "timestamp": "2023-10-04T08:43:20.675Z",
        "exceptionDetailList": [
            {
                "exceptionCode": 21001,
                "exceptionDescription": "Nieczytelna treść."
            }
        ]
    }
}

Okay, i tried what you said "invoicePayload": { "type": "plain", "invoiceBody": "{invoice}" } but the response is still the same
I also downloaded the .yaml file from their official website but the api call in it looks like this:

{
"invoiceHash": {
"fileSize": "<integer>",
"hashSHA": {
"algorithm": "SHA-256",
"encoding": "Base64",
"value": "<string>"
}
},
"invoicePayload": {
"type": "<string>"
}
}

It completly misses the payload so I do not think that it is correct

0

Cześć, czy jeśli korygujemy dane Podmiotu2 czy Podmiotu3 to dopuszczalne jest korygowanie na tym samym dokumencie danych związanych w wierszami faktury? Pytanie z serii czy jeśli coś nie jest zabronione schemą jest dozwolone? Widziałem że w tym pliku pdf z opisem przykładowych dok. Przykład 5 jest wzmianka że "Korekta faktury nie wpływa na wartości kwotowe".

0

Limity wywołań.
Czy ktoś to jakoś gruntownie przetestował, ewentualnie ma jakieś dodatkowe niepubliczne informacje na temat jak to działa (np odpowiedzi mailowe od supportu)?
Bo jak się trochę pobawiłem, to wygląda, że rzeczywiście na początku działa mniej więcej jak w dokumencie "WarościOgraniczeń.txt" (jeszcze nie poprawili literówki), ale po kolejnych wywołaniach (ze zwracanym błędem 429) blokada została założona na dłuższy czas niż wynika to z w/w dokumentu.
Macie podobne spostrzeżenia, czy mi się tylko zdawało?

Jak obsługujecie limity w swoich aplikacjach/usługach?

0

"5 października 2023 r. w godzinach od 14.00 do 14.30 będą prowadzone prace serwisowe na środowisku testowym i przedprodukcyjnym (DEMO) Aplikacji Podatnika KSeF. " czas zaplanować niedziałanie na kolejny tydzień :)

0

Dzień Dobry. Mam problem z nawiązaniem sesji interaktywnej za pomocą tokena.
Wyzwanie autoryzacjne przebiega pomyślniea o to rezultat:

{
  "timestamp": "2023-10-04T18:58:03.180Z",
  "challenge": "20231004-CR-D0EBF4B212-1A7A3DCABF-DB"
}

Generuję za pomocą testowego klucza publicznego zaszyfrowany token:
private File publicKeyFile;
private String authorisationToken;
private Date authorisationChallengeRepsonseTimestamp;

    public szyfrow() throws Exception {
        publicKeyFile = new File(szyfrow.class.getResource("/publicKey.der").toURI());
        authorisationToken = "F8A546A7DB3A88EC2D4F6A58C500386B7869CC64B7C0CC9CE88C19A2829AD7CD";
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX");
        sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
        authorisationChallengeRepsonseTimestamp = sdf.parse("2023-10-04T18:58:03.180Z");
    }

    @Test
    public void test() throws IOException, InvalidKeySpecException, NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {
        byte[] publicKeyFileBytes = Files.readAllBytes(publicKeyFile.toPath());
        X509EncodedKeySpec x509EncodedKeySpec = new X509EncodedKeySpec(publicKeyFileBytes);
        KeyFactory keyFactory = KeyFactory.getInstance("RSA");
        PublicKey publicKey = keyFactory.generatePublic(x509EncodedKeySpec);
        byte[] message = (authorisationToken + "|" + authorisationChallengeRepsonseTimestamp.getTime()).getBytes(StandardCharsets.UTF_8);
        Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
        cipher.init(Cipher.ENCRYPT_MODE, publicKey);
        byte[] messageEncrypted = cipher.doFinal(message);
        System.out.println(Base64.getEncoder().encodeToString(messageEncrypted));
    }
}

Zaszyfrowany token:
PBngrH52jp7/iOH37iqcfwV0mRG//e9kQakdIQXwWPQXWKm82G1IWqAnRWjD3IwHVB1vo1vvIq78AqzTKO4MiJBmnpJikWSehGBOaZ5g5Fcm6Qi3+a05e+JS6dNateJsiXZdJ5WqWfzzzyOQOnL9wNDqeCkLkI0ymwfnW6VMp1AZbRkiLHOjN2/tNPwkxk7guHxF4O/cq4cVTP3r0Ul4jsBfd9c3DNywqr1ozzcXNXH7jtGRYe0iaN0sOuRFlrgNJbM+adguiDG0SLZsI08R4Jdy0vusrp8XtJAiXpVSyBBZ7Q5SB8XJ/Bc9b8dMq2JoBgzI4fhZBEcrKfBf+ZTdVA==

Wypełniam dokument xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns3:InitSessionTokenRequest
	xmlns="http://ksef.mf.gov.pl/schema/gtw/svc/online/types/2021/10/01/0001"
	xmlns:ns2="http://ksef.mf.gov.pl/schema/gtw/svc/types/2021/10/01/0001"
	xmlns:ns3="http://ksef.mf.gov.pl/schema/gtw/svc/online/auth/request/2021/10/01/0001">
	<ns3:Context>
		<Challenge>20231004-CR-D0EBF4B212-1A7A3DCABF-DB</Challenge>
		<Identifier xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:SubjectIdentifierByCompanyType">
			<ns2:Identifier>6751555776</ns2:Identifier>
		</Identifier>
		<DocumentType>
			<ns2:Service>KSeF</ns2:Service>
			<ns2:FormCode>
				<ns2:SystemCode>FA (1)</ns2:SystemCode>
				<ns2:SchemaVersion>1-0E</ns2:SchemaVersion>
				<ns2:TargetNamespace>http://crd.gov.pl/wzor/2021/11/29/11089/</ns2:TargetNamespace>
				<ns2:Value>FA</ns2:Value>
			</ns2:FormCode>
		</DocumentType>
        <Token>
PBngrH52jp7/iOH37iqcfwV0mRG//e9kQakdIQXwWPQXWKm82G1IWqAnRWjD3IwHVB1vo1vvIq78AqzTKO4MiJBmnpJikWSehGBOaZ5g5Fcm6Qi3+a05e+JS6dNateJsiXZdJ5WqWfzzzyOQOnL9wNDqeCkLkI0ymwfnW6VMp1AZbRkiLHOjN2/tNPwkxk7guHxF4O/cq4cVTP3r0Ul4jsBfd9c3DNywqr1ozzcXNXH7jtGRYe0iaN0sOuRFlrgNJbM+adguiDG0SLZsI08R4Jdy0vusrp8XtJAiXpVSyBBZ7Q5SB8XJ/Bc9b8dMq2JoBgzI4fhZBEcrKfBf+ZTdVA==</Token>
	</ns3:Context>
</ns3:InitSessionTokenRequest>

Wysłam (korzystam ze Swaggera)
i otrzymuję błąd 20005, nieprawidłowo zaszyfrowana treść

Error: response status is 400

Response body
Download
{
  "exception": {
    "serviceCtx": "default",
    "serviceCode": "20231004-EX-9C1410A9A4-FD5A0964A9-F4",
    "serviceName": "online.session.session.token.init",
    "timestamp": "2023-10-04T19:00:29.979Z",
    "referenceNumber": "20231004-SE-465EF97C40-BA0DF84FFC-06",
    "exceptionDetailList": [
      {
        "exceptionCode": 20005,
        "exceptionDescription": "Nieprawidłowo zaszyfrowana treść."
      }
    ]
  }
}
Response headers
 cache-control: no-cache 
 content-length: 347 
 content-type: application/json; charset=utf-8 
 date: Wed,04 Oct 2023 19:00:30 GMT 
 etag: W/"15b-RlOpeT92+alUi0slmMvbnn4pPw8" 
 expires: -1 
 server-timing: dtRpid;desc="-490089806",dtSInfo;desc="0" 
 status: 400 Bad Request 
 x-oneagent-js-injection: true 

Co robię źle? Pozdrawiam

0

@JacekKKKK:
ok zmieniłem na to:

<?xml version="1.0" encoding="UTF-8" ?>
<ns3:InitSessionTokenRequest xmlns="http://ksef.mf.gov.pl/schema/gtw/svc/online/types/2021/10/01/0001" xmlns:ns2="http://ksef.mf.gov.pl/schema/gtw/svc/types/2021/10/01/0001" xmlns:ns3="http://ksef.mf.gov.pl/schema/gtw/svc/online/auth/request/2021/10/01/0001">
<ns3:Context> 
<Challenge>20231004-CR-4C1105FB5A-152095F036-17</Challenge>
<Identifier xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:SubjectIdentifierByCompanyType">
<ns2:Identifier>6751555776</ns2:Identifier>
</Identifier>
<DocumentType> 
    <ns2:Service>KSeF</ns2:Service>
    <ns2:FormCode>
    <ns2:SystemCode>FA (2)</ns2:SystemCode>
    <ns2:SchemaVersion>1-0E</ns2:SchemaVersion>
    <ns2:TargetNamespace>http://crd.gov.pl/wzor/2021/11/29/11089/</ns2:TargetNamespace> 
    <ns2:Value>FA</ns2:Value>
    </ns2:FormCode>
    </DocumentType> <Token>IlwPbDIUiAkhDBMpcXdiXorAyjwj7N9d2zUSv5fNWVysHFCk4NAqcdJy8mQdFmM3uScFYI7Q6TTmHVaBA8WlJoykb7ToglI5fSRVqnsguG34lJkxW/mQlO7CaJBKf9Jewv/B8EOMU7pYdcssBEDNcMy6HtOtc2qwEGKWCpzGxYAenLimh+xV5b0MOGaVvddY6h+3QRDR8xPyf57eFC7Teki1SCidb/Up4y59GatrV+AoBF3OgShgli6TkjBn4ZB46JrB0MN8rMztPWAItDb43oqEMdedTGcxUj2amGRtLS5L076JvDJfdTFGdyRXOE0ScdYTk/IRKFWfuag8OC3W9w==
</Token>
    </ns3:Context>
</ns3:InitSessionTokenRequest>

Generowanei tokena jak wcześniej itp. ale dostaję cały czas error "Nieprawidłowo zaszyfrowana treść"

  "exception": {
    "serviceCtx": "srvPRMFA",
    "serviceCode": "20231004-EX-E291491462-13EAD84101-FF",
    "serviceName": "online.session.session.token.init",
    "timestamp": "2023-10-04T20:32:56.271Z",
    "referenceNumber": "20231004-SE-F8F310A1FB-BE500979D2-2E",
    "exceptionDetailList": [
      {
        "exceptionCode": 20005,
        "exceptionDescription": "Nieprawidłowo zaszyfrowana treść."
      }
    ]
  }
}
Response headers
 cache-control: no-cache 
 content-length: 348 
 content-type: application/json; charset=utf-8 
 date: Wed,04 Oct 2023 20:32:56 GMT 
 etag: W/"15c-jOCcZEy/APxJcbHHHUTY0PYDTLI" 
 expires: -1 
 server-timing: dtRpid;desc="1257748399",dtSInfo;desc="0" 
 status: 400 Bad Request 
 x-oneagent-js-injection: true
0

Tradycyjny przegląd po aktualizacji KSeF:

  1. Nie działa.

Dziękuje za uwagę :)


Coś tam po godzinie udało się pobrać, to:

  1. Wyszukiwanie faktur - w amountType zamiast parametrów liczbowego 1-3 dla type, jest wyliczeniowy: brutto, netto, vat (kto i w jakim celu by tego w ogóle używał?)
  2. Finalnie sesja znów kończy się na 200, a nie 203 czy 205
  3. Poprawili zgłoszony przeze mnie błąd, gdzie użycie polskiego znaku w numerze telefonu powodowało zawieszenie się przetwarzania (archiwizacji)
  4. Linki w PDF mówią teraz o poszczególnych systemach (Testowym/przedprodukcyjnym/produkcyjnym)
0

Próbuję przywrócić mojego klienta KseF do działania. Z tymi UPO to udało mi się już zhakować wygenerowanego klienta, by obsługiwał xml zwracany jako json. Ale mam problem z pobraniem faktur - może ten proces trwa za długo, ale kiedyś to wystarczało. Pytam co 30 sekund, czy już skończył pakować i dostaję "Zakończenie etapu podziału na podzapytania oraz inicjalizacja podprocesów przygotowania części odpowiedzi", aż po iluś zapytaniach dostaję stronę z 404. Tak właśnie wygląda przekroczenie limitów? I czemu mu tyle czasu zajmuje przygotowanie plików?

0

Cześć pytania w kwestii Sum wartości sprzedaży objętej stawką 0. 1. Czy do sum ze stawką 0 dodaje się również te wartości w stawkach np, oo ? 2. Czy w obrocie EU i eksporcie używa się stawki vat 0% ? Dotyczy tagów P_13_6_2 i P_13_6_3.

0

Znalazłem taką informację:

Paragon fiskalny z NIP będzie uznawany jak faktura uproszczona do 31 grudnia 2024 r.

(Źródło: https://www.kis.gov.pl/wiadomosci/aktualnosci/-/asset_publisher/JSs9/content/krajowy-system-e-faktur-ksef-coraz-blizej-przygotuj-swoja-firme-do-e-fakturowania )
A co będzie po 31 grudnia? Nie będzie paragonów? Wszystkie paragony będzie się wysyłać?

0

Hej. Czego używacie do generowania klas z yamli (c#)? Czy NSwag Studio jest dobrym pomysłem czy lepiej może sprawdzi się onlineowy edytor swagger.io? Jeśli NSwag to podpowie ktoś odpowiednią konfigurację?

0

czy to prawda, że w przypadku wysyłki wsadowej i błędnej faktury w paczce, KSeF nie informuje która faktura jest błędna?

0

Czy kojarzy ktoś ile jest ważna nawiązana sesja ? (nie wiem czemy kojarzą mi sie 2h) oraz czy jest limit na liczbę wysłanych dokumentów w sesji ?

0

Czesc,
Proste zapytanie o fakture:

https://ksef-test.mf.gov.pl/api/online/Invoice/Get/7352869166-20231009-B78F15DC32AA-1E

i blad z ksef:

Nieobsługiwana wersja zapytania.

Ma ktos pomysl skad taki wynik?

            string url = String.Format(GetSettingValue(ConfigKey.ApiUrl), $"/online/Invoice/Get/{ksefReferenceNumber}");

            var request = new HttpRequestMessage(HttpMethod.Get, url);
            request.Headers.Add("SessionToken", sessionToken);
            request.Headers.Add("accept", "application/json");

            var response = await _client.SendAsync(request, CancellationToken.None);
            return response;

1

masz zły typ odpowiedzi:

 responses:
        "200":
          content:
            application/octet-stream: ```
0

Czy to API w ten sposób odpowiada na przekroczenie limitów czy akurat coś sobie grzebią w systemie? Bo nie wiem, jeśli miałbym to oprogramować jako rozpoznawalną sytuację to muszę wiedzieć:

<html><head><title>Error</title></head><body>404 - Not Found</body></html>
0

Dodałem do faktury numer zamówienia, wysłałem na ksef, faktura została przyjęta, ale przy próbie jej pobrania dostaję tą samą fakturę ale z wyciętymi warunkami transakcji. Ktoś miał podobny przypadek albo wie o co chodzi, że faktura zgadza się ze schemą, jest przyjmowana przez api, ale przy próbie odczytu nie dostaję warunków transakcji? Poniżej faktura którą wysyłam (zmieniłem tylko nip i adres)

<?xml version="1.0"?>
<Faktura xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://crd.gov.pl/wzor/2023/06/29/12648/">
  <Naglowek>
    <KodFormularza kodSystemowy="FA (2)" wersjaSchemy="1-0E">FA</KodFormularza>
    <WariantFormularza>2</WariantFormularza>
    <DataWytworzeniaFa>2023-10-09T15:19:25Z</DataWytworzeniaFa>
  </Naglowek>
  <Podmiot1>
    <DaneIdentyfikacyjne>
      <NIP>1111111111</NIP>
      <Nazwa>Firma</Nazwa>
    </DaneIdentyfikacyjne>
    <Adres>
      <KodKraju>PL</KodKraju>
      <AdresL1>Droga 78</AdresL1>
      <AdresL2>12-345 Katowice</AdresL2>
    </Adres>
  </Podmiot1>
  <Podmiot2>
    <DaneIdentyfikacyjne>
      <NIP>2222222222</NIP>
      <Nazwa>nazwa firmy</Nazwa>
    </DaneIdentyfikacyjne>
    <Adres>
      <KodKraju>AF</KodKraju>
      <AdresL1>ulica 243 </AdresL1>
      <AdresL2>40-100 Krakow</AdresL2>
    </Adres>
  </Podmiot2>
  <Fa>
    <KodWaluty>PLN</KodWaluty>
    <P_1>2023-08-31</P_1>
    <P_2>00/08/16</P_2>
    <P_6>2023-08-31</P_6>
    <P_13_1>0</P_13_1>
    <P_14_1>0</P_14_1>
    <P_13_2>241.77</P_13_2>
    <P_14_2>19.34</P_14_2>
    <P_13_3>0</P_13_3>
    <P_14_3>0</P_14_3>
    <P_13_4>0</P_13_4>
    <P_14_4>0</P_14_4>
    <P_13_5>0</P_13_5>
    <P_15>261.11</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>
    <FP>1</FP>
    <FaWiersz>
      <NrWierszaFa>1</NrWierszaFa>
      <PKWiU>PKWiU 08.11.30.0</PKWiU>
      <P_8A>szt</P_8A>
      <P_8B>1</P_8B>
      <P_9A>241.77</P_9A>
      <P_10>0</P_10>
      <P_11>241.77</P_11>
      <P_12>8</P_12>
      <GTU>GTU_01</GTU>
      <KursWaluty>2</KursWaluty>
    </FaWiersz>
    <WarunkiTransakcji>
      <Zamowienia>
        <NrZamowienia>1234567</NrZamowienia>
      </Zamowienia>
      <KursUmowny>0</KursUmowny>
      <WalutaUmowna>AED</WalutaUmowna>
    </WarunkiTransakcji>
  </Fa>
</Faktura>


0

czy ktoś już robił wizualizację tej ich faktury korzystając z transformanty? w delphi.

0

Czy gdzieś jest napisane, że data wystawienia(wysłania) faktury jest zawarta w numerze KSeF? Tzn że jest to ta własnie data, a nie data nadania nr KSeF, co będzie mieć znaczenie, jęsli wyślemy fakturę przed północa, a nr Ksef zostanie nadany po połnocy czyli następnego dnia.

0

Hello. I wonder if it is possible download a submitted document in PDF format.

The documentation talks about the method /api/online/Invoice/Get to download the document but it didn't say anytning about the format of the answer.

Thanks

Kiko

0

Hej,
Zabłądziłem tu w poszukiwaniu podpowiedzi przy połączeniu z ksef.

Próbuję wysłać paczkę batch, ale przy upload dostaję ciągle coś takiego
z postmana
Error: read ECONNRESET
z javy
java.io.IOException: Error writing to server

i raczej nie ma to związku z initem, bo czasem wraca to (ale jest ok)
"exceptionCode": 21149, "exceptionDescription": "Brak sesji."

I dzieje się to wszędzie, na test, demo i prod.
Może ktoś się z tym spotkał?

Dzięki
Pozdrawiam

0

https://ksef-test.mf.gov.pl znów nie działa :/

1 użytkowników online, w tym zalogowanych: 0, gości: 1