Naudojant galinį tašką
- POST /api/v1/transactions/storeDocument
dokumentas perduodamas į Fiskalservice ir ten išsaugomas.
Rezultatas
Sėkmingai apdorojus (200), atitinkamas fiskalinės tarnybos klientas atsako su fiscalResponse.
Naudojimas
- Kiekvieną kartą, kai dokumentas užbaigiamas elektroninėje apskaitos sistemoje.
Reikalavimai
- Prieš „storeDocument“ reikia iškviesti galinį tašką PUT /api/v1/transactions/createDocument
- Duomenys iš createDocument atsakymo turi būti integruoti į storeDocument JSON struktūrą. Žr. toliau pateiktą skyrių.
Perdavimo procesas
Kaip aprašyta, „storeDocument“ reikalauja ankstesnio „createDocument“. „createDocument“ „fiscalResponse“ apima šiuos laukus:
"fiscalisationDocumentNumber": 0,
"fiscalisationDocumentRevision": 0,
"fiscalDocumentStartTime": 0,
šių laukų informacija turi būti įtraukta į JSON struktūrą, kuri perduodama naudojant „storeDocument“. Šie laukai apima vertes, kurias sukuria reikalinga fiskalinė įranga (techninė saugumo įranga „TSE“ Vokietijoje) ir kurios naudojamos sandorių grandinei sukurti.
Dėmesio: atkreipkite dėmesį į šias ypatybes:
„createDocument“ funkcijos „fiscalResponse“ grąžina laukus „fiscalisationDocumentNumber“ ir „fiscalisationDocumentRevision“. Tačiau „storeDocument“ funkcijoje šie laukai turi būti perduodami su
"fiscalDocumentNumber": 24,
"fiscalDocumentRevision": 1,
, t. y. be „isation“! Taip pat atkreipkite dėmesį: „Given transaction not started“
Pavyzdys:
Toliau pateiktame pavyzdyje parodytas paprastas kasos kvitas Vokietijai (documentType = [0] = receipt), kuris siunčiamas į galinį tašką POST /api/v1/transactions/storeDocument.
{
"uniqueClientId": "c1062c55-57c4-4ed2-9c53-aff1762326a4",
"documentGuid": "7d4a7761-e9e9-4759-8591-ed147a581da4",
"documentId": "HAM01-00010329",
"documentNumber": "00010329",
"createDate": "2023-04-18T21:34:45",
"bookDate": "2023-04-18T21:34:46",
"cancellationDocument": false,
"isTraining": false,
"documentType": 0,
"user": {
"id": "1234",
"caption": "1234"
},
"fiscalDocumentNumber": 2853,
"fiscalDocumentStartTime": 1681803100,
"fiscalDocumentRevision": 1,
"Positions": [
{
"positionNumber": 0,
"netValue": 10.66,
"grossvalue": 12.90,
"taxValue": 2.24,
"quantity": 1,
"itemId": "1101202930050",
"itemCaption": "Pizza Margherita",
"cancellationPosition": "false",
"type": "0",
"businessTransactionType": 0,
"vatPercent": 19,
"vatIdentification": 1,
}
],
"Payments": [
{
"Amount": 12.90,
"paymentType": "cash",
"uniqueReadablePaymentIdentifier": "Cash",
"caption": "Bar+Euro",
"currencyIsoCode": "EUR"
}
]
}
fiscalResponse
Atsakymas (fiscalResponse) iš storeDocument turėtų būti išsaugotas kasos sistemos duomenų bazėje, kad būtų galima juo remtis.
fiscalResponse sudaro:
- bendrąją informaciją
- šaliai būdingą informaciją
„fiscalResponse“ pavyzdys:
{
"fiscalCountry": "[0] = Germany",
"fiscalisationDocumentNumber": 52,
"fiscalisationDocumentRevision": 2,
"fiscalDocumentStartTime": 1674819139,
"processStartTime": 0,
"errorDescription": null,
"cashRegisterId": "00345-00345",
"signature": "pCeGi98gNNhshcGJkbw0DwtSzuJkaawON8l5QwsFDEaDHOyYK2aNVO4ZAlpkYYnub7oxM/2R1/KB36UzmOQwew==",
"userMessage": null,
"printMessage": "***Test***",
"requestTime": "2023-01-27T12:34:21.3088836+01:00",
"requestCompletionTime": "2023-01-27T12:34:22.4379009+01:00",
"AdditionalFields": {
"QrCodeDataString": "V0;00345-00345;Kassenbeleg-V1;Beleg^13.90_0.00_0.00_0.00_0.00^13.90:Unbar;52;197;2023-01-27T11:32:19.000Z;2023-01-27T11:34:20.000Z;ecdsa-plain-SHA256;unixTime;pCeGi98gNNhshcGJkbw0DwtSzuJkaawON8l5QwsFDEaDHOyYK2aNVO4ZAlpkYYnub7oxM/2R1/KB36UzmOQwew==;BNHckCuXF2fEktIp8qwtnMLLgvpJDX6wEOqFENlHXZpekBHxHniQh9gbigjWS9UbCwZSrOTJTMK7WiV5owAfXkk=",
"TransactionStartTime": 1674819139,
"TransactionEndTime": 1674819260,
"ProcessData": "Beleg^13.90_0.00_0.00_0.00_0.00^13.90:Unbar",
"ProcessType": "Kassenbeleg-V1",
"TseSerial": "e5f5836a57c50c526d4bed37f18823608f2f44e2c98cab73278a7676c5ea0885",
"TseTimeFormat": "unixTime",
"TseHashAlgorithm": "ecdsa-plain-SHA256",
"TsePublicKey": "BNHckCuXF2fEktIp8qwtnMLLgvpJDX6wEOqFENlHXZpekBHxHniQh9gbigjWS9UbCwZSrOTJTMK7WiV5owAfXkk=",
"TseSignatureCounter": 197,
"TseCertificate": "MIIB0jCCAVmgAwIBAgIhAOX1g2pXxQxSbUvtN/GII2CPL0TiyYyrcyeKdnbF6giFMAoGCCqGSM49BAMDMDExFTATBgNVBAoTDGZpc2thbHkgR21iSDEYMBYGA1UEAxMPZmlza2FseSBUZXN0IENBMB4XDTIyMTAzMDEyMjgzMloXDTIzMTAzMDEyMjgzMlowMjEVMBMGA1UEChMMZmlza2FseSBHbWJIMRkwFwYDVQQDExBmaXNrYWx5IFRlc3QgVFNFMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0dyQK5cXZ8SS0inyrC2cwsuC+kkNfrAQ6oUQ2Uddml6QEfEeeJCH2BuKCNZL1RsLBlKs5MlMwrtaJXmjAB9eSaNBMD8wDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUlllBymQBup6ldKGojZVpZtWG5tQwCgYIKoZIzj0EAwMDZwAwZAIwEFsoSON9cIBqA5d9vsGI2jSjDlZxHokDvJ4yBmayvigrDbdhMYe3hw3HyQbO2B/FAjBXSVNbYR6Wg2TVzL9BhCla+tewRDGcs6vnetJ4i3VRtya1+ejt+vRjWnb/RUyo0Uw="
}
}
Bendroji informacija
Ji pateikiama „fiscalResponse“ antraštės srityje.
Atkreipkite dėmesį:
- Lauko „fiscalisationDocumentNumber“ turinys turi būti atspausdintas ant dokumento (DE).
- Lauko „printMessage“ turinys turi būti atspausdintas ant dokumento.
Šaliai būdinga informacija
Šaliai būdinga informacija pateikiama srityje „AdditionalFields“ ir apima informaciją, kuri turi būti atspausdinta ant dokumento. (pvz., QR kodas arba, alternatyviai, TSE duomenys Vokietijoje)
Atkreipkite dėmesį į atitinkamos šalies kvito pavyzdžius.
Pastaba: jei lauke
"fiscalDocumentNumber": -1,
grąžinama reikšmė „-1“, tai reiškia, kad klientas atitinkamą dokumentą atpažino kaip ne fiskalinį.
Atsakymas
Galimi atsakymai:
| Kodas | Aprašymas | Pavyzdys |
| 200 |
Dokumentas buvo sėkmingai ir be klaidų perduotas bei išsaugotas documentStore |
fiscalResponse |
| 404 |
Vokietija: nurodyto fiscalDocumentNumber nerasta. Sandoris su nurodytu fiscalDocumentNumber dar nebuvo sukurtas (pradėtas). Klaidų šalinimas:
|
- |
| 406 |
Pateiktas dokumento tipas nepalaikomas Klaidos šalinimas:
|
- |
| 422 |
Dokumento turinys tuščias arba klaidingas Klaidų šalinimas:
|
- |
Komentarai
0 komentarų
Tam, kad paliktumėte komentarus prisijunkite