Este artigo demonstra, através de um exemplo, como os chamados «processos de encomendas de longo prazo» podem ser implementados e enviados para o Serviço Fiscal da RetailForce.
As transações de encomendas de longa duração são necessárias para a implementação da norma alemã KassenSichV.
O exemplo clássico de um processo de encomenda de longa duração é o processo normal na restauração, em que as encomendas dos clientes são registadas nas mesas. Várias encomendas são feitas independentemente umas das outras e, no final, estas encomendas são agregadas e pagas por um ou mais clientes.
Este processo é conhecido na Alemanha como o processo de encomendas de longa duração.
No RetailForce system, as encomendas são implementadas como documentos separados. Consulte também as características do artigo no setor da restauração.
A ligação entre os documentos de faturação (documentType=Receipt) e os pedidos (documentType=LongTermOrder) é estabelecida através da propriedade AllocationGroups (Document.AllocationGroups). Aqui pode armazenar, por exemplo, um número de mesa ou qualquer outra referência ao pedido. É importante que a quantidade total dos artigos encomendados e dos artigos posteriormente faturados seja exatamente a mesma.
Função e procedimento
O cliente senta-se à mesa e pede uma Coca-Cola.
Deve ser enviado um pedido com documentType = LongTermOrder.
{
"ModelVersion": "1.0.1",
"UniqueClientId": "c1062c55-57c4-4ed2-9c53-aff1762326a4",
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"DocumentGuid": "aea8f885-8f44-4e9c-ac35-d1100d89aa30",
"DocumentId": "20211002T1607265029230+0200",
"CreateDate": "2021-10-02T16:07:26.502923+02:00",
"BookDate": "2021-10-02T16:07:26.502923+02:00",
"ProcessStartDate": null,
"DocumentNumber": null,
"CancellationDocument": false,
"DocumentReference": null,
"IsTraining": false,
"DocumentType": 80,
"DocumentTypeCaption": null,
"User": {
"Id": "123",
"Caption": "TestUser"
},
"AllocationGroups": [
"Table 1"
],
"Partner": null,
"Notes": null,
"FiscalResponse": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": null,
"Positions": [
{
"ItemCaption": "Cola 0.33",
"ItemShortCaption": null,
"Discounts": [],
"Type": 0,
"UseSubItemVatCalculation": true,
"SubItems": null,
"InHouse": true,
"ItemGroupId": null,
"ItemGroupCaption": null,
"Quantity": 1.0,
"QuantityUnit": null,
"ItemId": "003145",
"BaseNetValue": 3.18,
"BaseGrossValue": 3.4,
"BaseTaxValue": 0.22,
"GTIN": "7622300429331",
"BusinessTransactionType": 0,
"VatIdentification": 2,
"VatPercent": 7.0,
"NetValue": 3.18,
"GrossValue": 3.4,
"TaxValue": 0.22,
"AccountingIdentifier": null,
"PositionNumber": 0,
"PositionReference": null,
"CancellationPosition": false,
"AdditionalFields": {}
}
],
"Payments": []
}
Agora, o cliente pede mais duas Coca-Colas, uma para si e outra para outro convidado:
{
"ModelVersion": "1.0.1",
"UniqueClientId": "c1062c55-57c4-4ed2-9c53-aff1762326a4",
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"DocumentGuid": "b7d79184-62f4-4879-81d3-f2d2139746c3",
"DocumentId": "20211002T1609397066852+0200",
"CreateDate": "2021-10-02T16:09:39.7066852+02:00",
"BookDate": "2021-10-02T16:09:39.7066852+02:00",
"ProcessStartDate": null,
"DocumentNumber": null,
"CancellationDocument": false,
"DocumentReference": null,
"IsTraining": false,
"DocumentType": 80,
"DocumentTypeCaption": null,
"User": {
"Id": "123",
"Caption": "TestUser"
},
"AllocationGroups": [
"Table 1"
],
"Partner": null,
"Notes": null,
"FiscalResponse": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": null,
"Positions": [
{
"ItemCaption": "Cola 0.33",
"ItemShortCaption": null,
"Discounts": [],
"Type": 0,
"UseSubItemVatCalculation": true,
"SubItems": null,
"InHouse": true,
"ItemGroupId": null,
"ItemGroupCaption": null,
"Quantity": 1.0,
"QuantityUnit": null,
"ItemId": "003145",
"BaseNetValue": 3.18,
"BaseGrossValue": 3.4,
"BaseTaxValue": 0.22,
"GTIN": "7622300429331",
"BusinessTransactionType": 0,
"VatIdentification": 2,
"VatPercent": 7.0,
"NetValue": 3.18,
"GrossValue": 3.4,
"TaxValue": 0.22,
"AccountingIdentifier": null,
"PositionNumber": 0,
"PositionReference": null,
"CancellationPosition": false,
"AdditionalFields": {}
},
{
"ItemCaption": "Cola 0.33",
"ItemShortCaption": null,
"Discounts": [],
"Type": 0,
"UseSubItemVatCalculation": true,
"SubItems": null,
"InHouse": true,
"ItemGroupId": null,
"ItemGroupCaption": null,
"Quantity": 1.0,
"QuantityUnit": null,
"ItemId": "003145",
"BaseNetValue": 3.18,
"BaseGrossValue": 3.4,
"BaseTaxValue": 0.22,
"GTIN": "7622300429331",
"BusinessTransactionType": 0,
"VatIdentification": 2,
"VatPercent": 7.0,
"NetValue": 3.18,
"GrossValue": 3.4,
"TaxValue": 0.22,
"AccountingIdentifier": null,
"PositionNumber": 1,
"PositionReference": null,
"CancellationPosition": false,
"AdditionalFields": {}
}
],
"Payments": []
}
Ambos os clientes pretendem sair e pagar separadamente; um dos clientes paga uma Coca-Cola:
{
"ModelVersion": "1.0.1",
"UniqueClientId": "c1062c55-57c4-4ed2-9c53-aff1762326a4",
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"DocumentGuid": "cd8f59c3-7514-40cc-931c-c42151bd44d3",
"DocumentId": "20211002T1611296576261+0200",
"CreateDate": "2021-10-02T16:11:29.6576261+02:00",
"BookDate": "2021-10-02T16:11:29.6576261+02:00",
"ProcessStartDate": null,
"DocumentNumber": null,
"CancellationDocument": false,
"DocumentReference": null,
"IsTraining": false,
"DocumentType": 0,
"DocumentTypeCaption": null,
"User": {
"Id": "123",
"Caption": "TestUser"
},
"AllocationGroups": [
"Table 1"
],
"Partner": null,
"Notes": null,
"FiscalResponse": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": null,
"Positions": [
{
"ItemCaption": "Chocolate",
"ItemShortCaption": null,
"Discounts": [],
"Type": 0,
"UseSubItemVatCalculation": true,
"SubItems": null,
"InHouse": true,
"ItemGroupId": null,
"ItemGroupCaption": null,
"Quantity": 1.0,
"QuantityUnit": null,
"ItemId": "003145",
"BaseNetValue": 3.18,
"BaseGrossValue": 3.4,
"BaseTaxValue": 0.22,
"GTIN": "7622300429331",
"BusinessTransactionType": 0,
"VatIdentification": 2,
"VatPercent": 7.0,
"NetValue": 3.18,
"GrossValue": 3.4,
"TaxValue": 0.22,
"AccountingIdentifier": null,
"PositionNumber": 0,
"PositionReference": null,
"CancellationPosition": false,
"AdditionalFields": {}
}
],
"Payments": [
{
"Amount": 3.4,
"CurrencyIsoCode": "EUR",
"Caption": null,
"UniqueReadablePaymentIdentifier": null,
"ForeignAmount": 0.0,
"ForeignAmountExchangeRate": 0.0,
"AdditionalFields": {},
"PaymentType": 0,
"VatIdentification": null,
"VatPercent": null,
"TaxValue": null
}
]
}
O segundo cliente também paga (as duas Coca-Colas restantes) com cartão EC:
{
"ModelVersion": "1.0.1",
"UniqueClientId": "c1062c55-57c4-4ed2-9c53-aff1762326a4",
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"DocumentGuid": "2c215c9b-64f4-4785-9bd9-2d068f02346b",
"DocumentId": "20211002T1612589529701+0200",
"CreateDate": "2021-10-02T16:12:58.9529701+02:00",
"BookDate": "2021-10-02T16:12:58.9529701+02:00",
"ProcessStartDate": null,
"DocumentNumber": null,
"CancellationDocument": false,
"DocumentReference": null,
"IsTraining": false,
"DocumentType": 0,
"DocumentTypeCaption": null,
"User": {
"Id": "123",
"Caption": "TestUser"
},
"AllocationGroups": [
"Table 1"
],
"Partner": null,
"Notes": null,
"FiscalResponse": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": null,
"Positions": [
{
"ItemCaption": "Chocolate",
"ItemShortCaption": null,
"Discounts": [],
"Type": 0,
"UseSubItemVatCalculation": true,
"SubItems": null,
"InHouse": true,
"ItemGroupId": null,
"ItemGroupCaption": null,
"Quantity": 1.0,
"QuantityUnit": null,
"ItemId": "003145",
"BaseNetValue": 3.18,
"BaseGrossValue": 3.4,
"BaseTaxValue": 0.22,
"GTIN": "7622300429331",
"BusinessTransactionType": 0,
"VatIdentification": 2,
"VatPercent": 7.0,
"NetValue": 3.18,
"GrossValue": 3.4,
"TaxValue": 0.22,
"AccountingIdentifier": null,
"PositionNumber": 0,
"PositionReference": null,
"CancellationPosition": false,
"AdditionalFields": {}
},
{
"ItemCaption": "Chocolate",
"ItemShortCaption": null,
"Discounts": [],
"Type": 0,
"UseSubItemVatCalculation": true,
"SubItems": null,
"InHouse": true,
"ItemGroupId": null,
"ItemGroupCaption": null,
"Quantity": 1.0,
"QuantityUnit": null,
"ItemId": "003145",
"BaseNetValue": 3.18,
"BaseGrossValue": 3.4,
"BaseTaxValue": 0.22,
"GTIN": "7622300429331",
"BusinessTransactionType": 0,
"VatIdentification": 2,
"VatPercent": 7.0,
"NetValue": 3.18,
"GrossValue": 3.4,
"TaxValue": 0.22,
"AccountingIdentifier": null,
"PositionNumber": 1,
"PositionReference": null,
"CancellationPosition": false,
"AdditionalFields": {}
}
],
"Payments": [
{
"Amount": 6.8,
"CurrencyIsoCode": "EUR",
"Caption": "EC",
"UniqueReadablePaymentIdentifier": null,
"ForeignAmount": 0.0,
"ForeignAmountExchangeRate": 0.0,
"AdditionalFields": {},
"PaymentType": 1,
"VatIdentification": null,
"VatPercent": null,
"TaxValue": null
}
]
}
Com isto, a conta é encerrada novamente e todos os pedidos são liquidados.
Este artigo foi traduzido automaticamente.
Comentários
0 comentários
iniciar sessão para comentar.