Este artículo muestra, mediante un ejemplo, cómo se pueden implementar los denominados «procesos de pedidos a largo plazo» y enviarlos al Servicio Fiscal de RetailForce.
Las transacciones de pedidos de larga duración son necesarias para la implementación de la normativa alemana KassenSichV.
El ejemplo clásico de un proceso de pedido de larga duración es el proceso habitual en el sector de la restauración, en el que los pedidos de los clientes se registran en las mesas. Se realizan varios pedidos de forma independiente entre sí y, al final, estos pedidos se resumen y son abonados por uno o varios comensales.
Este proceso se conoce en Alemania como «proceso de pedido de larga duración».
En el sistema RetailForce, los pedidos se implementan como documentos independientes. Véase también el artículo sobre las características del sector de la restauración.
La vinculación entre los documentos de facturación (documentType=Receipt) y los pedidos (documentType=LongTermOrder) se realiza a través de la propiedad AllocationGroups (Document.AllocationGroups). En este campo puede almacenarse, por ejemplo, el número de mesa o cualquier otra referencia del pedido. Es fundamental que la cantidad total de artículos pedidos y los artículos que posteriormente se facturan coincidan exactamente.
Función y procedimiento
El cliente se sienta a la mesa y pide una Coca-Cola.
Se debe enviar un pedido con 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": []
}
A continuación, el cliente solicita dos Coca-Colas adicionales, una para él y otra para otro comensal:
{
"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 clientes desean marcharse y pagar por separado; uno de ellos abona una 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
}
]
}
El segundo cliente también abona (las dos Coca-Colas restantes) mediante tarjeta 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
}
]
}
Con esto, se cierra de nuevo la mesa y se liquidan todos los pedidos.
Este artículo ha sido traducido automáticamente.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.