Skip to main content Skip to search Skip to main navigation
Shopware Payments ramp-up pricing for 12 months. Limited time only. Learn more
Diese Seite ist auch auf Deutsch verfügbar.
Kommora

B2B Gross/Net Switch – Native Tax-State with Login Modal

Rating: no rating ( write a review )
Downloads: <10

Description

Highlights

  • • First-visit modal + header toggle for gross/net choice
  • • Real tax-state change — orders and invoices are stored correctly
  • • Automatic customer group assignment on registration (private/business)
  • • HTTP-cache compatible (cookie-based cache hash)
  • • Bot exclusion for SEO-safe delivery (Googlebot always sees gross prices)

Features

  • Modal overlay on first visit with private/business choice
  • Configurable: forced modal or dismissable
  • Header switch (left/right) for later changes
  • Real tax-state change (gross/net) in the SalesChannelContext
  • Automatic customer group assignment on registration (private/business)
  • Cookie sync on login: customer preference is restored
  • Persisted in customer custom field (kommora_price_mode)
  • Shopware Rule "Price display is gross/net" for discount automation
  • HTTP-cache compatible (cookie whitelisted in cache-hash)
  • Bot detection: crawlers always see gross prices (SEO-safe)
  • Configurable cookie lifetime (1–365 days)
  • Cookie marked as technically necessary (no opt-in)
  • Fully translatable (DE + EN out-of-the-box)

About the Extension

Gross for private customers, net for businesses – in one shop, legally sound, cache-safe.


Kommora B2B Gross/Net Switch lets your customers choose whether they see prices including or excluding VAT – and natively changes the Shopware tax state. Orders, invoices and cart totals are persisted with the selected mode.


Why this plugin?

  • One shop for B2C and B2B. Instead of maintaining two sales channels, you maintain one — the customer chooses.
  • Legally sound. The tax state is actually switched, not just the display. Orders and invoices match the selected mode.
  • Cache-safe. The mode cookie is registered in Shopware's HTTP cache hash — no mixed delivery, no broken cache entries.
  • SEO-safe. Bots and crawlers always see gross prices so rich snippets and consumer price info stay consistent.


Features at a glance

? First-visit modal

  • Overlay asks on first visit: "Gross (private)" or "Net (business)"
  • Optionally forced (non-dismissable) for strict B2B shops
  • Optionally shown for guests too
  • Dismiss cookie remembers "don't show again" for 24h

? Header toggle

  • Switch in the shop header, position left or right configurable
  • One click changes the mode shop-wide
  • Cache-busting via URL parameter for immediate effect

⚙️ Real tax-state change

  • Switching happens in the SalesChannelContextFactory (decorator)
  • All prices (PDP, listing, cart, checkout) are consistently calculated in the chosen mode
  • Orders and invoices store the correct tax state
  • Works with discounts, shipping costs and rule-based pricing

? Registration & customer groups

  • During registration the customer chooses "I am private/business"
  • Plugin automatically assigns the configured customer group (private → standard, business → wholesale)
  • Custom field `kommora_price_mode` is stored on the customer
  • On next login the plugin sets the cookie according to the stored mode (when enabled)

? Shopware Rule "Price display"

  • Dedicated rule "Price display is gross/net" for use in discount/promotion rules
  • Enables mode-specific discounts, shipping costs or payment methods

? HTTP cache & performance

  • Mode cookie is registered in `shopware.http_cache.cookies` via compiler pass
  • No mixed cache delivery: gross and net visitors get separate cache entries
  • Bot detection runs before tax-state change — crawlers are not loaded into the net cache

⚙️ Technical

  • Compatible with Shopware 6.6 and 6.7 (Webpack and Vite admin bundles included)
  • PHP 8.1+
  • Custom field set `kommora_price_switch` created on install
  • No external API calls, no third-party dependencies
  • PHPStan-Shopware checked


Ideal for

  • B2B merchants who also sell to private customers
  • Wholesalers with occasional end-customer business
  • Specialty retail (tools, electronics, office supplies, gastronomy supplies)
  • Any shop that needs two price displays without two sales channels


Details

  • Available: English, German
  • Latest update: 7 October 2026
  • Publication date: 14 August 2026
  • Version: 1.0.0
  • Category: Other

Resources

Reviews (0)

Write a review

If you downloaded this extension you can write a review in the Shopware Account.

Write a review

About the Extension Partner

Partner Status

  • Shopware Technology Partner Silver Shopware
    Technology Partner Silver
  • Shopware Extension Partner Shopware
    Extension Partner

Details

  • Ø-Rating: 5

    Average rating of 5 out of 5 stars

  • Partner since: 2026
  • Extensions: 22

Support

  • Based in: Germany
  • Speaks: German, English
  • Response time: Very quickly