Releases: saleor/saleor-dashboard
3.21.1
Saleor Dashboard 3.21.1
We're excited to announce the release of Saleor Dashboard version 3.21.1! This update brings the full rollout and significant enhancements to our Extensions section, allows apps to add custom actions directly into your workflows, continues to improve UI consistency across the platform, and includes several important fixes and improvements. Here’s what’s new:
🦄 Features:
-
Revamped Extensions Experience - Now Fully Live & Enhanced!: The new Extensions section, progressively introduced in previous versions (in 3.20.34 and 3.20.36), is now fully rolled out and packed with enhancements! Managing your Apps, Plugins, and Custom Apps is simpler and more unified than ever before:
- All-in-One View: Find all your installed extensions—Apps, Plugins, and Custom Apps (webhooks) — listed together on a single "Installed Extensions" page. No more switching between different sections!
- Discover Legacy Plugins Easily: Traditional plugins are now readily available within the "Explore Extensions" section alongside newer apps.
- Simplified Custom App Creation: We've introduced a more intuitive, multi-step process for adding custom apps. Start with the name and permissions, then easily configure webhooks and tokens.
- Streamlined Installation from Manifest: Installing apps using a manifest URL is now quicker, with permission acceptance integrated into a single, straightforward step.
- Smarter Extension Installation & Error Handling: To make managing and installing extensions even smoother as part of the new framework, we've refined the process and improved error feedback:
- When installing an extension from a URL (e.g., from the "Explore Extensions" page), if the manifest URL is already provided, we'll no longer ask you for it, streamlining the process.
- If an error occurs during installation, you'll now see more helpful messages that include error codes from the system and direct links to the relevant Saleor Documentation pages for easier troubleshooting. [#5600, #5587] by @witoszekdev, Wojciech Mista
- This release completes the transition to the new Extensions section, making all related enhancements (previously behind a development flag) available to everyone. Old separate list views for plugins and custom apps are now retired. [#5587] by @witoszekdev
-
Extend Dashboard Actions with Apps: Apps can now add their own custom action buttons directly to the Customers, Products, and Orders lists! This allows for powerful integrations, placing app-specific functionalities (e.g., "Print Shipping Label," "Send to CRM") right where you manage your core data. [#5634] by @krzysztofzuraw
-
See Channel Names in Fulfillment Lists: Quickly identify the sales channel for each fulfillment. A new "Channel" column is now displayed in the fulfillments lists for both orders and draft orders, making multi-channel management more efficient. [#5598] by @Cloud11PL, @andrzejewsky, @witoszekdev
🍇 Improvements:
-
Continued Dashboard-Wide UI Refresh: We've continued to polish the Saleor Dashboard with our new design components, building on ongoing efforts to enhance visual consistency and user experience. You'll notice these fresh enhancements in several new areas:
- Forms & Controls: Enjoy updated checkboxes, toggles, and radio buttons in sections like Attribute Editing ([#5584] by @Cloud11PL, @andrzejewsky), Channel Allocation ([#5590] by @Cloud11PL, @witoszekdev), and the Fulfillment Refund view ([#5579] by @Cloud11PL, @witoszekdev).
- Extension Management Interfaces: Custom App (webhook) views and Plugin settings pages now feature the new UI. This includes a more spacious two-column layout for permissions on larger screens, making them easier to manage, and clearer presentation of plugin configurations. If a plugin has no settings, a helpful message is now displayed. [#5606, #5610] by @witoszekdev
- Product & Data Views: The Product Type details view ([#5593] by @Cloud11PL) and the "Model Types" view ([#5608] by @andrzejewsky) have been visually updated for better consistency with the rest of the dashboard's modern look and feel.
-
Easier Searching: Interacting with search bars across the dashboard is now more user-friendly. Clicking on the search icon or the area near the search bar's border will correctly focus the input field, so you can start typing your query right away. The visual style of search bars in extension views has also been unified. [#5613] by @witoszekdev
-
Clearer Webhook Delivery Information: Further enhancing the usability of webhook management, the extension details page now provides an even cleaner view of webhook deliveries. Deliveries that haven't had any attempts (e.g., if they were processed and deleted by Saleor) will be hidden. If no deliveries have any attempts, a message will explain this, preventing confusion. [#5629] by @witoszekdev
-
Confirmation for Copied Tokens/Headers: When you create a token for a custom app, you'll now see a brief success indicator confirming that the token or headers have been successfully copied to your clipboard. This provides clear feedback when handling sensitive information. [#5617] by @witoszekdev
CleanShot.2025-05-26.at.12.23.51.mp4
🪲 Fixes:
- Accurate Status Colors: Visual indicators, like the "Active" or "Inactive" pills for plugins, now correctly and immediately update their color when the status changes. Previously, the color might not have refreshed without a page reload. [#5632] by @witoszekdev
- Consistent Icon Styling: Corrected an old icon button style in the legacy custom app view (this view is only visible if the new extensions experience is disabled). [#5632] by @witoszekdev
- Removed Misleading Link: The "Create Custom App" message no longer contains a link to an API URL that could sometimes be inaccurate depending on your environment. [#5632] by @witoszekdev
- Improved Navigation for Local Apps: Fixed an issue with the "Back" button navigation when viewing the details of a local app (custom app/webhook), especially if it had failed webhook deliveries. You'll now be taken back to the correct previous page. [#5629] by @witoszekdev
- Reliable App Action Buttons: Resolved an issue with how "Create" button extensions were handled on Customers, Products, and Orders lists, ensuring that apps can reliably add their custom actions. This fix supports the new feature enabling apps to extend dashboard actions. [#5634] by @krzysztofzuraw
⚙️ Maintenance:
- Test Suite Updates for New Extensions Flow: Our end-to-end tests have been updated to align with the new, revamped extensions functionalities, ensuring continued stability and reliability of the dashboard. [#5587] by @witoszekdev
3.21.0
🧵 Important changes
35a8c3b, 957d7ea, 9b342f1: The content, pages, page types and menus are renamed, reorganised and placed under the category of Modeling (you can spot that section in the sidebar). We are going to make it more clear how to model your business using Saleor. Expect changes in that area.
🦄 Features:
- 9ac320a: You can now apply specific variants to Vouchers, alongside products, collections and categories. This means variants are now assignable in Voucher edit and create forms.
- cc48fe4: You can now filter customers in customers list by metadata.
🍇 Improvements:
- 06623af: Since 3.21 Saleor API
transactionID
is mandatory, thus when making the refund, you need to select which transaction it refers to. Due to that reason, now refund&replace flow has an additional transaction selector. - 641af14: Webhooks in app details section now are sorted based on which attempt is latest
- 1743872, 8032935: Opening item in new tab using cmd/ctr key on datagrid
- b2acd12: Now you can see an updated label for gift card list in customer details - it now clearly states that the list shows gift cards that have been used by the customer, avoiding the confusion.
- 5a11423: Warehouse and tracking number in fulfilled order section are now displayed in two separate lines improving readability.
- 4f00787, 38ead73, 74e620d: Unifying the UI across areas such as: pagination, orders, tables
🪲 Fixes:
- fc75f66: Setting unsed and false values for the boolean attributes are displaying properly.
- e2355cf: You can now see a loading animation when you click "Finalize" when finalizing a draft order. It prevents from submitting the form more than once.
- d643828: making the DevModePanel use the generic getApiUrl as well to allow the dynamic update in docker containers
- 7d2d773: Now it is possible to send the nullish value when editing dropdown attributes
3.20.39
3.20.38
🦄 Features:
- Assign specific product variants to vouchers — Vouchers can now be applied not only to products, collections, and categories, but also to individual variants. [c9feaf1]
- Filter customers by metadata — Added metadata-based filtering to the customer list for better targeting and segmentation. [545c131]
🍇 Improvements:
- Sidebar update - grouping sections in a new, consistent way; renamed content/pages for modeling/structures [13573f9]
- Variety of UX/UI consistency changes: aligning buttons, radio controls, icons, spaces in certain views [b47c49e] [#1134ec2] [bfaaf72]
- Order action button alignment — Order-related buttons (e.g., refund, capture, fulfill) are now visually aligned with others in the interface. [fb38f45]
🪲 Fixes:
- Finalize draft order loading state — Added loading animation on “Finalize” to prevent accidental double submission. [e1cb757]
- Boolean attribute display — Fixed issue where false or unused boolean attribute values weren't shown correctly. [b0b1873]
- Transaction refunds draft saving — Fixed a compatibility issue with the latest Saleor Core version that prevented saving transaction refunds as drafts. [ca8961a]
3.20.37: Release 3.20 (#5552)
🍇 Improvements:
- Plugin details now display pill next to each channel to show whenever plugin is active or not in a given channel [#5542] by @poulch
⚙️ Maintenance:
- Banner on the Home Page announcing Saleor community update is now hidden [#5550] by @andrzejewsky
3.20.36
🦄 Features:
- Enjoy the new "Installed Extensions" page, now available to everyone. It offers a refreshed design with a clear list of your installed apps and a convenient search bar, replacing the older apps list. [#5529] by @poulch
🍇 Improvements:
- Gain clarity on customer gift card usage. The label for the gift card list in customer details now explicitly states "Gift cards used by customer", removing ambiguity about which cards are displayed. [#5526] by @Cloud11PL
- Navigate your extensions faster. The list of installed extensions now loads instantly thanks to caching, while updates are fetched efficiently in the background. [#5543] by @andrzejewsky
🪲 Fixes:
- Fixed blank pages in the Extensions section: Previously, navigating to an invalid URL under
/extensions/
(e.g., a non-existent app) showed a blank page. Now, a clear "Not Found" page is displayed for a better user experience. [#5546] by @witoszekdev
⚙️ Maintenance:
- The Developer Mode Panel now uses the centralized
getApiUrl
function for better consistency and to support dynamic API URL updates, particularly beneficial when running in Docker containers where the API URL might change without restarting the dashboard. [#5538] by @JannikZed, @poulch
3.20.35
🦄 Features:
- You can now assign vouchers to specific products, collections, categories, and countries directly in the voucher creation form. This enhancement gives you more control over discount targeting and campaign precision. Countries are grouped alphabetically for easier selection. [#5457] by @poulch
specific-items.mov
🍇 Improvements:
- In the fulfilled order section, warehouse and tracking number information now appear on separate lines with improved padding. This change makes order details easier to scan and manage, reducing confusion and aligning with the rest of the dashboard layout. [#5516] by @Cloud11PL
🪲 Fixes:
- Fixed an issue where variants would remain attached to the cursor after releasing the mouse button during drag-and-drop reordering in the variant edit page. [#5511] by @Cloud11PL
- Resolved a bug where changes to assigned countries in voucher creation were not reflected in the UI after saving. [#5457] by @poulch
⚙️ Maintenance:
- False positive errors are no longer reported to Sentry [#5518] by @Cloud11PL
- Migrated drag-n-drop library to dnd-kit [#5511] by @Cloud11PL
✨ Extras:
- Added a new banner title on the home page to inform users about upcoming community updates. [#5534] by @andrzejewsky
3.20.34
🦄 Features:
-
4fbd1ad: Replace the existing Apps section with a new Extensions section (visible under a feature flag).
The new Extensions section is organized into two pages:
- Installed Extensions: Lists all currently installed apps.
- Explore Extensions: Displays available apps for installation.
Currently, the Extensions section includes only apps, but future updates will incorporate plugins and webhooks (custom apps).
by @poulch and @witoszekdev
🍇 Improvements:
- 6875a88: Empty attributes for product variants are no longer displayed in the fulfillment creation form. (by @Cloud11PL)
- 45c3f6c: The Order list and Order details views now indicate when an order has an "overcharged" status. A new label clearly identifies now orders with an overcharged payment status. (by @Cloud11PL)
- 62383cc: Quick search now supports searching for product variants by SKU, enhancing search capabilities. Additionally, catalogue items now display media when available, and category items provide a message if they lack parent categories. (by @Cloud11PL)
- d7adfec: The Order details page now accurately displays the quantity for unfulfilled order lines. (by @Cloud11PL)
⚙️ Maintenance:
- 36a9943: Updated @saleor/app-sdk to version 1.0.0. (by @lkostrowski)
- 4d53e56: Menu item groups now support onClick handlers. (by @poulch)
- 9122a03: Knip no longer raises errors regarding
import.meta
in vite.config.js. (by @andrzejewsky) - 4df5005: Test results from the release workflow are now generated using the CTRF scheme and pushed to the
qa-helpers
repository.
3.20.33
3.20.32
What's Changed
🍇 Improvements:
- 29a50ef: Last delivery attempt date is now the date of the newest attempt in given event delivery.
⚙️ Maintenance:
- 3dd70bb: Now the project uses the latest version of the Vitejs
🪲 Fixes:
- 91b41a1: Now, the header near the input for note, when creating customer has correct text.
- edf04af: You can now close the channel availability modal in product variant edit form using "x" button
- f925a68: Order details now show correct quantity of items after some items have been returned.
Full Changelog: 3.20.31...3.20.32