ÃÛ¶¹ÊÓÆµ Commerce 2.4.8 release notes
Highlights
ÃÛ¶¹ÊÓÆµ Commerce 2.4.8 brings enhanced security, compatibility with PHP 8.4 and MariaDB 11.4, extensive GraphQL API improvements to accelerate migration to a new ÃÛ¶¹ÊÓÆµ Commerce Storefront powered by Edge Delivery, and over 500 quality fixes and enhancements to elevate existing functionality. Upgrading to 2.4.8 keeps your platform secure, aligned with the latest technological advancements, and supported until April 2028.
Adoption recommendations
When planning your upgrade to ÃÛ¶¹ÊÓÆµ Commerce 2.4.8, consider your business priorities, current version, and plans to adopt the new ÃÛ¶¹ÊÓÆµ Commerce as a Cloud Service.
-
If you plan to adopt ÃÛ¶¹ÊÓÆµ Commerce as a Cloud Service within the next 12-16 months: Apply the latest security patch now and plan your upgrade as part of your move to Cloud Service.
-
If you do not plan to adopt ÃÛ¶¹ÊÓÆµ Commerce as a Cloud Service within the next 12-16 months, OR if you are planning to adopt ÃÛ¶¹ÊÓÆµ Commerce Optimizer in that timeframe: Your upgrade timeline depends on your current version.
-
Versions 2.4.4, 2.4.5, or 2.4.6: Apply the latest security patch now and start your upgrade to ÃÛ¶¹ÊÓÆµ Commerce 2.4.8 soon, as support for 2.4.4 ends in April 2026, while support for 2.4.5 and 2.4.6 ends in August 2026.
-
Version 2.4.7: Apply the latest security patch now. While we encourage you to upgrade as soon as possible to take advantage of the latest enhancements, you have flexibility to choose a time that aligns with business priorities. Your version will continue to be supported until April 2027.
-
Security
The following security enhancements in this release improve compliance with the latest security best practices:
Platform
The following platform upgrades for this release ensure that ÃÛ¶¹ÊÓÆµ Commerce remains a robust and reliable platform, ready to meet the demands of modern commerce environments:
Performance
This release includes the following performance enhancements:
Quality
This release includes the following quality enhancements:
GraphQL
This release includes the following GraphQL enhancements:
Braintree
This release includes the following Braintree bundled extension enhancements:
Fixed issues in v2.4.8
We have fixed 582 issues in the ÃÛ¶¹ÊÓÆµ Commerce 2.4.8 core code. A subset of the fixed issues included in this release is described below.
APIs
- /V1/transactions REST API returns error when parent_txn_id = txn_id
The system now correctly handles the parent and child concept transactions where the parent transaction ID is the same as the transaction ID, preventing an infinite loop when querying the /V1/transactions REST API endpoint. Previously, this scenario would result in a fatal error due to maximum execution time being exceeded.
AC-10042 - - [Graphql] Type issue in 2.4.7
The system now correctly handles integer values in the GetCustomSelectedOptionAttributes function when executing a GraphQL query, preventing any type-related errors. Previously, launching a GraphQL query that used GetCustomSelectedOptionAttributes with an integer argument resulted in a type error.
AC-11878 - - - Special characters in category url_key (when created via REST API)
Earlier In category_url_key special character is not there after the fix it is showing special character in category_url_key
AC-3223 - - - __REST API showing orders from another website. __
The system now supports scope authorized access for REST API admin tokens and Magento_Sales endpoints, ensuring that the REST API only displays orders that admin has access to. Previously, the REST API would display orders from all websites, regardless of the admin user's assigned website.
ACP2E-2703 - Issue with rest api after enable 2FA Duo
2FA with Duo security option now generates correct signature for Rest API
ACP2E-2755 - - [REST API]: Use Default value in store view does not stay checked after adding configurations for a configurable product
The issue has been fixed by ensuring correct database entries for the customizable options for a non-default store. The checkbox for the custom store in the "admin > Catalogue > Product Edit > Customizable Options" section was previously unchecked owing to inaccurate database entries, even if the option title for the custom store stayed the same as the default store.
ACP2E-2927 - - REST API unable to make requests with slash (/) in SKU when using Oauth1
Prior to the fix, you were not able to make a successful API call for a product that had "/" in its SKU. Now, you can issue a successful API get request for product details even though its SKU has a forward slash in it.
ACP2E-2969 - - Customer address update failing when updating through REST API if "validateDefaultAddress" enabled
The API endpoint is now functioning as intended after the problem with the ID key missing from the API payload has been resolved.
ACP2E-3079 - - [Cloud] Creating the Duplicate website group price customer group in Tier Prices Api.
Now Tier Price Rest Api doesn't allow to create the Duplicate website group price customer group.
Previously it was possible to create the Duplicate website group price customer group in Tier Prices Api that would not pass validation in Admin during product save.
ACP2E-3091 - - Can't add order comment with status via REST API
The issue has been resolved by allowing the change in order status if it is from the current state only. Previously, it was not honouring the order state and preventing changes in any order status, even if it was from the same state.
ACP2E-3130 - - Async operation fails when the SKU is missing from the payload
Async and sync operations previously failed due to product save errors if sku is missing from payload. After the fix, the async and sync product save rest api operations fail with relevant exception message.
ACP2E-3236 - - [CLOUD] Unable to update the Base-prices using REST API (The value of 'value_id' in 'catalog_product_entity_decimal' is not incremented correctly.)
Previously to this fix, when rest api /rest/default/V1/products/base-prices was called, the increment id was increased wrongly leaving a gap between values. After the fix the increment id is increased as expected, incrementaly. Also the value_id field range was increased.
ACP2E-3376 - - Order items are not visible in credit memo emails for the API POST V1/order/:orderId/refund
Previously, before this fix, when a customer creates a credit memo from an API request notifying send_email, it does not contain the product details grid. After this fix apply the customer sends a credit memo API request, and will find the product item details appearing in the email.
ACP2E-3460 - - Default values are not set for date and time attributes with products RestAPI
Default values now sets properly for date and date and time attributes via RestAPI
ACP2E-3486 -
APIs, Cart & Checkout
- Critical 500 Error: Magento\Framework\Webapi\Exception Related to Accept HTTP Header
After the fix, there is no issue with specifying the "Accept" header.
ACP2E-3343 -
APIs, GraphQL
- no graphQl available for subscribing Reward Points updates for customer
Previously to the fix, customer attribute reward_warning_notification could not be updated through GraphQL mutation and Rest API call. Now can be updated the same as customer attribute reward_update_notification.
ACP2E-3348
APIs, GraphQL, Tax
- Both Luma (Rest API) and Graphql does not calculate taxes when only Zip code is provided.
The system now correctly calculates taxes when only a zip code is provided, ensuring accurate tax estimations for both Luma (Rest API) and GraphQL. Previously, only shipping estimates were calculated and taxes were not included when only a zip code was provided.
AC-12060
Account
- Customer address form allows random code in the name fields
The system now validates the input in the First Name and Last Name fields in the customer address form, preventing the use of random code. Previously, the system allowed the use of random code in these fields without throwing an error.
AC-10782 - - - admin Password update.
AC-10886 - - - my account add address crash on save
The system now correctly saves customer addresses even when the region field is not displayed, preventing a crash during the save process. Previously, attempting to add or edit an address without a displayed region field would result in an exception error.
AC-10990 - - - Redirect loop when URL have uppercase
The system now automatically converts uppercase characters in URLs to lowercase, preventing a redirect loop when accessing the homepage. Previously, having uppercase characters in the Secure Base URL would cause a continuous redirect loop when trying to access the homepage.
AC-11718 - - - middlename('s) not saved for guest accounts
The system now correctly saves the middle name for guest accounts during checkout, making it accessible in the email template. Previously, the middle name was not saved in the quote table and was not accessible in the email template for guest accounts.
AC-11755 - - - Admin: Page Actions Buttons floating left instead of right
The system now correctly aligns the Page Actions Buttons to the right side of the sticky header in the admin panel, enhancing the professional look and feel. Previously, these buttons were incorrectly floating to the left side of the sticky header.
AC-11919 - - dev:di:info
error in magento 2.4.7
The system now correctly displays constructor parameters when executing thedev:di:info
command, preventing any errors from occurring. Previously, executing this command resulted in an error due to a type mismatch in the argument.
AC-11999 - -- Login as customer opt-in checkbox not translatable
The system now allows the "Login as Customer opt-in checkbox" and "Login as Customer checkbox tooltip" fields to be set at the "Store view" scope, enabling translations for different store views. Previously, these fields were only set at the "Website" scope, preventing translations for individual store views.
AC-13000 - - - Front end UI Homepage in my profile Dropdown is button is not there.(intermittently)
AC-14299 - Customer is logged in but showing 404 error in frontend.
The storefront customer dashboard page now loads as expected when a customer logs in. Previously, customers could log in, but this page showed a 404 error.
AC-6071 - - - Not able to Save Customer attribute information in Admin Edit customer section;
The store ID of the customer is now implemented properly per website scope for the admin customer edit form.
ACP2E-2791 - - [Cloud] Can't create customer via API when Private Sales is enabled
Now customer can be created by authenticated admin user as well as with authenticated integration token via REST api when website restriction is enabled.
ACP2E-3115 - After logging in, the products added to the compare list as a guest user are not visible.
Products that were added to product compare list before logging in as a customer now are preserved after logging in.
Previously, after logging in, the products added to the compare list as a guest user were not visible.
ACP2E-3329 - - Allow Countries configuration causes issues in customer address configurations
Now selecting Allow Countries configuration doesn't influence countries shown for outside the given scope. Previously Allow Countries configuration influenced customer address attribute outside given scope
ACP2E-3433 - - Shared Gift Registry shows the event date as 1 day earlier
Gift Registry date is shown correctly now on Storefront
ACP2E-3445 - VAPT: Business Logic Error - future date as customer date of birth
Customer's date of birth can not be set later than today
ACP2E-3501 -
Account, APIs, GraphQL
- Customer API - Login Failures Number Not Able To Reset To 0 After Successful Login
Now failure number is reset to zero in customer entity table after customer successful login through API endpoints.
ACP2E-3246 -
Account, Admin UI, B2B
- Restricted admin users can't always see custom shared catalogs
Restricted admin users can now consistently view and manage customers and all shared catalogs to which the products are assigned, provided they have access to the specific store. Previously, a restricted admin user with access to a particular store could not always see all shared catalogs to which the products were assigned or could see customers that could not save, leading to inconsistencies in the system.
ACP2E-3038 -
Account, Cart & Checkout
- "select" custom customer address attribute does not render for new customer address
AC-2341 -
Admin UI
- [Issue] add permission check for "reload data" data button
The system now includes a permission check for the "Reload Data" button, ensuring that it is only displayed and accessible to users with the appropriate permissions. Previously, the "Reload Data" button was visible and clickable for all users, leading to a "not permitted" page when clicked by users without the necessary permissions.
AC-10705 - - - [Issue] Inconsistent labels for attributes in marketing rules
The system now correctly populate the labels consistently for category and attribute options in cart price rule
AC-11427 - - - Data validation is success and Import button is present during Import products with Replace behavior
The system now correctly validates data and hides the "Import" button during the product import process with "Replace" behavior, preventing any unintended data replacement. Previously, the system incorrectly validated the data and displayed the "Import" button, leading to potential data inconsistencies.
AC-11588 - - [Bug] Magento 2.4.7 doesn't allow product photo's with capital letter file extension.
The system now accepts product image uploads with capital letter file extensions, ensuring a smooth product creation process. Previously, image uploads with capital letter file extensions were refused, forcing users to change the file extension to lowercase.
AC-12167 - - - Hidden dropdown in grids with select action (e.g. Content > Elements > Pages)
Now the system has been fixed all similar dropdown for all the grids.
AC-12319 - - - [Issue] Fix Warning: Undefined array key "filters"
The system now handles scenarios where a new user has not interacted with bookmarks yet, preventing an undefined array key "filters" warning from being logged. Previously, this warning would be logged when a fresh user had not interacted with bookmarks.
AC-13131 - - - Product import csv file with special characters fails due to code changes in Validate.php file
The system now correctly validates and imports product CSV files containing special characters, allowing for successful data transfer. Previously, attempting to import a product CSV file with special characters would result in an error, preventing the import process.
AC-13529 - - When the Max Number of Password Reset Requests" is set greater than 0 eg: 3 , "Exceeding limit error messages are sent before reching the limit i.e from second time
AC-13767 - Though the Max Number of Password Reset Requests" is set to 0( diabled) , "Exceeding limit error messages are sent from 2nd time"
AC-13768 - There is no red asterisk for mandatory phone number field
Earlier red asterisk was not showing for phone number but phone number was mandatory. Which is now fixed red asterisk can be seen on phone number as a mandatory filed.
AC-13850 - - In Admin When we try to Reorder submit order button is not clickable. (intermittently)
AC-14300 - [Issue] Set default indexer mode to 'schedule'
All new indexers are by default in Update by Schedule mode. Previously, the default mode was Update on Save. Existing indexers are not affected.
AC-6975 - - - [Issue] Drop indexer changelog tables on mview unsubscribe
The system now automatically removes unused changelog tables when an index is switched from 'update on schedule' to 'update on save', marking the index as invalid to ensure no entries are missed. Previously, switching an index to 'update on save' would leave unused changelog tables in the system and mark all changed indexes as 'valid'.
AC-7700 - - - No link to shipping when in payments in checkout in mobile phone view
The system now ensures that the checkout titles/links "Shipping" and "Review & Payments" are always visible on top of the page in mobile view, allowing users to easily navigate between steps and make necessary corrections. Previously, these titles/links were hidden in mobile view, making it difficult for users to know their current step or go back to previous steps.
AC-7962 - - - customer Orders query shipment comments created_at is returned in +0 timezone not in store configured timezone
The system now correctly displays the 'created_at' field from shipment comments in the customer's configured timezone when using the customer Orders query. Previously, the 'created_at' field was displayed in the +0 timezone, regardless of the customer's configured timezone.
AC-8109 - - - i18n:collect-phrases breaks the translations integrity
Thebin/magento i18n:collect-phrases -o
command now correctly collects and adds new phrases from JavaScript and .phtml files, ensuring that translations are accurately reflected in the translation file. Previously, the system failed to include multiline translation phrases from JavaScript files and phrases from .phtml files in the translation file, leading to incomplete or incorrect translations.
AC-9843 - - Permission Issue for accessing Dynamic Block
Previously for restricted admin adding a new dynamic block threw an error. After implementing this fix restricted admin can successfully add the dynamic block, and edit the block without any error
ACP2E-2687 - Apostrophe in store view name is replaced by '
The grid's store view filters now properly display apostrophes
ACP2E-2787 - - - Favicon upload fails to validate .ico files
The file validation error has been updated to "File validation failed. Please verify the Image Processing Settings in the Store Configuration." Previously, it was simply "File validation failed."
ACP2E-2847 - - Gallery in PageBuilder is showing old image thumbnail instead of newly uploaded image
Regenerate image previews for images deleted and re-uploaded with same name through media gallery in page builder content.
ACP2E-2957 - - - Saving product by admin user with different role scope overwrites/deletes existing Related product information in the product
Previously, before the fix, the related products were reset and became empty when the secondary admin user clicked on the save button without changing in related product. After this fix, the secondary admin user clicks on the save button and the product doesn't reset and is saved successfully.
ACP2E-2978 - - Unable to export more than 200 orders
The server limits for the request size of previously submitted selected IDs have been neglected by altering the HTTP request from GET to POST in order to fix the issue. Previously, due to the server limitations for GET request size, the issue was encountered.
ACP2E-3033 - - Checkout page Validation message incorrect.
If any required field is left empty, such as "address," the server-side validation will not display the message. The client-side validation will ensure that the required field error notification appears, stating "This is a required field." Previously, the message "address is required" would appear if any required field was left empty, in addition to the client-side validation message.
ACP2E-3037 - - Password reset template issue with Admin user
The issue has been resolved by using the correct key, which now includes the admin username in the email template and properly completes the subject. Previously, the problem stemmed from an outdated key that was being used.
ACP2E-3125 - - Double slashes in customer segment URL
Double slashes do not appear in the URL when 'Reset Filter' is clicked in the grid.
ACP2E-3149 - - COD is not available for allowed specific countries
Now Cash on delivery is available for allowed specific countries whenever it is required and AC-3216 is working as expected.
ACP2E-3171 - - Cannot update Custom created Order status
'We can now update custom-created order statuses, whereas previously, the status could only be changed if the current status was either "processing" or "fraud."
ACP2E-3178 - - - The shipping address state is not auto updating
Prior to the fix, the shipping address region (or region id) was not in sync with the address billing information. Now, both shipping address region and region id are properly updated when billing address information is changed.
ACP2E-3294 - - Reset button doesn't work on Add/Edit admin user
Previously, the Reset button did not function on the Add/Edit Admin User page. Now, in the Admin panel under System -> Permissions -> All Users, the Reset button will work correctly on the Add/Edit Admin User page.
ACP2E-3364 - - Magento admin URL routing wrong detection and CORS errors
After the fix, if the custom admin domain is a subdomain of the main domain, the admin is accessible only from the configured subdomain.
ACP2E-3373 - - - Broken validation for 'Maximum Qty Allowed in Shopping Cart'
Previously, when we putMaximum Qty Allowed in Shopping Cart
empty, it did not throw any exception, though an empty value is not accepted here. After this fix applies, putting an empty string will throw exceptions and will not allow saving the product.
ACP2E-3392 - - [Pagebuilder Preview UI Issue] The buttons in the Page Builder column aren't lining up correctly
The buttons in the Page Builder columns are now correctly aligned. Previously, they were misaligned within the Page Builder columns.
ACP2E-3408 - - Products Ordered report is not exporting. 404 error instead.
Products Ordered report excport to CSV and XML now works as expected
ACP2E-3431 - - TinyMCE JS Error in console after Js minification enable with production mode
Previously, enabling JavaScript minification in production mode within the admin panel caused JavaScript errors related to TinyMCE 6 to appear in the browser console, affecting the functionality and user experience. Now, This issue has been resolved, ensuring that TinyMCE 6 operates smoothly without generating any errors, even when JS minification is enabled.
ACP2E-3457 - - Request for additional changes to fully complete the ACP2E-3375 fix
'-
ACP2E-3459 - - Automatic enabling of new ACL permissions
New permissions added to custom modules will no longer automatically grant access to all existing user roles unless explicitly configured.
ACP2E-3503 - - Admin Actions Log User Report doesnt show details for adminhtml_user_delete
The adminhtml_user_delete now correctly logs important details. Previously, logs were not generated for user deletions.
ACP2E-3509 - - Cart Rule with shipping condition not applying when placing order from admin
Previously, if the cart price rule has a shipping method discount with the coupon, it can not be applied through Admin UI. After this fix is applied, the cart price rule discount with a coupon for a specific shipping method will be applied from Admin UI successfully.
ACP2E-3536 - - - [FRESH] HEX code is not updating correctly in SWATCH
HEX code that is manually entered by user in the Visual Swatch color picker is no longer altered by the system. Previously, certain HEX codes experienced slight adjustments due to conversion errors between color models.
ACP2E-3559 - -
Admin UI, B2B
- B2B Login as Customer header still has Magento branding
Earlier the storefront header shows "You are now connected as <customer name> on <store name>" with Magento branding. Which is now fixed and the header shows with ADOBE branding.
AC-13628 -
Admin UI, Catalog
- Cannot change positions for the category products in the allowed website as a restricted admin user
Allow for a restricted admin user to add and sort products under a category contained under the root category assigned under restricted website.
ACP2E-2708
Admin UI, Payment/ Payment Methods, Order
- Transaction Authorization Not Displayed in Transaction Tab After PayPal Smart Button Order
The system now correctly displays the transaction authorization in the Transaction tab after an order is placed using the PayPal Smart Button. Previously, the authorization transaction was not appearing in the Transaction tab after clicking the "Authorize" button, and no new transaction of type "Authorization" was created.
AC-13520 -
Admin UI, Performance
- After update to 2.4.5-p8 500 errors occur when creating order from admin
Previously, when enabling HTML minification, an order from admin could not be placed. Now, with HTML minification enabled, the order from admin can be placed successfully.
ACP2E-3169 -
Admin UI, Shipping
- The coupon code count does not update in the "Time Used" column in the Manage Coupon Codes tab if an order is placed with multi-shipping.
Earlier, when an order was placed with multi-shipping, the coupon code count did not update in the "Time Used" column on the Manage Coupon Codes tab. Now, the correct count is displayed in both the "Time Used" reflecting the desired values with multi shipping.
ACP2E-2519 -
Admin UI, Staging & Preview
- [Cloud] Removing template with missing images causes pub/media to be deleted
Previously to this fix, if the preview image name was missing for a pagebuilder template, the pub/media folder was deleted. After the fix, only the template will be deleted and the preview image if found.
ACP2E-3424 -
Analytics / Reporting
- Google Analytics CSP Error https://region1.analytics.google.com
The system now correctly allows connections to 'https://region1.analytics.google.com' when Google Analytics is enabled, preventing Content Security Policy (CSP) errors. Previously, enabling Google Analytics and viewing the website from the EU would result in CSP console errors due to a refusal to connect to 'https://region1.analytics.google.com'.
AC-9922 - - - Advance Report is not working
The system now supports the generation of Advance Reporting data files for extra-large datasets by loading and writing reports in batches of 10,000. Previously, the Advance Reporting module was unable to generate data files for extra-large datasets, causing "MySQL server has gone away" errors during the execution of the analytics_collect_data cron job.
ACP2E-2570 - - Admin Ordered Products Report date range visibility issue.
The user will be able to select any date from the ordered products report. Previously, after a table refresh, selecting 'FROM' date will reset 'TO' date.
ACP2E-3080 - - Incorrect curl headers making
newrelic:create:deploy-marker
not working
The system now correctly formats curl headers, allowing thenewrelic:create:deploy-marker
command to successfully create a deployment marker in New Relic. Previously, incorrect curl headers prevented the creation of a deployment marker in New Relic.
ACP2E-3096 - - - GTM missing addToCart event in dataLayer for configurable product with custom option
Previously, the addToCart event was not being triggered for configurable products. Now, the event is properly added to the GTM dataLayer variable.
ACP2E-3146 - NewRelic browser monitoring inlineJS script causes CSP errors
NewRelic Browser Monitoring scripts are now injected by the application instead of the APM agent for compliance with CSP (Content Security Policy). Previously, NewRelic Browser Monitoring scripts injected by APM agent were not compliant with CSP and caused the scripts to not be executed.
ACP2E-3183 - - INSERT queries to the sales_bestsellers_aggregated_daily table become slow on project with large sales order volume
Previously the bestsellers aggregated daily report would take a lot of time to generate for large volume of placed orders. Now the report is generated in a timely manner.
ACP2E-3189 - - Order reports showing the wrong currency symbol
The currency symbol for order amounts in the Order Report was incorrectly taken from currency/options/base. It has now been corrected to use currency/options/default for accurate reporting.
ACP2E-3276 - - [Cloud] Incorrect Calculations in Coupon Usage Report
The sales total in the coupon report grid is now accurately calculated by incorporating both the "Discount Tax Compensation Amount" and the "Shipping Discount Tax Compensation Amount." Previously, these amounts were missing from the calculation, leading to discrepancies between the sales total and the sales order data.
ACP2E-3302 - - Issues with shared "<project_id>/var/tmp"
Analytics DataExport temporary files will use the sys tmp directory, which is more suitable for frequent access and changes. To avoid collisions in case multiple instances are running on the same server, the tmp path was updated to use an instance's unique id
ACP2E-3339 -
Analytics / Reporting, B2B
- B2B - sitemap includes products/categories not assigned to Shared Catalog
Restrict the sitemap generated categories and products to the categories and product assigned only to the public shared catalog and / or the catalog category permission setup.
ACP2E-2300 -
Analytics / Reporting, Cloud
- Magento discards most New Relic cron transactions #34108
AC is correctly reporting cron job related transactions to NewRelic. Previously, some cron job related transactions would be shown as "OtherTransaction/Action/unknown" in NR
ACP2E-3067 - - Metric in NR might be misleading for background transactions- Follow up of ACP2E-3067
Background transactions (cron) will use New Relic app name defined in the config settings
ACP2E-3187 -
B2B
- 2.4.8-beta102 package Enterprise edition is failing with application exceptions
AC-13501 - Products assigned to shared catalog are not reflect on the front end when partial index is executed
Products assigned to shared catalog via REST API are now immediately visible on storefront after partial indexing is complete. Previously, Products were visible only after a full re-indexation.
ACP2E-2139 - - [Cloud] Price display in mobile and desktop version not the same in "My quotes"
Unneeded Include Tax line is not shown anymore in Negotiable Quote when catalog total price section is expended.
ACP2E-2873 - Unnecessary borders on the My Orders section
Previously an additional container(order references) was created that applied additional CSS classes, which caused unnecessary border lines were appearing below the order number inside the My Orders section, which isn't visible now.
ACP2E-3044 - - sales_clean_quotes cron deletes quotes from to yet approved purchase orders
Quotes used in purchase orders now will not be deleted by sales_clean_quotes cron job
ACP2E-3247 - - Place order button disappears in Purchase Order details
Fixed an issue where Place order button was hidden for approved purchase orders when a product variation had minimum number in card specified
ACP2E-3465 - [CLOUD] No such entity with id = 0 with b2b module
Logged in user is able to add product to cart when Shared Catalog features are enabled.
Previously adding product to cart resulted in Error 'no such entity with id = 0'
ACP2E-3474 - No error message displayed for our of stock products when bulk adding from requisition list
Prior to the fix a success message was being displayed regardless of the number of products that failed to be added to the cart. Now, separate messages are being displayed for products there were successfully added to the cart and for products that failed.
ACP2E-3562 - Issue with SKU Updates after Scheduled Updates Causing Incorrect Product Permissions (-2 Deny)
Modifying a product's SKU with past scheduled updates no longer causes the product to be inaccessible to the shared catalog customers entitled to see the product.
ACP2E-3628
B2B, Catalog
- Products/Categories visible during reindexation when using NoDDL and Category Permissions
Avoid displaying on storefront restricted categories and their content while catalog permissions indexing is being performed.
ACP2E-2860
B2B, Framework
- Filtering Company Grid & Then Attempting Grid CSV Export Will Fail & Throw Exception
The system now allows successful CSV export of the Companies grid data in the admin panel, even when filters such as 'Outstanding Balance' and 'Company Type' are applied. Previously, applying certain filters and attempting to export the grid data would result in a failure and an exception being thrown.
AC-9607 -
B2B, GraphQL
- [Cloud] Unable to set custom_attributes while comany creation over the graphql call
After the fix, it's possible to set the "custom_attributes" attribute for the company admin during company creation using graphql request.
ACP2E-3391
Braintree
- Admin express checkout button is disabled.
AC-14293 - Pay via LPM
The system now correctly renders Local Payment Methods (LPM) on initial load, even when a logged-in customer's shipping and billing addresses do not match, ensuring a smooth checkout process. Previously, a mismatch between a customer's shipping and billing addresses would prevent LPM from rendering, causing potential disruptions during checkout.
BUNDLE-3367 - Configurable with Virtual as Child Product
The system now allows express payment methods for configurable products that have a virtual child product, ensuring a smooth checkout process. Previously, express payment methods were not available when a configurable product with a virtual child product was added to the cart.
BUNDLE-3368 - CVV Verification failed error
BUNDLE-3369 - Vaulting Via the account Area Issues 247
The system now allows customers to save new card or PayPal account information across multiple websites without encountering authorization errors. Previously, customers were unable to save new payment methods across different websites and were presented with an authorization error message.
BUNDLE-3370 - Ship to an address from a different country
The system now allows transactions to be processed without errors when shipping to an address from a different country, ensuring a smooth checkout process. Previously, attempting to ship to an address from a different country would result in console errors, despite no visible errors on the frontend.
BUNDLE-3371 - Credit Card - Teardown function
The system now correctly handles the teardown of Braintree PayPal components when a customer navigates back from the payment page to the shipping page, preventing any errors and ensuring that PayPal Express buttons render correctly. Previously, navigating back to the shipping page from the payment page sometimes resulted in an error when trying to teardown the Braintree PayPal components.
BUNDLE-3372 - Shipping Callback for PayPal Express
The system now correctly displays available shipping methods in the PayPal Express modal, allowing customers to select their preferred shipping method before proceeding to the review page or completing their transaction. Previously, no shipping methods were available to select from in the PayPal Express modal, requiring customers to select a shipping method on a separate review page before they could complete their transaction.
BUNDLE-3373
Bundle
- Storefront Bundle Checkbox Validation Error message count more than 1
The system now displays only one validation error message when the 'Add to Cart' button is clicked without selecting any checkbox options for a bundled product. Previously, the system was displaying multiple validation error messages for each unselected checkbox.
AC-10826 - - Magento Exception thrown in some order related test cases
The system now correctly handles the 'sendGuestPaymentInformation' step in various test cases, preventing Magento exceptions from being thrown. Previously, these exceptions were occurring due to a null payment method, causing failures in several test cases.
AC-13321
Cart & Checkout
- Exception is not getting handled properly while adding a product to cart in the compare product page
The system now properly handles exceptions when adding a product to the cart from the compare product page, displaying a message manager message in the controller. Previously, an exception would result in a JSON encoded page being returned instead of being properly caught and handled.
AC-10660 - - - - GTag not send transaction prices and totals.
The system now correctly sends transaction prices and totals to Google Tag when GTag is enabled, ensuring accurate tracking of ecommerce data. Previously, the currency was incorrectly being sent as part of the "all" orders, rather than being associated with the individual order.
AC-10698 - - - - [Issue] [Checkout] Depend directives updated in failed payment email template
The system now correctly omits the shipping address and shipping method from the failed payment email template for virtual products, ensuring only relevant information is included in the email. Previously, the failed payment email for virtual products incorrectly included the shipping address and shipping method.
AC-11641 - - - Magento 2 login inside the checkout with existing customer give console error in Firefox browser
The system now allows users to log in during the checkout process without encountering any console errors in the Firefox browser. Previously, attempting to log in as an existing customer during checkout would result in a console error in Firefox.
AC-11717 - - - [Issue] Sales Rules regression in 2.4.7
The system now correctly validates sales rules, preventing the application of a coupon code to a cart when the product condition does not match any product name. Previously, a sales rule could be applied and a discount given on the shipping amount even when the product condition did not match any product name.
AC-11876 - - - [Issue] Sales rule CartFixed calculation : incorrect discount amount
The system now correctly calculates the discount amount for sales rules with cart fixed amounts, ensuring accurate discounts are applied regardless of changes in cart items. Previously, the discount amount could vary incorrectly when cart items changed, sometimes resulting in significantly larger discounts than expected.
AC-11914 - - - [Issue] The loader blocks the shipping methods after the postcode is changed, shipping rates validation rules
The system now correctly handles custom shipping methods without shipping rates validation rules, ensuring that the loader does not block the shipping methods after the postcode is changed in the shipping address during checkout. Previously, changing the postcode in the shipping address during checkout would cause the loader to block the shipping methods and not disappear when custom shipping methods without shipping rates validation rules were used.
AC-11993 - - - Coupon code feature is not working properly in the checkout page on Magento 2.4.7
The system now enables the discount code/coupon input field on the checkout page for virtual and downloadable products, allowing users to apply discount codes as expected. Previously, the discount code/coupon input was disabled, and the button title text displayed as "Cancel coupon", preventing users from applying discount codes.
AC-12170 - - - Terms and conditions checkbox is not allowing HTML on storefront
The system now supports HTML formatting in the "Terms and Conditions" checkbox text on the storefront, allowing for enhanced customization and readability. Previously, the checkbox text was displayed in plain text format, ignoring any HTML tags used.
AC-12479 - - Cart price rule created for logged in user incorrectly gets applied for not logged in user
The system now correctly removes the cart price rule for logged-in users when they are automatically logged out due to cookie expiration, ensuring that the discount is not applied to non-logged-in users. Previously, the cart price rule was still applied even when the user was logged out, resulting in an incorrect discount being applied to non-logged-in users.
AC-12541 - - - [Issue] [FEATURE] Performance optimisation large shopping carts by preventing…
The system now optimizes performance for large shopping carts by preventing duplicate getActions calls, enhancing the speed and efficiency of shopping cart operations. Previously, for a shopping cart with multiple items, the getActions function was called multiple times, slowing down the system's performance.
AC-13302 - - - Gift registry Product isn't displayinging properly
AC-13797 - Gift registry Product isn't displaying properly
AC-13841 - Translation VAT in address renderer
The system now allows for the translation of the text "VAT", "T", "F" in the address renderers, enabling users to translate these terms to the specific language of the store. Previously, these terms were not translatable, forcing users to employ a workaround.
AC-8103 - - - Duplicate orders with same Quote Id at same time with few time difference
Fixed the issue when ÃÛ¶¹ÊÓÆµ Commerce customers encountered duplicate orders placed with the same QuoteID
ACP2E-2055 - - Persistent shopping cart cleared during checkout step
After the fix, selecting the payment method during checkout while not logged in doesn't terminate the persistent session.
ACP2E-2470 - - Reorder adds non assigned product to cart
Previously, for the different stores products can be reordered from the other store. After this fix is applied only the same store , same scope product can be reordered when the customer account share is enabled
ACP2E-2518 - - In admin, the "Shopping Cart" on left side doesn't get updated when selecting the items and "Move to Shopping Cart" from the right side
The "Shopping cart" on the left side gets updated when selecting the items and "Move to shopping cart" from the right side in the admin side. Previously this functionality was not working because the transformed cart items were not getting empty from the session.
ACP2E-2620 - - [Cloud] Sales Rule not applied to first order of Multi Shipping
After the fix, the discount is shown correctly for each order of the same multi-shipping quote.
ACP2E-2646 - - [Cloud] Production Parallel Requests to Add Same Product to Cart Result In Two Separate Items In The Cart rest API
The system now correctly processes multiple parallel requests to add the same product to the cart into a single line item, preventing the creation of separate line items for the same SKU. Previously, making parallel requests to add the same product to the cart via the REST API would result in multiple line items for the same SKU.
ACP2E-2664 - - Issue with Ordering from Gift Registry Magento 2.4.4 Enterprise/Commerce
The issue preventing the successful purchase of a product from a gift registry has been resolved, allowing orders to be placed and the gift registry to be updated appropriately. Previously, an error occurred when attempting to place an order from a gift registry, preventing the completion of the purchase.
ACP2E-2676 - - Getting Unable to send the cookie. Size of 'mage-messages' while trying to Reorder
The reordering processwill not generate its own errors now. It will rely on cart listing built-in item checks.
ACP2E-2704 - - Default shipping address is not selected on checkout
Default shipping address is now being selected event in context of enabled address search.
ACP2E-2798 - - [CLOUD] graphql addProductsToCart api issue with custom option
GraphQL adds to cart correctly the same product with different custom options
ACP2E-2897 - - [Cloud] Related Products Rules not working when changing the store view
The issue has been fixed by confirming that the custom property value is successfully received on the cart page. Previously, it wasn't fetched properly when switching between stores on the storefront cart page.
ACP2E-2917 - Multiple addresses added to the account when checkout as new customer
The system now saves a new customer address only once if the order failed to be created, preventing the creation of multiple identical addresses in the event of order placement errors. Previously, the system would save a new address each time an order placement attempt was made, regardless of whether the order was successfully created or not.
ACP2E-2923 - - - Reordering customer order via guest order form results an empty cart
Previously, when placing a reorder through the Orders and Returns page, the customer was redirected to the login page. After this fix is applied, the registered customer is correctly redirected to the View Cart page when placing a reorder. The flow works the same as like as guest customers.
ACP2E-3004 - - Admin User with limited Role Resources unable to view Shopping Carts
Previously, the restricted admin could not see the abandoned shopping cart from the admin panel for an associated website. After this fix is applied, the restricted admin can see the abandoned shopping cart from the admin panel.
ACP2E-3025 - - [Cloud] quick order large amount of SKU performance
Checkout performance has been improved when attributes used in cart price rules conditions are not present for all products and when MAP (Minimum advertised price) feature is enabled.
ACP2E-3176 - - Duplicated items in cart
The system now correctly processes multiple parallel requests to add the same product to the cart into a single line item, preventing the creation of separate line items for the same SKU. Previously, making parallel requests to add the same product to the cart on Storefront would result in multiple line items for the same SKU.
ACP2E-3211 - - Checkout order email confirmation is sent to emails entered in First/Last name
The checkout order email confirmation, which was previously sent when an email-like pattern was entered in the First and Last Name fields, is no longer being sent.
ACP2E-3296 - - Checkout shipping address form get update with wrong address
shippingAddressFromData is now saved into the local storage per website. Previously, an address from the wrong website could be auto-populated into the shipping address form during checkout if a store code was used in the URL and checkout was initiated from multiple websites during the same guest session.
ACP2E-3402 - - [CLOUD] Checkout does not retain the selected billing address when Address Search is enabled
Checkout payment page will now retain the selected billing address when address search is enabled. Previously if "Number of Customer Addresses Limit" is configured to 1, and customer has more than one address, the selected billing address would disappear after reloading the page.
ACP2E-3405 - Gift Card Product | Cart Merge is merging Gift Cards
Giftcard products now merged correctly in the cart
ACP2E-3407 - - Cart persistence is not being respected upon logout
Added missing functionality Remember Me from customer login to authentication popup and checkout sign ins.
ACP2E-3415 - - Existing quote data is not update / not visible, instead create a new quote record when trigger_recollect = 1
Customer's shopping cart items no longer disappear as result of a product being deleted after it was added to the shopping cart.
ACP2E-3488 - - When a gift registry item is purchased, the customer sees items not on their registry
Gift registry update no longer includes items that do not belong to the gift registry.
ACP2E-3495 - [Cloud] Issue with "Remove All" Confirmation Popup Removing Cart Items Without Confirmation
Now, clicking the "Remove All" button for attention-required products prompts a confirmation popup to ensure items are only removed with your confirmation. Previously, items were removed immediately without any confirmation
ACP2E-3510 - [CLOUD] Re-order button functionality
Re-orderind an order from the administrator area will now add products with stock to the quote even though there are some products in the original order that do not have stock anymore. Prior to the fix no products were being added to the new quote if product with no stock were in the original order.
ACP2E-3618 - - Search stores are not working by zip code
Searching pickup locations by zip code was not working properly for Dutch localisations. After the fix, the pickup location search will provide results based on zip code.
ACP2E-3622 -
Cart & Checkout, Checkout/ One Page Checkout
- [Random BUG] Email field isn't rendered or takes a lot of time show up in Checkout Shipping or Payment page
Commerce now renders the Email field on the checkout shipping and payment pages as expected. Previously, this field was either absent or rendered slowly.
AC-9386 -
Cart & Checkout, Order
- Datepicker for product with multiple Customizable Options with date fields not working when placing order from admin
The system now correctly displays the date picker for all date fields when configuring a product with multiple customizable date options in the admin order creation process. Previously, the date picker was only displayed for the first date field, leaving the remaining fields without a date picker.
ACP2E-3097 -
Cart & Checkout, Shipping
- Instant purchase "cheapest shipping" broken for configurable products
The Instant Purchase feature incorrectly selected the more expensive In-Store Delivery option for configurable products instead of the cheapest Flat Rate method. This fix ensures that the correct shipping method is chosen based on the actual price."
AC-12119 - - -
Catalog
- Cleanup of cron_schedule database table doesn't cleanup non-existing jobs
The system now automatically cleans up the cron_schedule database table, removing entries for jobs that no longer exist in the system. This ensures optimal performance by maintaining a minimal number of rows in the table. Previously, entries for jobs from inactive or removed modules were not cleaned up, leading to unnecessary data accumulation in the cron_schedule table.
AC-10910 - - - Tier Price is not being deleted from Configurable Product
The system now correctly removes the tier price of a product when it is converted from a simple product to a configurable product, ensuring accurate price display on the frontend. Previously, the tier price of a configurable product was not deleted when a product was converted from a simple product to a configurable product, leading to a mismatch in the displayed price.
AC-10953 - - - Category description WYSIWYG is empty on non default storeview
The system now correctly saves and displays the category description in the WYSIWYG editor when editing a category on the store view level. Previously, the WYSIWYG editor would appear empty after saving a category description on the store view level.
AC-11804 - - - Imposible to reorder configurable products with one checkbox selected custom option
The system now correctly processes the reordering of configurable products with a single selected checkbox custom option, allowing for successful basket creation. Previously, attempting to reorder such products resulted in an error and prevented items from being added to the shopping cart.
AC-11970 - - - [Issue] Fix wording of filter item on layered navigation
The system now correctly uses the words "item" and "items" in the layered navigation filter item, enhancing the clarity and accuracy of the filter descriptions. Previously, these words were used incorrectly, leading to potential confusion for users navigating the filter options.
AC-12076 - - - Date and Time Format for Custom Option Not Working
The system now correctly applies the configured date format to product custom options of type Date, ensuring that the date format is displayed correctly on the front-end. Previously, changes to the date format configuration did not reflect on the front-end for product custom options of type Date.
AC-12164 - - - Dropdown options missing
The system now correctly displays all values in the dropdown when creating a new attribute with more than 20 values. Previously, only the first 20 values or another selected page values were displayed, causing the remaining values to be missing.
AC-13068 - - [Issue] Use current sore id for category runtime cache
The system now correctly uses the current store ID for category runtime cache, preventing data override when emulation is used or custom code saves the category in different stores. Previously, the object stored in runtime might have been from the wrong store, leading to data override.
AC-13296 - - - bin/magento sampledata:deploy --no-update throws an exception
The system now correctly accepts a boolean value when using the --no-update option in the sampledata:deploy command, preventing any errors during sample data deployment. Previously, an error was thrown when using this command as the system was incorrectly expecting an integer value.
AC-13324 - - - [Issue] Fix usage of EAV cache type
The system now correctly uses the EAV cache type in all relevant places, ensuring consistent and efficient data caching. Previously, the EAV cache type was not used consistently, leading to potential inefficiencies and inconsistencies in data caching.
AC-13355 - - - Catalog Advanced Search with empty data goes to search result page[2.4.dev branch]
The system now correctly retains users on the Advanced Search page and displays an error message when they attempt to perform a search without entering any data. Previously, performing an empty search would redirect users to the Catalog Advanced Search page with a message prompting them to modify their search.
AC-13596 - - [Issue] Product layout based on attribute_set
The system now allows the adjustment of product layout based on the attribute set, providing a more practical and efficient way to manage product display in the frontend store. Previously, the layout could only be adjusted by SKU or by product types, which was not always practical for many products or specific articles.
AC-13622 - - - Missing unique key on eav_attribute_option_value table
The system now includes a unique key on the 'option_id' and 'store_id' columns in the 'eav_attribute_option_value' table, preventing the possibility of an option having multiple values for the same store view. Previously, faulty code could result in an option having multiple values for the same store view, causing issues when editing products or attributes.
AC-6738 - - - [Issue] Use visibility class for category product indexer, instead of hardcoded values
The system now uses the visibility class for the category product indexer instead of hardcoded values, enhancing modularity. Previously, hardcoded values were used in the category product indexer, limiting flexibility and adaptability.
AC-8297 - - - Currency code not change in New product widget
The system now correctly updates the currency code in the New Product widget when the currency is changed in the frontend, ensuring consistency in currency display across the site. Previously, changing the currency in the frontend did not affect the currency code displayed in the New Product widget.
AC-9375 - - - Regular Price does not show on PLP for Configurable Product
Regular price is now being displayed on product listing pages for configurable products that have children products with special price.
ACP2E-2224 - - Stock information not showing right on Visual Merchandising grid
Stock is now displayed according to selected store.
ACP2E-2478 - - Widget content is not updating on cms page
The system now updates the widget content on a CMS page when a product is set as new and saved, ensuring that the page displays the updated product collection. Previously, the page was not updated to show the new product due to the incorrect cache identities used for the widget in the cache.
ACP2E-2621 - - Issues saving advanced pricing on bundle products
Bundle product saving performance improvement.
ACP2E-2630 - - [On-Premise] Re-index process is inefficient when creating Catalog Price Rules
Now saving catalog price rule will not invalidate indexers, instead it will reindex affected products only
ACP2E-2652 - - Updating time of Date and Time type product attributes via CSV import
Now datetime attributes will have time part in exported data. It will be also possible to update the time for such attributes using import. Also if "Fields Enclosure" is enabled, attribute values in "additional_attributes" column will be enclosed within double quotes.
ACP2E-2679 - - - No Appropriate error message when website id is wrong in the request
Now the appropriate error message was added to display when the website id is wrong in the request. Previously there was no validation when the website id was wrong in the request.
ACP2E-2689 - - Product image is lost after deleting an existing Scheduled Update that doesn't affect the image
Product images are not removed while deleting staging update.
ACP2E-2785 - - [Cloud] Wrong bundle product price when used with tier prices
Previously when calculating certain percentage discounts rounded up to 2 decimal points will generate different final prices for the cart and product listing page/product details page. After this fix is applied, the final price for the bundle product is the same as in the product details page, product listing page, and mini cart page.
ACP2E-2799 - - - Catalog Promotions Rule not working with quantity_and_stock_status attribute
The quantity_and_stock_status attribute will now be taken into account by the catalog promotion rule, which was not previously taken into account when generating new product from the admin side.
ACP2E-2805 - - - Product entity updated_at column values not updating while updating price through REST API
The product 'last updated at' column from the admin is updated the proper date time while updating the existing products through the REST API. Previously the column 'last updated at' is not updated properly.
ACP2E-2837 - - It's possible to set non-unique values via product import
The system now correctly enforces the unique value constraint for unique product attributes during product import, preventing from having duplicate values for that such attribute. Previously, it was possible to set non-unique values for product attributes that were configured to have unique values via product import.
ACP2E-2840 - - - Products on the frontend use store specific data when Single-Store Mode is enabled
Previously, when we enabled single store mode for the default store view, the changes were not migrated to the website-level scope. After this fix is applied, when we enable single store mode, the default store view-specific data will be synced with website-level-specific data and will resolve the possible conflicts for products and categories.
ACP2E-2843 - - Cannot set "Default Sort By" in a category using the rest API
Update correctly default_sort_by on a category through REST / SOAP APi request
ACP2E-2857 - - [Cloud] The Merchant is facing issues with wishlist count
Adding a product to the wishlist in one store no longer increases the wishlist count in other stores open in the same browser. Previously, if both stores were loaded in the same browser, the wishlist count would increase in the other store as well.
ACP2E-2871 - - Category Page at frontend shows empty slots when using bundle product
Bundle products that are not salable in current store context are not indexed anymore.
ACP2E-2874 - - [CLARIFICATION] Bundle product sequence table issues
The records in the Bundle product sequence tables (sequence_product_bundle_option, sequence_product_bundle_selection) are now removed when Bundle product is deleted or Bundle product options are deleted.
Previously the records in the Bundle product sequence tables were not removed.
ACP2E-2888 - [Cloud] Issue of Quote in multi-website architecture
Previously, multi-website architecture with different currencies and customer groups could not correctly apply discounts to the store. After this fix is implemented, multi-website architecture with different customer group price discounts will apply successfully to different stores.
ACP2E-2905 - - - dynamic-rows.js:658 Uncaught TypeError: dataRecord.slice while editing bundle products
There is no javascript error in browser console while deleting option from bundle product.
ACP2E-2909 - - - [Cloud] Bundle Product wrong pricing in order confirmation
Correct amount is displayed for bundle options in order on Storefront when currency other than base one was used.
ACP2E-2950 - - YouTube Video Adding Bug
Product images and videos are configured in global scope. Given that you can't have a product video in one scope and not in another, Youtube API key setting has been set to global scope.
ACP2E-2956 - - [Cloud] URL update only for store_id=0
The "URL Path" is now stored with the correct store ID. Previously, the store ID was incorrect, resulting in incorrect URL paths remaining in the database when moving categories.
ACP2E-2964 - - async.operations.all executed and created an error.
Incorrect product link data in REST API calls no longer cause critical errors.
ACP2E-3009 - - [Cloud] Mobile Issue Only not able to pinch on the PDP image
The system now supports pinch-to-zoom functionality on product detail page images in mobile view on Chrome, enhancing the mobile user experience. Previously, double-tapping on the image in mobile view on Chrome did not zoom in on the image as expected.
ACP2E-3029 - - Missing label in LayeredNavigation with option name 0
The issue has been resolved by skipping an empty value checker for attribute value 0. Previously, it was considered empty and was causing the issue.
ACP2E-3058 - - Customers see prices from other customer groups
Fixed issue where customer group related information was saved in a wrong segment due to the old value of the X-Magento-Vary in request
ACP2E-3069 - - Error when deleting bundle options
The system now correctly deletes bundle options without triggering an error or causing the page to become unresponsive. Previously, attempting to delete bundle options would result in a "Page Unresponsive" error and prevent the product from being saved.
ACP2E-3076 - - Category Permissions out of memory browser issue
Category Permissions UI was redesigned to allow rendering a large amount of permissions using out of box UI component and pagination. Previously category permissions would cause browser to crash with large amount of permissions assigned to the category.
ACP2E-3094 - [Cloud] Image File does not exist in New Relic Error Log
The system now synchronizes custom placeholder images to local storage, ensuring that they render correctly when using remote storage such as AWS S3. Previously, custom placeholder images failed to render when using remote storage, resulting in a broken image display and error logs.
ACP2E-3100 - - New Products RSS feed is not updated with new products due to cache
The Rss feed for New Products is now updated when a product is set as new and saved
ACP2E-3103 - - [Cloud] Product Media Gallery GQL response is not sorted by image position
The system now correctly sorts items in the media gallery by position in the GraphQL response, ensuring accurate display order. Previously, items in the media gallery were not sorted by position, leading to an incorrect display order.
ACP2E-3126 - - - [Cloud] Sub Category items are not displayed on the widgets edit on the admin backend
The category tree on the new widget page should no longer have issues loading Level 5+ categories. Previously, some categories were missing when loading the tree past Level 5 categories.
ACP2E-3136 - - [cloud] Two-finger zoom and move issue on the real mobile device
The system now ensures consistent image zoom functionality on mobile devices, providing a smooth and predictable user experience. Previously, the image zoom feature was inconsistent and would suddenly zoom out after a certain point when viewed on a mobile device.
ACP2E-3198 - - When we unassign products from the shared catalog, the wishlist products are not being cleared
Now, no items are visible in the wishlist if a product is not available in the shared catalog. Previously, the wishlist page incorrectly displayed a count of "1 Item" even when no items were actually available in the wishlist.
ACP2E-3282 - - Related products Select All/Unselect All Issue
Previously, the "Select All"/"Unselect All" buttons for related products didn't work correctly if a product was manually selected. After the fix, these buttons now function consistently, even after manual selection, ensuring that all products are properly selected or unselected.
ACP2E-3286 - - [Cloud] Stock alert email translation to the wrong language
When sending Stock/Price Alerts for a website with multiple store views using different languages, the language for the store view where the alert was created will be used on the email.
ACP2E-3336 - - - Disabled Categories are no longer have their names grayed out in the category tree
Previously, disabled categories were not grayed out in the category tree. Now, they are displayed with a gray-out effect.
ACP2E-3350 - - Configurable product edit form load causes timeout and memory exhaustion
Prior to the fix configurable product variations were constructed based on all possible attribute option combinations. In cases where attributes had a lot of options this resulted in a lengthy and resource consuming operation. Now, configurable product variations are constructed based on existing child product attributes. This results in far less calculations - thus an improved usage of resources.
ACP2E-3410 - - Fotorama doesn't load video correctly when using Swatches and option is pre-selected via URL
Product videos will now render properly on configurable product details page, if the URL contains selected options.
ACP2E-3454 - - PageBuilder Carousel Widget shows products that doesn't match conditions
Product list used in widgets now respects category condition
ACP2E-3461 - - Validation Error Triggered for All Products in Group When One Has Invalid Quantity
Now, the validation error is correctly triggered for all products in the group when one product has an invalid quantity, which was not happening previously.
ACP2E-3469 - - [CLOUD] Special price not showing in Configurable product
After the fix, changing the "Used in Product Listing" value for the special price attribute will not affect showing the special price for configurable products.
ACP2E-3513 - - Indexers Temporary tables are not cleaned up if the process is terminated
CatalogRule indexer temporary tables are now cleaned up if the indexer process is terminated
ACP2E-3516 - - [QUANS] Core unit test failures in 2.4.7-p3
Release notes for this test is not needed since it is a Unit-test improvement.
ACP2E-3520 - - Performance Issue in Stock Quantity Retrieval for Grouped Products with Multiple Sources
Grouped product and bundle product edit page is now optimized when assigned products have large number of inventory sources.
ACP2E-3533 - - Refix ACP2E-3389
Improved performance of admin category page in case of large number of anchor categories
ACP2E-3641 -
Catalog, Content
- [Cloud] Cache is not getting invalidated.
Previously, when saving a CMS page with an updated design layout, it did not reflect appropriately on the front end. After this fix is applied, the appropriate design layout will be visible at the front end when we change the design layout and save the CMS page.
ACP2E-3063 - - [Cloud] Anchor/Non-Anchor Categories Reversed in Content Widget
Previously, when we selected Display On -> Anchor Categories, it showed all the categories that did not reflect the parent-child relation between the anchor and non-anchor. After this fix is applied, the Display On -> Anchor Categories only displays Anchor Categories (selectable), and Display On -> Non Anchor Categories displays Non-Anchor Categories (selectable)
ACP2E-3131 - - Categories not working with widgets
Previously, if we saved the CMS block for different anchor/non-anchor categories, it did not work for the child categories when it showed on the front end. After this fix has been applied, the block is shown at the front end for different categories.
ACP2E-3152 -
Catalog, Framework
- Order get(Shipments|Creditmemos|Invoice)Collection - Collection should not be loaded
The system now ensures that the collections for shipments and credit memos are not pre-loaded when retrieved from an order, allowing for additional filters or orders to be applied to these collections. Previously, these collections were automatically loaded, preventing any further modifications.
AC-9111 - - - [Cloud]Follow-up: Mismatch in Data Comparison when checking if data has changes
Previously, the save object was called every time without any data changes (for any numeric data field - like int/float/double). It triggers the flag _hasDataChanges to be true and calls the save function. It also does not check the floating numbers encapsulated by string. After this fix applies, the save function will call only if the data is changed. The data value for int/float/double-check with the value passing to the function and does strict type matching
ACP2E-2949 -
Catalog, GraphQL
- Handling Category Filters in GraphQL: includeDirectChildrenOnly and category_uid
Only the direct child categories are fetched while filtering by category_uid.
ACP2E-3090 - - [Cloud] Graphql Product sorting do not work
GraphQl Product sorting by multiple fields when the fields are passed in variables now works as expected.
ACP2E-3166 - - Tier Prices return wrong value in products GraphQL (compared to Storefront)
After the fix, product's tier prices returned for graphql requests have price per one item.
ACP2E-3312 - - [CLOUD] B2B: category issue via GraphQL
After the fix, the categories graphql query returns categories with allow permission even if the root category doesn't have allow permission.
ACP2E-3385
Catalog, Pricing, Staging & Preview
- [Cloud] Special price API endpoint returns error when updating large numbers of products concurrently
Now Special Price bulk update API will create a single campaign for each date range instead of multiple scheduled updates for each product and date range. Also, it will support concurrent API requests for faster processing of large number of SKUs.
ACP2E-2672 -
Catalog, Product
- Category selection tree in edit product is not in the same order as set in Catalog->Categories
The system now correctly displays the category selection tree in the product edit section in the same order as set in Catalog->Categories, making product administration easier in large catalogues. Previously, the category tree in the product edit section was displayed in the order of category creation, regardless of the display order set in Catalog->Categories.
AC-7050 - -
Catalog, SEO
- Incorrect canonical URL for category when page > 1
Previously, the canonical URL for multi-page content did not function correctly, consistently displaying the base URL. However, after the fix was implemented, the canonical URL for multi-page content now correctly displays the URL with the page ID.
ACP2E-3653 -
Catalog, Search
- Products not showing on category and search but direct links are working
Previously, the Yes/No custom attribute with price_* attrbute_code does not work with indexing. After this fix, the Yes/No custom attribute works as expected.
ACP2E-2757 - - [Cloud] Elastic search error on certain category pages
Previously, with the configuration ticket mentioned, when we put price 0 for multiple products, it will throw an exception at the frontend category page. After this fix applied when multiple product price 0 and we load category page at frontend it wont throw any exception and will load category page successfully.
ACP2E-3053 - - Type Error occurred when creating object: Magento\CatalogSearch\Model\Indexer\Fulltext\Interceptor Exception
After the fix, an instance of Magento\CatalogSearch\Model\Indexer\Fulltext class can be created without specifying $data.
ACP2E-3345 - - [CLOUD] Issue with Products are Not Visible in Frontend After Saving in Magento Admin
After the fix configurable products that have child products with long names will not be missed in the storefront.
ACP2E-3521 -
Catalog, Shipping
- Shipping address empty while placing an order for a gift registry item
Previously, for guest user gift-registry items, when returned from the email function, generated an empty blank address, which is incorrect for placing an order. After this fix is applied, the gift registry checks logged-in user/guest users and assigned addresses if they exist.
ACP2E-3195
Cloud
- [Cloud] PHPSESSID is changing each POST Request
PHPSESSID no longer regenerates on POST requests on frontend area for a logged-in customer if L2 Redis cache is enabled and the customer was updated from the backend
ACP2E-3010 - - Sitemap Generation Warnings
After the fix, the sitemap is generated in the system tmp directory and copied to the final destination.
ACP2E-3532 -
Content
- [Issue] issue with the price display in the Recently Viewed widget
The system now correctly displays the price of out-of-stock simple products in the "Recently Viewed Product" widget, ensuring consistency across all widgets and product list pages. Previously, the price of out-of-stock simple products was not displayed in the "Recently Viewed Product" widget due to a condition in the price loading templates.
AC-10539 - - - [Issue] Correct typo and grammar in acl.xsd file
The system now corrects a typo and grammar error in the acl.xsd file, enhancing the clarity and accuracy of the documentation. Previously, the acl.xsd file contained a typo and incorrect grammar which could potentially cause confusion.
AC-10596 - - - Pagebuilder banner image not visible in gallery
The system now correctly displays banner images uploaded in newly created folders in the Pagebuilder gallery, eliminating previous console errors. Prior to this fix, banner images were not visible in the gallery if they were uploaded in a new folder, causing a console error.
AC-10845 - - "Area code not set" after update to 2.4.5-p8
The system now successfully completes the static content deployment process when the Magento_CSP module is enabled and "dev/js/translate_strategy" is set to "embedded", without triggering the "Area code not set" error. Previously, under these conditions, the static content deployment process would fail with an "Area code not set" error.
AC-12283 - - - Widget category tree is not rendered correctly
AC-12692 - - - Unable to see "Using Default value" message when changing the theme in design configuration page
The system now includes a separate column to display the "Using Default value" message depending on the selected theme in the design configuration page. This ensures clarity and visibility of the default value status. Previously, the "Using Default value" message was not displayed, leading to confusion about the status of the selected theme.
AC-13054 - - [Issue] Restores backwards compatibility with TinyMCE plugins again (after it…
The system now restores backward compatibility with TinyMCE plugins, allowing functions defined inside the plugin to be called when using the widget from another location. Previously, due to a change in the TinyMCE version, the plugins were not returning the widgets as an object, resulting in an error when trying to call certain functions on the widget instance.
AC-13569 - - - [Issue] file upload issue in WYSIWYG editor on product page
The system now correctly displays the folder tree and allows image uploads in the WYSIWYG editor on the product page, even after expanding the 'Image and Videos' tab first. Previously, expanding the 'Image and Videos' tab first resulted in the folder tree not being displayed and an error message when attempting to upload an image in the WYSIWYG editor.
AC-9638 - - - [On-PREM] Dynamic block issue
Wdigets are now being properly rendered within dynamic blocks.
ACP2E-2392 - - YouTube nocookie url not working in Page Builder
Now the pagebuilder allows the youtube no-cookie url in the form element settings of the validation rules. Previously the youtube no-cookie url is not working in pagebuilder.
ACP2E-2606 - [Cloud] Frontend not loading due to issue in newsletter template
Adding blocks via CMS Page content section does not lead to exception anymore
ACP2E-2693 - - ACP2E-2836: [Cloud] Investigate exception found in the log: InvalidArgumentException: Class does not exist in vendor/magento/module-rule/Model/ConditionFactory.php
Removing a condition on PageBuilder products content settings no longer causes an exception to be recorded in the log files. Previously, removing a condition on PageBuilder products content settings would cause a critical exception to be recorded in the logs, despite not causing any issues on the frontend.
ACP2E-2836 - - Switching to single store mode - global content no longer appears
The system now synchronizes store view design configurations with website design configurations when enabling single store mode, ensuring that content updates are visible on the frontend. Previously, switching to single store mode would prevent content updates from being reflected on the storefront.
ACP2E-2842 - - Page Builder replaces image when trying to add link and other usability glitches.
Now clicking on an image, links in wysiwyg editor in Page Builder text element will load proper data in the image, link configuration dialog. Also adding a link to an image in the editor now works properly. Previously, the image was replaced with a link.
ACP2E-2903 - - Old media gallery fails to render images when a 0-byte image is placed in the directory
The system now handles 0-byte images in the media gallery without disrupting functionality, allowing other images in the directory to be displayed and selected as expected. Previously, the presence of a 0-byte image in the media gallery would prevent all images in the directory from being displayed or selected.
ACP2E-2970 - - Error Page Builder when editing CMS Block
The system now correctly saves changes made in the admin area using Page Builder, without throwing the error "Page Builder was rendering for 5 seconds without releasing locks." in the browser console. Previously, this error would occur when attempting to save changes, preventing the successful update of content.
ACP2E-3064 - - - [CLOUD] No buttons of checkout or edit cart on the cart section
Bundle product is now added to the cart via widgets without errors.
ACP2E-3092 - - - Content Staging preview on category pages does not show product widgets
The issue has been fixed by ensuring that product entries for the additional category linked to the CMS block have been accurately recorded into the database. Previously, it was returning an empty result set when the category preview page was requested.
ACP2E-3113 - [CLOUD] Upload image button doesn't work
Before the Upload Image button for Banner and Slider from PageBuilder didn't work as expected, and now when pressing it opens the local file manager to select the wanted image to upload.
ACP2E-3122 - - imagecreatetruecolor(): Argument #2 ($height) must be greater than 0. Can't upload specific image
Resolved the issue causing errors in the admin when uploading images with a height of 0 via the media gallery, and successful the assets synchronization using the sync command. Previously can't upload the image via the media gallery and the sync command also fails when a specific image is in the gallery.
ACP2E-3127 - - Prototype.js Array.from in conflict with Google Maps API
Google Maps now renders properly in PageBuilder editor. Previously, a Javascript error prevents Google Maps from rendering correctly.
ACP2E-3154 - - [Cloud] - CMS Slider not reflecting the latest changes
The issue has been fixed by ensuring the slider list gets refreshed while the save event is triggered on the edit slide screen. Previously, it was triggering and causing the issue.
ACP2E-3275 - - An error occurs in CSM page when CMS blocks are inserted using page builder in certain order
Previously on some versions of PHP and OS (Linux), the rendering of blocks that referenced other cms blocks through PageBuilder would have failed with an "An unknown error occurred. Please try again.". Now the content of the cms blocks is rendered correctly inside a PageBuilder controlled content.
ACP2E-3326 - - [Cloud] Dynamic blocks will not function properly
Logged-in customer segments are now cleared after logout preventing the guest session from inheriting previously logged-in segments
ACP2E-3388 - Pagebuilder's template preview failure for large content
Large content was leading to canvas element overflowing the browser's limits, and returning incorrect value, which broke backend code (cannot properly decode the image). Fixed with limiting canvas size to the universal browser's limit.
ACP2E-3428 - - Latest security updates with TinyMCE 7 missing font size
Font size and font family selectors are now available in WYSIWYG editor. Prior to this fix, with TinyMCE 7 these were not available in the editor interface.
ACP2E-3430 - - - TinyMCE 7 editor font size in the admin in PT and not PX please clarify
Prior to the fix you could not specify font size in px in WYSIWYG areas. Now you can set the font size in px instead of pt.
ACP2E-3483 - - - Product Content Type in Page Builder Gets Collapsed Without Correct Messages
Prior to the fix the preview html was not being generated properly when there were no products in the widget. Now, the empty response is properly generated and products widget is being displayed fine in preview.
ACP2E-3490 - - - [page builder]Adding Product Listing to block results in errors
Now adding Bundle Product Listing to block via page builder doesn't results in errors
ACP2E-3534 -
Content, SEO
- CMS Page hierarchy can cause URL rewrite issues
Previously, for custom permanent URL rewrite for non-website root pages, redirect infinitely and the page was never loaded. After this fix is applied, the custom URL rewrite for the non-website root page works as expected and no redirection loop occurs.
ACP2E-2870
Content, Staging & Preview
- Catalog price rule is not showing when it is set to schedule with dynamic blocks
The system now correctly displays dynamic content associated with scheduled catalog price rules on the product detail page. Previously, dynamic content failed to load when catalog price rules were scheduled.
ACP2E-2979
Customer/ Customers
- Front end - Date of birth validation is failing in Customer creation page
Ensure all validation should work after upgrade moment.js system dependency to the latest minor version
AC-12162 - - Customer Segment > Condition > Product History* > "product was viewed" does not work
The system now correctly displays matched registered customers in the "Product was viewed" condition under Customer Segments, when the condition is met. Previously, even when the condition was met, the count of matched registered customers remained at zero.
AC-13060 - Region text field is not reset when country dropdown is changed
The system now resets the region text field when the country is changed in the dropdown menu, ensuring that previous values do not persist. Previously, changing the country from the dropdown list did not reset the region field, causing the last saved value to be preserved.
AC-8499 - - Deleting Customer Does Not Clean All Browser Session Data on Storefront for Logged in & Deleted Customer
Deleting a customer now cleans all browser session data from the storefront for logged-in and deleted customers as expected. The shopper can continue shopping, and their browser treats their session as a guest session. Previously, when the customer account for a logged-in shopper was deleted from the Admin, then the shopper's browser threw JavaScript errors.
AC-9240 -
Framework
- [Question]Unused Type configuration in
app/code/Magento/Translation/etc/di.xml
The system now removes unused dependencies in the configuration, enhancing the overall code cleanliness and efficiency. Previously, there were unused dependencies in the configuration which were not contributing to any functionality.
AC-10037 - - - V1/customers/password endpoint question/issue
The system now adheres to the constraints set within the management GUI when processing password change requests via the API, preventing potential abuse of the password reset function. Previously, the API could process password change requests outside of the rules defined in the management GUI, potentially allowing for a constant stream of reset emails if valid emails were known.
AC-10654 - - - Varnish configuration does not exclude all marketing parameters
The system now correctly excludes all common marketing parameters in the Varnish configuration, ensuring accurate tracking and analytics. Previously, certain marketing parameters such as gad_source, srsltid, and msclkid were not excluded, leading to potential inaccuracies in data collection.
AC-10738 - - - Catalog search index process error indexation process
The system now successfully completes the re-index command without encountering any errors, regardless of the libxml version compiled with PHP. Previously, running the re-index command resulted in a "Catalog Search index process error during indexation process" error when PHP was compiled with certain versions of libxml.
AC-10838 - - - - Added created_at, status and grand_total filters to customer Orders query and fixed multiple filters failure
The system now supports the use of created_at, status, and grand_total filters in customer Orders queries, and has resolved an issue where multiple filters were not being applied correctly. Previously, the system did not support these filters and would fail to apply all filters when more than one was used in a query.
AC-10941 - - - Randomly getting flooded with queries from related / upsell / crosssell blocks and price indexing
The system now optimizes queries from related, upsell, and cross-sell blocks, improving the performance and preventing the site from going down due to excessive queries. Previously, the system could become overloaded with queries from these blocks, causing significant slowdowns and potentially bringing the site down.
AC-10991 - - - Exception: Warning: Trying to access array offset in… -> Calendar.php since upgrade to ICU 74.1 (PHP Intl)
Commerce no longer logs the following exception in the exception.log whenever a shopper or merchant visits either the storefront or Admin:main.CRITICAL: Exception: Warning: Trying to access array offset on value of type null in /vendor/magento/framework/View/Element/Html/Calendar.php on line 114 in /vendor/magento/framework/App/ErrorHandler.php:62
.
AC-11423 - - - [Issue] Fix issues with Customer Data when form contains element with name
method
The system now correctly identifies the 'method' attribute in form submissions, even when an element named 'method' is present in the form. This ensures accurate processing of customer data. Previously, if a form element was named 'method', it would interfere with the identification of the 'method' attribute in form submissions, leading to potential issues with customer data handling.
AC-11476 - - - [Issue] Fix PHPDocs for \Magento\Framework\Data\Collection::getItemById
The PHPDocs for the \Magento\Framework\Data\Collection::getItemById method have been updated to include null as a possible return type, addressing issues with static analysis tools. Previously, the method's PHPDocs did not specify null as a possible return type, leading to warnings or errors in static analysis when the method was used in conditional statements.
AC-11489 - - - [Issue] Allow only valid preferences during
setup:di:compile
The system now throws an error during thesetup:di:compile
command if a preference is created for a class that does not exist or is specifically excluded, ensuring that only valid preferences are allowed. Previously, these scenarios would fail silently, potentially rendering any plugins associated with the original classes useless.
AC-11592 - - - __Magento trying to modify read-only property in wakeup method of LoggerProxy
The system now allows the modification of previously read-only properties in the LoggerProxy's __wakeup method, ensuring smooth operation without forcing users to employ a workaround. Previously, an attempt to reassign the value of a read-only property in the LoggerProxy's __wakeup method would cause issues.
AC-11651 - - - [Issue] AC-2039 AC-1667 upgrade TinyMCE references
Updated tinymce latest version in composer.json
AC-11681 - - - - ChangelogBatchWalker does not work in multiple threads
The system now supports process fork for MView indexation, preventing errors during indexer execution when operating on multiple threads. Previously, running the ChangelogBatchWalker on multiple threads would lead to the deletion of tables used by other threads, causing an error during indexer execution.
AC-11696 - - - [Issue] Rename wrongly named variable
The system now correctly names the variable that contains the amount of money that can still be refunded, preventing confusion during debugging. Previously, this variable was incorrectly named as totalRefund, which could lead to misunderstandings for developers.
AC-11781 - - - [Issue] Pass custom attributes to current link via XML
The system now allows custom attributes to be passed to the current link via XML, ensuring that these attributes are correctly displayed even when the link is the current page. Previously, custom attributes were not displayed for the current page link due to the getAttributesHtml() method not being used for the current link.
AC-11809 - - - Built-in FPC cache is broken in 2.4.7 for some configurations
The system now correctly caches pages when the MAGE_RUN_CODE parameter is set, ensuring optimal performance. Previously, pages were not being cached under these conditions, leading to potential performance issues.
AC-11819 - - - - [Issue] Fix exception handling inconsistency between developer and production modes
The system now consistently handles exceptions between developer and production modes, preventing unexpected redirection to the login page when an exception is thrown. Previously, an inconsistency in exception handling could cause a redirect to the login page in production mode instead of displaying the exception message.
AC-11829 - - - Replace 'PayPal Account' translation in token_list.phtml
The system now labels the section for tokenizable account payment methods as "Account" instead of "PayPal Account" in the Stored Payment Methods page, making it more representative of its function. Previously, this section was specifically labeled as "PayPal Account", which was misleading when other tokenizable account payment methods were added.
AC-11852 - - - Backward compatibility has been lost on Magento\Catalog\Model\ProductRepository class
The ProductRepository class now maintains backward compatibility by restoring the Initialization Helper class as the second parameter, ensuring that modules extending from this class function as expected. Previously, the removal of the Initialization Helper from the constructor in the ProductRepository class resulted in a loss of backward compatibility, forcing users to employ a workaround.
AC-11874 - - [Issue] Static content deploy - Type error
The system now correctly handles empty LESS files during static content deployment, displaying an "LESS file is empty" error message. Previously, an incorrect type error was thrown when encountering an empty LESS file during deployment.
AC-11905 - - - [Issue] [View] Removed extra space in link and script tag
The system now ensures that there are no extra spaces in the link and script tags, providing cleaner and more efficient code. Previously, double spaces could be found between attributes in the link and script tags.
AC-12002 - - - [Issue] avoid a misconfiguration infinite loop
The system now avoids an infinite loop by preventing self-referential mapping in virtual type configurations. This ensures the application does not get stuck in an endless loop when attempting to dereference a self-referential node. Previously, if a virtual type configuration was self-referential, it would cause the application to spin indefinitely.
AC-12127 - - - Object Manager not used for Magento\Csp\Model\Mode\Data\ModeConfigured
The system now correctly uses the Object Manager when creating the ModeConfigured object, allowing plugins to be used on this object. Previously, the Object Manager was not being used, preventing plugins from being applied to the ModeConfigured object.
AC-12299 - - - Inaccurate doc block comment in Product Stock and Price Alerts
The doc block comment for the deleteCustomer method in the Product Stock and Price Alerts has been corrected to accurately reflect that the method deletes all stock product or price alerts associated with a given customer and website, not the customer from the website. Previously, the comment inaccurately stated that the method was for deleting a customer from the website.
AC-12540 - - - [Issue] Use compiled config for generated data instead of general config
The system now uses the compiled configuration for generated data instead of the general configuration, reducing network transfer and overhead of data that depends on a certain version of code. This change prevents cache overriding in shared instances during container swapping, leading to improved stability and reduced downtime. Previously, certain core classes used shared config type, which could lead to cache overriding or application downtime due to differences in code versions across multiple servers.
AC-12594 - - - [Issue] Remove references to files from extjs which got removed in e1ccdb…
The system now removes references to files from extjs which were previously removed, eliminating errors in the browser's console and the system log file. Previously, these references were causing errors due to the absence of the referenced files.
AC-12597 - - - [Issue] Minor cleanup: fixed wrong usage of sprintf, it only takes 2 placeholders here and w…
The system now correctly uses the sprintf function with the appropriate number of placeholders, enhancing code cleanliness and consistency. Previously, the sprintf function was incorrectly used with an extra argument, which did not cause any major issues but was not the correct usage.
AC-12778 - - - PHP 8.2.15 removed FTP extension
The system now includes the FTP extension as a dependency in the composer.json file, ensuring the successful configuration of CSV imports via FTP. Previously, an error was thrown when attempting to configure CSV imports via FTP due to the FTP extension being missing in the PHP package.
AC-12857 - - - [Issue] Fixes incorrect classes being referenced in Magento modules.
The system now correctly references classes in modules, ensuring smoother operation and preventing crashes due to non-existing classes. This includes a bugfix in the Indexer and Creditmemo modules, and the implementation of the HttpGetActionInterface in the PrintAction class. Previously, incorrect class references led to errors and potential system crashes, and certain functionalities, such as the filename for creditmemo PDF files and reindexing of stocks, were not working as expected.
AC-12869 - - - Ability to define Area for
dev:di:info
CLI command
The system now allows developers to define an area for thedev:di:info
CLI command, enhancing the development and debugging process. Previously, this command could only display information for the GLOBAL area.
AC-12964 - - - [Issue] add isMultipleFiles property to image form element template
This fix, prevents the "Browse to find or drag image here" button to disappear when an image is added in a multiple files image form element.
AC-13149 - - - setup:upgrade is failing with MariaDB 11.4 version due to charset & collation changes
AC-13247 - [Issue] Remove all marketing get parameters to minimize the cache
The system now removes all marketing get parameters to optimize cache utilization, mirroring the logic used when Varnish is in use. Previously, these parameters could lead to cache bloating and reduced performance.
AC-13279 - - - [Issue] [PHPDOC] Fix bad phpdoc Magento\Directory\Model\AllowedCountries::getAllowedCountries()
The PHPDoc for the AllowedCountries::getAllowedCountries() method has been corrected to provide accurate information, enhancing the clarity and usefulness of the documentation. Previously, the PHPDoc for this method contained incorrect information, which could lead to confusion or misuse of the method.
AC-13345 - - - [Issue] Removes some code for PHP versions we no longer support.
Removal of code for PHP versions that no longer getting supported in Magento
AC-13348 - - - [Issue] Make ImageMagick Adapter compatible with php8 (Implicit conversion from float to int)
The system now ensures compatibility with PHP8 by correctly handling float numbers when calculating image dimensions, preventing any errors due to implicit conversion from float to int. Previously, the calculation of image dimensions could result in float numbers, which when implicitly rounded, would cause an error.
AC-13417 - - - [Issue] [PHPDOC] Fix bad phpdoc Magento\Framework\App\Config\ScopeConfigInterface
This update corrects the PHPDoc annotations in the Magento\Framework\App\Config\ScopeConfigInterface to accurately reflect the type of the $scopeCode argument for the getValue and isSetFlag methods.
AC-13537 - - - Magento\Framework\Filesystem\Driver\Http depends on reason phrase OK
Removed "OK" phrase check from Magento\Framework\Filesystem\Driver\Http::isExists
AC-13725 - - - Customer Grid indexer does not work properly in Update by Schedule mode
Earlier Customer grid was updated instantly but after the fix Customer grid is updated after cron run but not reflect instantly.
AC-13810 - - typo error on a js file.
The system now correctly uses the term "subscribers" in the JavaScript file, ensuring proper functionality of the related features. Previously, a typographical error in the JavaScript file resulted in the incorrect use of the term "subsctibers".
AC-6754 - - - [Issue] Remove forbidden
@author
tag
The system now adheres to coding standards by removing the forbidden@author
tag from certain modules, ensuring cleaner and more standardized code. Previously, the@author
tag was present in some modules, which was against the established coding standards.
AC-8353 - - - [Issue] Remove forbidden
@author
tag fromMagento_Customer
(part 2)
The system now adheres to the coding standard by removing the forbidden@author
tag from certain modules, ensuring cleaner and more standardized code. Previously, the@author
tag was present in some modules, which was against the established coding standards.
AC-8356 - - - Space in editorconfig syntax breaks rule for [{composer,auth}.json]
The system now correctly applies a 4-space indent to the composer and auth.json files, following a fix to a syntax error in the editorconfig. Previously, due to a space in the editorconfig syntax, these files were incorrectly formatted with a 2-space indent.
AC-8659 - - - [Issue] Improve cron error logging
The system now captures and logs both STDERR and STDOUT for cron processes, providing valuable diagnostic information in scenarios where cron processes fail. Previously, any error messages within cron processes were not recorded, and STDERR and STDOUT for cron groups running in separate processes were lost.
AC-8662 - - - [Issue] Adds some more colors to the output of certain setup cli commands
The system now adds more colors to the output of certain setup command line interface (CLI) commands, enhancing readability and user experience. Previously, the output of these commands was harder to read due to lack of color differentiation.
AC-8984 - - - Upgrading Magento resets general/region/state_required when new country with required state/region is added.
The system now only adds the modified country to the 'general/region/state_required' configuration when a new country with required states is added, preventing any disruption to custom code that assumes the region is disabled. Previously, adding a new country with required states would reset the 'general/region/state_required' configuration to default countries with a required state, potentially breaking the shop.
AC-9630 - - - Difference in less compilation between php & nodejs library (grunt) with complicated
calc
expressions
Fix the difference in less compilation between php & nodejs library (grunt) after update wikimedia/less.php:^5.x
AC-9712 - - - "Base table or view not found" error occurs when partial indexing is executed
Partial reindex now works correctly with big changelog in case of secondary db connection
ACP2E-2692 - - Issues after upgrading MariaDB to 10.5.1 or higher
Fixed the issue when datetime values in a DB would be converted to 0000-00-00 00:00:00 after Mysql upgrade
ACP2E-2844 - - Type Mismatch in Data Comparison when checking if data has changes
Previously, the save object was called every time without any data changes (for any numeric data field - like int/float/double). It triggers the flag _hasDataChanges to be true and calls the save function. After this fix applies, the save function will call only if the data is changed. The data value for int/float/double-check with the value passing to the function and does strict type matching.
ACP2E-2855 - - [Cloud] import cannot be used with directory var
Product can be imported successfully regardless of the file name.
ACP2E-2959 - - In ipad mini the menu and header loads as mobile, instead they should load as desktop.
The system now treats devices with a width of 768px as desktop, ensuring that the menu and header load correctly. Previously, devices with a width of 768px were treated as mobile, causing the menu and header to load in a mobile view.
ACP2E-2966 - - - Base table or view not found error when running mview cron while having a DDL operation
The system now correctly handles database update operations while mview update is running in background, preventing the occurrence of 'Base table or view not found' errors. Previously, some database update operations could result in 'Base table or view not found' error, if mview update was running at the same time.
ACP2E-3046 - Modifying column length via db_schema.xml doesn't work in case of foreign keys
modifying column with foreign key via declarative schema now doesn't rise errors with MariaDB
ACP2E-3230 - - Some of the relations records are saved to DB when order record is saved
Before the fix unnecessary UPDATE queries were being triggered that can have an impact performance wise. After the fix, the unnecessary UPDATE queries were eliminated.
ACP2E-3361 - - [CLOUD] In admin there are many javascript error in console
Previously, In admin panel there are many javascript error in console. Now, In the admin panel, there will be no JavaScript errors in the console, and all the default JavaScript functions will execute successfully without any issues.
ACP2E-3375 - - [Cloud] Magento: queue message has been deleted
Queue messages are now properly being cleared out. Prior to the fix, given that SQL queue system was being used, new messages could have been deleted if the cleaning queue message was running at the same time.
ACP2E-3387 - - Corresponding cache key entries are not available in cache tags, hence cache cleaning does not work correctly
LUA mode is now enabled by default for Redis cache garbage collector to prevent race conditions
ACP2E-3537 - - MAGENTO_DC_INDEXER__USE_APPLICATION_LOCK value is ignored
After the fix, an ENV variable set to "false" will be treated as bool false, not as string 'false'.
ACP2E-3681 -
Framework, GraphQL
- [Issue] Introduced support of custom scalar types for GraphQL schema
The system now supports custom scalar types for GraphQL schema, allowing developers to define custom scalar types and implementations. This feature can be particularly useful for expressing values that may require validation, such as HTML, emails, URLs, dates, etc., and for more advanced cases like EAV attributes. Previously, the system did not support the processing of custom scalar types in GraphQL.
AC-7976 - - -
Framework, Product
- 2.4.8-beta1 EE Reports are not generating due to magento exception
AC-13011
Framework, UI Framework
- Possibility to overwrite config value even if it's locked
Previously to this fix, the design configuration could not be set through bin/magento config:set command and locked values could be changed by manipulation of the form displaying them. After the fix locked values set from cli with --lock-env or --lock-conf cannot be updated anymore.
ACP2E-3324 -
GraphQL
- Magento_GraphQl execute headers processing even if the header value does not pass validation
The system now ensures that header processing is only executed once and only if the header value passes validation, enhancing security and preventing potential vulnerabilities. Previously, header processing was executed even if the header value did not pass validation, leading to potential vulnerabilities and unexpected behavior due to double processing of header values.
AC-11729 - - Physical Giftcard options don't have the right sorting order
The system now correctly sorts the options of physical gift card products when queried via GraphQL, ensuring consistent rendering with the Luma theme. Previously, the sort order was incorrect according to luma theme, leading to incorrect display and ordering of options such as sender name, recipient name, and amount.
AC-8951 - - [GraphQL] Resolver Cache is Invalidated When Creating/Editing/Moving/Deleting a Staging Update
The system now ensures that the resolver cache is not invalidated when creating, editing, moving, or deleting a staging update, but only when the staging update is applied to the entity. Previously, the resolver cache was invalidated prematurely, even before the staging update was applied, which led to unnecessary cache invalidations.
AC-9157 - - Fastly cache not cleared for content staging update
Now GraphQL with PageBuilder contents response cache is invalidated, when the PageBuilder content related entities are updated.
ACP2E-2642 - - Disabling Layered Navetion - Does not remove aggregation from Graphql
The issue has been fixed after applying the check while requesting a product search with category aggregations through a GraphQL query when the admin configuration setting of "Catalog > Layered Navigation > Display Category Filter".
ACP2E-2653 - - GraphQL Products call containing the price filter {from:"0"} returns no result
Previously graphql products search with filter for zero prices did not return any results at all due to a thrown exception. Now the search returns results as expected.
ACP2E-2928 - - Translations for customer return attributes not reflected in GraphQL API for respective StoreView
Translations for customer return attributes are reflected in GraphQL API for respective StoreView.
Previously customer Return attributes for respective StoreView were not reflected in GraphQL API.
ACP2E-2974 - - [Cloud] Broken GraphQL call for getPurchaseOrder with node quote
The Purchase Order GraphQL call will be able to execute the task without encountering any internal server errors.
ACP2E-3128 - - [Cloud] Configurable Products not shown in Production Site if Product is not enabled in "All Store Views"
The system now correctly displays configurable products in the site even if the product is not enabled in "All Store Views", but is enabled in specific store view scopes.
Previously, if a product was disabled in "All Store Views" and enabled only in specific store view scopes, the product attributes would not be displayed correctly in the GraphQL response, leading to the product not being displayed properly.
ACP2E-3184 - - [Cloud] Products graphql having error when same simple product has assigned to multiple configurable products
Previously, with separate configurable products with the same simple product, grapQL returns an error. After this fix apply, different configurable products with the same simple product, grapQL returns result without no error.
ACP2E-3190 - - [Cloud] Issue with User Authentication and Cross-Site Token Access in Multi-Site Setup
GraphQl Customer Info and Cart queries in Multi-Site setup checks if the customer on non-default website exists.
Previously query worked without making sure the customer exists on non-default website in Multi-Site setup.
ACP2E-3215 - - GraphQL cart itemsV2 pagination is not working correctly
The issue has been fixed by passing the correct value for the current page argument in the collection query. Previously, the wrong value was getting passed to set the current page, causing the issue.
ACP2E-3253 - - [GRAPHQL] model value should be specified when getting customerCart
The GraphQL 'customerCart' query can now create an empty cart even when the quote is not available in the database. Previously, this operation failed due to country validation issues while creating the empty cart.
ACP2E-3255 - - [GraphQl] Wishlist items are visible via GraphQl but not visible on storefront
Wishlist products where not being properly listed when requested via GraphQL. Now, wishlist products are filtered based on provided store context.
ACP2E-3380 - - [GraphQL] Reset password email inconsistency between content and subject/link
The issue has been resolved by simulating the correct store where the customer's account is registered when sending the password reset request, regardless of the website store.
ACP2E-3404 - - [Cloud] products GraphQL query returns related products not assigned to current website
Previously, for graphQL query, multi-store related products do not show properly for product query. After this fix is applied, for products, graphQL query multi-store related products showing accordingly.
ACP2E-3419 - - Using the wrong Store ID in GraphQL header causes fatal memory error
Sending wrong store code in GraphQL request no longer results in excessive memory consumption.
ACP2E-3447 - - [Cloud] 500 response to empty Graphql response on 2.4.7
After the fix, invalid graphql requests will not be logged into the exception.log file.
ACP2E-3467 - - [Cloud] Problems with Graphql API
Before the fix by using Graphql application server, customer address request did not return the most recent data.
ACP2E-3492 - - Disabled product still appears in related, upsell, crosssell items in grpahQL query
Graphql now provide correct response for disabled relared, upsell and cross-sell products
ACP2E-3505 - - [CLOUD]: GraphQl error Internal server error placeOrder mutation
The "placeOrder" mutation with coupon code information in the request is no longer throwing an internal error exception, the order was placed successfully. Previously, it failed with "Internal server error".
ACP2E-3647 - - The discount_percentage is not calculated for bundle products with dynamic price
Fix added for discount_percentage of product.price_details not showing the correct value for bundle products with dynamic price enabled and discount coupon applied.
LYNX-426 - Bundle products still shows "IN_STOCK" when one of its bundled product out of stock
Resolved the issue where bundle products were still showing "IN_STOCK" even when one of their bundled products was out of stock.
LYNX-485 - not_available_message and only_x_left_in_stock doesn't show the same available stock
Resolved the issue where the not_available_message and only_x_left_in_stock were showing inconsistent stock availability
LYNX-486 - original_row_total field returning wrong value
Resolved the issue with the original_row_total field, which was returning incorrect values when custom options were selected
LYNX-488 - Grouped product thumbnail should be shown according to the configuration .
Resolved the issue to ensure the grouped product thumbnail is displayed according to the configuration settings
LYNX-503 - Error when querying selected_options in OrderAddress
Updated AttributeSelectedOptions to custom_attributesV2 in the order address GraphQL response.
LYNX-510 - original_item_price is not including discounts
Updated original_item_price to include discounts.
LYNX-512 - Not available message is not showing the available inventory quantity
Resolved the error message and error code for the AddProductsToCart mutation to align with the "not available" message configuration
LYNX-530 - "OUT_OF_STOCK" status returns on Simple with custom options products with multi select options
Updated the StockStatusProvider resolver in the inventory package to fix the stock_status for simple products with custom options.
LYNX-532 - Error (GQL): cart.itemsV2.items.product.custom_attributesV2 returns a server error
Resolved the server error that occurred when a cart query included a product's custom attributes by adding a product without any custom attributes.
LYNX-533 - orders/date_of_first_order always returning null
Resolved the issue where orders > date_of_first_order was always returning null.
LYNX-536 - Customer must not be able to cancel a partially shipped order
Validation has been added to restrict customers from canceling a partially shipped order.
LYNX-544 - Error codes for order cancellation based on the error message
The error codes for order cancellation are now based on the specific error message.
LYNX-548 - Move back cookie-related properties from private to protected
Reverts Magento\Framework\App\PageCache\Version class constructor properties visibility from private to protected
LYNX-581 - Increase max default GraphQL query complexity to 1000
Increased the default maximum GraphQL query complexity from 300 to 1000.
LYNX-600 - GQL - itemsV2 > Original row total, price range prices is returned as $0.00 for downloadable product with file options which has separate prices.
Resolved an issue where downloadable products with separate link purchase options enabled were returning $0 for itemsV2 > Original row total, price range returned as $0.00 for products with file options having separate prices.
LYNX-620 - Schema of a table when is created brand new different than when upgrading
Resolved an issue where adding a new VARCHAR column to an existing table caused test failures due to schema differences between fresh installations and upgrades. The modifyColumn() method now correctly handles VARCHAR columns by setting the default charset and collation.
LYNX-711 - GraphQl Compatibility for PHP-8.4 Version
Fixed GraphQL compatibility issues with PHP 8.4 across multiple resolvers, ensuring smooth functionality. Updated affected files in CatalogRule, Customer, GiftMessage, GiftCard, and GiftWrapping modules.
LYNX-772
GraphQL, Inventory / MSI
- MergeCart mutation throws exception when source and destination carts have same bundle items
'-
ACP2E-2607 - -
GraphQL, Inventory / MSI, Performance
- Site down after upgrade
The performance of fetching bundle products through GraphQl is improved.
ACP2E-1716 - -
GraphQL, Performance
- [GraphQL Resolver] Customer Resolver Data is Not Invalidated From Import
GraphQL customer resolver cache is now invalidated as expected when a customer is edited or deleted through imports. Previously, the cache was not invalidated, and customer data could be edited or deleted during import.
AC-9569 -
GraphQL, Search
- GraphQL product list sorting by multiple parameters doesn't work
Product sorting by multiple fields in GraphQl now works as described in the documentation
ACP2E-2809 - - Product listing GraphQL query limited to total_count 10,000 products only
After the fix, the search result is not limited to 10000 products, it becomes possible to get all products matching the search criteria even if the count is more than 10000.
ACP2E-948 -
GraphQL, Test framework
- Magento\GraphQl\App\GraphQlCustomerMutationsTest.php Integration Test failure
'-
ACP2E-3363 -
Import / export
- Issue at product import when provided with custom options-type: file (Created Product does not contain price for custom-option and show only the first file type extension provided)
The system now correctly imports product data with custom options of type 'file', ensuring that all provided file extensions are displayed and the price for the custom option is included. Previously, during product import, if a custom option of type 'file' was provided with more than one file extension, only the first extension was displayed and the price for the custom option was missing.
AC-12172 - - - Wrong execution time for import operation in Import History grid
Import report execution time shows correctly independent of admin locale.
ACP2E-2710 - - Duplicate customers being created with same email address using import
Importing the customer while Account Sharing set to Global, imported customer that exists in the system is updated.
Previously imported customer was duplicated.
ACP2E-2737 - - Add/Update Import on Products Duplicating Customizable Options
The issue has been resolved by assigning the correct store to product options during product options CSV imports.
Previously, assigned to the admin store instead of their respective store.
ACP2E-2902 - - Customer "created_at" date Not Converted to store time zone upon export
A column 'created_at' date value is converted to the proper date format based on the store timezone in the customer export CSV section.
ACP2E-2990 - - [Cloud] Getting error while checking the data in import data using CSV
There is no error when checking the data during CSV import. Previously, the error message displayed was: "We can't find a customer who matches this email and website code in row(s): 1" when checking the data in the import section using CSV from the admin.
ACP2E-3165 - - Import button missing
Resolve the Import button missing issue after data checks with correct and incorrect records in the CSV. Previously the import button doesn't display after data checks with correct and incorrect records in the CSV.
ACP2E-3172 - - Exported customer address cannot be imported
Customer address import will proceed as expected. Previously, a customer address import file would not pass validation if Share Customer Accounts = Global, and there are two websites where the default website has a restricted country list, and the address that is being imported is for another website where allowed countries are different
ACP2E-3382 - - [Cloud] Wrong quantity in CSV file did not give error
Now stock sources import will throw validation error for non numeric values in the quantity column. Previously, importing stock sources with non numeric value in the quantity column resulted in the quantity being set to 0.
ACP2E-3448 - - Duplicated URL key error message generated when importing a product is not correct when the URL Key already belongs to a category
Displaying the correct error message during product import check, when customer tried to import product when product's url key already belongs to a category.
ACP2E-3455 - - Product export causes OOM even with 4G memory limit
Previous to this fix, the product export failed if product attributes had thousands of option values even with 4G available memory. After this fix, the product export should finish exporting the csv file.
ACP2E-3475 - - [Cloud] Import Processes Interfering with Each Other
Correct messages are shown if the same admin user performs two or more import operations using the same user session.
ACP2E-3527 -
Import / export, Performance
- [Cloud] Product import time has significantly increased
Previous to the fix, catalog product import with over 10K entries had a significant time degradation. After the fix, the import of catalog product executes in a timely manner.
ACP2E-3476 -
Install & Administer
- Magento upgrade fails on MariaDB 11.4 + 2.4.8-beta1
Upgrade should happened without any error.
AC-13242 - - No Export VCL for Varnish 7 button in admin panel
"Export VCL for Varnish 7" button was added to the Admin panel.
ACP2E-2102 -
Inventory / MSI
- Inventory update of Configurable Product fails when database uses prefixes
The system now correctly updates the inventory of configurable products when the database uses prefixes, preventing any error messages and ensuring the correct quantity is saved. Previously, an error would occur when trying to save the inventory quantity for simple products within a configurable product if the database was using prefixes.
AC-10750 - - Google google API key is not working while adding Map with attributes
The system now supports the latest Google Maps API version 3.56, allowing users to successfully add a Map content block from the PageBuilder menu to the stage without encountering any errors. Previously, users were unable to add a Map content block due to compatibility issues with the Google Maps API version, resulting in a "something went wrong" error message.
AC-11593 - - Unable to create shipment for order item with multiple sources and corrupted SKU
Earlier when spaces was mistakenly added in sku through database leads to error in shipment page which is now fixed and automatic trim is considered as human friendly error and no impact was found .Therefore shipment was successfully created.
AC-13922 - - [Test] Bundle products with 0 inventory showing on store front
The bundle product does not display on the additional websites using additional stock.
ACP2E-1411 - [Cloud] Critical Issue with Product Listing with Empty Spaces
The system now correctly displays product listings without empty spaces when products are set to 'Out of Stock', ensuring a consistent and accurate display of available products. Previously, setting a product to 'Out of Stock' would result in an empty space appearing in the product listing, disrupting the layout and potentially confusing customers.
ACP2E-2794 - - - Unable to ship the order when MSI pick up store is enabled
Improved inventory performance of create shipping in case of many sources with in-store pickup
ACP2E-3335 - - Cron reindex fails to update product availability on the frontend
Previously, Products remained out of stock on the frontend after updating the backorder status through the REST API. Now, after updating the backorder status via the REST API, products are shown as in stock.
ACP2E-3355 - - Adding images to configurable not working when MSI is enabled.
Image upload for configurable product will now work as expected when inventory module is used. Previously the image upload didn't work
ACP2E-3357 - - Issue with Bundle Product + MSI in Clean M2.4.7-p3
Previously, for inventory bundle products after duplication with the same simple product, the simple product can not be saved. After this fix is applied, the simple product can be saved successfully without any exceptions.
ACP2E-3470 - -
Inventory / MSI, Search
- All products are indexed with [is_out_of_stock] = 1 when the SKU is not set as a searchable attribute
After the fix, the "is_out_of_stock" in catalog search index is correct, even when sku is not searchable.
ACP2E-3413 -
Order
- Backend order overview screen: Backordered quantity not visible on order item level
The system now displays the number of backordered items in the quantity column on the backend order overview screen. This ensures that users can accurately track the status of all items in an order. Previously, the quantity column only showed the number of items that were ordered, invoiced, and shipped, but did not display the number of backordered items.
AC-10828 - - - [Issue] Wrong store ID used in Order Address Renderer
The system now correctly uses the store ID associated with an order when rendering the order address, ensuring that addresses are formatted correctly according to their respective store ID. Previously, the system was incorrectly using the current store ID, which could lead to incorrect address formatting in cases where multiple order emails from different stores needed to be sent.
AC-10994 - - - JoinProcessor caching issue
The system now correctly applies the JoinProcessor for each iteration, even with consecutive calls, ensuring accurate data retrieval. Previously, the JoinProcessor was incorrectly marked as already applied in consecutive iterations, leading to errors in data retrieval.
AC-11690 - - - [Issue] Shipping price showing diffrent in printed pdf
The system now correctly displays shipping prices in printed PDFs according to the tax configuration settings, ensuring consistency between the sales order invoice view page and the printed invoice. Previously, the shipping price displayed in the printed PDF was excluding tax, regardless of the tax configuration settings.
AC-11798 - - - - Reorder with a deleted parent configurable product
Now while reordering with the deleted product the system will not show the reorder button to reorder
AC-13839 - - - [Issue] Fix bad \Magento\Sales\Model\Order\Email\Container\Template::$id property
This fixes the bad phpdoc for \Magento\Sales\Model\Order\Email\Container\Template::$id, actually $id is type int but in reality is string.
AC-13924 - - - Unable to save changes to phone number in existing order details
Now the user can add the international prefix 00 in the telephone field of order address
ACP2E-2622 - - - Emails are failing to send
The system now includes a configuration option async_sending_attempts to specify the number of attempts to send an email before stopping, improving the handling of failed email sends when "Asynchronous sending" is enabled. Previously, if an email failed to send, the system would continuously attempt to resend it, resulting in an endless loop of error messages in the system log.
ACP2E-2734 - - [Cloud] Order Status changed to complete when partially refund of a partially shipped order
When issuing a credit memo, the order status is no longer changed to "completed" if there are items that haven't been shipped yet.
ACP2E-2756 - - [CLOUD] Cannot Disable Send Emails from Admin UI as Dev Docs shows
The system now correctly prevents sales emails from being sent when email communication is disabled. These emails will no longer be sent when email communication is re-enabled. Previously, sales emails initiated while email communication was disabled would still be sent once email communication was re-enabled.
ACP2E-3002 - - Order closed without fully refunded
The system now correctly maintains the order status as 'Processing' and the invoice status as 'Pending' when an order with an uncaptured payment has a shipment created. This ensures that orders are only marked as 'Closed' after being fully refunded. Previously, creating a shipment for an order with a pending invoice would incorrectly change the order status to 'Closed'.
ACP2E-3045 - - [Cloud] Cannot create order in admin on one store if only the Default Billing Address was not set up
Now relevant error message "A customer with the same email address already exists in an associated website." is displayed if a customer doesn't have a Default Billing Address and tries to create an order on another store.
ACP2E-3311 - - Admin duplicated place order requests sent
Previously, the "Submit Order" button in the admin panel could be clicked multiple times or activated by repeatedly pressing the "Enter" key, causing duplicate or order submissions with error. Now, preventing additional actions until the order is fully processed, ensuring that only one order is submitted.
ACP2E-3416 - - Admin can still place order even without payment method
Previously selected payment method is now retained when the payment method reappears in the list of available payments.
ACP2E-3425 - - Items are duplicated after we create an order from Admin on - Mozilla Firefox browser
Products added using "Add Products by SKU" are no longer duplicated in Firefox when creating an order in admin.
ACP2E-3518
Order, Payments
- Admin can still place order even without payment method
Previously, the merchant could place orders from the admin panel without selecting a payment method. Now, the merchant is required a payment method to proceed with placing an order.
ACP2E-3233 -
Order, Returns
- Order refund results in duplicate credit memo
Issuing the refund over REST API when two identical requests were executed simultaneously will no longer create duplicate Credit Memos.
ACP2E-2982 -
Order, Tax
- [CLOUD] Incorrect base_row_total in RESTFUL order API when enabling cross-border transactions and applying coupon discounts
Now correct base_row_total is returned from RESTFUL order API when cross-border transaction is enabled and coupon discount is applied.
ACP2E-3003 -
Other
- [Braintree] Refund online storing transaction as transactionid-refund
BUNDLE-3394 - [Braintree] + [CLOUD] Braintree (credit card) orders unable to split the charges
BUNDLE-3421 - [Braintree] [Cloud]Braintree SSL Certificate expire by June 30
BUNDLE-3422 - private_content_version cookie returned in GQL queries
Fixed an issue where the private_content_version cookie was returned in GraphQL queries, even when the session cookie was disabled. The cookie is no longer included in GraphQL responses when the session is disabled, as expected.
LYNX-339 - Server error on email props in physical gift card queries
Fixed an issue where queries for sender_email and recipient_email on physical gift cards resulted in a server error. These props now return correctly for virtual gift cards and the query behavior is consistent.
LYNX-366 - is_available attribute in CartItemInterface returns always false for configurable products
Fixed an issue where the is_available attribute in CartItemInterface always returned false for in-stock configurable products. Now, it correctly reflects availability as true when applicable.
LYNX-380 - is_available attribute in CartItemInterface returns true even when salable stock is lower than the quantity of the product
Fixed the issue where the is_available attribute in the CartItemInterface incorrectly returned true even when the cart item quantity exceeded the salable stock.
LYNX-382 - only_x_left_in_stock attribute in ProductInterface is not accurate on configurable products
Fixed an issue where the only_x_left_in_stock attribute in ProductInterface did not accurately reflect the available stock for configurable product variants in the cart. Now, the only_x_left_in_stock value corresponds correctly to the actual variant stock levels, ensuring accurate inventory data is returned in the Cart GQL query.
LYNX-395 - Placeholder thumbnail returns when a simple product added to cart within a grouped product
Fixed an issue where adding a simple product (part of a grouped product) to the cart returned a placeholder thumbnail image, even when the product had an assigned image.
Fix Details: - The product thumbnail now correctly displays the assigned image if available.
- The thumbnail selection respects the admin configuration under:
Stores > Configuration > Sales > Checkout > Shopping Cart > Grouped Product Image.
This ensures consistent thumbnail behavior for grouped products based on store settings.
LYNX-399 - Customer's custom option attributes not working with integer values
Fixed an issue where customer's custom option attributes did not work when the returned value was an integer. Custom options now correctly handle and return integer values as expected.
LYNX-400 - Internal server error when trying to get priceDetails for Bundle products with dynamic price
Resolved an issue where querying price_details for bundle products with dynamic pricing via GraphQL resulted in an internal server error. This enhancement ensures stable cart queries when working with bundle products configured with dynamic pricing.
LYNX-402 - only_x_left_in_stock always returns 0 for configurable products
Resolved an issue where the only_x_left_in_stock attribute always returned 0 for configurable products when added using the parent SKU with options.
Fix Details: - The only_x_left_in_stock value now accurately reflects the stock of the selected child variant instead of the parent SKU.
- This ensures that stock levels are correctly displayed for configurable product variations in the cart and product pages.
LYNX-403 - GraphQL Error: Unsupported 'file' type in customizable options query
Fixed an issue where GraphQL returned an error for customizable options of type 'file' in cart items. The query now correctly returns details for all customizable option types, including file-based options, without causing errors.
LYNX-405 - GraphQL query not returning correct calculated regular price for customizable products
Fixed an issue where GraphQL did not return the correct calculated regular price for customizable products. The query now correctly includes the calculated regular price with customizable values applied (e.g., $125) in the prices property, reflecting both the base price and any additional customization costs.
LYNX-411 - AppliedTaxes via EstimatedTotals persist with updated mutations
Fixed an issue with the EstimatedTotals mutation where applied taxes persisted on a cart even after updating the region or postcode. The mutation now correctly updates the applied taxes when changing between region and postcode values, ensuring that only the correct tax rule is applied based on the current cart data.
LYNX-412 - is_available attribute in CartItemInterface returns true even when salable stock is lower than the quantity of the product
Fixed an issue where the is_available attribute in CartItemInterface incorrectly returned true even when the salable stock was lower than the requested product quantity. The is_available field now correctly returns false when the product's quantity exceeds the available stock.
LYNX-420 - Cannot add coupon to cart for shipping only discount
Fixed an issue where a coupon could not be applied to a cart for shipping-only discounts. The coupon is now correctly applied to the shipping amount when using a sales rule with no product conditions, ensuring the expected discount is applied to the shipping cost.
LYNX-421 - Product regular price with 12 decimals and wrong value
Fixed an issue where the regular_price value in the product.price_range.maximum_price and minimum_price GraphQL paths did not match the catalog price when multiple tax rates were applied. The regular_price now consistently reflects the catalog price across all tax configurations, ensuring accurate unit pricing, total row cost calculations, and discount checks in the Cart Summary.
LYNX-425 - GraphQL server error on cart with out of stock bundled product
Fixed an issue where GraphQL returned an internal server error when fetching a cart containing a bundled product with an out-of-stock item, specifically when the query included the itemsV2 property. GraphQL now correctly returns a list of items with relevant error messages attached to the bundled product item entry, as expected.
LYNX-430 - It is not possible to create an address with custom attributes
Fixed an issue with the createCustomerAddress mutation that prevented the creation of addresses with required custom attributes. The mutation now correctly handles custom address attributes when the appropriate payload is provided.
LYNX-441 - GraphQL server error on cart with only_x_left_in_stock on bundled product
Fixed an issue where fetching a cart containing a bundled product with the only_x_left_in_stock field in the GraphQL query resulted in an internal server error. GraphQL now correctly returns a float or null for the only_x_left_in_stock field without errors.
LYNX-447 - GraphQL error when removing other products with insufficient configurable product in cart
Fixed an issue where attempting to remove in-stock products from the cart resulted in a 'The requested qty is not available' GraphQL error if the cart also contained configurable products with insufficient stock. The removal now works as expected without triggering errors.
LYNX-464 - Cannot add products due to SKU in mutation being case sensitive
Resolved an issue where the addProductsToCart mutation returned a 'PRODUCT_NOT_FOUND' error when using SKUs with different casing. The mutation now handles SKUs case-insensitively, ensuring consistency with Catalog Service queries and PDP behavior.
LYNX-469 - Product attribute > trademark short form ™ is returned as ™
Resolved character encoding issue with the product name for the GraphQL API
LYNX-603 - updateCustomerEmail mutation issue
Resolved an issue with the updateCustomerEmail mutation where customers without required custom attributes (added after account creation) were unable to update their email.
LYNX-619 - Mutation setShippingAddressesOnCart throws error when using pickup_location_code
Fixed an issue where the setShippingAddressesOnCart mutation returned an error when using pickup_location_code without specifying customer_address_id or address. The mutation now correctly allows setting a shipping address with just the pickup_location_code.
LYNX-626 - CustomerOrder.items_eligible_for_return list must be consistent with order items
Resolved inconsistencies with return eligibility in orders:
- The CustomerOrder.items_eligible_for_return list is now consistent with actual order items.
- The OrderItemInterface.eligible_for_return field correctly returns false when the full quantity has already been returned.
- CustomerOrder.items_eligible_for_return now includes only items that are not already in the process of being returned.
LYNX-627
- Add quantity_return_requested field
Added the quantity_return_requested field to the OrderItemInterface, allowing you to identify the quantity of items for which a return has been submitted. This enhances return tracking alongside the existing quantity_returned field.
LYNX-628 - Order available actions must not contain RETURN after returns created for all items in full quantity
Fixed an issue where the available_actions field in the GraphQL customer.orders query incorrectly included RETURN after a full return was created for all items. The RETURN action is now properly removed once the return process is completed.
LYNX-634 - Storefront Compatibility - Update logic to get table name with prefix and other minor improvements
Updated logic to retrieve the table name with the prefix (related to SCP changes).
LYNX-637 - save in address book does not work when using setBillingAddressOnCart GQL's same_as_shipping field
Fixed an issue where the shipping address was not saved to the customer's address book when using the setBillingAddressOnCart GraphQL mutation with the same_as_shipping field set to true. Now, the shipping address is correctly stored as expected.
LYNX-643 - Standarize the order_id in mutations
Standardized the order_id input in mutations and updated the order cancel confirmation email template to expose increment id instead of order id.
LYNX-650 - CustomerOrder is not displaying the order comments
Resolved an issue with CustomerOrder to include order comments in guest and customer order GraphQL queries.
LYNX-651 - original_item_price must not include any discount
Updated the logic for original_item_price in GraphQL Cart Item prices to exclude discounts.
LYNX-652 - Bundle products still shows "IN_STOCK" when one of its bundled product out of stock
Resolved an issue where product.stock_status for bundle products still showed "IN_STOCK" even when one of the bundled items was out of stock.
LYNX-681 - customer query returns Internal Server Error if value for deleted custom attribute exists for a customer
Fixed the issue where the customer query returned an internal server error when a deleted custom attribute still had a stored value. Now, a proper error message is returned if a non-existing attribute is requested. Necessary cache is invalidated upon deleing customer custom attribute.
LYNX-686 - Action parameter for return and cancel confirmation links
Action parameter added for return and cancel confirmation email related links
LYNX-687 - Guest user confirmation url is redirected to order status page as it is missing orderRef (For GuestRMA)
Added orderRef parameter to the link in guest RMA confirmation email
LYNX-688 - Guest user confirmation url is redirected to order status page as it is missing orderRef
Added orderRef parameter to the link in guest order cancellation confirmation email
LYNX-689 - Issues with customer query when RMA disabled
Updated the GraphQL logic to ensure that previously created returns remain accessible even when RMA is disabled globally. The error message has been removed to improve the storefront UX, ensuring customers can still view their past returns.
LYNX-690 - GraphQL not returning updated cart data when conflicting coupons applied
Fixed an issue where applying a conflicting coupon with a higher priority resulted in an error message without returning the updated cart data. Now, when a new coupon invalidates the existing one, the mutation correctly returns the cart with the valid coupon applied.
LYNX-696 - Cannot return null for non-nullable field "TaxItem.title" on placeOrder GQL
Fixed an issue where the placeOrder mutation failed with an internal server error due to a null value for the non-nullable field TaxItem.title. Now, the field always returns a valid value, ensuring successful order placement.
LYNX-699 - EstimateTotals: Discounts is null for virtual product types
Resolved the issue with the estimateTotals mutation returning null for discounts when a discount code is applied to a cart containing virtual products.
LYNX-702 - Bundle product does not return the correct discount percentage and amount
New properties "catalog_discount" and "row_catalog_discount" have been introduced for catalog item prices to display the correct discount amounts and percentages at both the row and single item levels.
LYNX-703 - Gift message configuration on product level
Fixed an issue where gift messages were not applied at the product level when globally disabled. Now, if gift messages are enabled for a specific product, they can be successfully added using the updateCartItems mutation and will be correctly saved and reflected.
LYNX-714 - Issue with removing gift wrapping from cart item
Fixed the issue where removing gift wrapping from a cart item using the updateCartItems mutation did not work as expected. Now, both applying and removing gift wrapping function correctly without errors.
LYNX-717 - The matched registered customer feature is not working in Boilerplate, and the trackViewedProduct mutation needs to be enabled for guests.
Exposed trackViewedProduct mutation to track product view event for customer and guests
LYNX-751 - cart.rules query return error instead of empty array in case no active cart rules are applied
Fixed the cart.rules query to return an empty array instead of an error when no active cart rules are applied.
LYNX-757 - Issue retrieving gift wrappings for cart items
Updated retrieval logic to return gift wrapping options for cart items when globally disabled but enabled at the product level
LYNX-758 - GraphQL calls with OPTIONS method are returning 500 response code when adobe-commerce/storefront-compatibility package installed
Fixed an issue where GraphQL calls using the OPTIONS method returned a 500 Internal Server Error when the adobe-commerce/storefront-compatibility package was installed. The endpoint now correctly returns a 200/204 response as expected.
LYNX-778
Other Developer Tools
- [Issue] Fix HTML syntax error in visual.phtml
The system now correctly closes the start tag in the visual.phtml file, ensuring proper HTML syntax. Previously, the start tag was not closed properly, causing an HTML syntax error.
AC-10658 - - - [Issue] Changed "active" to "enabled" in bin/magento maintenance:status command
The system now provides more accurate status messages for the maintenance mode command, changing the status from "active" to "enabled" and from "not active" to "disabled". Previously, the status message for the maintenance mode command was displayed as "active" or "not active", which could lead to confusion.
AC-11474 - - - Navigating in the categories tree leads to errors in Redis: "Redis session exceeded concurrent connections"
AC-12571 - - - CSP issues combined with dev/css/use_css_critical_path
The system now correctly loads CSS files asynchronously on checkout pages, even when the 'dev/css/use_css_critical_path' setting is enabled, ensuring that these pages are rendered with the proper CSS styles. Previously, a restricted Content Security Policy (CSP) prevented inline JavaScript from executing, which resulted in CSS files not being loaded as expected.
AC-12731 - - - Using virtual type to configure plugin, interceptor method cannot be generated correctly in
setup:di:compile
command
The system now correctly generates interceptor methods when using a virtual type to configure a plugin, ensuring consistent results whether precompiled or runtime compiled. Previously, the system would generate incorrect results when precompiled compared to runtime compilation.
AC-13398 - - - Unable to download files from Data Collector
Downloading backup no longer shows blank page instead of downloading the file.
ACP2E-3441 - ÃÛ¶¹ÊÓÆµ Commerce 2.4.7-p3 unit tests are failing
No release notes are required.
ACP2E-3631 -
Payment/ Payment Methods, Order
- Papal payflow Credit card details saved for later use are not showing up on stored payment method page
Earlier Papal payflow Credit card details saved for later use was not showing up on stored payment method page which is now fixed credit card details are showing up on stored payment method page.
AC-13699 -
Payments
- Credit Card(Payflow Link) payment is not working
Earlier Getting error (Payment got Declined) while placing order with Credit Card after the fix Order placed successfully.
AC-13414 - - Payflow creates new transaction each time we click on fetch button on the view transaction screen
The system now correctly fetches transaction information without creating a new payment transaction each time the fetch button is clicked on the view transaction screen. Previously, clicking the fetch button would incorrectly create a new payment transaction for an order that had already been paid.
ACP2E-2841 - - Paylater message not showing in PDP for Canadian paypal merchant account
The system now correctly displays the PayLater message for Canadian PayPal merchant accounts on the Product Detail Page (PDP) when the buyer's country can be determined from the account billing address or shipment. Previously, the PayLater message was not displayed due to a missing parameter, resulting in an error in the browser console.
ACP2E-3028 - - PayPal order refund results in duplicate credit memo
Fixed concurrency issue of IPN-created credit memos for PayPal payment service.
ACP2E-3143 - - Cart price rule not working for Paypal
Correct amount is shown on PayPal side when discount is applied by payment method
ACP2E-3163 - - [Cloud] Users with a specific role cannot login
admin user with role that contain only PayPal Section access now can login without errors
ACP2E-3208 -
Performance
- Default Product Attribute Settings Issue
The system now allows users to deselect a default option for a product attribute, ensuring that the attribute does not always have a default set. Previously, once a default was set for a product attribute, there was no way to deselect it, resulting in the attribute always having a default set.
AC-11932 - - - [Issue] Code cleanup and add new critical head block and move critical css before assets
The system now includes a new critical head block and moves critical CSS before assets, allowing for more customization and performance optimization in the frontend. Previously, the critical CSS was not positioned before the assets, limiting customization and optimization opportunities.
AC-12000 - - - Theme compilation breaks when mysql host contains port information
The system now correctly handles MySQL host configuration that includes port information, ensuring successful theme compilation. Previously, theme compilation would fail if the MySQL host configuration in the database connection included port information.
AC-12176 - - - Support for Symfony's CommandLoaderInterface in Magento CLI
This change reduces initialization time of the Magento CLI app by allowing deferred initialization of commands until they're needed.
AC-13471 - - - Performance issue when loading product attributes in cart rules
Improved query performance for sales rules - from around 150ms to single digit ms.
ACP2E-2494 - - Price partial indexing performance
The price partial indexing performance has been improved by optimizing some of the delete queries used within the indexing process.
ACP2E-2673 - - Order gets rejected on multi-store setup when using Async-order processing + Terms and Conditions
The orders placed from non default websites with terms and conditions enabled are now processed.
Before they were automatically rejected.
ACP2E-2850 - - Order Rest API call is taking a long time to execute
The system now executes the Order Rest API call within a reasonable timeframe, improving the performance when fetching a large number of orders. Previously, the Order Rest API call was taking a long time to execute, causing delays when retrieving a large number of orders.
ACP2E-2910 -
Performance, Promotion
- Sales rule indexer stopped running
The system now successfully completes the sales rule indexer even with a large number of combined filter groups, ensuring that cart rule conditions are applied to the cart as expected. Previously, the sales rule indexer would fail to complete when there were a large number of combined filter groups, leading to an error message and preventing the application of cart rule conditions.
ACP2E-2617
Pricing
- Magento2.4.6-p4 Order API Simple Item missing price
The system now correctly displays the price of simple products when queried through the Order API, ensuring accurate data representation. Previously, the price of simple products was incorrectly displayed as zero in the API response.
AC-11810 - - Penny rounding error in catalog rule
AC-13855 -
Product
- Special characters in configurable associate product name are being Converted to HTML Entities.
The system now correctly retains special characters in the names of associated products when editing a configurable product, preventing them from being converted into HTML entities. Previously, special characters in associated product names were converted into HTML entities when the configurable product was edited.
AC-10535 - - - ProductRepository function GetById does not create the correct cache key
The system now correctly creates a cache key in the ProductRepository's function GetById, regardless of whether the store ID is passed as a string or an integer. This ensures that the product is retrieved from memory on subsequent calls, improving performance. Previously, the system would retrieve the product from the database each time the function was called, even with the same parameters, due to incorrect cache key creation.
AC-10947 - - - [Issue] [MFTF] Added AdminClickAddOptionForBundleItemsActionGroup
The system now includes the AdminClickAddOptionForBundleItemsActionGroup, enhancing the functionality of the admin panel. Previously, this action group was not available.
AC-11992 - - - [Issue] Fix typo in PHPDoc block
The system now correctly removes an unknown referenced variable in PHPDoc for the $helper variable declaration, enhancing code clarity and accuracy. Previously, this unknown referenced variable in PHPDoc was causing confusion and potential inaccuracies in the code.
AC-13173 - - - [Issue] Fixed broken Bundle and Downloadable product pages layout in Magento >= 2.4.7
The layout for bundle and downloadable product pages has been fixed, ensuring a consistent and correct display across all devices. Previously, these pages experienced layout issues due to a rearrangement of the product info media block.
AC-13423 - - - AlertProcessor - Argument #2 ($storeId) must be of type int, string given
The system now correctly triggers product alert emails by ensuring the store identifier is of the correct data type. Previously, product alert emails were not being sent due to a type mismatch in the store identifier.
AC-5969 - - - [Cloud] addFilterToMap function is not working for certain columns
Now, the custom module can be used in the order grid. Previously errors occurred while using a custom module.
ACP2E-2944 - - [Cloud] Products in Category - Add Products - Assign - Select All
Users can now select or deselect products using the toggle.
ACP2E-3471
Promotion
- Customer attribute not visible when creating account from invitation
Customer attributes are available while creating account from invitation.
ACP2E-2602 - - Coupon code with Uses per Coupon limit is not getting released for payment failed with order cancel
The system now immediately updates coupon usages when an order is created or cancelled, and adds rule usages to a queue to prevent potential deadlocks. This ensures that a coupon code with a "Uses per Coupon" limit is released and can be reused if an order is cancelled due to a failed payment. Previously, the system did not release the coupon code for reuse in such cases, resulting in an error message stating that the coupon code was not valid.
ACP2E-2627 - - [Cloud] Reindexing Catalog Rule Product Indexer throws SQLSTATE[HY000]: General error: 2006 MySQL server has gone away.
The system now correctly handles custom "batchCount" value in the di.xml for the "Magento\CatalogRule\Model\Indexer\IndexBuilder", preventing SQL errors such as "General error: 2006 MySQL server has gone away" during the reindexing of the Catalog Rule Product Indexer due to the incorrect batch size on large catalogs
ACP2E-2811 - - [CLOUD]Cart Price Rule for Visitors Customer Segment not applying discount on cart
The system now correctly applies Cart Price Rules for Visitor Customer Segments, even if the rule does not use a coupon, ensuring that the appropriate discounts are applied to the cart. Previously, discounts were not being applied to the cart for Visitor Customer Segments unless the Cart Price Rule used a coupon.
ACP2E-2926 - Missing "Type" Attribute in "Products to Match" Tab of Related Product Rules
The "Type" attribute is now available as a filter option in the "Products to Match" tab of the "Related Product Rules" module, allowing for more precise rule definition. Previously, this attribute was missing from the "Products to Match" tab, limiting the ability to create accurate matching criteria.
ACP2E-3024 - Sales Rule with Discount Qty Step (Buy X) attribute causes other rules to not be applied
Cart price rule does not cancel previously applied rules if quantity of the product in the cart is not enough for rule to be applied.
ACP2E-3139 - - Performance issue on Cart price rule - Advance Sales Rule module
Added missing DB indexes for AdvancedSalesRule filters
ACP2E-3331 - Issue sales rules with Fixed amount discount and "Maximum Qty Discount is Applied To"
Fixed issue with cart rules discount, when fixed amount discount is configured to be applied for a limited qty of products is the cart. Previously, the "Maximum Qty Discount is Applied To" value was used to calculate current item's price in the cart, not only for calculation the rule's discount.
ACP2E-3332 - - [CLOUD] Magento upgrade caused coupons to become case-sensitive
Before the fix you were required to type in the coupon code exactly as it was configured taking into consideration uppercase or lowercase. Now, the coupon will be validated in the backend regardless of uppercase or lowercase code configuration.
ACP2E-3342 - Cart rules "Fixed amount discount for whole cart" Action applies discounts incorrectly
Coupon codes will be validated properly regardless of upper case or lowercase, when used in order creation from the admin area. Before, the coupon code was not validated if it did not match the exact letter case of the configured cart rule code.
ACP2E-3349 - - In Backend, default store values for product attributes (instead of expected admin values)
Now In Backend, admin values are used instead of default store values for product attributes.
ACP2E-3374 - - Cart rules "Fixed amount discount for whole cart" action applies discounts incorrectly when adding bundle products
Fixed amount cart rules were not being applied properly for bundle products. Now, when calculating the total discount amount, bundle child products are taken into consideration, resulting in proper discount calculation.
ACP2E-3377 - - Cart Price Rules Miscalculating Discount
Fixed amount discounts are now being properly calculated. Prior to the fix, fixed amount discounts were not totalled properly for bundle products.
ACP2E-3403 - - Nested categories in rule conditions not showing
Fixed issue when nested categories under level 3 category are not shown in marketing rules for category condition
ACP2E-3406 - - usage_limit and uses_per_customer not updating in salesrule_coupon Table
Updating Uses per Coupon and Uses per Customer in cart price rule will now affect existing autogenerated coupons. Previously the new values affected only new coupons
ACP2E-3432 - - Cart price rule doesn't consider parent category when it is using "equals or greater than" condition.
Cart Price Rules now consider parent category correctly when it is used in advanced conditions
ACP2E-3456 - - Invalid discount calculation with priority
In the case of fixed amount appllied for the whole cart discount type, the amount was not being calculated properly for cart items that were already discounted by a previous promotion. Now, discounts are properly summed up.
ACP2E-3463 - - [CLOUD] Shipping calculation is not considering the shopping cart rule
Prior to the fix, a cart rule with region condition was not being applied consistently. After the fix, cart rules with region conditions are being applied properly.
ACP2E-3472 - - Cart rule sku condition is failing for invoice.
Discount on Bundle product with dynamic price is now correctly reflected in the invoice. Previously, the discount was not reflected on the invoice.
ACP2E-3491 - - Incorrect discount value when multiple cart price rules are applied simultaneously with discounted/special priced products
Prior to the fix, fixed amount for whole cart rules were not being applied properly if more than one was being applied. Now, fixed amount discount cart rules are being applied properly.
ACP2E-3498 -
Returns
- [CLOUD] Restricted admin users can see the return menu and buttons
Restricted Admin users now don't have access to RMA related controls (menu and buttons).
Previously restricted admin users could see the return menu and buttons.
ACP2E-3330 - Return Screen is messed up when refresh the screen
The user can refresh the page without experiencing screen distortion.
ACP2E-3443
SEO
- Adding URL rewrites with an accent causes infinite loading
The system now successfully creates and functions URL rewrites with accents, preventing infinite loading during the saving process. Previously, adding a URL rewrite with an accent caused an infinite loading issue.
AC-11907 - - - Multi Store Wrong category url-rewrite for third level category
Generate correct url rewrites for children with parent with custom scoped url key
ACP2E-2641 - - Double-byte characters (special characters) in Product Name field blocks product creation in backend
A new setting has been added that allows you to apply transliteration to product URL or not. Setting is available here: Stores > Configuration > Catalog > Catalog > Search Engine Optimization: "Apply transliteration for product URL"
ACP2E-2770 - - Incorrect url_rewrite entries creation with multiple stores in one store group
Prior to the fix, you could only generate URL rewrites on a website level when editing a product. With the fix, a new setting was introduced (Stores > Configuration > Catalog > Catalog > Search Engine Optimization, "Product URL Rewrite Scope" with options "Store view", "Website") that allows you to generate URL rewrites at the store view or website level.
ACP2E-3383 -
Sales
- Second Cart Price Rule isn't applied if First Cart rule is already applied
AC-13751
Search
- Getting "Enter a search term and try again." error on advanced search page in storefront in 2.4.8-beta1
The system now correctly displays search results on the Advanced Search page when a product attribute is set to "No". Previously, setting a product attribute to "No" and performing a search would result in an error message, "Enter a search term and try again."
AC-13053 - - magento/module-open-search depends on on nonexistent opensearch-php branch
AC-13721 - - search_query table when of huge size, has large impact on load time frontend
Improved search listing page load time. Prior to the fix, the search listing page was being delayed because of an unoptimized query.
ACP2E-3362 -
Security
- [Issue] Missing Font CSP Paylater Popup
The system now allows the loading of the font 'https://www.paypalobjects.com/webstatic/mktg/2014design/font/PP-Sans/PayPalSansBig-Medium.woff' without violating the Content Security Policy directive, ensuring the correct display of the Paylater Popup. Previously, the font was refused to load due to a violation of the Content Security Policy directive, causing display issues with the Paylater Popup.
AC-11855 - - - [Issue] Update js.js DOM text reinterpreted as HTML
By using innerText, it will avoid the risk of HTML injection, as these properties automatically escape any HTML special characters in the provided text. This fix, helps prevent cross-site scripting (XSS) vulnerabilities by treating the input as plain text rather than interpreted HTML.
AC-12035 - - ReCaptcha V2 shows incorrectly on checkout for German language
Previously the recaptcha from under email address from checkout appear unstyled for languages with long words, like german. After this the recaptcha looks the same as all recaptcha elements from the rest of the areas.
ACP2E-3273 - - Captcha on admin login does not require interaction for some users
ReCaptcha for admin login is validated as expected
ACP2E-3300 -
Shipping
- [Issue] Fixed typo in tracking.phtml - renamed JS-functions "currier" to "carrier"
The system now correctly uses the term "carrier" instead of the misspelled "currier" in the JavaScript handler functions used in the order tracking template, ensuring proper function naming and code clarity. Previously, the misspelled term "currier" was used, leading to potential confusion and inconsistency in the codebase.
AC-10757 - - - UPS REST "A shipment cannot have a KGS/IN or LBS/CM or OZS/CM as its unit of measurements"
Ensure to UPS rates should visible in checkout and cart.
AC-11938 - - - UPS REST "sandbox" and "prod" setup instruction updates in devdoc
AC-12938 - [Issue] Correct spelling of variables for customer address
The system now correctly spells variables for customer addresses, ensuring accurate display in the account area of the front end. Previously, incorrect spelling of these variables could lead to errors during local code reviews.
AC-13172 - - - Tracking Window showing wrong Expected Delivery Date
Display correct Delivery Date for Fedex Carrier.
ACP2E-2738 - - Table Rates Still Showing Even Though Free Shipping Is Applied
Table Rate shipping method now is shown even if Free Shipping becomes available after coupon applying
ACP2E-2763 - - MFTF test AdminCreatingShippingLabelTest failing due to credentials not added in Jenkins environment
mftf test fix
ACP2E-2765 - - FedEx Track API not working with REST credentials
Previously FedEx integration didn't require additional API keys for Tracking API. Now new configuration was added to support Tracking API keys.
ACP2E-3340 - - [Cloud] FedEx Negotiated Rates not returned on REST
Previous to the fix,FedEx account specific rates where not sent on the response, even through according to FedEx documentation they should have been sent. After the fix, the account specific rates are sent on the response by changing the request from our side.
ACP2E-3354 -
Staging & Preview
- Scheduled update settings not saved if originally added by running update
The system now correctly clears product attributes values in subsequent scheduled updates when such attributes is modified in the currently running update. Previously, when a product attribute was modified by a running scheduled update, it was impossible to clear such attributes values when creating a new scheduled update, requiring the user to re-edit them after creation.
ACP2E-2901 - Cart Price Rule from date and to date issue not Synced with Staging Update
Dates are saved according to updates for Cart Price Rule Staging.
ACP2E-2999 - JS error in Staging Preview
Now the form-mini-stub.js file is loading successfully without any Js syntax error in Developer tools.
ACP2E-3104 - Product Special Price Staged Content cannot be updated
The system now allows for the editing of the end date of a price update campaign after it has started, ensuring that users can make necessary adjustments to their campaigns. Previously, an error was thrown when attempting to update the end date of an active campaign, preventing users from making changes.
ACP2E-3162 - Unable to Update Scheduled Update When Using Unique Custom Category Attribute
Fixed an issue where updating a scheduled update for a category was not possible if the category had a unique attribute
ACP2E-3453 -
Targeting
- [Issue] Allow use of CIDR ranges in maintenance allow list
The system now supports the use of CIDR ranges in the maintenance mode allow IP list, enabling a range of IP addresses to bypass maintenance mode. Previously, the maintenance mode allow IP list only permitted individual IP addresses to bypass maintenance mode.
AC-9432 - -
Tax
- [Issue] Feature/php8.1 constructor property promotion wee graph ql
Replace allmost all properties with constructor property promotion in module wee graph ql:
AC-13295 - - - Fixed Product Tax (FPT) is not working with configurable products
FPT for configurable product variations working properly.
ACP2E-3193 -
Test framework
- Integration test failing testDbSchemaUpToDate due to JSON column type
The system now correctly recognizes JSON column types in the database schema during integration tests, preventing test failures due to a mismatch between the database schema and the declarative schema. Previously, the system incorrectly identified JSON column types as LONGTEXT in MariaDB, causing integration tests to fail.
AC-11654 - - [Issue] PHPDoc correction spelling
The system now correctly recognizes deprecated methods in IDEs due to a spelling correction in the PHPDoc. Previously, a spelling error in the PHPDoc caused IDEs to not recognize certain methods as deprecated.
AC-13362 - - - MAGETWO-95118: Checking behaviour with the persistent shopping cart after the session is expired
AC-13478 - - Integration tests are failed Magento\NegotiableQuote\Controller\Quote\DownloadTest::testCompanyManagerDownloadWithNQSubPermission
AC-13716 - [Database Compare] Fatal error if database contains record about Target Rule without conditions
Earlier if Database contains record about the target rule without any condition was getting fatal errors but after the fix Database comparison tool passes successfully without fatal errors.
AC-13722 - Fix static tests to enable usage by 3d-party extensions
AC-13848 - - [Internal] Fixture apply failure is not shown during execution or in logs
'-
ACP2E-3334 - - [MFTF] StorefrontCheckoutProcessForQuoteWithoutNegotiatedPricesTest
Fixed mftfs
ACP2E-3458 -
UI Framework
- Prototype.js security vulnerability fix CVE-2020-27511
The system has been updated to address the security vulnerability CVE-2020-27511 in Prototype.js 1.7.3, enhancing the overall security of the system. Prior to this update, the system was susceptible to a Regular Expression Denial of Service (ReDOS) through stripping crafted HTML tags.
AC-12128 - - Grunt Less uses pub/ prefix for sourcemaps
The system now generates less/css sourcemaps without the /pub prefix for paths when using grunt, eliminating the need for a workaround in the webserver configuration. Previously, the use of the /pub prefix in sourcemaps paths required a specific configuration in the webserver to function correctly.
AC-12189 - - - Ui Component File Field
The system now correctly validates the file field in a UI component form, allowing the form to be submitted without error when a file is selected. Previously, the validation would fail even when a file was selected, preventing the form from being submitted.
AC-12432 - - - [Issue] Improved date format in js console: switch from 12 hour to 24 hour fo…
Improved date format in js console: switch from 12 hour to 24 hour
AC-12645 - - - [Issue] add sourceMap generation for less files in developer mode
The system now generates source maps for less files when in developer mode, making it easier to identify the source of a style. Previously, identifying the source of a style was challenging when running the system in developer mode with server-side less compilation.
AC-12650 - - - Static content is deploying for disabled modules
The system now excludes CSS related to disabled modules from the final CSS output files, ensuring that unnecessary styles are not loaded. Previously, CSS related to disabled modules was included in the final CSS output files, leading to the loading of extra, unnecessary styles.
AC-1306 - - - Inconsistent Behavior in "Out of Stock" Sorting with Minimum Stock Threshold
The system now correctly sorts products in the catalog based on stock levels, adhering to the set Minimum Stock Threshold and moving out-of-stock items to the bottom of the list consistently. Previously, the sorting behavior was inconsistent, with items not always appearing in the correct order based on their stock levels, and changes in sorting could occur unpredictably after saving, refreshing, or modifying the category hierarchy.
AC-13459 - - Suggestion for improved error reporting for require.js loading problems
This PR improves the error message when requirejs fails to load a component.
AC-13472 - - - PHP 8.4 Deprecation Errors Causing Build Failures in 2.4-develop
AC-14004 - - [Issue] Do not load backend block context on frontend
The system now ensures that backend block context is not loaded on the frontend, preventing the creation of unnecessary backend sessions and potential session locks. Previously, the system was incorrectly loading the backend block context on the frontend, leading to the creation of backend sessions and potential session locks.
AC-9007 - - - [Issue] Remove unnecessary scripts review summary
The system now optimizes page load time by removing unnecessary JavaScript scripts from the rating section, instead using inline CSS styles for a more efficient and readable code. Previously, the use of JavaScript scripts for the rating section could potentially slow down page load time.
AC-9168 - - - Exception when checking a gift card balance when Recaptcha is enabled
Users will be able to fetch gift card balance in the view and edit cart screen. Previously these details were not shown while reCAPTCHA enabled.
ACP2E-2529 - - [CLARIFICATION] Feature Request ADA Compliance
The system now ensures ADA compliance by removing unsupported CSS properties and replacing them with supported ones in the print.css file. Previously, the use of unsupported CSS properties led to browser compatibility issues.
ACP2E-2729 - - [Cloud] Confusion library code in effect-drop.js of AC 2.4.4-p8
The system now correctly implements the effect-drop.js library, ensuring the proper functioning of jQuery UI effects. Previously, the effect-drop.js library was mistakenly overwritten with the effect-clip.js library, causing potential issues with jQuery UI effects.
ACP2E-3061 - - Site Header | Special Characters Breaking the Customer Welcome section
After the fix, special characters are shown correctly in the customer welcome section.
ACP2E-3367 - - Customer Segment edition fails with daterange
It is possible to save customer segment with date range condition, when only one of dates was edited.
ACP2E-3561 -