Files
Fuchs_Intranet/Fuchs/appsettings.json
T
StefanandClaude Opus 4.8 00e72c96d4
Playwright Tests / test (pull_request) Has been cancelled
Emit invoices as validated ZUGFeRD (DATEV) and XRechnung (B2G)
Completes the eRechnung output path: finalized invoices are emitted as a
ZUGFeRD/Factur-X EN 16931 hybrid (DATEV) or, when a Leitweg-ID is present, as
XRechnung 3.0 for B2G. Both are externally validated as ACCEPTED (0 errors) and
PDF/A-3B COMPLIANT against the ProcessWeb eInvoice service.

- ERechnungMapper: FdsInvoiceData -> EN 16931 model. Seller master data now from
  Fuchs:ERechnung:Seller config (VAT id BT-31, Steuernummer BT-32, optional
  Handelsregister BT-30, IBAN/BIC, contact). Adds payment terms BT-20/BT-9
  (BR-CO-25), buyer VAT id, §13b reverse charge, and the service date/period
  (BT-72 / BG-14) parsed from ProvisionPeriod (BR-DE-TMP-32). B2G -> XRechnung
  profile with the required electronic addresses/contact.
- ERechnungValidator: client for POST /validatepdf (EN 16931 XML + PDF/A-3 in
  one call). A pure "scenario not matched" with zero errors is not treated as a
  hard failure; real errors optionally withhold the hybrid (FailOnError).
- ERechnungSettings: seller + validation config; wired in Program.cs; ServiceUrl
  in appsettings.
- Online editor: structured German-only dialogs for the recipient address
  (incl. Leitweg-ID) and the service date/period (single date or range).
- Bumps the eRechnungLib submodule to the CII rsm-namespace / PDF-A subtype fix.

Fuchs.Tests 514/514, eRechnungLib 97/97.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-21 00:05:24 +02:00

105 lines
3.4 KiB
JSON

{
"SecretManagement": {
"VaultUri": "https://pcwkeys.vault.azure.net/",
"AppName": "fuchs",
"CacheFilePath": "secrets.cache",
"SyncIntervalHours": 6,
"ManagedSecretKeys": [
"ConnectionStrings--fuchs-fds-username",
"ConnectionStrings--fuchs-fds-password",
"ConnectionStrings--AzureBlobStorage-ConnectionString",
"Fuchs--SMS-APIKey",
"Fuchs--Mailer--Token",
"Fuchs--fuchs-captcha-TOTP",
"Fuchs--fuchs-intranet-TOTP",
"Fds--MFR-UserName",
"Fds--MFR-Password",
"SpirePdf-License"
]
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"SpirePdf_License": "MANAGED_BY_KEYVAULT",
"ConnectionStrings": {
"fuchs_fds_ConnectionString": "Data Source=MSSQL4.NBG4.DOMAINXYZ.DE,10439;Initial Catalog=site_fuchs_dev;Persist Security Info=False;TrustServerCertificate=true;Encrypt=true;User ID={username};password='{password}';Connect Timeout=60;Load Balance Timeout=240;Max Pool Size=500;",
"fuchs_fds_username": "MANAGED_BY_KEYVAULT",
"fuchs_fds_password": "MANAGED_BY_KEYVAULT",
"AzureBlobStorage_ConnectionString": "MANAGED_BY_KEYVAULT"
},
"Fuchs": {
"IsTestDeployment": true,
"ocms_guid": "00094b8f-a822-4e9c-b627-87802f93fca8",
"ocms_valid_locales_csv": "de,en",
"ocms_default_locale": "de",
"fuchs_guid": "cbfc57b3-6b85-4bbc-ab68-3b2c7408af5e",
"fuchs_intranet_guid": "cbfc57b3-6b85-4bbc-ab68-3b2c7408af5e",
"fuchs_captcha_TOTP": "MANAGED_BY_KEYVAULT",
"fuchs_intranet_TOTP": "MANAGED_BY_KEYVAULT",
"SMS_APIKey": "MANAGED_BY_KEYVAULT",
"Mailer": {
"BaseUrl": "https://api.processweb.de",
"AccountId": "82d87114-c8c3-4d33-95e5-4c781a9229ab",
"Token": "MANAGED_BY_KEYVAULT",
"ServerId": "87AAB12E-29E0-47AB-8DD1-5F5D49B4AC2E",
"Enabled": true
},
"Email": {
"OverrideRecipient": "info@processweb.de"
},
"StartupChecks": {
"Enabled": false,
"CheckKeyVault": true,
"CheckDatabase": true,
"CheckMfr": true,
"SendStartupEmail": true,
"StartupEmailRecipient": "",
"StartupEmailRecipientName": "Startup Monitor"
},
"AzureStorage": {
"Enabled": true,
"InvoiceContainer": "dev-fuchs-invoices",
"ReminderContainer": "dev-fuchs-reminders",
"MetadataFields": [ "Id", "Version", "InvoiceId", "InvoiceTitle", "InvId", "DocumentName", "file_guid" ]
},
"Telemetry": {
"Enabled": true,
"OtlpEndpoint": ""
},
"ERechnung": {
"Enabled": false,
"Profile": "EN16931",
"Seller": {
"Name": "Sebastian Fuchs GmbH & Co. KG",
"Street": "Germaniastraße 15",
"PostalCode": "40223",
"City": "Düsseldorf",
"CountryCode": "DE",
"TaxNumber": "106/5849/2962",
"VatId": "DE286366012",
"LegalRegistrationId": "",
"Iban": "DE76300501100045014800",
"Bic": "DUSSDEDDXXX",
"Email": "info@sanitaerfuchs.de",
"Phone": "0211 - 31 07 222"
},
"Validation": {
"Enabled": true,
"ServiceUrl": "https://api.processweb.de/api/eInvoice",
"FailOnError": false
}
}
},
"Fds": {
"SyncEnabled": true,
"ExecutionFrequency_Minutes": 15,
"DebugDetails": false,
"MFR_host": "portal.mobilefieldreport.com",
"MFR_UserName": "MANAGED_BY_KEYVAULT",
"MFR_Password": "MANAGED_BY_KEYVAULT"
}
}