Introduction
This article described the technical specs of NF525 functionality. It outlines the database tables involved as well as the packages and procedures to support the fuctionality.
Database tables
The functionality is backed by a few database tables and Oracle Packages. In the tables, we store the cumulative overall values and the VAT details. The packages are responsible for populating these tables.
The concept as shown in High level design is supported with the underlying database tables as reflected below:
Database table | Purpose |
---|---|
nf525_reservation_tax_total | Main table which hold ticket- and invoice totals, types, ID's, periodical totals, signature data |
nf525_reservation_tax | Table which holds the vat amount per vat rate per reservation payer type |
nf525_eventlog | Table which hold technical eventlog (JET) data |
release | Holds NF525_version number of the software |
Find the ERD attached:
Database packages
Package | Purpose |
---|---|
NF525CompliancyPkg | Populates the cumulative values inside nf525_reservation_tax and nf525_reservation_tax_total. It's doing that by summing up the bill values of a reservation and storing that as a type = GTF. From those individual totals, we create cumulative totals per day (GTP), per month (GTM) and annually (GTA). This is done by schedules running every night automatically. |
NF525EventLogPkg | Populates the Technical eventlog in nf525_eventlog |
NewyseCronPkg.validateNF525FiscalArchives | Checks Fiscal Archive enddates for Administration Organisations in country France on nightly basis. Sends automated email to support@maxxton.com in case enddate equals or is greater than 1 year ago |
Database procedures
Package and procedure | Description |
---|---|
NF525CompliancyPkg.logInvalidSignatureRTT | Checks realtime for data adjustments in database nf525_reservation_tax_total records, leading to mismatch with an electronic signature. Registers integrity defect in JET when it occurs right away (trigger-based). |
NF525CompliancyPkg.logInvalidSignatureEL | Checks realtime for data adjustments in database nf525_eventlog records and registers them in the same table (also called JET). |
NF525CompliancyPkg.populateNF525ResTaxGrandTotal(CURRENT_DATE, 'GTA', 4); | Generates a GTA/GTM/GTP based on the current date. Usually not needed because this happens daily automatically. |
Figure 2. Graphical overview of all components
System setup
To comply with French regulation, for new and existing clients with a legal entity in France, it is important the following set of features is enabled
Type | Setting | Value |
---|---|---|
Feature flag | NF525 Compliancy | Enabled |
Concern setting | vat.enable | Enabled |
Script | Activate script nf525_GTP_GTM_GTA on applicable concern | Enabled |