SubItems permit alcătuirea unui articol principal pe o chitanță din mai multe părți. Un exemplu tipic este un meniu vândut ca un singur articol, dar care conține, de exemplu, un burger, cartofi prăjiți și o băutură. Articolul părinte are un preț total, iar SubItems sunt înregistrate cu propriile prețuri, cote de impozitare și informații privind stocul.
1. Structura tehnică și câmpurile cheie
Articolul principal
Articolul principal este un Position obiect cu Type: 0 (Articol). Pentru SubItems, sunt obligatorii următoarele câmpuri:
| Proprietate | Tip | Descriere |
|---|---|---|
| UseSubItemVatCalculation | boolean | (Obligatoriu) Trebuie setat la true pentru ca valorile taxelor să fie derivate din SubItems. |
| VatIdentification | integer | (Obligatoriu) Trebuie să fie 0 atunci când UseSubItemVatCalculation este activ. |
| VatPercent | zecimal | (Obligatoriu) Trebuie să fie 0 când UseSubItemVatCalculation este activ. |
| SubItems | Array<SUBITEM> | (Obligatoriu) Conține SubItems cu propriile informații privind prețul și taxele. |
Notă: NetValue, GrossValue iar TaxValue elementului părinte trebuie să fie egale cu sumele SubItems-urilor.
SubItems
| Proprietate | Tip | Descriere |
|---|---|---|
| tip | string | (Obligatoriu) Trebuie să fie „SubItem ”. |
| Cantitate | zecimal | (Obligatoriu) Cantitatea subarticolului. |
| VatIdentification | număr întreg | (Obligatoriu) Codul de ID TVA al subarticolului. |
| VatPercent | zecimal | (Obligatoriu) Cota de TVA a subarticolului. |
| NetValue , TaxValue , GrossValue | zecimal | (Obligatoriu) Informații privind prețul pentru fiecare subelement. GrossValue = NetValue + TaxValue . |
2. Exemplu: Payload complet
Următoarea storeDocument solicitare conține un element părinte („Element de test 1 (Meniu)”) cu două SubItems:
{
"fiscalDocumentNumber": "2",
"fiscalDocumentStartTime": 1755507048,
"FiscalDocumentRevision": 1,
"ModelVersion": "1.4.0",
"UniqueClientId": "8ccedd62-9f72-4cda-b101-7e5e62fb37dc",
"AutomaticVatCalculation": 1,
"DocumentGuid": "08679cec-0df2-4ee0-a138-7ddf55ed2372",
"DocumentId": "08679cec-0df2-4ee0-a138-7ddf55ed2372",
"documentNumber": "08679cec-0df2-4ee0-a138-7ddf55ed2372",
"AllowedVatDeviation": 0.01,
"isTraining": true,
"CreateDate": "2025-08-18T08:52:37Z",
"BookDate": "2025-08-18T08:52:37Z",
"DocumentType": 0,
"positionCount": 2,
"User": {
"Id": "test",
"Caption": "test"
},
"Positions": [
{
"PositionNumber": 0,
"ItemCaption": "Testartikel 1 (Menü)",
"Type": 0,
"InHouse": false,
"Quantity": 1,
"ItemId": "Artikel1",
"VatIdentification": 0,
"VatPercent": 0,
"BusinessTransactionType": 0,
"BaseNetValue": 0.84,
"BaseGrossValue": 1,
"BaseTaxValue": 0.16,
"Discounts": [],
"NetValue": 0.84,
"GrossValue": 1,
"TaxValue": 0.16,
"useSubItemVatCalculation": true,
"subItems": [
{
"type": "SubItem",
"positionNumber": 1,
"ItemCaption": "Unterposition 1.1",
"ItemId": "SubArtikel1-1",
"Quantity": 1,
"VatIdentification": "1",
"VatPercent": 19,
"BusinessTransactionType": 0,
"NetValue": 0.50,
"GrossValue": 0.60,
"TaxValue": 0.10
},
{
"type": "SubItem",
"positionNumber": 2,
"ItemCaption": "Unterposition 1.2",
"ItemId": "SubArtikel1-2",
"Quantity": 1,
"VatIdentification": "1",
"VatPercent": 19,
"BusinessTransactionType": 0,
"NetValue": 0.34,
"GrossValue": 0.40,
"TaxValue": 0.06
}
]
},
{
"PositionNumber": 1,
"ItemCaption": "Testartikel 2",
"Type": 0,
"InHouse": false,
"Quantity": 1,
"ItemId": "Artikel2",
"VatIdentification": "1",
"VatPercent": 19,
"BusinessTransactionType": 0,
"BaseNetValue": 0.84,
"BaseGrossValue": 1,
"BaseTaxValue": 0.16,
"Discounts": [],
"NetValue": 0.84,
"GrossValue": 1,
"TaxValue": 0.16
}
],
"Payments": [
{
"Amount": 2,
"CurrencyIsoCode": "EUR",
"paymentType": "cash",
"caption": "Barzahlung",
"uniqueReadablePaymentIdentifier": "CASH/EUR",
"ExternalIdentifier": []
}
]
}
3. Listă de verificare
✓ Elementul principal conține "subItems".
✓ "useSubItemVatCalculation": true este setat.
✓ VatIdentification și VatPercent ale elementului principal sunt 0.
✓ Fiecare SubItem are "type": "SubItem".
✓ SubItems-urile au propriile informații privind taxele și prețurile.
✓ Totalurile SubItems corespund valorilor articolului părinte.
Acest articol a fost tradus automat.
Comentarii
0 comentarii
Vă rugăm să vă autentificați pentru a lăsa un comentariu.