After you register an ETS App, you can upload versions from its details page. Uploading a version involves two steps:
- Add the project file (this creates the version and starts the automatic validation).
- Complete the version details: release notes, license agreements, data collection declaration and billing information, then request the manual validation.
Step 1: Add the project file
- Go to Account > Manufacturer > ETS Apps > My ETS Apps.
- Click the magnifying glass icon for the ETS App to which you want to upload a version.
- Scroll down to ETS App versions and click Create ETS App Version.
- On the Add new version for your ETS App page, upload the app binary file (.etsapp): drag and drop the file onto the upload area, or click the upload area and select the file. The file name appears next to Name.
-
If the app already has a version, select what this version contains:
- This version includes new features: the version is an Upgrade version and is validated as an Upgrade validation, with the corresponding fee.
- This version includes bug fixes: if you select only this option, the version is an Update version and is validated as an Update validation, with the corresponding fee.
If you select both options, the version is an Upgrade version that also includes bug fixes. See ETS App types & Validation fees.
- Click Save ETS App Version.
You return to the app's details page. The new version appears at the top of the ETS App versions list with the status Under development while the automatic validation runs. This usually takes less than a minute. When it is finished, the status changes to:
- Waiting for YOUR validation request: the app passed the automatic validation. Continue with Step 2.
- Error in validation: the app did not pass one or more validation rules. See If the automatic validation fails below.
If the automatic validation fails
- In the ETS App versions list, click the magnifying glass icon of the version with the status Error in validation.
- The page shows the message There were errors in validating your project file. Click Show Details.
- The Test details window lists each rule that failed with the reason, for example an outdated or unofficial SDK version found in the app's assembly. Use Download test details to save the result, or Send test results via Email to receive it by e-mail.
- Correct the app, upload the corrected .etsapp file on the same page and click Save ETS App Version. The automatic validation runs again.
See also the article App validation rules. A version that failed validation can be removed with the bin icon in the versions list.
Step 2: Complete the version details
In the ETS App versions list, open the version by clicking the magnifying glass icon. The version page contains the following sections:
- Project file
- Add release note file(s)
- Select license agreement(s)
- Data collection declaration
- Select billing information
- Automatic validation and Manual validation
Project file:
This section shows the version Status and the Name of the uploaded .etsapp file. Click the download icon next to the file name to download it. The Version field is filled in automatically from the binary file and cannot be edited. ETS uses this version number to check for updates to the ETS App. To change it, change the version in the app and upload it again.
Add release note file(s):
- Select the language of the release notes. A release note in English is required (marked with *).
- Upload the file by dragging and dropping it onto the upload area, or by clicking the upload area and selecting the file.
You can add one file for each language: change the language and select another file. PDF is the preferred format; .txt, .doc, .docx and .odt files are also accepted.
Note: Release notes document the history of changes to the ETS App, including bug fixes and new features. The KNX Support team also uses them to investigate issues between a specific ETS version and a specific ETS App version. Use the following structure:
Version 1.0
Date 01/01/2026
BugFix 1: …
BugFix 2: …
NewFeature 1: …
NewFeature 2: …
Version 1.1
Date 01/06/2026
BugFix 1: …
NewFeature 1: …
Select license agreement(s):
For each language (German, Greek, English, Spanish, Finnish, French, Italian, Dutch, Swedish, Chinese), select the license agreement that applies to this version from the drop-down list. None of the languages is marked as mandatory; leave a language on - - if you have no agreement in that language.
The list includes the license agreements uploaded under Account > Manufacturer > ETS Apps > My License Agreements. If an agreement is not listed, upload it there first with Upload a New License Agreement. New license agreements must be uploaded as Markdown (.md) files, because other KNX tools will display them to customers (PDF and Word files cannot be displayed this way). Agreements uploaded earlier as PDF are still listed, but we ask you to replace them with a Markdown version.
Note: The license agreement is the contract between the app developer and the end user (EULA). KNX Association is not a party to this agreement. Customers who purchase the app through MyKNX can see the license agreement and must accept it to complete the order.
Data collection declaration:
KNX collects information about the data your ETS App collects or transmits. All ETS Apps must have a completed declaration for their latest stable version. ETS Apps without a submitted declaration are removed from the KNX Online Shop; already purchased and installed licenses are not affected, and the shop listing is restored as soon as the declaration is submitted. Answer the following questions:
- Does this app collect or read any data from the ETS project, the ETS installation or the user? (Yes/No, required)
- If you answer Yes: Does this app transmit any of that data to an external server or online service? (Yes/No, required)
If you answer Yes to both questions, the Categories and Data transmission sections appear.
Categories: For each category, indicate whether the app collects or transmits this data (Yes/No):
- User identity: name, e-mail, MyKNX username, license or serial number, company, IP address and machine identifier.
- Project data: project name, description, project ID, building/trade structure, project metadata and the project file as a whole.
- Device data: manufacturer, product and order number, application program, serial number and firmware version.
- Device parameters: parameter values of configured devices.
- Group addresses: group addresses, their names and their links to group objects.
- Topology: area/line structure, individual addresses, couplers and IP topology.
- Security-related information: device certificates, FDSK, keyring content, tool key, passwords and secure-commissioning material.
Data transmission (all fields required):
- When is data transmitted? Only after an explicit user action inside the app / Automatically / Both.
- Region of the receiving server: EU / EEA (non-EU) / Outside EEA / Mixed or varying.
- Purpose of the transmission
- Privacy policy URL
- Operator of the receiving server
Finally, select On behalf of the app developer I confirm the data collection declaration is complete and true.
Select billing information:
Select the invoice contact for the validation fees. The contacts shown come from the Professional account to which your personal account is linked. You can edit or remove a contact with the pencil and cross icons, or click Add New Address to add a contact. A contact without a VAT number is marked No VAT.
Save
Click Save ETS App Version.
Automatic validation and Manual validation:
At the bottom of the version page:
- Automatic validation shows the Test result (for example Passed). Click Show Details to see the result of each validation rule.
- Manual validation: click Request Manual Validation to send the version to KNX for manual validation. The button is only available after the data collection declaration has been completed.