Markus Michalski FAQ

Small Business: Configuration

Settings page of the Sylius plugin Small Business §19 UStG: activating the regulation, custom notice texts in German and English, further languages via translation file, practical examples.

Deutsche Version

Back to overview

Small Business: Configuration

Live Demo: Try this and other plugins live — no installation, no risk: demo.markus-michalski.net

Admin interface

You find the settings page under Admin sidebar → MMKreativ Plugins → Kleinunternehmer §19 UStG (path /admin/kleinunternehmer/settings, where admin is your installation's admin path). The installed plugin version is shown below the page title.

The settings apply to the whole shop, not per channel. There is exactly one record, and the plugin has neither a config/packages/*.yaml file nor environment variables. You set everything on this page.

Settings

Setting Default Description
Small business regulation active off Turns the regulation on. On activation the plugin immediately creates the 0% tax category kleinunternehmer_zero with its tax rate kleinunternehmer_zero_rate, so you can assign it to new products before any migration
Storefront notice text (German) blank Overrides the German notice, at most 1000 characters. Leave blank for "Gemäß §19 UStG wird keine Umsatzsteuer berechnet."
Storefront notice text (English) blank Overrides the English notice, at most 1000 characters. Leave blank for "No VAT charged according to §19 UStG (German small business regulation)."

Creating the 0% tax category for the first time needs a zone with the code DE. If it is missing, saving stops with an error message and the regulation stays off. If the category kleinunternehmer_zero already exists, it is reused.

Existing products keep their tax category until you migrate them. Below the form, a second card shows how many variants still need migrating and offers the migration button, see Price migration.

Notice texts

The text applies to the whole storefront and to credit memo PDFs. The language follows the visitor's locale, for credit memos the language the credit memo was issued in.

mmd_sylius_kleinunternehmer:
    notice:
        storefront: 'Pas de TVA applicable selon l’article 19 UStG (régime allemand des petites entreprises).'

Then run bin/console cache:clear. A language without its own file shows whatever text the translator finds through your installation's fallback locales (framework.translator.fallbacks). The admin fields apply to all variants of German and English, for example de_AT as well.

Admin grids

The plugin registers no Sylius grid. The settings are a single form, not a list.

Practical examples

Initial setup for a new shop. Check the DE zone, activate the regulation, save. Assign the tax category kleinunternehmer_zero to new products right away. There is nothing to migrate, the card shows "0 variant(s) not yet migrated".

Existing shop with 19% and 7%. Activate the regulation, then read the hint on the "Migrate prices" card and confirm with Migrate now. Beforehand you can count the affected variants with bin/console mmd:kleinunternehmer:migrate-prices --to-small-business --dry-run. Details are on the Price migration page.

Custom notice text. In the "Storefront notice text (English)" field, enter for example "As a small business under §19 UStG we do not charge VAT." The text appears everywhere the default notice stood from the next page load on.

Switching the regulation off. Clear the checkbox and save. The notice disappears immediately. Migrated variants keep their 0% price, and the card warns "The regulation is inactive, but … already-migrated variant(s) still charge no VAT". If you want the original tax categories back, restore the prices with --restore.