Naudojant
- POST /api/v1/transactions/cancelDocument
funkcija sandorio atšaukimas perduodamas fiskalinei tarnybai. Ar ir kaip atšaukimas bus užregistruotas, priklauso nuo šalies. Ji naudojama sandoriui nutraukti prieš jo užbaigimą. Pavyzdžiui:
- klientas nori įsigyti keletą prekių parduotuvėje
- kasininkas pradeda nuskaityti prekes (POS siunčia PUT /api/v1/transactions/createDocument)
- klientas pastebi, kad pametė piniginę ir negali atlikti pirkimo
- kasininkas sustabdo sandorį ir ištrina visas nuskaitytas prekes (POS siunčia POST /api/v1/transactions/cancelDocument, kad uždarytų sandorį, kuris buvo atidarytas naudojant PUT /api/v1/transactions/createDocument)
Rezultatas
Jei apdorojimas sėkmingas (200), atitinkamas fiskalinės paslaugos klientas atsako su „fiscalResponse“ ir uždaro sandorį, kuris buvo atidarytas naudojant „createDocument“.
Naudojimas
- Kiekvieną kartą, kai dokumentas uždaromas elektroninėje apskaitos sistemoje (kasos aparate), jį atšaukiant.
Būtinos sąlygos
- Prieš vykdant „cancelDocument“ turi būti iškviestas galinis taškas PUT /api/v1/transactions/createDocument
- Duomenys iš „createDocument“ atsakymo turi būti integruoti į „cancelDocument“ JSON struktūrą. Žr. toliau pateiktą skyrių.
Perdavimo procesas
Kaip aprašyta, prieš siunčiant „cancelDocument“ reikia atlikti „createDocument“. „createDocument“ atsakymo „fiscalResponse“ dalyje yra šie laukai:
"fiscalisationDocumentNumber": 0,
"fiscalisationDocumentRevision": 0,
"fiscalDocumentStartTime": 0,
Šių laukų informacija turi būti įtraukta į „cancelDocument“ perduodamą JSON struktūrą. Šiuose laukuose yra reikiamos fiskalinės įrangos (Vokietijoje – techninis saugumo įrenginys „TSE“) generuojamos reikšmės, kurios naudojamos sandorių grandinei sukurti.
Dėmesio: Atkreipkite dėmesį į šias ypatingas savybes:
„createDocument“ funkcijos „fiscalResponse“ grąžina laukus „fiscalisationDocumentNumber“ ir „fiscalisationDocumentRevision“. Tačiau „cancelDocument“ funkcijoje šie laukai turi būti perduoti su
"fiscalDocumentNumber": 24,
"fiscalDocumentRevision": 1,
be „isation“! Taip pat atkreipkite dėmesį: Jei sandoris nepradėtas
Pavyzdys:
Toliau pateiktame pavyzdyje parodyta paprasta Vokietijos kvito forma (documentType = [0] = kvitas), kuri siunčiama į galinį tašką POST /api/v1/transactions/cancelDocument.
{
"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"
}
]
}Pavyzdys: minimali informacija „cancelDocument“:
{
"uniqueClientId": "c1062c55-57c4-4ed2-9c53-aff1762326a4",
"documentGuid": "{bdf8b5e9-5634-4c02-afad-543a7c480111}",
"documentId": "100001",
"documentNumber": "00002",
"createDate": "2022-12-22T10:06:03",
"bookDate": "2022-12-22T10:06:03",
"user": {
"id": "1234",
"caption": "1234"
},
"fiscalDocumentNumber": 2938,
"fiscalDocumentStartTime": "1671699962",
"fiscalDocumentRevision": 1
}
}fiscalResponse
„cancelDocument“ funkcijos „fiscalResponse“ turėtų būti saugoma POS duomenų bazėje, kad būtų galima į ją atsižvelgti.
„fiscalResponse“ sudaro:
- bendrąją informaciją
- šaliai būdinga informacija
„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
Šią informaciją galima rasti „fiscalResponse“ header srityje.
Atkreipkite dėmesį:
- Lauko „fiscalisationDocumentNumber“ turinys turi būti atspausdintas dokumente (DE).
- Lauko „PrintMessage“ turinys turi būti atspausdintas ant kvito.
Šaliai būdinga informacija
Šaliai būdinga informacija pateikiama srityje „AdditionalFields“ ir apima informaciją, kuri turi būti atspausdinta ant kvito (pvz., QR kodas arba, Vokietijoje, TSE duomenys).
Prašome susipažinti su atitinkamos šalies dokumentų pavyzdžiais.
Pastaba: Jei lauke „fiscalResponse“ funkcijos „cancelDocument“ grąžinama reikšmė „-1“,
"fiscalDocumentNumber": -1,
client atpažino atitinkamą dokumentą kaip neapmokestinamą.
Atsakymas
Galimi atsakymai:
| Kodas | Aprašymas | Pavyzdys |
| 200 | Atšaukimo dokumentas buvo sėkmingai ir be klaidų perduotas. | fiscalResponse |
| 404 |
Vokietija: nurodyto „fiscalDocumentNumber“ nerasta. Sandoris su nurodytu „fiscalDocumentNumber“ dar nebuvo sukurtas (pradėtas). Problemų sprendimas:
|
- |
| 406 |
Pateiktas dokumento tipas nėra palaikomas Problemų sprendimas:
|
- |
| 422 |
Dokumento turinys tuščias arba neteisingas Problemų sprendimas:
|
- |
Šis straipsnis buvo išverstas automatiškai.
Komentarai
0 komentarų
Tam, kad paliktumėte komentarus prisijunkite