๐ฉ๐ช Germany
This document describes all necessary configuration for a compliant setup in Germany.
Configurationโ
In order to configure your store in Germany to be compliant, the following configurations need to take place.
Settingsโ
All settings below should be set on the most convenient level possible. In other words, if your organization structure has a country organization which houses all German stores, then that's where they should go.
Setting | Value | Organization unit | Description |
---|---|---|---|
Auditing:Provider | GERMANY or DEFAULT | GERMANY on store OU's when phased go live or country level when big bang go live. DEFAULT to be used on Ecom organizations like DGC, SOS & Consumer Apps in that country. | Sets the certified aspects |
Fiskaly:BaseUrl | https://kassensichv.io/api/v1/ | - | Fiskaly endpoint for KassenSichV API |
Fiskaly:CashRegisterAdministrationBaseUr | https://dsfinvk.fiskaly.com/api/v0/ | - | Fiskaly endpoint for DSFinVK API. |
Fiskaly:ApiKey | **** | - | Your API key from Fiskaly |
Fiskaly:ApiSecret | **** | - | Your Fiskaly API secret |
Companyโ
When configuring your Spanish organization unit(s), a company needs to be attached. If there is no German company present yet on EVA, a new one should be created within Admin Suite under the Companies chapter. The following fields need to be filled:
- Name
- VatNumber
- RegistrationNumber
- Address (VisitorAddress)
- Street
- HouseNumber
- ZipCode
- City
- CountryID
Fiskalyโ
Fiskaly is the leading cloud based fiscalization provider for the German market and EVA integrates with it.
Accountโ
Please consult with your customer manager to set up an account. When properly set up you can access your Fiskaly dashboard at https://dashboard.fiskaly.com/. The Fiskaly service connection to EVA must be deployed on the EVA environment. This runs on a separate Pod.
Create organization unit(s) in EVAโ
Once a company is in place, you need to attach it to an organization unit(s).
Make sure the following fields are filled when creating an organization unit:
- Name
- BackendID (store number)
- RegistrationNumber
- VatNumber (aka TaxRegistrationNumber)
- BranchNumber
- Address
- Street
- ZipCode
- City
- CountryID
- CompanyID
It is crucial that you have the CompanyID field filled when creating the organization unit. You can retrieve this ID from the German company you created/have. This is the legal entity under which this OU/store is operating and will be referred to when filling in the details on the invoices and receipts.
Further, please make sure to fill all the auditing fields for your respective German OU's.
Create EVA organization units in Fiskalyโ
Every organization unit on EVA of type Shop
and is part of the Germany container, will need to be synched to Fiskaly to become a Managed Organization.
In order to keep a good overview of all the stores per client weโve created a hierarchy within Fiskaly. The setup is as follows:
Hierarchy | Fiskaly organization type | Name | Billing details | Description |
---|---|---|---|---|
1 | Non Managed | New Black | New Black Company | Our company account. All New Black customers that are active in Germany will be linked to this account for billing purposes. |
2 | Non Managed | Your company name | New Black | To link the billing details to us |
3 | Managed | your store name | Your company name | Each store will have its own managed organization within Fiskaly. The billing details are linked to the non managed organization unit(s). |
Once your organization unit(s) are present in Fiskaly, EVA stations can then be synced to Fiskaly.
Create stations in EVAโ
You can find steps on adding a new station here.
When creating a station, make sure the following fields are filled in:
- Station name.
- The checkmark
This station is a fiscal station and will be used for transactions
needs to be checked.
All payment types must have a category, otherwise the payment can't be correctly mapped, and Ship Orders would fail.
Create EVA stations in Fiskalyโ
When connection to the Fiskaly API is successfully established and organization units are properly synced, every station that is created would create/update the Technical Security System (TSS) on the respective organization unit. The TSS is automatically saved under a setting called Fiskaly:TssID
for that organization unit. Your station on Fiskaly is tagged to a TSS and your serial number on Fiskaly would correspond to your Station ID on EVA.
The following settings will need to be set on the German container level. These settings are customer specific and will be supplied to you by us. Please reach out to request these settings:
Setting | Value | Description |
---|---|---|
Auditing:FiskalyManagement:Identifier | Will be provided | The Identifier of the Management API of Fiskaly |
Auditing:FiskalyManagement:ApiSecret | Will be provided | The password for the Fiskaly management API |
Auditing:FiskalyManagement:ApiKey | Will be provided | The Fiskaly management API key |
Auditing:FiskalyManagement:OrganizationPrefix | Will be provided | A prefix that can be set before the store name within Fiskaly. For example EVA - Berlin. |
Tasksโ
Task can be set up from EVA Admin under Management โ Tasks.
In order to sync all the EVA Organization Units to Fiskaly the follow task needs to be set up: EVA.Auditing.Germany.SyncGermanyOrganizationUnitWithFiskalyTask
, this task can be scheduled to run daily or once.
Within the task the following settings can be set:
- Name: A readable name for your task. Example:
SyncGermanyOrganizationUnitWithFiskalyTask
- Cron: A Cron of choice to let the task run at a certain interval. Itโs recommended to let this task run daily.
- ContainerID: If you want to sync all the stores from your container you can fill in the ID from your
Germany
container. It will sync all stores at once. This field is recommended if you want this task to run automatically every day. - ShopID: If you run this task once, you can add a specific Organziation Unit ID in here. For example to sync just one Organization Unit to Fiskaly. If you schedule this task to run daily, itโs recommended to leave this field empty and only use the ContainerID field.
Please note that this task can only run, when the above EVA settings are present. An Organization unit needs to have a full address present on the organization unit and needs to be of type shop. If one of these details are missing, we are unable to sync the Organization Unit to Fiskaly.
Stencil for certified invoicesโ
German laws are very specific when it comes to receipts for that EVA uses the predefined CertifiedInvoice
template. This is included automatically within EVA. You can specify an optional footer and header to include your branding/content and in the parts of the receipts that are not bound by fiscal law.