Zum Hauptinhalt springen
Alle KollektionenREST-API-DokumentationErweiterte Befehle
Abrechnungszeitraum-Initialisierung über REST-API
Abrechnungszeitraum-Initialisierung über REST-API

Wie schließe ich eine Periode und starte die nächste mit der REST-API von Flexi?

Ota Rádl avatar
Verfasst von Ota Rádl
Vor über 3 Jahren aktualisiert

Die REST-API von Flexi bietet einen ähnlichen Menüaufruf "Abrechnung > Nächste Periode initialisieren". Die Initialisierung kann wie in der Desktop-Anwendung wiederholt aufgerufen werden.

Die grundlegende Anfrage an die API erfolgt mit der GET-Methode:

GET server/c/company/outgoing-period/initialization-new-period.json

Wenn es keinen nachfolgenden Abrechnungszeitraum gibt, wird ein Fehler zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Die folgende Abrechnungsperiode existiert nicht. Bitte erstellen Sie einen." } }

Wenn einige Dokumenttypen nicht standardmäßige Rundungen haben, folgt ein weiterer Fehler:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Die folgenden Belegarten haben eine nicht standardmäßige Umsatzsteuerrundung (Rundung auf Hundertstel oder Einheiten wird erwartet, siehe § 37 des Umsatzsteuergesetzes):\nRechnung: setze \"0,1\"\nOBP: setze \"0.1\"\nDie folgenden Arten von Belegen haben eine nicht standardmäßige Umsatzsteuerrundung (eine mathematische Rundung wird erwartet, siehe § 37 des Umsatzsteuergesetzes):\nINVOICE: setze \"up\"\nOBP: setze \"up\"\nINVOICE: setze \"up\""}

Dieser Fehler kann mit dem Parameter unterdrückt werden checkRounding=false (ähnlich wie die Schaltfläche Ja in der Desktop-Anwendung), oder um Rundungen bei Dokumenttypen zu korrigieren.

Obligatorische Parameter für die Periodeninitialisierung über API:

  • ucetOtv - Kontocode des Hauptbuchabschlusskontos (es ist notwendig, dass das Konto auf kindUctuK="kindUctu.otevknih" eingestellt wurde)

  • ucetZav - Kontocode des Kontos, das das Hauptbuch eröffnet (es ist notwendig, dass das Konto den TypUctuK="druhUctu.uzavknih" hat)

  • ucetPre - Kontocode des Gewinn- und Verlustübernahmekontos (es ist notwendig, dass das Konto auf kindUctuK="kindUctu.prhosvys" eingestellt ist)

  • ucetVys - Kontocode des Gewinn- und Verlustkontos im Genehmigungsverfahren (es ist notwendig, dass das Konto auf kindUctuK="kindUctu.pasivhvy" eingestellt ist)

Erwartete Werte sind Kontocodes aus dem Kontenplan, die einen entsprechenden Wert von kindUctuK haben (z. B. ucetZav=702000). Weitere Informationen über den Kontotyp finden Sie im Datensatz "Kontenplan".

Wenn einer der Parameter fehlt, wird z. B. der folgende Fehler zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Der Parameter 'ucetOtv' ist erforderlich, um den Vorgang auszuführen" } }

Wenn ein falsches Konto ausgewählt wurde (z. B. ucetZav=701000), wird dieser Fehler zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Parameter 'ucetZav' hat einen nicht unterstützten Wert! Wählen Sie eine der folgenden Optionen: [Das ausgewählte Konto muss druhUctuK 'druhUctu.uzavknih' haben]" } }

Optionale Periodeninitialisierungsparameter über API:

  • ucetniObdobi - der Code der Buchhaltungsperiode, die Sie abschließen möchten (wenn nicht angegeben, wird die aktuelle Periode abgeschlossen)

  • Neubewertung - Neubewertung der ausstehenden Dokumente durchführen (wahr/falsch)

  • transferWarehouse - Umlagerung durchführen (true/false)

  • skipNulove - Karten mit Nullsaldo überspringen (true/false)

  • daysWithoutMovement - Anzahl der zu überspringenden Tage ohne Bewegung (Ganzzahl)

  • deleteStare - Nicht verwendete alte Karten im neuen Abrechnungszeitraum löschen (true/false)

  • DocumentType - Belegart für die Generierung von Leasingzahlungsverpflichtungen (Belegarten-ID).

Die Standardwerte aller booleschen Parameter sind false.

Wenn es Verpflichtungen für die folgende Abrechnungsperiode gibt, ist der Parameter typeDocl obligatorisch.

Die Option "Skip-Karte quittieren" wird von der REST-API nicht wie in der Desktop-Anwendung unterstützt.

Wenn sie in diesem Fall nicht angegeben ist, wird ein entsprechender Fehler zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Der Parameter 'typeDocument' ist erforderlich, um den Vorgang auszuführen" } }

Für den ausgewählten Dokumenttyp muss eine Dokumentenserie gespeichert sein, sonst wird ein Fehler zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Der ausgewählte Dokumenttyp hat keine Dokumentenserie und es ist keine angegeben." } }

In der Belegart-Zeile muss ab der nächsten Abrechnungsperiode ein Jahreszahl-Serieneintrag gespeichert sein, sonst wird ein Fehler zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Für die ausgewählte Belegart Serie ist kein Eintrag für eine Jahreszahlenserie für die folgende Abrechnungsperiode eingetragen." } }

Tarife für Umwertung prüfen

Sie können die Subresource vor dem Aufruf der Initialisierung aufrufen:

GET server/c/company/ucetni-periodi/currencies-without-rate.json

die eine Liste der Währungen zurückgibt, deren Neubewertungskurse zum 31.12. festgelegt werden müssen, z. B.

null

"datumPreceneni": "2020-12-31T00:00:00+01:00",

"currencies": { "currency": [ "EUR", "USD" ] } } }

Diese Werte müssen mit der nächsten POST-Anfrage an den Datensatz des Rates gespeichert werden.

Wenn bei der Initialisierung Raten fehlen, werden diese zurückgegeben:

status 400 { "winstrom": { "@version": 1, "success": false,

"message": "Es wurden nicht alle notwendigen, am letzten Tag der Abrechnungsperiode gültigen Wechselkurse für die Neubewertung der offenen Forderungen/Verbindlichkeiten eingegeben." } }

Beispielanruf

1. rufen Sie zunächst die Währungen zur Neubewertung auf:

GET https://demo.flexibee.eu:5434/c/demo/ucetni-obdobi/meny-bez-kurzu.json?ucetniObdobi=2020

2. Wenn die Abfrage die Währungen zurückgibt, führen wir die Neubewertung durch

POST http:///demo.flexibee.eu:5434/c/demo/kurzy.json

Ein Beispiel für das Speichern von Daten im Datensatz " Wechselkurse" könnte folgendermaßen aussehen:

null

"Tarife": {

"platiOdData": "2020-12-31T00:00:00+01:00",

"nbStřed": "25,75",

"kurzMnozstvi": 1,

"Währung": "code:EUR"

}}}

3. Dann initialisieren wir

GET https://demo.flexibee.eu:5434/c/demo/ucetni-obdobi/inicializace-noveho-obdobi.json?ucetniObdobi=2020&ucetOtv=701000&ucetZav=702000&ucetPre=710000&ucetVys=431001

Wenn die Initialisierung alle notwendigen Daten hat, startet sie den Hintergrund-Thread und gibt den Status 202 Accepted zurück.

Im Buchhaltungsperioden-Datensatz können Sie überprüfen, ob die Initialisierung abgeschlossen ist (die Eigenschaft lastUpdate der aktuellen Buchhaltungsperiode wird aktualisiert).

Hat dies deine Frage beantwortet?