Les exemples JSON suivants illustrent la gestion de la réception d’un acompte et son traitement ultérieur lors de la livraison ou de la prestation de services au sein de RetailForce. Veuillez noter que le terme utilisé dans RetailForce pour désigner les acomptes / paiements anticipés est « deposit ».
Veuillez noter que certaines valeurs de propriété utilisées dans les exemples doivent être adaptées afin que vous puissiez utiliser la payload dans votre système (par exemple « uniqueClientId », « BookDate »). Les exemples ont également été créés pour un pays spécifique, ce qui signifie que les taux d’imposition, les montants bruts et nets, etc. doivent également être adaptés.
| Release pour les utilisateurs : | 1.11.16.2546 |
| Version DOM : | 1.7.0 |
1. Acompte reçu
Dans un premier temps, un reçu est établi pour l'acompte reçu :
- Le client effectue un versement en espèces de 1 200 EUR en vue d’une livraison ou d’une prestation future.
Propriétés de la transaction
Le tableau ci-dessous indique quelles propriétés doivent être définies et sur quelles valeurs afin de refléter correctement le cas d’utilisation.
| Propriété | Valeur | Description |
| DocumentType | « 0 » ou « [0] = Reçu » | à traiter via l’encaissement |
| Type de poste | « 3 » ou « [3] = Écriture comptable » | Un versement reçu est enregistré en tant que DocumentPosition de type « 3 » (DocumentPosition de comptabilisation). |
| Positions.BusinessTransactionType | « 7 » ou « [7] = Acompte » | Le type de transaction commerciale (BusinessTransactionType) utilisé est « 7 » (acompte). |
| Positions.VatIdentification | Si, dans le pays concerné, la Vat doit déjà être indiquée ou acquittée dès la réception d’un acompte ou d’un dépôt, l’ID de catégorie de Vat correct doit être spécifié et la Vat calculée en conséquence. | |
| Payments.Type | « 0 » ou « Espèces » | Comme il s’agit en l’occurrence d’un paiement en espèces, le mode de paiement doit également être indiqué en conséquence. |
Exemple :
{
"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. Règlement du paiement final
Lors de la livraison ou de l’exécution des prestations (par exemple, lorsque le client vient retirer les marchandises qu’il a commandées), le client doit régler le solde restant dû correspondant à la valeur totale des marchandises :
- Valeur totale des marchandises/services : 2 979,90 EUR
- Compte tenu de l’acompte de 1 200 EUR
- Le client règle également le solde (1 779,90 EUR) en espèces
L’acompte peut être pris en compte dans le document final de deux manières différentes :
Option 1 – L’acompte en tant que poste
Dans cette variante, l’acompte est intégré au payload en tant qu’entrée négative (à l’opposé de l’entrée figurant dans le payload d’origine).
Propriétés de la transaction
Le tableau ci-dessous indique quelles propriétés doivent être définies sur quelles valeurs afin de refléter correctement le cas d’utilisation.
| Propriété | Valeur | Description |
| DocumentType | « 0 » ou « [0] = Reçu » | à traiter via l’encaissement |
| Type de poste | « 0 » ou « [0] = Article » | Pour le poste d'article n° 0 (l'article commandé par le client pour lequel un acompte a été versé) |
| Positions.BusinessTransactionType | « 0 » ou « [0] = Revenue » | Pour la position d'article n° 0 (l'article commandé par le client pour lequel un acompte a été versé) |
| Positions.Type | « 3 » ou « [3] = Réservation » | Pour intégrer l’acompte perçu, on recourt au poste n° 1 de type « 3 » (poste de réservation) – conformément au premier exemple. Toutefois, les valeurs (GrossValue, NetValue, etc.) associées à ce poste sont négatives. |
| Positions.BusinessTransactionType | « 7 » ou « [7] = Acompte » | Le type de transaction commerciale spécifique (BusinessTransactionType) utilisé pour le poste n° 1 est « 7 » (acompte). |
| Positions.VatIdentification | La TVA doit également être prise en compte lors du règlement de l’acompte. | |
| Payments.Type | « 0 » ou « Espèces » |
Dans la section « Paiements », seul le solde restant est indiqué en espèces (Total des postes = Total des paiements). Calcul : Poste 0 : 2 979,90 Poste 1 : -1 200,00 Total des postes : 1 779,90 Paiements : 1 779,90 (en espèces) Total des paiements : 1 779,90 |
Exemple :
{
"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": {}
}
Option 2 – Versement sous forme de paiement
Dans cette variante, le dépôt reçu apparaît comme un élément de paiement dans la charge utile.
Propriétés de la transaction
Le tableau ci-dessous indique quelles propriétés doivent être définies et sur quelles valeurs afin de refléter correctement le cas d’utilisation.
| Propriété | Valeur | Description |
| DocumentType | « 0 » ou « [0] = Reçu » | à traiter via l’encaissement |
| Type de DocumentPosition | « 0 » ou « [0] = Article » | Pour la position d'article n° 0 (l'article commandé par le client pour lequel un acompte a été versé) |
| Positions.BusinessTransactionType | « 0 » ou « [0] = Revenue » | Pour la position 0 (l'article commandé par le client pour lequel un acompte a été versé) |
| Paiements.Type | « 0 » ou « Espèces » | La section « Paiements » comprend deux éléments : 1. Le solde restant payé en espèces, et... |
| Type de paiement | « 6 » ou « [6] = Acompte » |
... l'acompte reçu (valeur positive !). Calcul : Position 0 : 2 979,90 Total des positions : 2 979,90 Paiements : 1 779,90 € (en espèces) Paiements : 1 200,00 (dépôt) Total des paiements : 2 979,90 |
| Paiements.VatPercent | Si, dans le pays concerné, le Vat doit déjà être indiqué ou acquitté lors de la réception d’un acompte ou d’un dépôt, le Vat qui a déjà été déclaré doit également être précisé en conséquence dans l’objet « Paiements » ! | |
| Paiements.TaxValue | Si, dans le pays concerné, le Vat doit déjà être indiqué ou acquitté lors de la réception d’un acompte ou d’une avance, le Vat qui a déjà été déclaré doit également être précisé en conséquence dans l’objet « Paiements » ! |
Exemple :
{
"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": {}
}
Cet article a été traduit automatiquement.
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.