Šiame straipsnyje aptariamas antraštės objektas („payments“) ir antraštės elementai, esantys dokumento objekte (Document object).
Išsamų „RetailForce DOM“ (dokumento objektų modelio) aprašymą bei atskirų elementų aprašymą rasite „RetailForce“ svetainės atsisiuntimų skyriuje (Object model documentation.pdf) atitinkamoje versijų kataloge.
Antraštės objektas
{
"uniqueClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"applicationVersion": "6.2.5",
"applicationVersionId": "string",
"applicationVersionPrevious": "string",
"fiscalModuleVersion": "1.8.8",
"fiscalCountryModuleVersion": "1.0.5",
"softwareName": "GreatesPOS",
"retailForceReceiptId": "W3D9C2Q1",
"additionalFields": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"automaticVatCalculation": "noCalculation",
"allowedVatDeviation": 0.01,
"terminalSlaveId": "Pad05",
"cashRegisterSerialNumber": "CR123456789",
"footerGraphicIndex": 5,
"auditLogEntryType": "other",
"amount": 0,
"identifier": "string",
"documentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"documentId": "S962-000001287",
"createDate": "2023-04-27T17:27:12+01:00",
"bookDate": "2023-04-27T17:27:12+01:00",
"accountingDate": "2023-04-27T17:27:12+01:00",
"processStartDate": "2023-04-27T17:27:12+01:00",
"documentNumber": "000001287",
"documentNumberSeries": "Kassenbelege",
"cancellationDocument": false,
"failedToPay": false,
"documentReference": {
"referenceType": "[0] = Cancellation",
"storeNumber": "Restaurant 03",
"terminalNumber": "002",
"documentType": "[0] = Receipt",
"documentNumber": "000000895",
"documentNumberSeries": "Kassenbelege",
"fiscalDocumentNumber": 0,
"documentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"documentId": "S962-000000895",
"documentBookDate": "2023-04-27T17:27:12+01:00",
"returnReasonType": "userMistake",
"returnReasonText": "Fehler passiert"
},
"isTraining": true,
"testCaseNumber": "string",
"documentType": "[0] = Receipt",
"documentTypeCaption": "Verkaufsbeleg",
"user": {
"id": "03",
"caption": "Bedienung 03",
"firstName": "Franz",
"lastName": "Österreicher",
"taxNumber": "123456789",
"dateOfEntry": "2022-10-01T08:00:00+01:00"
},
"salesPerson": {
"id": "04",
"caption": "Kassier 04",
"firstName": "Sandra",
"lastName": "Hurtig",
"taxNumber": "987654321",
"dateOfEntry": "2022-10-01T08:00:00+01:00"
},
"allocationGroups": [
"Tisch 127"
],
"partner": {
"id": "ABC1234567",
"caption": "Kunde",
"isBusiness": false,
"partnerType": "[0] = Customer",
"partnerClassification": "Privatkunde",
"vatNumber": "n.a.",
"taxNumber": "n.a.",
"identificationType": "passport",
"partnerIdentification": "ABC1234567",
"addressType": "BillingAddress",
"additionalIdentifications": {
"lotteryId": "1234567",
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"street": "Musterstraße",
"streetNumber": "186",
"postalCode": "1010",
"city": "Wien",
"community": "n.a.",
"countryCode": "AT"
},
"notes": "Anmerkungen",
"customerCount": 1,
"paymentTerms": {
"dueDateDays": 0,
"discount": 0,
"discountDueDays": 0,
"latePaymentPenaltyRate": 0
},
"servicePeriodStart": "2023-04-27T17:27:12+01:00",
"servicePeriodEnd": "2023-04-27T17:27:12+01:00",
"positionCount": 1,
"documentIssueType": "paper",
"coupon": {
"header": [
{
"text": "string",
"barcodeType": "QrCode",
"barcode": "https://retailforce.cloud"
}
],
"grafic": "string",
"footer": [
{
"text": "string",
"barcodeType": "QrCode",
"barcode": "https://retailforce.cloud"
}
]
},
"serviceType": "string",
"isEcommerceTransaction": true,
"taxPositions": [
{
"vatIdentification": 0,
"vatLabel": "string",
"vatPercent1": 0,
"vatPercent2": 0,
"vatAmount": 0,
"vatAmount2": 0,
"netAmount": 0,
"grossAmount": 0
}
],
"fiscalResponse": {
"fiscalCountry": "[1] = Austria",
"certificationType": "string",
"fiscalisationType": "string",
"supportedPlatformTypes": "string",
"overpaymentNotAllowed": "boolean",
"documentTypeBusinessTransactionTypeSupport": "string",
"fiscalDocumentNumber": "0",
"taxPositions": [
{
"vatIdentification": 0,
"vatLabel": "string",
"vatPercent1": 0,
"vatPercent2": 0,
"vatAmount": 0,
"vatAmount2": 0,
"netAmount": 0,
"grossAmount": 0
}
],
"fiscalDocumentStartTime": 0,
"processStartTime": 0,
"errorDescription": "string",
"cashRegisterId": "string",
"signature": "string",
"userMessage": "string",
"printMessage": "string",
"requestTime": "2023-04-27T17:27:12+01:00",
"requestCompletionTime": "2023-04-27T17:27:12+01:00",
"qrCode": "string",
"printingFields": {},
"AdditionalFields": {}
},
"fiscalDocumentNumber": 0,
"fiscalDocumentRevision": 0,
"FiscalDocumentStartTime": 0,
"positions": [
{
"positionNumber": 0,
"positionReference": {
"positionNumber": 0,
"referenceType": "[0] = Cancellation",
"storeNumber": "string",
"terminalNumber": "string",
"documentType": "[0] = Receipt",
"documentNumber": "string",
"documentNumberSeries": "string",
"fiscalDocumentNumber": 0,
"documentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"documentId": "string",
"documentBookDate": "2023-04-27T17:27:12+01:00",
"returnReasonType": "userMistake",
"returnReasonText": "string"
},
"cancellationPosition": true,
"deletedPosition": false,
"type": "[0] = Item",
"itemCaption": "Sample Item",
"itemId": "ITEM-001",
"itemType": "[0] = Article",
"quantity": 1.0,
"quantityUnit": { "id": "Stk" },
"businessTransactionType": "[0] = Revenue",
"netValue": 10.0,
"grossValue": 12.0,
"taxValue": 2.0,
"ItemDateOfEntry": "2021-08-08T12:00:00+01:00",
"additionalFields": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"createDate": "2023-04-27T17:27:12+01:00",
"externalIdentifier": [
"string"
],
"user": {
"id": "string",
"caption": "string",
"firstName": "string",
"lastName": "string",
"taxNumber": "string",
"dateOfEntry": "2021-08-08T12:00:00+01:00"
},
"salesPerson": {
"id": "string",
"caption": "string",
"firstName": "string",
"lastName": "string",
"taxNumber": "string",
"dateOfEntry": "2021-08-08T12:00:00+01:00"
},
"FiscalAdditionalFields": {}
}
],
"payments": [
{
"amount": 12.0,
"currencyIsoCode": "EUR",
"caption": "string",
"uniqueReadablePaymentIdentifier": "string",
"foreignAmount": 0,
"foreignAmountExchangeRate": 0,
"additionalFields": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"paymentType": "creditCard",
"createDate": "2023-04-27T17:27:12+01:00",
"vatIdentification": 0,
"vatPercent": 0,
"taxValue": 0,
"externalIdentifier": [
"string"
],
"user": {
"id": "string",
"caption": "string",
"firstName": "string",
"lastName": "string",
"taxNumber": "string",
"dateOfEntry": "2021-08-08T12:00:00+01:00"
},
"salesPerson": {
"id": "string",
"caption": "string",
"firstName": "string",
"lastName": "string",
"taxNumber": "string",
"dateOfEntry": "2021-08-08T12:00:00+01:00"
},
"paymentTerminalReferenceId": "string",
"cardData": {
"receiptCopyCount": 0,
"receipt": [
"string"
],
"cardNumberMasked": "string",
"identificationToken": "string",
"merchantCopyCount": 0,
"merchantReceipt": [
"string"
],
"cardType": "VISA",
"authorizationCode": "AUTH123",
"terminalId": "TERM-A1",
"merchantId": "MERCH-B2",
"transactionId": "TRANS-C3",
"providerSignature": "string",
"providerTransactionId": "string",
"providerSignatureMessage": "string",
"transactionDate": "2023-04-27T17:27:12+01:00",
"transactionNumber": "string"
}
}
],
"additionalHeader": [
"string"
],
"additionalFooter": [
"string"
],
"FiscalAdditionalFields": {}
}Antraštės objektas apima šiuos duomenis.
Informacija stulpelyje „Tipas“:
- M ... privaloma („mandatory“)
- M* ... privaloma tam tikrose šalyse arba tam tikromis sąlygomis
- R ... rekomenduojama („recommended“)
- O ... neprivaloma
| Elementas | Tipas | Aprašymas | |
| uniqueClientId | M | Unikalus kliento ID, atitinkantis terminalo ID „RetailForce Cloud“ (grąžinamas / priskiriamas paleidimo metu per PUT /api/v1/management/clients/byCloud). | |
| applicationVersion | R/M* |
Kasinės programinės įrangos versija.
Dėmesio:
atkreipkite dėmesį, kad kai kuriose šalyse (Prancūzijoje) versijos numeris yra fiksuotas sertifikavimo metu. Jei nurodytas neteisingas (nesutampantis su sertifikuotu numeriu) duomenys, dokumento užbaigti neįmanoma (=klaida). Taip pat atkreipkite dėmesį į: Sertifikuota versija
.
Informacija apie šalis:
|
|
| applicationVersionId | R/M* |
Kassos programinės įrangos versijos ID. Informacija apie šalį:
|
|
| applicationVersionPrevious | R/M* |
Ankstesnės kasos programinės įrangos versijos ID. Informacija apie šalį:
|
|
| fiscalModuleVersion | O/M* | Fiskalinio modulio (Trusted Fiscal Module) versija, kuri buvo naudojama atitinkamam dokumentui sukurti. Automatiškai nustatoma tarpinės programinės įrangos, jei neperduodama programinės įrangos. | |
| fiscalCountryModuleVersion | O/M* | Šalies modulio (Trusted Fiscal Country Module) versija, kuri buvo naudojama atitinkamam dokumentui sukurti. Automatiškai nustatoma tarpinės programinės įrangos, jei nėra perduota programinės įrangos. | |
| FiscalisationType | O | ||
| signature | O | Parašas | |
| fiscalPrinter | Fiskalinis spausdintuvas | ||
| online | internete | ||
| signatureWithOnline | Parašas su internetiniu ryšiu | ||
| noFiscalisation | Be fiskalizacijos | ||
| FiscalisationTypeItaly | O | ||
| spausdintuvas | O | Telematinis registratorius | |
| retailForceReceiptId | O | Visuotinai unikalus kvito numeris (susidedantis iš terminalId ir kvito numerio eilės numerio). Gali būti sukurtas kuriant operaciją (naudojant createDocument). | |
| papildomi laukai | O | ||
| additionalProp1-x | O | ||
| automaticVatCalculation | O |
Šis elementas suaktyvina automatinį įvairių sumų laukelių skaičiavimą pozicijų lygiu. 0 noCalculation – automatinis skaičiavimas nevykdomas 1 netValueCalculation – automatinis grynosios sumos ir PVM sumos apskaičiavimas. Turi būti nurodyta bent jau bruto suma bei PVM procentas/kodas. 2 grossValueCalculation – automatinis bendrosios vertės ir mokesčio sumos apskaičiavimas. Būtina nurodyti bent jau grynąją vertę ir PVM procentą / kodą. |
|
| allowedVatDeviation | O |
Gali būti naudojama PVM skaičiavimo apvalinimo problemoms išlyginti. Naudokite atsargiai! Jei nustatoma didelė vertė, PVM skaičiavimo patikrinimas išjungiamas! Pavyzdys: „allowedVatDeviation“: 0,05, leidžiamas 5 centų nuokrypis tarp grynosios vertės + mokesčio vertės = bendrosios vertės (+-0,05) |
|
| terminalSlaveId | O | Įvesties terminalo ID nurodymas. | |
| cashRegisterSerialNumber | O |
Kaso aparato serijos numeris. Šis laukas identifikuoja konkretų fizinį kasos aparato įrenginį, kuris buvo naudojamas sandoriui apdoroti. | |
| footerGraphicIndex | O |
Naudojant „footerGraphicIndex“, iš anksto apibrėžtas grafinis elementas įterpiamas į dokumento apačią. Informacija apie šalį:
|
|
| auditLogEntryType | Nurodo audito žurnalo įrašo tipą, jei pats dokumentas yra audito žurnalo įrašas. | ||
| amount | Suma, susieta su dokumento antrašte (pvz., audito žurnalo tikslais). | ||
| identifier | Bendras identifikavimo laukas (pvz., audito žurnalo tikslais). Eksportuoti į „Google“ skaičiuoklę | ||
| documentGuid | M | Unikalus dokumento identifikatorius, naudojant UUID / GUID. Taip pat naudojamas kaip nuoroda į skaitmeninius dokumentus. | |
| documentId | M | Unikalus, eilės tvarka einantis dokumento (kvito) numeris filialo / padalinio / restorano viduje (visose kasose), suteikiamas kasos sistemos (maks. 40 simbolių). | |
| createDate | M | Dokumento įregistravimo data | |
| bookDate | M | Įrašymo data | |
| accountingDate | O | Galima šio dokumento įrašymo data apskaitoje | |
| processStartDate | R/M* | Pirmojo dokumento sukūrimo data visame procese (pvz., Vokietija: pirmojo kliento užsakymo, susijusio su šiuo mokėjimo dokumentu, sukūrimo data – žr. taip pat „Gastronomijos ypatumai“) | |
| documentNumber | R/M* | Unikalus, eilinis dokumento numeris („dokumento numeris“), suteiktas kasos sistemos. | |
| documentNumberSeries | O/M* |
Dokumentų numerių (documentNumber) serijos pavadinimas. Informacija apie šalį:
|
|
| cancellationDocument | M |
Žymė, nurodanti, ar šis dokumentas naudojamas kitam (anksčiau išduotam) dokumentui anuliuoti true – anuliavimo dokumentas false – ne anuliavimo dokumentas |
|
| failedToPay | O |
Būlio tipo žymė (true/false), kuris rodo, ar mokėjimas už dokumentą nepavyko. |
|
| documentReference | O/M* | Naudojamas norint nurodyti kitą dokumentą. | |
| {...} | |||
| isTraining | O/M* | Žymė, skirta pažymėti mokymo / demonstracinius dokumentus (sukurta kasos mokymo / demonstraciniame režime). | |
| testCaseNumber | O/M* |
Laukelis, skirtas nurodyti testavimo atvejo numerį sertifikavimo tikslais. Informacija apie šalis:
|
|
| documentType | O | Dokumento tipo nurodymas | |
| documentTypeCaption | M* |
Dokumento tipo pavadinimas. Iš esmės naudojamas geresniam aprašymui arba paaiškinimui. Informacija apie šalį:
|
|
| vartotojas | O/M* |
Informacija apie (kasos aparato) vartotoją. Informacija apie šalį:
|
|
| {...} | |||
| pardavėjas | O/M* |
Informacija apie pardavimo personalą. Informacija apie šalį:
|
|
| {...} | |||
| allocationGroups [] | O/M* |
Naudojama dokumentams priskirti tam tikriems objektams (pvz., stalams viešojo maitinimo įstaigose). Taip pat žr.: Ilgalaikis užsakymų procesas maitinimo įstaigose. Informacija apie šalį:
|
|
| partner | O/M* |
Informacija apie atitinkamus (verslo) partnerius, su kuriais bendradarbiauja dokumentą išduodanti įmonė. Informacija apie šalį:
|
|
| addressType | ( partnerobjekte) Naujas neprivalomas laukas, skirtas nurodyti adreso tipą (pvz., sąskaitos adresą). |
||
| {...} | |||
| pastabos | O | Papildomų pastabų įvedimas | |
| customerCount | O/M* |
Klientų skaičius, susijęs su šiuo dokumentu (pvz., viešojo maitinimo sektoriuje – svečių skaičius prie kasos/prie stalo) Informacija apie šalį:
|
|
| paymentTerms | O | Mokėjimo sąlygos | |
| {...} | |||
| servicePeriodStart | M* |
Paslaugų teikimo laikotarpio pradžia (ypač sąskaitų atveju) Informacija apie šalį:
|
|
| servicePeriodEnd | M* |
Paslaugų teikimo laikotarpio pabaiga (ypač sąskaitų atveju) Informacija apie šalį:
|
|
| positionCount | O/M* |
Dokumentuose esančių pozicijų skaičius (visos pozicijos, įskaitant item, text, booking, subTotal, total) Taip pat žr. pozicijos objektą. Informacija apie šalis:
|
|
| documentIssueType | O/M* |
Apibrėžia dokumento išdavimo tipą.
Informacija apie šalis:
|
|
| kuponas | O | Galimybė ant kvito atspausdinti papildomus kuponus ir kitus elementus. | |
| {...} | |||
| serviceType | O/M* |
Maisto paslaugų tipo nurodymas (aptarnavimas prie stalo, prie baro). Galimos reikšmės (atkreipkite dėmesį į CamelCase!)
Informacija apie šalis:
|
|
| isEcommerceTransaction | O/M* |
Nurodykite, ar tai yra elektroninės komercijos sandoris (true / false). Informacija apie šalį:
|
|
| taxPositions | R |
Visų dokumento PVM pozicijų nurodymas. Turi būti nurodytos visos PVM pozicijos arba nė viena. Norėdami gauti dokumento mokesčių pozicijas (jei ši savybė nebuvo nustatyta), naudokite GetTaxPositions(Document, Boolean).
Pastaba Austrijai:
rekomenduojame naudoti šį masyvą, norint perduoti dokumento mokesčių pozicijas, siekiant išvengti apvalinimo problemų duomenų surinkimo protokole („DEP7“).
|
|
| {...} | |||
| fiscalResponse | - |
Fiskalizacijos paslaugos atsakymas po createDocument ir storeDocument perdavimo. Rekomenduojame išsaugoti fiscalResponse turinį kasos duomenų bazėje.
Pastaba:
tam tikri fiscalResponse objekto elementai, po funkcijos createDocument
iškvietimo, turi būti įtraukti į JSON dokumentą (kuris turi būti siunčiamas į storeDocument
). Prašome NEĮTRAUKTI viso fiscalResponse objekto!
|
|
| {...} | |||
| fiscalDocumentNumber | M* |
Fiskalinio dokumento numeris (priskirtas „RetailForce“ sistemos arba atitinkamo fiskalizacijos padalinio, pvz., TSE Vokietijoje)
Dėmesio:
atkreipkite dėmesį, kad sistemose iki v1.7.7 informacija fiscalDocumentNumber buvo grąžinama fiscalResponse objekto lauke fiscalisation
DocumentNumber. Taip pat žr. straipsnį: „Given Transaction not started
“. V1.7.7 versijoje „fiscalResponse“ objekte buvo įvestas papildomas laukas „fiscalDocumentNumber“ (string).
|
|
| fiscalDocumentRevision | O/M* |
Fiskalinio dokumento peržiūros numeris (priskirtas „RetailForce“ sistemos arba atitinkamo fiskalinio vieneto – pvz., TSE Vokietijoje)
Dėmesio:
atkreipkite dėmesį, kad sistemose iki v1.7.7 versijos fiscalDocumentRevision buvo grąžinamas lauke fiscalisation
DocumentRevision, esančiame fiscalResponse antraštėje. Žr. taip pat straipsnį: „Given Transaction not started
“. Nuo v1.7.7 versijos šis fiscalResponse objekto savybės pavadinimas buvo pakeistas į fiscalDocumentRevision ir dabar jis grąžinamas tik fiscalResponse-Germany papildomų laukų masyve.
|
|
| FiscalDocumentStartTime | M* | Fiskalinio dokumento sukūrimo laikas (priskirtas „RetailForce“ sistemos arba atitinkamo fiskalinio vieneto, pvz., TSE Vokietijoje) | |
| positions | M | Informacija apie atitinkamą kvito / dokumento poziciją (turinys priklauso nuo dokumento tipo ir pozicijos – documentType, positionType) | |
| {...} | |||
| payments | O/M* | Informacija apie mokėjimą (naudojimas priklauso nuo dokumento tipo – documentType) | |
| {...} | |||
| additionalHeader | O |
Masyvą additionalHeader galima naudoti papildomoms laisvo teksto eilutėms įrašyti dokumento antraštėje. Informacija apie šalis:
Pastaba: šiuo metu šis masyvas palaikomas tik Italijoje. Jį galima užpildyti ir kitose šalyse, tačiau tai neturės jokio poveikio. |
|
| additionalFooter | O |
Masyvą additionalFooter galima naudoti papildomoms laisvo teksto eilutėms įrašyti dokumento apačioje. Informacija apie šalis:
Pastaba: šiuo metu šis masyvas palaikomas tik Italijoje. Jį galima užpildyti ir kitose šalyse, tačiau tai neturės jokio poveikio. |
|
| FiscalAdditionalFields | O | ||
Komentarai
0 komentarų
Tam, kad paliktumėte komentarus prisijunkite