- or
No existing idea results
- ~ No ideas found ~
1545 results found
-
Enable swiping of product images in the gallery
When a customer views a product page on a mobile device, it is possible to swipe through the different product images.
However, once the gallery (full screen) is opened, it is no longer possible to navigate through the images by swiping, and only the arrow keys can be used.
This behavior is not transparent and therefore not comprehensible to the customer, making it feel like an error.
4 votes -
Shopware Analytics - allow selection of common (and custom?) separators
Currently, we're using comma as a separator for Shopware Analytics exports. Turns out that this is not a one-size-fits-all solution because commas are not that unusual and can appear in product names as well.
OnPrem, this is a relatively simple customisation I imagine, but Shopware Analytics is also used in cloud shops, where this approach is not possible.
Hence, it would be nice if no individual customization is required at all and we offer some sort of setting or something in the Admin itself so shop owners can comfortably set their own separator which best fits their setup.
2 votes -
Commercial: improve organization units for shopping lists
Currently, the organization unit field on shopping lists is purely an informational indicator from which unit the list was originally created.
The following improvements should be added to give this more utility:
- The OU field should be definable during creation (i.e. by admins or the customer account) and changeable / re-assignable afterwards when needed.
- Role permissions should be added that define which lists from which OU an employee can see - this allows better separation between units which should not see lists from other departments.
2 votes -
Add promotion code via link
It would be a nice feature if discount codes could be redeemed via link in the same way that EasyCoupon does it for example. This would allow merchants to send mails already including a working link to get the customer shopping with their discount. For the customers, this would make the journey smoother because they don't need to back and forth to get some code and find the field to enter it and so on.
Plus, the customer is probably much more likely to actually complete the checkout if they see their shiny discount applied at all times right from the moment they visit the store.
It would be a nice feature if discount codes could be redeemed via link in the same way that EasyCoupon does it for example. This would allow merchants to send mails already including a working link to get the customer shopping with their discount. For the customers, this would make the journey smoother because they don't need to back and forth to get some code and find the field to enter it and so on.
Plus, the customer is probably much more likely to actually complete the checkout if they see their shiny discount applied at all times right from…
7 votes -
Advance payment for subscription for a fixed subscription period
The following use case occurs very frequently in our business model:
A person gives away a subscription for 3, 6, or 12 months. The giver does not want to pay for each individual shipment separately, but rather pay the total amount once at the beginning, and the subscription ends after the prepaid period.5 votes -
Improvements to the thumbnail generator
One customer noticed these limitations of the thumbnail generator:
Square dimensions are used by default. This means that images with different widths and heights can vary greatly in quality when portrait and landscape images are used at the same time.The media manager allows the width and height to be set differently, but thumbnails that deviate from this format will be of poorer quality.
In the customer's words:
A square display is rarely the case. The most common display is landscape format.For optimal quality, the shortest side should be used rather than the longest side.
This is the only way to ensure that images are always (!) optimally used in the respective resolution and based on the srcset / sizes attributes.
One customer noticed these limitations of the thumbnail generator:
Square dimensions are used by default. This means that images with different widths and heights can vary greatly in quality when portrait and landscape images are used at the same time.The media manager allows the width and height to be set differently, but thumbnails that deviate from this format will be of poorer quality.
In the customer's words:
A square display is rarely the case. The most common display is landscape format.For optimal quality, the shortest side should be used rather than the longest side.
This is the only…
8 votes -
Standardize shortName for Categories to ensure App and Headless stability
Shopware provides a shortName for SalesChannels to enable environment-agnostic identification, yet this primitive is missing for Categories. This inconsistency forces App developers and Headless integrators to rely on volatile SEO URLs or environment-specific UUIDs to identify "Page Types" (e.g., Home, Support, Landing Page).
By extending shortName to the Category entity, Shopware would provide a stable, indexed, and semantic developer contract. This eliminates the need for redundant repository searches or brittle Custom Field lookups, which currently penalize performance and complicate CI/CD pipelines. Standardizing this across core entities ensures that external systems can resolve both "Shop Context" and "Location Context" using the same native logic, drastically simplifying the integration of marketing, tracking, and CMS-driven Apps.
Shopware provides a shortName for SalesChannels to enable environment-agnostic identification, yet this primitive is missing for Categories. This inconsistency forces App developers and Headless integrators to rely on volatile SEO URLs or environment-specific UUIDs to identify "Page Types" (e.g., Home, Support, Landing Page).
By extending shortName to the Category entity, Shopware would provide a stable, indexed, and semantic developer contract. This eliminates the need for redundant repository searches or brittle Custom Field lookups, which currently penalize performance and complicate CI/CD pipelines. Standardizing this across core entities ensures that external systems can resolve both "Shop Context" and "Location Context" using the…
2 votes -
ZIP code validation only takes effect once all other mandatory fields have been filled in during checkout.
While testing the checkout process, I noticed inconsistent behavior when validating the postal code.
Steps to reproduce:
Go to checkout.
Select country.
Enter an invalid value in the “Postal code” field (e.g., asdasd or asd123).
Leave at least one other required field blank.
Click “Continue.”
Result:
All required fields are marked as incorrect except for country and zip code.
The zip code is not displayed as invalid in this state.Further behavior:
As soon as the previously missing required field is filled in, the zip code validation takes effect retrospectively and the field is then marked as incorrect.Expected behavior:
The ZIP code should be validated immediately as soon as an invalid format is entered, regardless of the status of other required fields or alternatively, a uniform validation behavior should be applied to all required fields.Note:
Even though this case is likely to occur rarely, the behavior appears inconsistent to users and could lead to confusion.While testing the checkout process, I noticed inconsistent behavior when validating the postal code.
Steps to reproduce:
Go to checkout.
Select country.
Enter an invalid value in the “Postal code” field (e.g., asdasd or asd123).
Leave at least one other required field blank.
Click “Continue.”
Result:
All required fields are marked as incorrect except for country and zip code.
The zip code is not displayed as invalid in this state.Further behavior:
As soon as the previously missing required field is filled in, the zip code validation takes effect retrospectively and the field is then marked as incorrect.Expected behavior:…
4 votes -
Improving admin management for product reviews
In order to work effectively with product reviews, improvements are needed in the admin management for product reviews.
Currently, managing reviews is not possible; there are no filters (e.g. product, stars, sales channel, language, approved, date) and after editing a review, you are taken straight back to the first page.6 votes -
Role permissions for the image editor
Currently, it is not possible to enable or disable the image editor for users of a role.
Only the designated administrators have access to the image editor on Content > Image Editor.
3 votes -
Finetune the personalized Checkout Message
Currently the checkout messages can’t be adjusted to exclude certain items or be fine-tuned. To customize the checkout message more precisely to your needs, it would be great to add further configurations to it.
2 votes -
Configurable mapping of the buyer reference in e-invoices (ZUGFeRD / XRechnung)
In the current default behavior, the <BuyerReference> field in the generated e-invoice (ZUGFeRD / EN16931) is populated with the purchase order number.
However, for invoices to public sector clients (government agencies), the routing ID is generally required in the <BuyerReference> field. If the purchase order number is used instead, this can lead to:
- Validation errors in ERP/accounting systems (e.g., Lexware)
- Rejections by public sector clients
- Problems with input tax deduction
- Rejection by Peppol/XRechnung validators
Currently, there is no configuration option in the admin panel to adjust the BuyerReference mapping.
Problem:
- The<BuyerReference>parameter is not flexibly configurable by default.
- Merchants with government clients must provide the routing ID.
- - Currently, customization is only possible via:
- custom code
- event subscriber (ZugferdInvoiceGeneratedEvent)
- plugin customizations.
- This results in unnecessary implementation effort for a common scenario.Proposal
Introduce a configurable option in the document/e-invoice setup:Option A – Selection field in the Admin
In the section:
"Settings → Documents → E-Invoice"Configurable mapping field for BuyerReference (fe):
- Dropdown:
- Order number
- Customer number
- Custom field (from Customer)
- Custom field (from Order)
- Freely definable mapping (e.g., via Twig expression)In the current default behavior, the <BuyerReference> field in the generated e-invoice (ZUGFeRD / EN16931) is populated with the purchase order number.
However, for invoices to public sector clients (government agencies), the routing ID is generally required in the <BuyerReference> field. If the purchase order number is used instead, this can lead to:
- Validation errors in ERP/accounting systems (e.g., Lexware)
- Rejections by public sector clients
- Problems with input tax deduction
- Rejection by Peppol/XRechnung validators
Currently, there is no configuration option in the admin panel to adjust the BuyerReference mapping.
Problem:
- The<BuyerReference>parameter is not flexibly configurable by default.…3 votes -
Multi-user support for customer service representatives – login as any company employee in a B2B environment
In B2B transactions, customer service representatives regularly handle and process orders on behalf of customers, especially for telephone orders or orders requiring extensive consultation.
Currently, they log in to the backend with administrator rights and then use the "Log in as customer" function in the frontend to place orders directly in the shop or to assist customers with their use.
However, this approach currently only works for the primary user of a company account.
In cases where a customer uses multiple employee accounts within a company structure, it is not possible to log in as another employee of that company to, for example, place an order on behalf of a specific employee or to review their purchase approvals.
Goal / Benefit
To enable customer service representatives or administrators to log in to the shop as any employee of a company account.
This allows support staff to authentically process telephone orders, approval processes, or reorders on behalf of the correct employee.
Improved traceability (correct customer, correct rights and approvals) and simplification of customer support in the B2B environment.
In B2B transactions, customer service representatives regularly handle and process orders on behalf of customers, especially for telephone orders or orders requiring extensive consultation.
Currently, they log in to the backend with administrator rights and then use the "Log in as customer" function in the frontend to place orders directly in the shop or to assist customers with their use.
However, this approach currently only works for the primary user of a company account.
In cases where a customer uses multiple employee accounts within a company structure, it is not possible to log in as another employee of that company…
5 votes -
Allow B2B employee deletion when pending orders exist - GDPR compliance
Currently deleting a B2B employee who has pending orders fails with a raw FK constraint error (SQLSTATE 23000). The only workaround suggested is cascade-deleting the orders, which is unacceptable.
Real-world scenario: An employee leaves the company. The organization is legally required under GDPR (right to erasure) to remove that person's personal data. However, pending orders are financial records of the organization, not the employee's personal data, and must be preserved.
The fix does not require decoupling orders from customers. It only requires allowing employee_id on pending orders to be nullified (SET NULL) or reassigned to another employee before deletion. The order record stays intact, only the link to the former employee is removed.
Impact: Every B2B merchant with employee turnover faces this. In the EU, GDPR compliance is not optional - merchants cannot tell regulators "Shopware doesn't support it."
Suggested solution:
1. Change FK fk.pendingorder.employeeid to ON DELETE SET NULL
2. Provide a way to reassign pending orders to another employee before deletionCurrently deleting a B2B employee who has pending orders fails with a raw FK constraint error (SQLSTATE 23000). The only workaround suggested is cascade-deleting the orders, which is unacceptable.
Real-world scenario: An employee leaves the company. The organization is legally required under GDPR (right to erasure) to remove that person's personal data. However, pending orders are financial records of the organization, not the employee's personal data, and must be preserved.
The fix does not require decoupling orders from customers. It only requires allowing employee_id on pending orders to be nullified (SET NULL) or reassigned to another employee before deletion. The…
2 votes -
Let B2B Employees changed their own password
It should be a standard functionality that a user can change their password.
This is currently not possible.
Please implement this.
2 votes -
Advanced Product Catalogues - Assign Category & Product Visibility Via Pre-Defined "Template"
ENG: Use case: As a shop operator with many categories and products, I don't want to have to individually determine which categories and products a unit should have access to when creating organizational units. Instead, it should be possible to create templates—which may only be usable and visible at the admin level—that can be used to define viewing permissions accordingly. If I then need to create several organizational units, I could simply—where possible—quickly define the permissions using the template without having to manually define the same permissions again and again for each additional organization.
DE: Use-Case: Als Shopbetreiber mit vielen Kategorien und Produkten möchte ich bei der Erstellung einer Organisationseinheiten nicht immer individuell bestimmen müssen, auf welche Kategorien und Produkte ein Einheit Zugriff haben soll. Vielmehr muss es die Möglichkeit gebene, das - ggf. nur auf Adminebene nutzbar und sichtbar - Templates erstellt werden können, über die Sichtberechtigungen entsprechend definiert werden können. Sofern ich dann mehrere Organisationsienheiten erstellen muss, könnte ich dann einfach - wo möglich - die Sichtberechtigungen schnell über das Template festlegen lassen ohne dieselben Berechtigungen abermals für jede weitere Organisatzion manuell festlegen zu müssen.
ENG: Use case: As a shop operator with many categories and products, I don't want to have to individually determine which categories and products a unit should have access to when creating organizational units. Instead, it should be possible to create templates—which may only be usable and visible at the admin level—that can be used to define viewing permissions accordingly. If I then need to create several organizational units, I could simply—where possible—quickly define the permissions using the template without having to manually define the same permissions again and again for each additional organization.
DE: Use-Case: Als Shopbetreiber mit vielen…
3 votes -
Rule-based hiding of Buy button
In Shopware 6, the visibility of products can already be controlled via rules by using the dynamic access extension (up to a certain point, as the stock is not being validated). However, there currently is no native way to hide or disable the “Buy / Add to cart” button based on rules, especially when combining customer groups with product stock conditions.
In B2B and hybrid B2C/B2B scenarios, it is common that products with stock = 0 (with closeout enabled) should still be orderable for specific customer groups, while the buy button should be hidden or disabled for all other customer groups. Moreover it should be possible to set "closeout" on sales channel level.
In Shopware 6, the visibility of products can already be controlled via rules by using the dynamic access extension (up to a certain point, as the stock is not being validated). However, there currently is no native way to hide or disable the “Buy / Add to cart” button based on rules, especially when combining customer groups with product stock conditions.
In B2B and hybrid B2C/B2B scenarios, it is common that products with stock = 0 (with closeout enabled) should still be orderable for specific customer groups, while the buy button should be hidden or disabled for all other customer…
3 votes -
Agentic Commerce - Beta Release
The Agentic Commerce plugin enables merchants to distribute products through OpenAI and Google product feeds while supporting emerging standards such as UCP (Universal Commerce Protocol). It provides a dedicated sales channel for AI-driven commerce and helps merchants prepare for the next generation of product discovery and purchasing experiences.
-> Help Shape the Future of Agentic Commerce
AI-powered commerce is evolving rapidly, and we're continuously expanding the capabilities of Agentic Commerce.
Do you have ideas, feature requests, or suggestions for improvement? We'd love to hear your feedback. Share your thoughts on UserVoice and help us shape the future of AI-powered commerce in Shopware.
The Agentic Commerce plugin enables merchants to distribute products through OpenAI and Google product feeds while supporting emerging standards such as UCP (Universal Commerce Protocol). It provides a dedicated sales channel for AI-driven commerce and helps merchants prepare for the next generation of product discovery and purchasing experiences.
-> Help Shape the Future of Agentic Commerce
AI-powered commerce is evolving rapidly, and we're continuously expanding the capabilities of Agentic Commerce.
Do you have ideas, feature requests, or suggestions for improvement? We'd love to hear your feedback. Share your thoughts on UserVoice and help us shape the future of AI-powered commerce…
1 vote -
Filter visibility by selected sales channels
For products, there is an option to set visibility for selected sales channels.
This setting determines whether a product appears in search results or in the product listing.
However, to see what is set for a product here, you have to open the product page and then click the settings button again.It would be nice to have an option right here in the product overview to filter by visibility settings.
2 votes -
Allow for CMS elements to be hidden on category pages when product listing page is not the first page
When a category layout contains some text or images together with the product listing element, that text or element may be indexed by search engines multiple times for each page of the listing, leading to duplicate indexing and results.
It would be helpful if certain elements could be hidden once the customer or the indexing bot navigates through the listing pages, or a URL contains the ?p= parameter. This would prevent redundant indexing.
2 votes
- Don't see your idea?