Welcome!

Installation instructions:

1) Run SwissDecTX.Setup5.exe
2) Copy SwissDecTX.Demo.lic to C:\Program Files\SwissDecTX5

Configuration:

Run C:\Program Files\SwissDecTX5\SwissDecTX.Config.exe

- Enter the server's URL and your monitoring ID
- Install/Select the certificates (use the 3 test certificates obtained from SwissDec)
- Select the license file copied at step 2 above
- Press the "Quick Test" button

Programming:

SwissDecTX.API.h - C/C++ header for the SwissDecTX.dll C-callable wrapper
SwissDecTX.lib - import library for the SwissDecTX.dll C-callable wrapper
SwissDecTX.Transmitter5.tlb - transmitter component type library (for COM clients)
SwissDecTX.Transmitter5.dll - transmitter component, *only* for referencing in projects

The SwissDecTX.Setup5.exe installs the transmitter components (SwissDecTX.Transmitter5.dll and  SwissDecTX.Transmitter5.XmlSerializers.dll) in the global assembly cache (GAC) and registers them properly for .NET and COM interop uses.

For .NET development, the component must be referenced from the project, for example using the "Add Reference" command in Visual Studio. It is not possible to directly reference an assembly from the global assembly cache in your project, thus this package includes the SwissDecTX.Transmitter5.dll for that purpose. Drop this file in some folder (not in C:\Program Files\SwissDecTX5) then reference the dll from your C# or VB.NET project. IMPORTANT: You should set the 'Copy Local' property to 'False' so the assembly is *not* copied locally to your project folders and does *not* ship with your application files (the transmitter should be deployed only through the supplied automatic installer!)

At runtime the application will use the proper assemblies from the  global assembly cache.

You must *not* package or ship SwissDecTX.Transmitter5.dll with your app! SwissDecTX.Setup5.exe is the official way to deploy the SwissDecTX transmitter on end-user systems. Simply bundle SwissDecTX.Setup5.exe with your application package and run it as part of your application's setup. The  SwissDecTX.Setup5.exe installer takes care of all pre-requisites, most notably it will detect, download  and automatically install any missing components, such as the .NET Framework 2.0/3.5 or the web service enhancement components, it will also correctly install and register the transmitter component and its dependencies.

Likewise, you must not ship SwissDecTX.Config.exe, SwissDecTX.dll or SwissDecTX.exe separately. Only use the provided installer. If you fail to do so it is *guaranteed* that the transmitter will break because of file version mismatch caused by future updates. On the other hand, the automatic installer always takes care of updating the proper files and maintains everything nicely in sync.

You can programmatically find out where the transmitter is installed on a particular target machine by looking up the REG_SZ value "InstallPath" under HKEY_LOCAL_MACHINE\SOFTWARE\ARSD\SwissDecTX5, which is set by SwissDecTX.Config.exe during installation.

The Command-Line tool (C:\Program Files\SwissDecTX.exe) supports installing certificates, checking the  connectivity and transmitting declarations. It operates on XML document stored on disk and write results to disk. It's the easiest way to get started.

NB: the demo license contained in this package limits the SwissDecTX Transmitter in the following ways:

1) Only the test server is supported (https://tst.itserve.ch/swissdec/refapps/stable/receiver/services/SalaryDeclarationService20200220)
2) The monitoring ID must be 'tester'
3) Only the test certificates (cacert.crt, test.p12 and receiver.crt) supplied by SwissDec can be used
4) The salary declaration's <RequestContext> tag must contain *exactly* the following:

UserAgent/Producer: itServe AG
UserAgent/Name: Test
UserAgent/Certificate: None

as follow:

<ct:RequestContext>
  <ct:UserAgent>
    <ct:Producer>itServe AG</ct:Producer> 
    <ct:Name>Test</ct:Name> 
    <ct:Certificate>None</ct:Certificate> 
  </ct:UserAgent>
</ct:RequestContext>

This matches the example file ICHAGCompany.xml which is part of the documentation and samples distributed by SwissDec.

The rest of the file's content can be anything. Note that the SwissDecTX Transmitter performs a full XSD validation using the official schemas before transmitting, so either your XML is fine and the transmission will succeed, or there is a mistake and nothing will be sent. Comprehensive error messages are returned.

Website: http://www.swissdectx.ch
Contact: info@swissdectx.ch
