Erstellen des Fiskalmoduls
Für das Senden von Fiskaldaten (Belegen) muss ein Fiskalmodul kreiert werden.
- Wird der Trusted Fiscal Service verwendet, so wird das Fiskalmodul für den jeweiligen konfigurierten Client automatisch instanziert und kreiert.
- Wird eine Integration mittels direkter Anbindung der .net DLL angestrebt, so ist das Fiskalmodul selbst zu instantiieren. Eine genauere Beschreibung dafür ist hier zu finden:
Erstellen / Instantiieren eines Fiskalmoduls
Belegübermittlung
Um Belege zu übertragen sind folgende 2 Schritte notwendig:
- CreateDocument
- StoreDocument
Unabhängig vom jeweiligen implementierten Land empfehlen wir den Aufruf der Methode CreateDocument.
Beispielbeleg als json:
Der Beleg enthält:
- eine Artikel Position mit Artikel "000714", "Blume grün", mit einem Preis von 4,3 EUR brutto (Menge 1).
- 2 Zahlungen, 1x 5 EUR und dann 0,7 EUR Rückgeld.
Um ein erstelltes Dokument wieder abzubrechen kann folgende Methode aufgerufen werden:
- CancelDocument
Um ein Dokument vor der Übertragung zu validieren kann folgende Methode aufgerufen werden
- ValidateDocument
Prozesse im Detail
Verkaufsprozess Handel
Der Verkauf von Waren, etwa im Handel, stellt sich wie folgt dar:
| Bediener | Kassensystem | RetailForce Fiscalisation Service |
| 1. Bediener (Kassenbenutzer) erfasst den ersten Artikel, den der Kunde erwerben möchte. | ||
| 2. Kassensystem übermittelt Request an Fiscal Service (createDocument) um den Beginn der entsprechenden Transaktion zu registrieren. | ||
| 3. Fiscal Service nimmt Request vom Vorsystem entgegen und verarbeitet diesen entsprechend der länderspezifischen Anforderungen (z.B. Signierung o.a.). | ||
| 4. Fiscal Service antwortet mit einer Response (fiscalResponse) an das Vorsystem. | ||
| 5. Kassensystem (Vorsystem) nimmt Response entgegen und speichert Teile davon (bzw. das gesamte Response-Objekt) zur die Weiterverwendung (Referenz) beim Abschluss der Transaktion | ||
| 6. Bediener erfasst sämtliche Artikel des Kunden und leitet den Zahlungsprozess ein. | ||
|
7. Wenn sämtliche Daten der Transaktion feststehen (Artikel, Zahlungsmethode,...), erzeugt das Kassensystem den Payload der Transaktion (JSON) und übermittelt einen weiteren Request an das Fiscal Service (storeDocument), mit dem die Transaktion abgeschlossen (gespeichert) wird. Bestimmte Informationen aus der im Zuge von createDocument empfangenen fiscalResponse müssen in die Payload mit aufgenommen werden ("fiscalDocumentNumber", "fiscalDocumentStartTime" und ggf. länderspezifische Elemente, wie z.B. "fiscalDocumentRevision" in Deutschland).
Achtung: es darf NICHT das gesamte fiscalResponse-Objekt in die Payload integriert werden sonder nur die oben angeführten Elemente!
|
||
| 8. Fiscal Service nimmt Request vom Vorsystem entgegen und verarbeitet diesen entsprechend der länderspezifischen Anforderungen (z.B. Signierung o.a.). | ||
| 9. Fiscal Service antwortet mit einer Response (fiscalResponse) an das Vorsystem. | ||
| 10. Kassensystem empfängt die fiscalResponse, extrahiert die für die Belegerstellung notwendigen Informationen (z.B. Belegsignatur, QR-Code,...) und druckt den Beleg. | ||
| 11. Bediener übergibt den fertig gedruckten Beleg an den Kunden |
Verkaufsprozess im Handel mit Transaktionsabbruch
Sollte der Verkaufsprozess, wie oben dargestellt, während Schritt 6., also NACH dem Übermitteln von createDocument (Schritt 2.) und VOR dem dem Übermitteln von storeDocument (Schritt 7.), übermittelt das Kassensystem ein cancelDocument ANSTATT eines storeDocuments.
Achtung: cancelDocument wird zum Abbruch einer unvollständigen Transaktion verwendet und NICHT (!) um etwa Retouren abzubilden.
Retouren werden, wie normale Verkaufstransaktionen, mit createDocument und storeDocument abgewickelt.
Kommentare
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.