Los siguientes ejemplos en formato JSON muestran cómo se puede gestionar en RetailForce la recepción de un anticipo y el tratamiento posterior de dicho anticipo tras la entrega o la prestación de los servicios. Tenga en cuenta que el término utilizado en RetailForce para los anticipos o pagos por adelantado es «depósito».
Tenga en cuenta que determinados valores de las propiedades utilizados en los ejemplos deben ajustarse para que pueda utilizar la payload en su sistema (p. ej., «uniqueClientId», «BookDate»). Además, los ejemplos se han creado para un país concreto, lo que significa que también deben ajustarse los tipos impositivos, los importes brutos y netos, etc.
| Versión de lanzamiento para el usuario: | 1.11.16.2546 |
| Versión DOM: | 1.7.0 |
1. Se ha recibido un depósito o anticipo
En la primera fase se genera un asiento contable de anticipo:
- El cliente efectúa un ingreso en efectivo de 1.200 EUR para una entrega o un servicio futuros.
Propiedades de la transacción
La tabla siguiente muestra qué propiedades deben configurarse con qué valores para reflejar correctamente el caso de negocio.
| Propiedad | Valor | Descripción |
| DocumentType | «0» o «[0] = Recibo» | a gestionar mediante recibo de caja |
| Tipo de partidas | «3» o «[3] = Contabilización» | Un depósito recibido se registra como una partida del tipo «3» (partida de contabilización). |
| Posiciones.BusinessTransactionType | «7» o «[7] = Depósito» | El tipo de operación comercial específico (BusinessTransactionType) utilizado es «7» (depósito). |
| Posiciones.VatIdentification | Si, en el país correspondiente, el Vat ya debe indicarse o pagarse al recibir un anticipo o un depósito, deberá especificarse el ID de categoría de Vat correcto y calcularse el Vat en consecuencia. | |
| Payments.Type | «0» o «Efectivo» | Dado que este caso concreto se refiere a un pago en efectivo, también debe especificarse la forma de pago correspondiente. |
Ejemplo:
{
"ModelVersion": "1.7.0",
"UniqueClientId": "3e2c0cdf-e72c-43ea-a050-686eb0eb3853",
"UniqueCashRegisterId": null,
"ApplicationVersion": "1.0.0",
"ApplicationVersionId": null,
"ApplicationVersionPrevious": null,
"FiscalModuleVersion": "1.11.0.0",
"FiscalCountryModuleVersion": null,
"SoftwareName": "RetailForce neverPOS",
"RetailForceReceiptId": null,
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"AllowedVatDeviation": 0.01,
"PrintCount": null,
"TerminalSlaveId": null,
"FooterGraphicIndex": null,
"DocumentGuid": "026f0809-88b8-48c2-9e96-6f3ba37f48ff",
"DocumentId": "0026",
"CreateDate": "2026-06-01T13:30:08+02:00",
"BookDate": "2026-06-01T13:30:08+02:00",
"AccountingDate": "2026-06-01T13:30:08+02:00",
"DocumentNumber": "202500026",
"DocumentNumberSeries": "SI",
"CancellationDocument": false,
"FailedToPay": false,
"DocumentReference": null,
"IsTraining": false,
"TestCaseNumber": null,
"DocumentType": 0,
"DocumentTypeCaption": "POS-Receipt",
"User": {
"Id": "1",
"Caption": "User01",
"FirstName": "Joe",
"LastName": "Dowe",
"TaxNumber": null,
"DateOfEntry": "2025-09-23T15:11:08.6041978+02:00"
},
"SalesPerson": null,
"AllocationGroups": [],
"CustomerCount": null,
"Partner": null,
"Notes": null,
"PaymentTerms": null,
"ServicePeriodStart": null,
"ServicePeriodEnd": null,
"PositionCount": 1,
"DocumentIssueType": null,
"Coupon": null,
"ServiceType": null,
"IsEcommerceTransaction": null,
"TaxPositions": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": 0,
"Positions": [
{
"PositionNumber": 0,
"Caption": "Downpayment for Order",
"Type": 3,
"BusinessTransactionType": 7,
"PayOutType": null,
"VatIdentification": 1,
"VatPercent": 200.0,
"NetValue": 1000.00,
"GrossValue": 1200.00,
"TaxValue": 200.00,
"AdditionalFields": {},
"ExternalIdentifier": []
}
],
"Payments": [
{
"Amount": 1200.00,
"CurrencyIsoCode": "EUR",
"Caption": "Bar",
"UniqueReadablePaymentIdentifier": "BAR",
"ForeignAmount": 0,
"ForeignAmountExchangeRate": 0,
"AdditionalFields": {},
"PaymentType": 0,
"CreateDate": null,
"VatIdentification": null,
"VatPercent": null,
"VatPercent2": null,
"TaxValue": null,
"TaxValue2": null,
"ExternalIdentifier": [],
"User": null,
"SalesPerson": null,
"PaymentTerminalReferenceId": null,
"CardData": null
}
],
"AdditionalHeader": [],
"AdditionalFooter": [],
"FiscalAdditionalFields": {}
}
2. Liquidación del pago final
En el momento de la entrega o de la prestación de los servicios (por ejemplo, cuando el cliente recoge los productos que ha pedido), el cliente deberá abonar el saldo pendiente correspondiente al valor total de los productos:
- Valor total de los productos/servicios: 2.979,90 EUR
- Teniendo en cuenta el anticipo de 1 200 EUR
- El cliente abona el saldo restante (1.779,90 EUR) también en efectivo
El depósito puede incluirse en el documento final de dos formas diferentes:
Opción 1: el depósito como partida
En esta variante, el anticipo se incorpora en el payload como una partida negativa (lo contrario de la partida que figura en el payload original).
Propiedades de la transacción
La tabla siguiente muestra qué propiedades deben configurarse con qué valores para reflejar correctamente el caso de negocio.
| Propiedad | Valor | Descripción |
| DocumentType | «0» o «[0] = Recibo» | a gestionar mediante recibo de caja |
| Tipo de partida | «0» o «[0] = Artículo» | Para la posición de artículo 0 (el artículo solicitado por el cliente por el que se ha abonado un anticipo) |
| Posiciones.BusinessTransactionType | «0» o «[0] = Revenue» | Para la posición de artículo 0 (el artículo solicitado por el cliente por el que se ha abonado un anticipo) |
| Posiciones.Tipo | «3» o «[3] = Reserva» | Para registrar el depósito recibido, se emplea la partida 1 de tipo «3» (partida de reserva), conforme se muestra en el primer ejemplo. No obstante, los valores (GrossValue, NetValue, etc.) de dicha partida deben consignarse con signo negativo. |
| BusinessTransactionType | «7» o «[7] = Depósito» | El tipo de transacción comercial específico (BusinessTransactionType) utilizado en la partida 1 es «7» (depósito). |
| Posiciones.VatIdentification | También debe tenerse en cuenta el Vat a la hora de liquidar el depósito. | |
| Payments.Type | «0» o «Efectivo» |
En la sección «Pagos», únicamente se muestra el pago restante en efectivo (Total de partidas = Total de pagos). Cálculo: Partida 0: 2.979,90 Partida 1: -1.200,00 Total de posiciones: 1 779,90 Pagos: 1.779,90 (en efectivo) Total de pagos: 1.779,90 |
Ejemplo:
{
"ModelVersion": "1.7.0",
"UniqueClientId": "3e2c0cdf-e72c-43ea-a050-686eb0eb3853",
"UniqueCashRegisterId": null,
"ApplicationVersion": "1.0.0",
"ApplicationVersionId": null,
"ApplicationVersionPrevious": null,
"FiscalModuleVersion": "1.11.0.0",
"FiscalCountryModuleVersion": null,
"SoftwareName": "RetailForce neverPOS",
"RetailForceReceiptId": null,
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"AllowedVatDeviation": 0.01,
"PrintCount": null,
"TerminalSlaveId": null,
"FooterGraphicIndex": null,
"DocumentGuid": "215f0809-88b8-48c2-9e96-6f3ba37f48ff",
"DocumentId": "0021",
"CreateDate": "2025-10-09T12:50:08+02:00",
"BookDate": "2025-10-09T12:50:08+02:00",
"AccountingDate": "2025-10-09T12:50:08+02:00",
"ProcessStartDate": "2025-10-09T12:50:08+02:00",
"DocumentNumber": "202500021",
"DocumentNumberSeries": "SI",
"CancellationDocument": false,
"FailedToPay": false,
"DocumentReference": null,
"IsTraining": false,
"TestCaseNumber": null,
"DocumentType": 0,
"DocumentTypeCaption": "POS-Receipt",
"User": {
"Id": "1",
"Caption": "User01",
"FirstName": "Joe",
"LastName": "Dowe",
"TaxNumber": null,
"DateOfEntry": "2025-09-23T15:11:08.6041978+02:00"
},
"SalesPerson": null,
"AllocationGroups": [],
"CustomerCount": null,
"Partner": null,
"Notes": null,
"PaymentTerms": null,
"ServicePeriodStart": null,
"ServicePeriodEnd": null,
"PositionCount": 2,
"DocumentIssueType": null,
"Coupon": null,
"ServiceType": null,
"IsEcommerceTransaction": null,
"TaxPositions": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": 0,
"Positions": [
{
"PositionNumber": 0,
"ItemCaption": "RENOXA KnowPal 15.6 Untel Lore Ultra- Z9 399J 32GB RAM 512GB SSD RTX 3060 W11P",
"ItemShortCaption": "RENOXA KnowPal",
"ItemSerialNumber": null,
"Type": 0,
"Quantity": 2.0,
"QuantityUnit": {
"Id": "STK"
},
"ItemType": 0,
"ItemId": "RKP156UZ9",
"ItemTaxType": 0,
"InHouse": true,
"ItemGroupId": "1000",
"ItemGroupCaption": "Notebooks",
"BusinessTransactionType": 0,
"CostPrice": 2979.90,
"BaseNetValue": 2483.25,
"BaseGrossValue": 2979.90,
"BaseTaxValue": 496.65,
"Discounts": [],
"VatIdentification": 1,
"VatPercent": 20.0,
"NetValue": 2483.25,
"GrossValue": 2979.90,
"TaxValue": 496.65,
"AdditionalFields": {},
"ExternalIdentifier": []
},
{
"PositionNumber": 1,
"Caption": "Downpayment for Order",
"Type": 3,
"BusinessTransactionType": 7,
"PayOutType": null,
"VatIdentification": 1,
"VatPercent": 20.0,
"NetValue": -1000.00,
"GrossValue": -1200.00,
"TaxValue": -200.00,
"AdditionalFields": {},
"ExternalIdentifier": []
}
],
"Payments": [
{
"Amount": 1779.90,
"CurrencyIsoCode": "EUR",
"Caption": "Bar",
"UniqueReadablePaymentIdentifier": "Cash",
"ForeignAmount": 0,
"ForeignAmountExchangeRate": 0,
"AdditionalFields": {},
"PaymentType": 0,
"CreateDate": null,
"VatIdentification": null,
"VatPercent": null,
"VatPercent2": null,
"TaxValue": null,
"TaxValue2": null,
"ExternalIdentifier": [],
"User": null,
"SalesPerson": null,
"PaymentTerminalReferenceId": null,
"CardData": null
}
],
"AdditionalHeader": [],
"AdditionalFooter": [],
"FiscalAdditionalFields": {}
}
Opción 2: Depósito como pago
En esta variante, el depósito recibido se muestra como una partida de pago en la payload.
Propiedades de la transacción
La tabla siguiente muestra qué propiedades deben configurarse con qué valores para reflejar correctamente el caso de negocio.
| Propiedad | Valor | Descripción |
| DocumentType | «0» o «[0] = Recibo» | a gestionar mediante recibo de caja |
| Tipo de partida | «0» o «[0] = Artículo» | Para la posición de artículo 0 (el artículo solicitado por el cliente por el que se ha abonado un anticipo) |
| BusinessTransactionType de las posiciones | «0» o «[0] = Revenue» | Para la posición de artículo 0 (el artículo solicitado por el cliente por el que se ha abonado un anticipo) |
| Pagos.Tipo | «0» o «Efectivo» | La sección «Pagos» incluye dos partidas: 1. El saldo restante abonado en efectivo, y... |
| Tipo de pago | «6» o «[6] = Depósito» |
... el depósito recibido (valor positivo). Cálculo: Posición 0: 2.979,90 Total de posiciones: 2.979,90 Pagos: 1.779,90 (efectivo) Pagos: 1 200,00 (depósito) Total de pagos: 2.979,90 |
| Pagos.VatPercent | Si, en el país correspondiente, el Vat ya debe indicarse o abonarse al recibir un anticipo o un depósito, ¡el Vat que ya se haya declarado también deberá especificarse en consecuencia en el objeto «Pagos»! | |
| Pagos.TaxValue | Si, en el país en cuestión, el Vat ya debe figurar o pagarse al recibir un anticipo o un depósito, el Vat que ya se haya declarado también debe especificarse en consecuencia en el objeto «Pagos». |
Ejemplo:
{
"ModelVersion": "1.7.0",
"UniqueClientId": "3e2c0cdf-e72c-43ea-a050-686eb0eb3853",
"UniqueCashRegisterId": null,
"ApplicationVersion": "1.0.0",
"ApplicationVersionId": null,
"ApplicationVersionPrevious": null,
"FiscalModuleVersion": "1.11.0.0",
"FiscalCountryModuleVersion": null,
"SoftwareName": "RetailForce neverPOS",
"RetailForceReceiptId": null,
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"AllowedVatDeviation": 0.01,
"PrintCount": null,
"TerminalSlaveId": null,
"FooterGraphicIndex": null,
"DocumentGuid": "026f0809-88b8-48c2-9e96-6f3ba37f48ff",
"DocumentId": "0026",
"CreateDate": "2026-06-10T14:39:08+02:00",
"BookDate": "2026-06-10T14:39:08+02:00",
"AccountingDate": "2026-06-10T14:39:08+02:00",
"DocumentNumber": "202500026",
"DocumentNumberSeries": "SI",
"CancellationDocument": false,
"FailedToPay": false,
"DocumentReference": null,
"IsTraining": false,
"TestCaseNumber": null,
"DocumentType": 0,
"DocumentTypeCaption": "POS-Receipt",
"User": {
"Id": "1",
"Caption": "User01",
"FirstName": "Joe",
"LastName": "Dowe",
"TaxNumber": null,
"DateOfEntry": "2025-09-23T15:11:08.6041978+02:00"
},
"SalesPerson": null,
"AllocationGroups": [],
"CustomerCount": null,
"Partner": null,
"Notes": null,
"PaymentTerms": null,
"ServicePeriodStart": null,
"ServicePeriodEnd": null,
"PositionCount": 1,
"DocumentIssueType": null,
"Coupon": null,
"ServiceType": null,
"IsEcommerceTransaction": null,
"TaxPositions": null,
"FiscalDocumentNumber": 0,
"FiscalDocumentRevision": 0,
"FiscalDocumentStartTime": 0,
"Positions": [
{
"PositionNumber": 0,
"ItemCaption": "RENOXA KnowPal 15.6 Untel Lore Ultra- Z9 399J 32GB RAM 512GB SSD RTX 3060 W11P",
"ItemShortCaption": "RENOXA KnowPal",
"ItemSerialNumber": null,
"Type": 0,
"Quantity": 2.0,
"QuantityUnit": {
"Id": "STK"
},
"ItemType": 0,
"ItemId": "RKP156UZ9",
"ItemTaxType": 0,
"InHouse": true,
"ItemGroupId": "1000",
"ItemGroupCaption": "Notebooks",
"BusinessTransactionType": 0,
"CostPrice": 2979.90,
"BaseNetValue": 2483.25,
"BaseGrossValue": 2979.90,
"BaseTaxValue": 496.65,
"Discounts": [],
"VatIdentification": 1,
"VatPercent": 20.0,
"NetValue": 2483.25,
"GrossValue": 2979.90,
"TaxValue": 496.65,
"AdditionalFields": {},
"ExternalIdentifier": []
}
],
"Payments": [
{
"Amount": 1779.90,
"CurrencyIsoCode": "EUR",
"Caption": "Bar",
"UniqueReadablePaymentIdentifier": "Cash",
"ForeignAmount": 0,
"ForeignAmountExchangeRate": 0,
"AdditionalFields": {},
"PaymentType": 0,
"CreateDate": null,
"VatIdentification": null,
"VatPercent": null,
"VatPercent2": null,
"TaxValue": null,
"TaxValue2": null,
"ExternalIdentifier": [],
"User": null,
"SalesPerson": null,
"PaymentTerminalReferenceId": null,
"CardData": null
},
{
"Amount": 1200.00,
"CurrencyIsoCode": "EUR",
"Caption": "Anzahlung",
"UniqueReadablePaymentIdentifier": "Deposit",
"ForeignAmount": 0,
"ForeignAmountExchangeRate": 0,
"AdditionalFields": {},
"PaymentType": 6,
"CreateDate": null,
"VatIdentification": 1,
"VatPercent": 20.0,
"VatPercent2": null,
"TaxValue": 200.00,
"TaxValue2": null,
"ExternalIdentifier": [],
"User": null,
"SalesPerson": null,
"PaymentTerminalReferenceId": null,
"CardData": null
}
],
"AdditionalHeader": [],
"AdditionalFooter": [],
"FiscalAdditionalFields": {}
}
Este artículo ha sido traducido automáticamente.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.