A lightweight Python desktop application for calculating minimum selling prices based on purchase price, VAT, marketplace fees, shipping costs and optional B-stock discounts.
PreisManager was primarily developed as a personal learning and test project while implementing a small real-world pricing tool. Although it can be used for simple calculations on platforms such as eBay or Otto, it is not intended to replace professional pricing or accounting software.
The project demonstrates the development of both a graphical desktop application and a classic console application using Python.
The graphical user interface and the Retro Mode are currently available only in German.
The application was originally written for personal use and therefore uses German labels throughout the interface.
The source code and this documentation are written in English to remain understandable for an international audience.
PreisManager calculates a recommended minimum selling price based on several configurable values.
The calculation supports:
- Purchase price
- Shipping costs
- VAT
- Marketplace fees
- Optional B-stock discount
The project contains two independent versions:
- Graphical Desktop Application
- Retro Console Mode
Both versions use the same calculation principle while offering different user experiences.
Unlike many calculator examples created while learning a programming language, PreisManager was designed around a small real-world workflow.
The practical time saving compared to a normal calculator is relatively small, but the project served as an opportunity to practice Python by designing a complete application from planning to release.
The goal was never to build a professional pricing solution.
Instead, the focus was on learning software structure, separating logic from the graphical interface, creating a Windows installer and publishing a complete open-source repository.
- Graphical desktop interface
- Classic Retro console mode
- 19% VAT calculation
- 7% VAT calculation
- Custom VAT values
- Custom marketplace fees
- Custom B-stock discount
- Shipping cost support
- Windows installer
- Open-source project
The graphical version provides an easy-to-use desktop interface for entering all required values.
After pressing the calculate button, the recommended minimum selling price is displayed immediately.
The interface was intentionally kept simple to focus on the calculation itself.
The Retro Mode is a special part of this repository.
It was intentionally preserved because it documents my personal programming knowledge at the time the project was created.
The console application, menu structure, calculation logic and overall program flow were written independently without using generated source code.
External resources were only used for normal debugging tasks such as understanding syntax errors or Python error messages.
Although the graphical version offers a much better user experience, the Retro Mode remains part of the repository as a record of my learning progress.
The application follows a simple workflow.
- Enter the purchase price.
- Enter shipping costs.
- Select or enter VAT.
- Enter marketplace fees.
- Optionally apply a B-stock discount.
- Calculate the recommended minimum selling price.
- Python
- Tkinter
- PyInstaller
- Inno Setup
- Python 3.11 or newer
- Microsoft Windows 10 or Windows 11
Install all required packages using:
pip install -r requirements.txtClone the repository:
git clone https://github.com/Vipe-tools/PreisManager.gitOpen the project directory:
cd PreisManagerStart the graphical version:
python PreisManager.pyStart the Retro Mode:
python PreisManagerRetro.pyExecutable files can be created using PyInstaller.
The Windows installer is created using Inno Setup.
Installer configuration:
Inno/PreisManager_Setup.iss
PreisManager/
├── Inno/
│ └── PreisManager_Setup.iss
├── assets/
│ └── PM.ico
├── gui/
│ ├── calculator_view.py
│ ├── main_window.py
│ └── menu.py
├── logic/
│ ├── price_calculator.py
│ └── retro_launcher.py
├── LICENSE
├── PreisManager.py
├── PreisManagerRetro.py
├── README.md
└── requirements.txt
The application has been tested on:
- Windows 10
- Windows 11
Windows is currently the only officially supported operating system.
The graphical application, Retro Mode and Windows installer were specifically developed and tested for Windows.
Although parts of the Python source code may work on Linux or macOS, cross-platform compatibility has not been tested and is not guaranteed. In particular, the Retro Mode currently contains Windows-specific console functionality (such as console color handling) that may not work correctly on other operating systems.
PreisManager was developed as a personal learning and test project.
The objective was to gain practical programming experience by completing a small but fully functional desktop application instead of creating isolated code examples.
The project covers the complete workflow of planning, implementation, graphical interface development, console programming, packaging, installer creation and GitHub publication.
PreisManager is intentionally a small project.
The software solves one specific task instead of trying to become a complete pricing system.
Its primary purpose is to document my programming progress while providing a practical tool that can be used whenever simple selling price calculations are required.
The project is considered complete.
No major new features are currently planned.
Small improvements or bug fixes may still be added in the future.
This project is licensed under the MIT License.
You are free to use, modify, distribute and use this software commercially, provided that the original copyright notice and license remain included.
See the LICENSE file for further information.
Developed by Vipe.
PreisManager was created as a personal software development project to improve my Python skills while building a complete desktop application from start to finish.
If you find this project useful, feel free to fork it, modify it or adapt it for your own projects.