Acest articol tratează obiectul Header („plăți”) sau elementele din Header din cadrul obiectului Document.
O descriere completă a modelului RetailForce DOM (Document Object Model) și o descriere a elementelor individuale pot fi găsite în secțiunea Descărcări a RetailForce website (Documentația modelului de obiecte.pdf) în directorul versiunii respective.
Obiectul Header
{
"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": {}
}Obiectul „Header” conține următoarele informații.
Informații din coloana „Tip”:
- M ... obligatoriu („mandatory”)
- M* ... obligatoriu în anumite țări sau în anumite condiții
- R ... recomandat („recomandat”)
- O ... opțional
| Element | Tip | Descriere | |
| uniqueClientId | M | ID-ul unic al clientului, corespunde ID-ului terminalului din RetailForce Cloud (este returnat/atribuit în timpul punerii în funcțiune prin PUT /api/v1/management/clients/byCloud). | |
| applicationVersion | R/M* |
Versiunea software-ului casei de marcat.
Atenție:
Vă rugăm să rețineți că în unele țări (Franța) numărul versiunii este fixat ca parte a procesului de certificare. Dacă se specifică un număr de versiune incorect (care nu corespunde cu numărul certificat), nu este posibilă finalizarea documentului (= eroare). Vă rugăm să consultați și: Versiune certificată
.
Detalii privind țara:
|
|
| ApplicationVersionId | R/M* |
ID-ul versiunii software-ului casei de marcat. Detalii privind țara:
|
|
| ApplicationVersionPrevious | R/M* |
ID-ul versiunii anterioare a software-ului casei de marcat. Detalii privind țara:
|
|
| FiscalModuleVersion | O/M* | Versiunea modulului fiscal (modul fiscal de încredere) utilizat pentru generarea documentului respectiv. Setată automat de middleware dacă nu este transmisă de software. | |
| FiscalCountryModuleVersion | O/M* | Versiunea modulului de țară (Trusted Fiscal Country Module) utilizată pentru generarea documentului respectiv. Se setează automat de către middleware dacă nu este transmisă de software. | |
| FiscalisationType | O | ||
| semnătură | O | Semnătură | |
| imprimantă fiscală | Imprimantă fiscală | ||
| online | Online | ||
| semnătură cu conexiune online | Semnătură cu conexiune online | ||
| fără fiscalizare | Fără fiscalizare | ||
| Tip de fiscalizare Italia | O | ||
| imprimantă | O | Registrator Telematic | |
| retailForceReceiptId | O | Număr de chitanță unic la nivel global (format din terminalId și numărul secvențial al chitanței). Poate fi generat la crearea unei tranzacții (cu createDocument). | |
| AdditionalFields | O | ||
| additionalProp1-x | O | ||
| automaticVatCalculation | O |
Acest element declanșează calculul automat al diverselor câmpuri de sumă la nivel de poziție. 0 noCalculation – nu are loc niciun calcul automat 1 netValueCalculation – calcul automat al valorii nete și al valorii Vat. Trebuie specificate cel puțin valoarea brută și procentul Vat sau codul de identificare. 2 grossValueCalculation – calcul automat al valorii brute și al valorii taxei. Trebuie specificate cel puțin valoarea netă și procentul Vat-ului/identificatorul. |
|
| AllowedVatDeviation | O |
Poate fi utilizat pentru a compensa problemele de rotunjire în calculul Vat-ului. Vă rugăm să utilizați cu precauție! Dacă se setează o valoare mare, verificarea calculului Vat-ului este dezactivată! Exemplu: „AllowedVatDeviation”: 0,05, permite o reducere de 5 cenți între valoarea netă + valoarea taxei = valoarea brută (+-0,05) |
|
| TerminalSlaveId | O | Specificarea ID-ului unui terminal de intrare. | |
| cashRegisterSerialNumber | O |
Numărul de serie al casei de marcat. Acest câmp identifică echipamentul fizic specific al casei de marcat utilizat pentru procesarea tranzacției. | |
| footerGraphicIndex | O |
Prin intermediul footerGraphicIndex, un element grafic predefinit este plasat în subsolul unui document. Detalii privind țara:
|
|
| AuditLogEntryType | Specifică tipul de intrare în jurnalul de audit atunci când documentul în sine este o intrare în jurnalul de audit. | ||
| amount | O sumă asociată cu header-ul documentului (de exemplu, în scopuri de jurnal de audit). | ||
| identifier | Un câmp de identificare generală (de exemplu, în scopul jurnalului de audit). | ||
| DocumentGuid | M | Identificator unic al documentului folosind UUID / GUID. Se utilizează, de asemenea, ca link pentru chitanțele digitale. | |
| DocumentId | M | Număr unic, secvențial al documentului (chitanței) în cadrul sucursalei / filialei / restaurantului (pentru toate casele de marcat), atribuit de sistemul de casă de marcat (max. 40 de caractere). | |
| CreateDate | M | Data și ora creării documentului | |
| BookDate | M | Data rezervării | |
| AccountingDate | O | Data posibilă de înregistrare a acestui document în contabilitate | |
| ProcessStartDate | R/M* | Data și ora creării primei chitanțe din cadrul întregului proces (de exemplu, Germania: data și ora creării primei comenzi a clientului în legătură cu prezenta chitanță de plată – a se vedea și „Caracteristici speciale pentru sectorul gastronomic”) | |
| DocumentNumber | R/M* | Număr unic, secvențial al documentului (="numărul chitanței"), atribuit de sistemul casei de marcat. | |
| documentNumberSeries | O/M* |
Denumirea seriei numerice a numărului de chitanță (DocumentNumber). Detalii privind țara:
|
|
| cancellationDocument | M |
Flag dacă prezentul document este utilizat pentru a anula un alt document (emis anterior) true – Document de anulare false - Nu este un document de anulare |
|
| FailedToPay | O |
A boolean flag (true/false) care indică dacă plata pentru document a eșuat. |
|
| documentReference | O/M* | Se utilizează pentru a face referire la un alt document. | |
| {...} | |||
| IsTraining | O/M* | Flag pentru marcarea documentelor de instruire / demonstrație (generate în modul de instruire / demonstrație al casei de marcat). | |
| TestCaseNumber | O/M* |
Câmp pentru specificarea unui număr de caz de test în scopuri de certificare. Detalii privind țara:
|
|
| documentType | O | Specificarea tipului de document | |
| documentTypeCaption | M* |
Descrierea tipului de document. Servește în esență pentru o descriere mai bună sau pentru clarificare. Detalii privind țara:
|
|
| utilizator | O/M* |
Informații despre utilizatorul (casei de marcat). Detalii privind țara:
|
|
| {...} | |||
| SalesPerson | O/M* |
Informații despre personalul de vânzări. Detalii privind țara:
|
|
| {...} | |||
| AllocationGroups [] | O/M* |
Se utilizează pentru a atribui chitanțe unor elemente specifice (de exemplu, mese în sectorul gastronomic). A se vedea și: Procesul de comandă pe termen lung în sectorul gastronomic. Detalii privind țara:
|
|
| partener | O/M* |
Informații despre respectivii parteneri (de afaceri) ai companiei emitente a documentului. Detalii privind țara:
|
|
| addressType | (în partner ) Câmp opțional nou pentru specificarea tipului de adresă (de exemplu, adresa de facturare). |
||
| {...} | |||
| note | O | Înregistrarea unor note suplimentare | |
| CustomerCount | O/M* |
Numărul de clienți referitor la acest document (de exemplu, în gastronomie, numărul de oaspeți la casă/masă) Detalii privind țara:
|
|
| PaymentTerms | O | Termeni de plată / condiții de plată | |
| {...} | |||
| ServicePeriodStart | O |
Începutul perioadei de prestare a serviciului (în special pentru facturi) Detalii privind țara:
|
|
| ServicePeriodEnd | O |
Sfârșitul perioadei de prestare a serviciului (în special pentru facturi) Detalii privind țara:
|
|
| PositionCount | O/M* |
Numărul de poziții conținute în chitanță (toate pozițiile, inclusiv articol, text, rezervare, subTotal, total) A se vedea și Obiectul „Poziție”. Detalii privind țara:
|
|
| DocumentIssueType | O/M* |
Definește tipul de eliberare a chitanței.
Detalii privind țara:
|
|
| coupon | O | Posibilitatea de a imprima couponuri suplimentare și alte elemente pe chitanță. | |
| {...} | |||
| serviceType | O/M* |
Specificarea tipului de serviciu în domeniul gastronomiei (servire la masă, la tejghea). Valori posibile (se respectă convenția CamelCase!)
Detalii privind țara:
|
|
| IsEcommerceTransaction | O/M* |
Indică dacă este vorba de o tranzacție de comerț electronic (true / fals). Detalii privind țara:
|
|
| TaxPositions | R |
Specificarea tuturor pozițiilor Vat din document. Trebuie specificate fie toate pozițiile Vat, fie niciuna. Pentru a obține pozițiile fiscale din document (atunci când această proprietate nu a fost setată), utilizați GetTaxPositions(Document, boolean).
Notă pentru Austria:
Vă recomandăm să utilizați acest array pentru a transmite pozițiile fiscale ale unei chitanțe, pentru a evita problemele de rotunjire din cadrul protocolului de înregistrare a datelor („DEP7”).
|
|
| {...} | |||
| fiscalResponse | - |
Răspunsul serviciului de fiscalizare după transmiterea metodelor createDocument și storeDocument. Vă recomandăm să stocați conținutul fiscalResponse în baza de date a casei de marcat.
Notă:
anumite elemente ale obiectului fiscalResponse, după apelarea funcției createDocument
, trebuie incluse în documentul JSON (care trebuie trimis către storeDocument
). Vă rugăm să NU includeți întregul obiect fiscalResponse!
|
|
| {...} | |||
| fiscalDocumentNumber | M* |
Numărul documentului fiscal (atribuit de RetailForce system sau de unitatea de fiscalizare respectivă – de exemplu, TSE în Germania)
Atenție:
Vă rugăm să rețineți că, în sistemele până la versiunea v1.7.7, informația fiscalDocumentNumber era returnată în câmpul fiscalisation
DocumentNumber al obiectului fiscalResponse. A se vedea și articolul: „Tranzacția dată nu a fost inițiată
”. În v1.7.7 a fost introdus un câmp suplimentar fiscalDocumentNumber (string) în obiectul fiscalResponse.
|
|
| fiscalDocumentRevision | O/M* |
Numărul de revizie al documentului fiscal (atribuit de RetailForce system sau de unitatea de fiscalizare respectivă – de exemplu, TSE în Germania)
Atenție:
Vă rugăm să rețineți că, în sistemele până la versiunea v1.7.7, fiscalDocumentRevision era returnat în câmpul fiscalisation
DocumentRevision din header-ul obiectului fiscalResponse. A se vedea și articolul: „Tranzacția respectivă nu a fost inițiată
”. Începând cu versiunea v1.7.7, proprietatea din cadrul obiectului fiscalResponse a fost redenumită fiscalDocumentRevision și este returnată acum doar în matricea AdditionalFields a obiectului fiscalResponse-Germany.
|
|
| fiscalDocumentStartTime | M* | Ora creării documentului fiscal (atribuită de RetailForce system sau de unitatea de fiscalizare respectivă – de exemplu, TSE în Germania) | |
| poziții | M | Informații despre poziția respectivă din chitanță/document (conținutul depinde de tipul documentului și de tipul poziției – documentType, positionType) | |
| {...} | |||
| plăți | O/M* | Informații despre plată (utilizarea depinde de tipul documentului – documentType) | |
| {...} | |||
| AdditionalHeader | O |
AdditionalHeader poate fi utilizată pentru a seta linii suplimentare de text liber în antetul documentului. Detalii privind țara:
Notă: În prezent, acest array este acceptat doar în Italia. Poate fi completat și în alte țări, dar nu are niciun efect. |
|
| AdditionalFooter | O |
AdditionalFooter poate fi utilizată pentru a seta rânduri suplimentare de text liber în Footer-ul documentului. Detalii pentru fiecare țară:
Notă: În prezent, acest array este acceptat doar în Italia. Poate fi completat și în alte țări, dar nu are niciun efect. |
|
| FiscalAdditionalFields | O | ||
Acest articol a fost tradus automat.
Comentarii
0 comentarii
Vă rugăm să vă autentificați pentru a lăsa un comentariu.