Adobe Commerce B2B release notes

These release notes for the B2B extension capture additions and fixes that Adobe has added during a release cycle, including:

New New features
Fixed issue Fixes and improvements
Known issue Known issues

NOTE
See Product availability for information about versions of the B2B Commerce extension supported for available Adobe Commerce releases.

B2B 1.5.0

October 30, 2024

[Supported]{class="badge informative" title="Supported"} Adobe Commerce versions 2.4.7-p3+ and 2.4.6-p8+ security patch releases.
Compatible with Adobe Commerce versions 2.4.8-beta1, 2.4.7 to 2.4.7-p2, 2.4.6 to 2.4.6-p7

The B2B v1.5.0 release includes new features, quality improvements, and bug fixes.

NOTE
Learn about backward-incompatible changes (BICs) introduced in the B2B 1.5.0 release by reviewing the highlights and reference information in the Backward Incompatible Changes topic.

Company Management

New Company Management—Merchants can now view and manage Adobe Commerce companies as hierarchical organizations by assigning companies to designated parent companies. After a company is assigned to a parent, the parent company administrator can manage the company account. Only authorized Admin users can add and manage company assignments. For details, see Manage company hierarchy.

  • Add and manage company assignments from the new Company Hierarchy section on the Company Account page in the Admin.

  • Sort and filter companies by the new Company Type setting. In the companies grid, the Company Type column indicates whether a company is an individual company or part of organizational hierarchy (parent or child).

New Manage company configuration at scale—Quickly change company configuration settings for selected companies using the Change company setting bulk action now available when managing companies from the Companies or Company Hierarchy grid. For example, if you create a new shared catalog for a group of companies, you can change the shared catalog configuration in a single action instead of editing each company individually.

New API Developers can use the new Company Relations REST API endpoint /V1/company/{parentId}/relations to create, view, and remove company assignments. See Manage company objects in the Web API Developer Guide.

Company Accounts

New Multi-company assignment—Simplify company account access for company users by assigning a user to multiple companies. For example, if you have a buyer that orders from multiple company sites, create a single account and assign all companies the buyer works with to that account. Then, the buyer can log in one time, and switch between company accounts by choosing the company from the storefront.

NOTE
A company user can be assigned to multiple companies, but they can be the company administrator for only one company.

New Company scope selector—Provides ability for company users that are assigned to multiple companies to change companies on the storefront. When the scope is switched, the data updates to show the information based on the new company context. For example, if the new company uses a different shared catalog, the company user sees products, prices, and other information based on the new shared catalog. Content related to orders, quotes, quote templates also updates based on the context of the selected company.

NOTE
If the company user switches companies with items in the shopping cart, update the cart to reflect product assortment, pricing and promotional discounts based on the new company context.

Fixed issue Company administrators can now add company users from the storefront. Previously, Commerce logged an error when an Admin user tried to add a new user: CRITICAL: Error: Call to a member function __toArray() on null in app/code/Magento/LoginAsCustomerLogging/Observer/LogSaveCustomerObserver.php:123.

Quotes and Quote Templates

Improvements to quoting capabilities help Buyers and Sellers manage quotes and quote negotiation more effectively.

New Quote templatesBuyers and sellers can now streamline the quote process by creating reusable and customizable quote templates. Using quote templates, the quote negotiation process can be completed once, and buyers can generate pre-approved linked quotes for recurring orders instead of going through the quote negotiation process for each order. Quote templates extend the existing quote functionality by adding the following advanced features:

  • Order thresholds allow sellers to set minimum and maximum order commitments, ensuring the buyer adhere to agreed-upon purchasing volumes.
  • Setting minimum and maximum item order quantities provides the buyer with the flexibility to adjust order quantities on the linked quote without requiring a new template or further negotiation.
  • Track the number of linked quotes generated and successfully completed orders to gain insights into the fulfillment of negotiated agreements.
  • Linked quotes are pre-approved quotes that the buyer generates from an active quote template to submit recurring orders based on the terms negotiated in the quote template.

New Improvements to existing quote capabilities

  • Updated Commerce Access Control List (ACL) rules allow B2B managers and supervisors to manage quotes and quote templates of subordinate users. Separate rules support granular configuration for view, edit, and delete access.

  • Save Quote as Draft—When creating a quote request from the shopping cart, buyers can now save the quote as a draft so that they can review and update it before initiating the quote negotiation process with the seller. The draft quote does not have an expiration date. Buyers can review and update draft quotes from the My Quotes section of their account dashboard.

  • Rename Quote—Buyers can now change a quote name from the Quote detail page by selecting the Rename option. This option is available to authorized buyers when they are editing the quote. Name change events are recorded in the Quote History Log.

  • Duplicate Quote—Buyers and sellers can now create a new quote by copying an existing quote. A copy is created from the Quote detail view by selecting Create Copy on the Quote detail view in the Admin or the Storefront.

  • Move quote item to requisition list—Buyers now have the flexibility to remove products from a quote and save them to a requisition list if they decide not to include them in the quote negotiation process.

  • Remove multiple products from a quote—On quotes with a large number of products, buyers can now remove multiple products from the quote by selecting them and using the Remove option from the Actions control on the Quote detail page. In previous releases, a buyer had to delete products one at time.

  • Line item discount locking—During quote negotiation, sellers can use line item discount locking for more flexibility when applying discounts during the quote negotiation process. For example, a Seller can apply a special line item discount to an item and lock the item to prevent further discounting. When an item is locked, the item price cannot be updated when a quote-level discount is applied. See Initiate quote for a buyer.

Fixed issue Fixes for existing quote capabilities

  • Merchants clicking the Print button in the Quote detail view in the Admin are now prompted to save the quote as a PDF. Previously, merchants were redirected to a page that contained quote details.

  • Previously when sending a customer quote with 0 percentage and changing quantity, the admin throws an exception but saved the quantity. After this fix applies, for the 0 percentage proper exception with a message will be thrown.

  • During quote negotiation, a seller can now specify a 0% discount in the Negotiated Quote quote discount field and send the quote back to the buyer. Previously, if the seller entered a 0% discount and sent the quote back to the buyer, the Admin returned an Exception occurred during quote sending error message.

  • ReCaptcha validation now works correctly during the checkout process for a B2B quote when ReCaptcha V3 is configured for storefront checkout. Previously, the validation failed with a recaptcha validation failed, please try again error message.

Purchase Orders

Fixed issue Purchase orders can no longer be placed by a user associated with the company after the company has been blocked. Previously, a user associated with the company could place purchase orders when the company was blocked.

B2B v1.4.2-p3

October 8, 2024

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.7-p3+ and 2.4.6-p8+ security patch releases.

New Added compatibility with Adobe Commerce 2.4.7-p3+ and 2.4.6-p8+ security patch releases.

Fixed issue Includes the security fixes documented in Security Bulletin APSB24-73.

IMPORTANT
Adobe Commerce B2B version 1.4.2+ is compatible with PHP 8.2. If you upgrade the Commerce instance to version 2.4.7+, ensure that the instance uses PHP version 8.2 to maintain compatibility with the Adobe Commerce B2B release. Additionally, the B2B 1.4.2+ release does not support the GraphQL Application Server.

B2B v1.4.2-p2

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.7-p2+ and 2.4.6-p7+ security patch releases.

New Added compatibility with Adobe Commerce 2.4.7-p2+ and 2.4.6-p7+ security patch releases.

Fixed issue Includes the Security fixes documented in Security Bulletin xxxx.

IMPORTANT
Adobe Commerce B2B version 1.4.2+ is compatible with PHP 8.2. If you upgrade the Commerce instance to version 2.4.7+, ensure that the instance uses PHP version 8.2 to maintain compatibility with Adobe Commerce B2B release. Additionally, the B2B 1.4.2+ release does not support the GraphQL Application Server.

B2B v1.4.2-p1

August 9, 2024

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.7-p1+ and 2.4.6-p6+ security patch releases.

New Added compatibility with Adobe Commerce 2.4.7-p1+ and 2.4.6-p6+ security patch releases.

IMPORTANT
Adobe Commerce B2B version 1.4.2+ is compatible with PHP 8.2. If you upgrade the Commerce instance to version 2.4.7+, ensure that the instance uses PHP version 8.2 to maintain compatibility with Adobe Commerce B2B release. Additionally, B2B 1.4.2+ does not currently support the GraphQL Application Server.

B2B v1.4.2

October 10, 2023

[Supported]{class="badge informative" title="Supported"} Adobe Commerce version 2.4.7 and version from 2.4.6 to 2.4.6-p5.

The B2B v1.4.2 release includes quality improvements and bug fixes.

Fixed issue If a Seller creates a buyer quote that includes a product SKU not available in the shared catalog associated with the buyer company, the system displays the error message The SKU you entered is not available in the shared catalog. Please check the SKU and try again. The Seller cannot save the quote until they remove the product that is not available. Previously, the quote was saved with the unavailable SKU included, and the quote failed to load on the storefront.

IMPORTANT
Adobe Commerce B2B version 1.4.2+ is compatible with PHP 8.2. If you upgrade the Commerce instance to version 2.4.7+, ensure that the instance uses PHP version 8.2 to maintain compatibility with Adobe Commerce B2B release. Additionally, B2B 1.4.2+ does not currently support the GraphQL Application Server.

B2B v1.4.1

August 7, 2023

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.6-p2. Compatible with Adobe Commerce 2.4.7-beta1.

The B2B v1.4.1 release includes quality improvements and bug fixes.

Fixed issue Purchase orders can no longer be placed by a user associated with the company after the company has been blocked. Previously, a user associated with the company could place purchase orders when the company was blocked.

Fixed issue Product backordered status is now displayed correctly on the storefront. Previously, products that were available for shipment were incorrectly identified as backordered.

Fixed issue If the company registration form includes a customer file type attribute, the file uploaded during the registration process is now included in the account information for the Company Administrator after the company is created. Previously, the attachment was missing.

Fixed issue The swatch selector for a configurable product is now displayed as expected in the requisition list item configuration page. Previously, the swatch selector was displayed as a dropdown field in the requisition list item configuration page.

Fixed issue When using the Company GraphQL query to return company details, results are now returned successfully without error.

B2B v1.4.0

June 13, 2023

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.6-p1. Compatible with Adobe Commerce 2.4.7-beta1

This release includes new capabilities and enhancements for B2B negotiable quotes and multiple bug fixes.

New Added compatibility with Adobe Commerce 2.4.7-beta1.

New Seller initiated quotes—Sellers can now initiate a quote for a buyer directly from the Quote and Customer grids in the Admin. This capability streamlines the quote process and reduces complexity for customers. If a customer has not initiated an order, a seller can quickly create a quote on behalf of the customer and start the negotiation process. Previously, quotes could only be created from the storefront by the buyer, or by a seller logged in as the customer.

New Line item discounts and negotiation Within a quote, B2B buyers and sellers can now negotiate at the line item level, applying discounts and exchanging notes until an agreement is reached. Note creation and updates are included in the line item and quote history to track communication. Previously, buyers and sellers could only exchange notes and apply discounts at the quote level.

Fixed issue Adobe Commerce now displays correct details during payment when the Purchase Orders option is enabled and a virtual quote that was created with the PayPal payment option has been selected. Previously, totals were displayed as zero under these conditions.

Fixed issue Validation errors no longer occur when you try to save a company with a credit limit that exceeds 999. Previously, for company credit limits greater than 999, Adobe commerce inserted a comma separator, which caused a validation error that prevented updates from being saved.

Fixed issue The selected shipping address now remains unchanged when you place an order with a negotiable quote. Previously, when you placed an order, the selected shipping address was changed to the default shipping address.

Fixed issue In the Store Configuration settings for B2B Features, the Enable Shared Catalog direct products price assigning field is now disabled automatically. On the storefront, it is hidden when the Enable Company setting or Enable Shared Catalog setting is set to No.

Fixed issue When creating a company account from the storefront, Commerce now validates the email address before processing the company registration. If the email address is invalid, the operation fails and no account updates are processed. Previously, a customer account was created even if the request to create a company account failed because of an invalid email address.

Fixed issue Product SKUs that include double quotation marks in the Shared Catalog and pricing structure no longer cause errors in the Admin.

Fixed issue Updated the Varnish configuration for the Commerce application to prevent Guest users from seeing data from other customer groups.

Known issue

If you install or upgrade B2B 1.4.0 on Adobe Commerce version 2.4.6-p1, the following error occurs:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires magento/extension-b2b 1.4.0 -> satisfiable by magento/extension-b2b[1.4.0].
    - magento/extension-b2b 1.4.0 requires magento/security-package-b2b 1.0.4-beta1 -> found magento/security-package-b2b[1.0.4-beta1] but it does not match your minimum-stability.

Installation failed, reverting ./composer.json and ./composer.lock to their original content.

You can fix this issue by adding manual dependencies for the B2B security package by adding manual dependencies for the B2B security package with a stability tag. For instructions, see the Adobe Commerce Knowledge Base.

B2B v1.3.5-p8

October 8, 2024

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.6-p8+ security patch releases.

New Added compatibility with the Adobe Commerce 2.4.6-p8 security patch releases.

Fixed issue Includes the security fixes documented in Security Bulletin APSB24-73.

B2B v1.3.5-p7

August 9, 2024

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.6-p7+ security patch releases.

New Added compatibility with the Adobe Commerce 2.4.6-p7 security patch releases.

B2B v1.3.5

March 14, 2023

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.0 - 2.4.6 and newer versions

New Released B2B version 1.3.5-p2 to support compatibility with Adobe Commerce 2.4.6-p2.

New Released B2B version 1.3.5-p1 to support compatibility with Adobe Commerce 2.4.6-p1.

NOTE
After you upgrade Commerce from 2.4.6 to the latest release, make sure to update to the supported B2B 1.3.5 patch release. Or, upgrade the B2B extension from version 1.3.5 to version 1.4.0 or later to get the latest features.

New Added support for Adobe Commerce 2.4.6.

Fixed issue Adobe Commerce now displays correct details during payment when the Purchase Orders option is enabled and a virtual quote that was created with the PayPal payment option has been selected. Previously, totals were displayed as zero under these conditions.

Fixed issue The list of customer groups for the Allow Browsing Category setting no longer contains customer groups that are related to shared catalogs.

Fixed issue The Tax/VAT Number customer attribute now works as expected with company admin accounts on both the Admin and storefront. Custom Tax/VAT attributes are no longer required to create a company account. Previously, when a merchant created a company account with a custom Tax/VAT attribute, Adobe Commerce threw a validation error on both the storefront and Admin.

Fixed issue Disabling the shared catalog feature on a specific scope now works correctly. Previously, Adobe Commerce set an invalid scope when a merchant saved shared catalog configuration.

Fixed issue Admin users can now save customer custom attribute values for company users. Previously, customer custom attributes for company users could not be saved.

Fixed issue Performance issues are resolved with the validation of company permissions provided through GraphQL when many company permissions are already assigned.

Fixed issue Adobe Commerce no longer throws an error on the cart page when Quick Order is used to add a product in a quantity that exceeds available inventory.

Fixed issue The performance of SELECT company permissions operations has improved.

Fixed issue Category queries now return product prices according to store configuration settings when there are no category permissions explicitly set on the category being queried.

Fixed issue The Place Order button now works as expected when completing a purchase with an approved quote request. Issues with the negotiable quote negotiableQuoteCheckoutSessionPlugin plugin have been resolved.

B2B v1.3.4-p10

October 9, 2024

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.0 and newer versions

New Added support for Adobe Commerce 2.4.5-p10.

Fixed issue Includes the security fixes documented in Security Bulletin APSB24-73.

B2B v1.3.4

August 9, 2022

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.0 and newer versions

New Added support for Adobe Commerce 2.4.5.

Fixed issue Adobe Commerce no longer sends email notifications each time an existing Company is updated by an API call. Emails are now sent only when a company is created.

Fixed issue Adobe Commerce now correctly calculates a grand total of a negotiable quote when the Enable Cross Border Trade tax calculation setting is enabled.

Fixed issue Configurable products are now moved to the last position in the product listing after stock is updated when the Move out of stock to the bottom setting is enabled. A new custom database query is implemented to ensure that the Elasticsearch index sort order now honors the Admin-enabled sort order. Previously, configurable products and their child products were not moved to the bottom of the list when this setting was enabled.

Fixed issue Purchase Order email now honors the email sending setting of each website in a multi-site deployment. A check for the Disable Email Communications setting is added to the custom logic for email queues. Previously, Adobe Commerce did not honor the email sending setting for the secondary website.

Fixed issue The title of the SKU field of the Quick Order page is changed for clarity.

Fixed issue Adobe Commerce now displays a more informative error message when a shopper enters an invalid SKU in the Enter SKU or Product Name field.

Fixed issue The Account Created in field for a company administrator now retains its value as expected after you save the company.

Fixed issue The customer query no longer returns empty results when it retrieves requisition lists that are filtered by uid.

Fixed issue Added a plugin before the collectQuoteTotals call to ensure that store credits are applied only once.

Fixed issue Customers are now redirected to the login page when their account is deleted by an administrator from the Admin. Previously, Adobe Commerce threw an error. The plugin (SessionPlugin) code block is now inside the try…catch block. Previously, this code was not wrapped inside the generic exception-handling block.

Fixed issue On the Quick Order page in mobile mode, pressing Enter after entering a valid product name or SKU now takes the shopper to the next field as expected.

Fixed issue Company name is now visible as expected in the billing and shipping address sections of the checkout workflow.

Fixed issue Store credit is now unavailable when the Zero Subtotal Checkout payment method is disabled. Previously, the Store Credit checkbox was not functional during order placement from the Admin. The application did not place the order with the store credit and displayed this error: The requested Payment Method is not available.

B2B v1.3.3

August 9, 2022

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.0 and newer versions

New Added support for Adobe Commerce 2.4.4.

Fixed issue The time required to upgrade from Adobe Commerce 2.3.x to Adobe Commerce 2.4.x in deployments with more than 100,000 company roles has been substantially reduced.

Fixed issue The POST V1/order/:orderId/invoice request now supports the creation of partial invoices when the Payment on Account payment method is enabled. Previously, Adobe Commerce threw this error: An invoice for partial quantities cannot be issued for this order. To continue, change the specified quantity to the full quantity. GitHub-32428

Fixed issue PayPal Payflow Pro now works as expected with B2B negotiable quote when the customer’s cart contains other products. Adobe Commerce now successfully processes the order and sends an email to the customer as expected. Previously, Adobe Commerce threw a fatal error and sent a confirmation email to the customer that contained zero values.

Fixed issue Pagination is now correctly displayed on catalog search result page after excluding some products in shared catalog.

Fixed issue Customer custom attributes are now saved as expected when creating or saving a company user in the Admin.

Fixed issue The Submit button on the Create New Company form is now disabled after one click to prevent multiple form submissions. Previously, you could submit this form multiple times by clicking this button repeatedly, which generated an error.

Fixed issue Adobe Commerce no longer displays the reorder link on the storefront when a shopper logs into a store for which reorders have been disabled.

Fixed issue Quick Order search by SKU is now case-insensitive when shared catalog is enabled.

Fixed issue You can now update a file for a customer attribute when creating a company. Previously, when you tried to create a company with an attachment of type File, Adobe Commerce did not create the company and logged this error in the exception log: Something went wrong while saving file.

Fixed issue You can now create a company with a customer account that has a custom attribute with a (File) or (Image) type. Previously, if the account had one of these customizable options, the Company edit page loader did not resolve, which prevented the editing of company details.

Fixed issue The products query now returns an accurate total_count field when shared catalog is enabled.

Fixed issue You can now update a file for a customer attribute when creating a company. Previously, when you tried to create a company with an attachment of type File, Adobe Commerce did not create the company and logged this error in the exception log: Something went wrong while saving file.

Fixed issue The Company Configuration and Create Company pages now work as expected after you disable an online shipping method. Verification has been added to prevent the attempted processing of disabled Shipping modules. Previously, Adobe Commerce displayed this error: Type Error occurred when creating object: Magento\CompanyShipping\Model\Source\ShippingMethod, Too few arguments to function Magento\CompanyShipping\Model\Source\ShippingMethod::__construct(), 1 passed in /var/www/html/elmtup/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 121 and exactly 2 expected.

Fixed issue The Category page now displays consistent product data while permissions are being generated during partial indexing. A new partial indexer for directory permissions has been added to this process. Previously, the data displayed while the indexer ran was incorrect.

Fixed issue The categoryList query now returns the correct number of products when catalog permissions are used and products are assigned to a shared catalog.

Fixed issue The categoryList query now respects category permissions and returns only permitted categories. Previously, it returned all assigned and unassigned categories.

Fixed issue The rest/V1/company/{id} request now returns is_purchase_order_enabled attribute values as expected.

Fixed issue Custom customer attributes are now displayed as expected in the Company Admin tab.

Fixed issue The My Wish List block on the My Account page is now displayed as expected for Company Admins and Company Users.

Fixed issue Quick Order errors are no longer displayed in the shopping cart. Previously, Adobe Commerce displayed this error in the shopping cart when the SKU was not found in the catalog: The SKU was not found in the catalog.

Fixed issue Shared catalog save operations have been optimized to execute faster. Previously, saving a shared catalog with many customer groups could take several minutes.

Fixed issue Adobe Commerce now deletes all subcategory permissions from the sharedcatalog_category_permissions table when the parent category is deleted. Previously, only the parent category data was removed.

B2B v1.3.2

August 29, 2022

[Supported]{class="badge informative" title="Supported"} Adobe Commerce 2.4.0 and newer versions

New Added support for Adobe Commerce 2.4.3.

Fixed issue Adobe Commerce now successfully sends update emails about expired negotiable quotes. Previously, when a negotiable quote expired, Adobe Commerce did not send update emails.

Fixed issue Adobe Commerce now successfully sends update emails about soon to expire and expired negotiable quotes when a cron job is missing.

Company

Fixed issue The Create New Company Account page country dropdown field no longer lists empty option values. Previously, the first two option values and the country code AN were empty.

Fixed issue Clicking the Return button for an order that was created by a company user now redirects an administrative user to the Create Return page as expected. Previously, the administrator was redirected to the Order History page.

Fixed issue Adobe Commerce no longer fails with an out-of-memory error when executing the app/code/Magento/PurchaseOrder/Setup/Patch/Data/InitPermissions.php::apply method during bin/magento setup:upgrade. Previously, Adobe Commerce did not use batch size for collection when initializing permissions, but instead loaded a collection of all company roles.

Fixed issue Company users can now edit and update customer custom attribute values. Previously, these attributes did not bind properly with the create and edit user form. A company user could enter different attribute values, but Adobe Commerce did not save these values correctly.

Fixed issue The resource tree for company role permissions can now be translated as expected. Previously, the permissions tree was not translated even though valid translation files were present.

Fixed issue Adobe Commerce now saves custom customer attribute values for B2B users as expected. Previously, creating a company account that contained custom customer attributes triggered a template error, and Adobe Commerce did not successfully load the form. Adding an argument to the layout of company_create_account resolved this issue.

Fixed issue Company user filters such as Show All Users, Show Active Users, and Show Inactive Users now work as expected. Previously, filtering actions on the company user page caused a JavaScript error.

Company credit

Fixed issue Administrators with restricted accounts that include only website-level privileges can now create a company that uses a different currency than the website.

88ad8589-1cb8-47eb-a79c-0e4726a4ac2a