Skip to main content

Export

TSE Export

The local TSE hardware data export is mandatory in Germany - please find the official information here (status June 2024).

GET /control/exportTSE

Query

NameValueExample
serialSerial number of TSE device to export from6a99971695369a2a0...
fromOptional from date (yyyy-mm-dd)2000-01-01
tillOptional till date (yyyy-mm-dd)2001-01-01
targetOptional, name of target pathC:/temp

Response Header

NameValue
Content-typeApplication/octet-stream
Content-dispositionAttachment;filename=export.tar

Request Example

http://localhost:5618/control/exportTSE?target=C:/temp

TSE Backup Export

Export of TSE backup data (according to BSI TR-3153, zipped) from local transaction journal (/EFR/rn/…/jou).

GET /control/exportBackup

Query

NameValueExample
serialSerial number of TSE device to export from6a99971695369a2a0...
fromOptional from date (yyyy-mm-dd)2000-01-01
tillOptional till date (yyyy-mm-dd)2001-01-01
targetOptional, name of target pathC:/temp

Response Header

NameValue
Content-typeApplication/octet-stream
Content-dispositionAttachment;filename=tse_backup.tar

Request Example

http://localhost:5618/control/exportBackup?target=C:/temp

GET /control/proof – Formal Proof of TSE Export File

For support purposes only. A downloaded TSE Export can be proofed with this method.

QueryfilePath to local export.tar file to decode
Request Examplehttp://localhost:5618/control/proof?file=C:/temp/export.tar
Response HeaderContent-typetext/plain
ResponseList of contained files, signature verification is performed using the preceding certificate (.pem) file

DSFinV-K Export

The DSFinV-K is the description of an interface for the export of data from electronic recording systems for data carrier transfer (“Z3 access”) in the context of external audits and cash register inspections. It is intended to ensure uniform structuring and designation of the files and data fields, regardless of the electronic recording system used by the company. The company must make the data available on a suitable data carrier in accordance with the conventions of the DSFinV-K. Please read more details here (status June 2024). It can be triggered via EFR user-interface.

GET /control/exportDSFinVK

Query

NameValueExample
RNOptional Register Number, default: 'def'1_1
fromOptional from date (yyyy-mm-dd)2000-01-01
tillOptional till date (yyyy-mm-dd)2001-01-01
targetOptional, name of target pathC:/temp
openOptional, include current (open) day data; default trueopen=false

Response Header

NameValue
Content-typeApplication/zip
Content-dispositionAttachment;filename=export.zip

Request Example

http://localhost:5618/control/exportDSFinVK?from=2020-01-01&open=true

Fields

In the following table, all fields which should be sent by the POS are described. These fields will be included if a DSFinV-K export is triggered. The detailed descriptions can be found in ESR – "efsta Simple Receipt" Format. For a valid DSFinV-K export, all data which is present in the POS has to be sent to the EFR.

ElementAttributeNameDatatypeInfo / Example
ESRefsta Simple Receipt
DDate TimeDateTime"2019-01-01T13:28:22"
D0Date Time StartDateTime"2019-01-01T12:15:56"
TLTransaction LocationText"4012"
TTTransaction TerminalText"7"
TNTransaction NumberText"450023"
TTotalCurrency"123.00"
TaxNNet Tax FlagBoolean 0/11
OprOperator IDText
OprNOperator NameText
DTDocument TypeText"Fiscal", "ticket", "invoice"
DNDocument NumberText"4586548"
NFNon-fiscal Transaction TypeText"PAYIN"
NFSNon-fiscal SignedText"TRAINING"
VoidVoid TransactionBoolean 0/11
TPTransaktion PointText"Tisch 5"
PosAPosition Array
Pos / Dep / Vou / Adv / Tip / OpIPosition, Deposit, Voucher, Advance Payment, Tip, Open Item<Pos>
PTYPosition Type (Mod, Dep, Vou, Adv, Tip, OpI)TextPTY="Dep"
PNPosition NumberTextPN="1", PN="*"
INItem NumberText
IDItem IdentityText
SKUStock Keeping Unit
DscDescriptionText
TaxGTax GroupText"B", "B N"
AmtPosition AmountCurrency"199.00"
QtyQuantityDecimal
QtyUQuantity UnitText
PriUnit PriceCurrency
DE_FAKTORFactorDecimal
InfoInformationText
VouNVoucher NumberText"685485689658"
DevInput Device IDInteger"1"
InHConsumption inhouseBoolean 0/10
VoidVoid PositionBoolean 0/10
DE_AGENTUR_IDAgency IDInteger"2654"
CatCategory IDText"24"
CatNCategory Name / DescriptionText"Getränke"
RDReference Date TimeReference attributes only for void/reversal or return-of-good positions
RTLReference Transaction LocationReference attributes only for void/reversal or return-of-good positions
RTTReference Transaction TerminalReference attributes only for void/reversal or return-of-good positions
RTNReference Transaction NumberReference attributes only for void/reversal or return-of-good positions
RPNReference Position NumberReference attributes only for void/reversal or return-of-good positions
ModModifier
PNPosition NumberText"1", "1-3", "*", "1 2 7"
DscDescriptionText
AmtModifier AmountCurrency"-50.00"
TipTip
PNPosition NumberInteger"1"
DscDescriptionText
AmtTip AmountCurrency"1.36"
TaxGTax GroupText"A"
LinPrint Line
PNPosition NumberInteger"1"
DscDescriptionText
LAmtLine AmountText
PayAPayment Array
PayPayment
DscDescriptionText"Cash"
AmtPayment AmountCurrency"735.00"
UIDUnique IdentifierText
PayGPayment type groupText
CCForeign Currency CodeText"CHF"
FAmtForeign AmountCurrency"808.32"
TaxATax Array
TaxTax Line
TaxGTax GroupText"A"
PrcTax PercentDecimal"21", "0"
NetExcluding TaxCurrency"165.29"
TAmtTax AmountCurrency"34.71"
AmtIncluding TaxCurrency"200.00"
CtmCustomer
CNCustomer NumberText"983248"
CatCategoryText"Mitarbeiter"
NamNameText"Max Mustermann"
Nam2Name 2Text
AdrAddressText"Musterstraße 10"
Adr2Address 2Text
ZipPostal CodeText"12345"
CityCityText"Musterstadt"
CtryCountryText"DE"
TaxIdVAT NumberText"DE123456789"

Set Sales Header

There is the possibility to enter the sales header data for the POS or for the company, locations, terminals, devices and agencies. (see also EFR API chapter Cfg - Base data/company header data). This data will be added to the DSFinV-K export.

{
"Cfg":{
"Cmp":{"Nam":"NAME","Adr":"STRASSE","Zip":"PLZ","City":"ORT","Ctry":"LAND","TaxId":"USTID","DE_STNR":"STNR"},
"Loc":{"TL":"CV","Nam":"LOC_NAME","Adr":"LOC_STRASSE","Zip":"LOC_PLZ","City":"LOC_ORT","Ctry":"LOC_LAND","TaxId":"LOC_USTID"},
"Trm":{"TT":"1","SW":"KASSE_SW_BRAND","DE_SW_Version":"KASSE_SW_VERSION","HW":"KASSE_BRAND","DE_Modell":"KASSE_MODELL","Serial":"KASSE_SERIENNR"},
"Dev":[
{"_":"Dev", "Id":"1234", "HW":"TERMINAL_BRAND", "DE_Modell":"TERMINAL_MODELL", "Serial":"TERMINAL_SERIENNR", "SW":"TERMINAL_SW_BRAND", "DE_SW_Version":"TERMINAL_SW_VERSION"},
{"_":"Dev", "Id":"12345", "HW":"TERMINAL_BRAND", "DE_Modell":"TERMINAL_MODELL", "Serial":"TERMINAL_SERIENNR", "SW":"TERMINAL_SW_BRAND", "DE_SW_Version":"TERMINAL_SW_VERSION"}
],
"DE_Agentur": [
{"_":"Agentur", "Id":"123", "Nam":"AGENTUR_NAME", "Adr":"AGENTUR_STRASSE", "Zip":"AGENTUR_PLZ", "City":"AGENTUR_ORT", "Ctry":"AGENTUR_LAND", "DE_STNR":"AGENTUR_STNR", "TaxId":"AGENTUR_USTID" },
{"_":"Agentur", "Id":"1233", "Nam":"AGENTUR_NAME", "Adr":"AGENTUR_STRASSE", "Zip":"AGENTUR_PLZ", "City":"AGENTUR_ORT", "Ctry":"AGENTUR_LAND", "DE_STNR":"AGENTUR_STNR", "TaxId":"AGENTUR_USTID" }
]
}}
<Cfg>
<Cmp Nam="NAME" Adr="STRASSE" Zip="PLZ" City="ORT" Ctry="LAND" TaxId="USTID" DE_STNR="STNR" />
<Loc TL="CV" Nam="LOC_NAME" Adr="LOC_STRASSE" Zip="LOC_PLZ" City="LOC_ORT" Ctry="LOC_LAND" TaxId="LOC_USTID" />
<Trm TT="1" SW="KASSE_SW_BRAND" DE_SW_Version="KASSE_SW_VERSION" HW="KASSE_BRAND" DE_Modell="KASSE_MODELL" Serial="KASSE_SERIENNR" />
<Dev>
<Dev Id="TERMINAL_ID" HW="TERMINAL_BRAND" DE_Modell="TERMINAL_MODELL" Serial="TERMINAL_SERIENNR" SW="TERMINAL_SW_BRAND" DE_SW_Version="TERMINAL_SW_VERSION" />
<Dev Id="TERMINAL_ID" HW="TERMINAL_BRAND" DE_Modell="TERMINAL_MODELL" Serial="TERMINAL_SERIENNR" SW="TERMINAL_SW_BRAND" DE_SW_Version="TERMINAL_SW_VERSION" />
</Dev>
<DE_Agentur>
<Agentur Id="123" Nam="AGENTUR_NAME" Adr="AGENTUR_STRASSE" Zip="AGENTUR_PLZ" City="AGENTUR_ORT" Ctry="AGENTUR_LAND" DE_STNR="AGENTUR_STNR" TaxId="AGENTUR_USTID" />
<Agentur Id="1233" Nam="AGENTUR_NAME" Adr="AGENTUR_STRASSE" Zip="AGENTUR_PLZ" City="AGENTUR_ORT" Ctry="AGENTUR_LAND" DE_STNR="AGENTUR_STNR" TaxId="AGENTUR_USTID" />
</DE_Agentur>
</Cfg>

DSFinV-K Mapping

Stamm_Abschluss (cashpointclosing.csv)

The table Stamm_Abschluss contains all z-Reports including totals. The totals are calculated automatically by the EFR and do not have to be sent along. This table also contains the company's current data.

Eg. for z-Report:

 <Tra>
<ESR TL="001" TT="1" TN="17" NFS="Z" D="2019-09-20T08:27:28"/>
</Tra>
DSFinV-KEFRComment
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be filled automatically
Z_BUCHUNGSTAG (Character, 25)ESR.DDate of the Z-Report
Z_TAXONOMIE_VERSION (Character, 10)Will be filled automatically.
Currently 2.1
Z_START_ID (Character, 40)Will be filled automatically
Z_END_ID (Character, 40)Will be filled automatically
NAME (Character, 60)Cfg.Cmp.Nam
STRASSE (Character, 60)Cfg.Cmp.Adr
PLZ (Character, 10)Cfg.Cmp.Zip
ORT (Character, 62)Cfg.Cmp.City
LAND (Character, 3)Cfg.Cmp.CtryISO 3166 ALPHA-3
STNR (Character, 20)Cfg.Cmp.DE_STNR
USTID (Character, 15)Cfg.Cmp.TaxId
Z_SE_ZAHLUNGEN (Numeric, 2)∑ ESR.PayA.Pay.AmtWill be filled automatically
Z_SE_BARZAHLUNGEN (Numeric, 2)∑ ESR.PayA.Pay.Amt with PayG=0 (default)Will be filled automatically

Stamm_Orte (location.csv)

The table Stamm_Orte contains all locations of this client entered via /cfg call.

DSFinV-KEFRComment
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
LOC_NAME (Character, 60)Cfg.Loc.Nam
LOC_STRASSE (Character, 60)Cfg.Loc.Adr
LOC_PLZ (Character, 10)Cfg.Loc.Zip
LOC_ORT (Character, 62)Cfg.Loc.City
LOC_LAND (Character, 3)Cfg.Loc.CtryISO 3166 ALPHA-3
LOC_USTID (Character, 15)Cfg.Loc.TaxId

Stamm_Kassen (cashregister.csv)

The Stamm_Kassen table contains all the master data of the POS systems entered via /cfg on which this cash register client was used over the course of its life.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
KASSE_BRAND (Character, 50)Cfg.Trm.HW
KASSE_MODELL (Character, 50)Cfg.Trm.DE_Modell
KASSE_SERIENNR (Character, 70)Cfg.Trm.Serial or ESR.TL/TT
KASSE_SW_BRAND (Character, 50)Cfg.Trm.SW
KASSE_SW_VERSION (Character, 50)Cfg.Trm.DE_SW_Version
KASSE_BASISWAEH_CODE (Character, 3)Is fixed "EUR"
KEINE_UST_ZUORDNUNG (Character, 1)Is fixed empty (assignment is made)

Stamm_Terminals (slaves.csv)

The table Stamm_Terminals contains all master data of the input devices (i.e. Orderman, Orderbird, input terminals in cloud-based systems) entered via /cfg call that were used to record transactions.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
TERMINAL_ID (Character, 50)Cfg.Dev.Id
TERMINAL_BRAND (Character, 50)Cfg.Dev.HW
TERMINAL_MODELL (Character, 50)Cfg.Dev.DE_Modell
TERMINAL_SERIENNR (Character, 70)Cfg.Trm.Serial or ESR.TL/TT
TERMINAL_SW_BRAND (Character, 50)Cfg.Dev.SW
TERMINAL_SW_VERSION (Character, 50)Cfg.Dev.DE_SW_Version

Stamm_Agenturen (pa.csv)

Agencies are companies for which payments are collected on their behalf. The table contains all companies that were entered using the /cfg call. Attention: The position line of the affected article must contain the reference to the agency ID.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
AGENTUR_ID (Numeric, 0)Cfg.DE_Agentur.Id
AGENTUR_NAME (Character, 60)Cfg.DE_Agentur.Nam
AGENTUR_STRASSE (Character, 60)Cfg.DE_Agentur.Adr
AGENTUR_PLZ (Character, 10)Cfg.DE_Agentur.Zip
AGENTUR_ORT (Character, 62)Cfg.DE_Agentur.City
AGENTUR_LAND (Character, 3)Cfg.DE_Agentur.CtryISO 3166 ALPHA-3
AGENTUR_STNR (Character, 20)Cfg.DE_Agentur.DE_STNR
AGENTUR_USTID (Character, 15)Cfg.DE_Agentur.TaxId

Stamm_USt (vat.csv)

The standard VAT rates (19%, 7%, 10.7%, 5.5% and 0%) are automatically written into this table by the EFR. If other tax rates are transferred to the EFR service, this table will be automatically expanded.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
UST_SCHLUESSEL (Numeric, 0)Will be assigned automatically
UST_SATZ (Numeric, 2)ESR.TaxA.Tax.Prc
UST_BESCHR (Character, 55)ESR.TaxA.Tax.TaxG

Stamm_TSE (tse.csv)

Stamm_TSE contains all information received from the TSE.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
TSE_ID (Numeric, 0)Will be filled automatically
TSE_SERIAL (Character, 68)Will be filled automatically
TSE_SIG_ALGO (Character, 21)Will be filled automatically
TSE_ZEITFORMAT (Character, 31)Will be filled automatically
TSE_PD_ENCODING (Character, 5)Will be filled automatically. Currently UTF-8
TSE_PUBLIC_KEY (Character, 512)Will be filled automatically
TSE_ZERTIFIKAT_I (Character, 1000)Will be filled automatically
TSE_ZERTIFIKAT_II (Character, 1000)Will be filled automatically
TSE_ZERTIFIKAT_III (Character, 1000)Will be filled automatically
TSE_ZERTIFIKAT_IV (Character, 1000)Will be filled automatically
TSE_ZERTIFIKAT_V (Character, 1000)Will be filled automatically

Z_GV_TYP (businesscases.csv)

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
GV_TYP (Character, 30)ESR.PosA.Pos.Pty or ESR.NFS
GV_NAME (Character, 40)Currently not supported by EFR
AGENTUR_ID (Numeric, 0)ESR.PosA.Pos.DE_AGENTUR_ID
UST_SCHLUESSEL (Numeric, 0)Will be assigned automatically
Z_UMS_BRUTTO (Numeric, 5)∑ ESR.TaxA.Tax.AmtWill be calculated automatically
Z_UMS_NETTO (Numeric, 5)∑ ESR.TaxA.Tax.NetWill be calculated automatically
Z_UST (Numeric, 5)∑ ESR.TaxA.Tax.TAmtWill be calculated automatically
note

Non-fiscal transactions (NFS) are also written to this table with a tax rate of 0% (Not taxable). This is actually not correct since taxes are generally not applicable on non-fiscal transactions, but the field cannot be left blank. However, the "lines_vat" and "transactions_vat" tables are not populated for non-fiscal transactions. This can lead to differences.

Z_Zahlungsart (payment.csv)

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
ZAHLART_TYP (Character, 25)ESR.PayA.Pay.PayG
ZAHLART_NAME (Character, 60)ESR.PayA.Pay.Dsc
Z_ZAHLART_BETRAG (Numeric, 2)∑ ESR.PayA.Pay.AmtWill be calculated automatically

Z_Waehrungen (cash_per_currency.csv)

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
ZAHLART_WAEH (Character, 3)ESR.PayA.Pay.CCISO 4217
ZAHLART_BETRAG_WAEH (Numeric, 2)∑ ESR.PayA.Pay.AmtWill be calculated automatically

Bonkopf (transactions.csv)

Transactions.csv shows a general overview of all transactions. Details about the contents of the transactions, i.e. the positions, can be found in lines.csv.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
BON_NR (Numeric, 0)ESR.TN
BON_TYP (Character, 30)ESR.NF bzw. ESR.NFS or "Beleg"
BON_NAME (Character, 60)ESR.DT or ESR.NFS or ESR.NF
TERMINAL_ID (Character, 50)ESR.Dev
BON_STORNO (Character, 1)Not supported by the EFR service. Cancellation must be made with a negative counter booking
BON_START (Character, 30)ESR.D0
BON_ENDE (Character, 30)ESR.D
BEDIENER_ID (Character, 50)ESR.Opr
BEDIENER_NAME (Character, 50)ESR.OprN
UMS_BRUTTO (Numeric, 2)ESR.T
KUNDE_NAME (Character, 50)ESR.Ctm.Nam
KUNDE_ID (Character, 50)ESR.Ctm.CN
KUNDE_TYP (Character, 50)ESR.Ctm.Cat
KUNDE_STRASSE (Character, 60)ESR.Ctm.Adr
KUNDE_PLZ (Character, 10)ESR.Ctm.Zip
KUNDE_ORT (Character, 62)ESR.Ctm.City
KUNDE_LAND (Character, 3)ESR.Ctm.CtryISO 3166 ALPHA-3
KUNDE_USTID (Character, 15)ESR.Ctm.TaxId
BON_NOTIZ (Character, 255)ESR.Info

Bonkopf_AbrKreis (allocation_groups.csv)

This table contains the allocation groups, such as table or booking numbers. This table is mainly used for orders using the simplified rules.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
ABRECHNUNGSKREIS (Character, 50)ESR.TP

Bonkopf_USt (transactions_vat.csv)

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
UST_SCHLUESSEL (Numeric, 0)ESR.TaxA.Tax.PrcConverted by the ERA
BON_BRUTTO (Numeric, 5)ESR.TaxA.Tax.Amt
BON_NETTO (Numeric, 5)ESR.TaxA.Tax.Net
BON_UST (Numeric, 5)ESR.TaxA.Tax.TAmt

Bonkopf_Zahlarten (datapayment.csv)

List of payment methods. Important: According to DSFinV-K, payments with vouchers are not a payment type, but an item line. If you have used payments with a voucher in EFR.PayA, you will not find this payment here, but as a discount item in lines_vat.csv. This is not an implementation variant, but rather prescribed.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
ZAHLART_TYP (Character, 25)ESR.PayA.Pay.PayG
ZAHLART_NAME (Character, 60)ESR.PayA.Pay.Dsc
ZAHLWAEH_CODE (Character, 3)ESR.PayA.Pay.CC
ZAHLWAEH_BETRAG (Numeric, 2)ESR.PayA.Pay.FAmt
BASISWAEH_BETRAG (Numeric, 2)ESR.PayA.Pay.Amt

Bonpos (lines.csv)

Bonpos lists the items in the positions, i.e. the position lines.

Attention

Discounts are not included here, but in Bonpos_USt (i.e. lines_vat.csv).

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
POS_ZEILE (Character, 50)Will be assigned automatically
GUTSCHEIN_NR (Character, 50)ESR.PosA.Pos.VouN ||
ESR.PosA.Pos.UID
ARTIKELTEXT (Character, 255)ESR.PosA.Pos.Dsc
POS_TERMINAL_ID (Character, 50)ESR.PosA.Pos.Dev
GV_TYP (Character, 30)ESR.PosA.Pos.Pty bzw. ESR.NFS
GV_NAME (Character, 40)Not currently supported by the EFR service
INHAUS (Character, 1)ESR.PosA.Pos.inH
P_STORNO (Character, 1)Not supported by the EFR service. Please cancel your position with a negative one Enter counter entry.
AGENTUR_ID (Numeric, 0)ESR.PosA.Pos.DE_AGENTUR_ID
ART_NR (Character, 50)ESR.PosA.Pos.SKU
GTIN (Character, 50)ESR.PosA.Pos.IN
WARENGR_ID (Character, 40)ESR.PosA.Pos.Cat
WARENGR (Character, 50)ESR.PosA.Pos.CatN
MENGE (Numeric, 3)ESR.PosA.Pos.Qty
FAKTOR (Numeric, 3)ESR.PosA.Pos.DE_FAKTOR
EINHEIT (Character, 50)ESR.PosA.Pos.QtyU
STK_BR (Numeric, 5)ESR.PosA.Pos.Pri

Bonpos_USt (lines_vat.csv)

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
POS_ZEILE (Character, 50)Will be assigned automatically
UST_SCHLUESSEL (Numeric, 0)ESR.PosA.Pos.TaxGConverted by the ERA
POS_BRUTTO (Numeric, 5)ESR.PosA.Pos.Amt
POS_NETTO (Numeric, 5)Calculated automatically by the EFR
POS_UST (Numeric, 5)Calculated automatically by the EFR

Bonpos_Preisfindung (itemamounts.csv)

This table is not filled by the EFR service. Discounts must be sent to the EFR service as a separate line and are then already shown in the BonPos table. Orginal text from DSFinV-K:

"Die sofortige Entgeltminderung muss direkt bei der Erfassung des Verkaufsvorganges berücksichtigt werden. Das Entgelt der Ware muss somit vermindert werden. In dem Datenfeld STK_BR in der Datei Bonpos wird entweder der verminderte Betrag sofort ausgewiesen (und die Entstehung des Betrags in der Datei Bonpos_Preisfindung dargestellt) oder die Entgeltminderung wird als gesonderte Positionszeile mit Negativbeträgen dargestellt (mit korrekter Steuerzuordnung; vgl. Datei Bonpos_USt). Für die gesonderte Zeile steht der GV_TYP „Rabatt“ zur Verfügung"

Bonpos_Zusatzinfo (subitems.csv)

This table is not filled by the EFR service. This table serves exclusively to explain the products or product combinations sold. Sets of goods with different tax rates (e.g. a menu) must be divided into different positions in the EFR service.

Bon_Referenzen (references.csv)

Bon_References is the summary of the referenced transactions, i.e. practically all cancellations, returns, etc.

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
POS_ZEILE (Character, 50)Will be assigned automatically
REF_TYP (Character, 20)
REF_NAME (Character, 40)
REF_DATUM (Character, 30)
REF_Z_KASSE_ID (Character, 50)
REF_Z_NR (Numeric, 0)
REF_BON_ID (Character, 40)

TSE_Transaktionen (transactions_tse.csv)

DSFinV-KEFRHinweis
Z_KASSE_ID (Character, 50)Cfg.Trm.Serial or ESR.TL/TTClientId can also be set in the EFR Interface
Z_ERSTELLUNG (Character, 30)ESR.DDate of the Z-Report
Z_NR (Numeric, 0)Will be assigned automatically
BON_ID (Character, 40)ESR.SQWill be assigned automatically
TSE_ID (Numeric, 0)Will be assigned automatically
TSE_TANR (Numeric, 0)Will be filled automatically
TSE_TA_START (Character, 30)Will be filled automatically
TSE_TA_ENDE (Character, 30)Will be filled automatically
TSE_TA_VORGANGSART (Character, 30)Will be filled automatically
TSE_TA_SIGZ (Numeric, 0)Will be filled automatically
TSE_TA_SIG (Character, 512)Will be filled automatically
TSE_TA_FEHLER (Character, 200)Is automatically filled in the event of an error
TSE_TA_VORGANGSDATEN (Character)Will be filled automatically

Remarks

Field Bon_Typ

DSFinV-KEFR
Beleg (reciept)Normal receipt without NF or NFS
AVRechnung (invoice)NFS=Invoice or NFS=AVRechnung
AVTransfer (transfer)NFS=AVTransfer
AVBestellung (order)NFS=AVBestellung
AVTraining (training)NFS=Tra, NFS=Test, NFS=Training, ESR.Test or Attribute "Fiscal_Test"
AVBelegstorno (void)NFS=AVBelegstorno
Attention: As soon as a TSE is used at a cash register, it is no longer technically possible to use the “AVDocument Cancellation” process type correctly, as every receipt has already been signed by the TSE before the cancellation indicator is set. In this respect, a subsequent “zeroing” of a document is no longer possible.
AVBelegabbruch (cancellation)NFS=Abort, NFS=Interruption or NFS=AVBelegabbruch
AVSachbezug (benefit in kind)NFS=AVSachbezug
AVSonstige (other)NFS=AVSonstige or NFS which does not correspond to the above

Field GV_Typ

DSFinV-KEFR
Umsatz (turnover)Position without marking
Pfand (deposit)<Dep> (positive)
PfandRueckzahlung (deposit repayment)<Dep> (negative)
Rabatt (discount)<Mod> (negative)
Aufschlag (surcharge)<Mod> (positive)
ZuschussEcht (real Grant)
ZuschussUnecht (unreal Grant)
TrinkgeldAG (Tipps AG)
TrinkgeldAN (Tipps AN)<Tip>
EinzweckgutscheinKauf (single-purpose voucher purchase)<Vou> (positive, with taxes)
EinzweckgutscheinEinlösung (single-purpose voucher redemption)<Vou> (negative, with taxes)
MehrzweckgutscheinKauf (multi-purpose voucher purchase)<Vou> (positive, without taxes)
MehrzweckgutscheinEinlösung (multipurpose voucher redemption)<Vou> (negative, without taxes)
Forderungsentstehung (creation of receivables)
Forderungsaufloesung (resolution of claims)
Anzahlungseinstellung (deposit setting)<Adv> (positive)
Anzahlungsaufloesung (deposit resolution)<Adv> (negative)
Anfangsbestand (inital balance)NFS=INI
Privatentnahme (private withdrawal)NFS=CAPITAL (negative)
Privateinlage (private deposit)NFS=CAPITAL (positive)
Geldtransit (Money transit)NFS=TRANSFER
Lohnzahlung (salary payment)NFS=WAGE
Einzahlung (deposit)NFS=PAY (positive)
Auszahlung (payout)NFS=PAY (negative)
DifferenzSollIst (difference target actual)NFS=DIFF

Pay groups PayG=

efsta PayG Mapping
efsta PayGDSFinV-K PayG
cash,change,refund,foreign,checkBar (Cash)
roundingKeine (None)
debitcardECKarte (Debit Card)
creditcardKreditkarte (Credit Card)
mobile,atmElZahlungsdienstleister (ElPayment service provider)
creditnote,loyaltyGuthabenkarte (Prepaid card)
voucher,titleis shown in the Bonpos table as type voucher
openis shown in the Bonpos table as type open item
alternativ PayG as digits

The payment group attribute can contain a value between 0 and 8, which has the following meaning:

PayGDSFinV-K PayG
0Bar (Cash)
1Unbar (Non-Cash: only if the cash register knows no further distinction)
2Keine (None)
3ECKarte (Debit Card)
4Kreditkarte (Credit Card)
5ElZahlungsdienstleister (ElPayment service provider)
6Guthabenkarte (Prepaid card)
7Voucher (is shown in the Bonpos table as type voucher)
8Open item (is shown in the Bonpos table as type open item)

Vouchers (PayG=7) and open items (PayG=8) are handled specifically because they must be represented as a position in the DSFinV-K. This means that these “payment methods” are not presented in the DsFinVK as payment methods, but as a position as follows:

  • PayG=7 with positive amount is presented as a multi-purpose voucher redemption.
  • PayG=7 with negative amount is presented as a multi-purpose voucher purchase.
  • PayG=8 with positive amount is presented as the creation of a claim.
  • PayG=8 with negative amount is presented as a claim resolution.

GoBD Export

GoBD is short for „Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern, Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff“ - "Principles for the proper keeping and storage of books, records and documents in electronic form and for data access”. The principles issued by the Federal Ministry of Finance (BMF) regulate the requirements for digital accounting.

GET /control/exportGoBD

Query

NameValueExample
RNOptional Register Number, default: 'def'1_1
fromOptional from date (yyyy-mm-dd)2000-01-01
tillOptional till date (yyyy-mm-dd)2001-01-01
targetOptional, name of target pathC:/temp

Response Header

NameValue
Content-typeApplication/zip
Content-dispositionAttachment;filename=gobd.zip

Request Example

http://localhost:5618/control/exportGoBD?from=2020-01-01

Journal Export

Full JSON export of the local transaction journal files (/EFR/rn/…/jou/\*.jou). All files containing records of the from/till date range are exported as a whole to preserve file signature and unalterability. For exact date range match you will have to filter records, or use other query functions like /retrieve, /find or /tra.

GET /control/exportFull

Query

NameValueExample
RNOptional Register Number, default: 'def'1_1
fromOptional from date (yyyy-mm-dd)2000-01-01
tillOptional till date (yyyy-mm-dd)2001-01-01
targetOptional, name of target pathC:/temp

Response Header

NameValue
Content-typeApplication/zip
Content-dispositionAttachment;filename=jou.zip

Request Example

http://localhost:5618/control/exportFull?from=2020-01-01