June 25, 2024 — 1.2424 Service Update

Announcements

Cloudflare Migration for CDN and WAF

As part of our ongoing efforts to enhance platform performance and security, Kibo Commerce is migrating our Content Delivery Network (CDN) and Web Application Firewall (WAF) services to Cloudflare over the next several weeks. No action is required from you during this migration. However, please be aware that Kibo Support may reach out to you to coordinate the migration of certificates or address any specific needs related to your tenant. If you have any questions or concerns, please contact Kibo Support.

Migration of Data Warehouse to GCP

Kibo Commerce is migrating its data warehouse behind the reporting infrastructure to Google Cloud Platform (GCP). This move is part of our commitment to leveraging advanced cloud technologies to improve data processing and reporting capabilities. The migration will take place over the coming weeks, ensuring minimal disruption to services. No action is required on your part. If you have any questions, please contact Kibo Support.

EU Attribute Namespace Changes

On June 24, Kibo will be correcting attribute namespaces on EU sandbox tenants. Some product attributes that were expected to be in the tenant namespace were associated with the system namespace instead, which could be seen in the Admin UI under the System > Schema > Product Attributes details. This meant that updating these attributes was restricted. This change will move product attributes to the tenant namespace and allow updates on them going forward. If you have any questions or concerns, please contact Kibo Support.

This will be reflected on the above Admin page and API access where namespaces are displayed, such as where  https://t<tenantId>.sb.euw1.kibocommerce.com/admin/s-<siteId>/attributes/edit/system~<attributeName> will now become https://t<tenantId>.sb.euw1.kibocommerce.com/admin/s-<siteId>/attributes/edit/tenant~<attributeName>

FedEx Carrier Changes

FedEx is decommissioning SOAP web services at the end of August. To prepare for this, Kibo will be releasing a sandbox update on July 23 (with Version 1.2428) that will go to production on August 5. This update requires action from any implementations using FedEx.

After the sandbox release, you will need to reconfigure the FedEx credentials in your sandbox (System > Settings > Shipping > Carrier Accounts) with your FedEx account number, company information, and address information. Next, contact Kibo Support with the time window to switch you over to the new implementation. You can then test FedEx to ensure that it works as expected. You will have to repeat this process in production environments after August 5.

Production Tenant Features 

Catalog

  • File Manager Spinner: A loading spinner is now displayed in the file manager while retrieving data via the search function or changing to a new folder. Previously, there was no icon to indicate that files were loading which could result in users thinking there were no results returned. If a timeout does occur, an error message will clearly be displayed.
  • Multi-Locale Catalogs (US Sandbox Release): This feature allows you to configure catalogs that support multiple locales. You will be able to switch to any of the supported locales when viewing the product, product attribute, category, and discount configuration pages. Then you can change language-specific fields, such as product names and descriptions, to easily localize the content for that locale. For more general information, see the Multi-Locale Catalogs guide.

    If you want to use this feature on an existing implementation, then you must contact Kibo Support to be upgraded to a new version of the Catalog Admin APIs and then rewrite your requests to provide a localizedContent object. The API documentation has been updated to reflect the new request models. If you upgrade and still need to manage product data that hasn't been rewritten to the new model, you will be able to call the original version of the APIs without localization by including an x-api-version header set to "1" in your request. If you do not upgrade, then your current calls will not require any changes.

Fulfillment

  • Configurable Shipping Label Orientation: You can now override the default orientations and styling of shipping labels through your Fulfiller UI theme. A new shippingLabelOrientationsForCarrier tenant setting is available as an array with configurations for each carrier where you can set the preferred orientation, CSS style, width, and/or height of that carrier's labels. See the Fulfiller theme customization guide for more details.

Import/Export

  • Search Term Redirect Status: Export files for search term redirects now include inactive redirects as long as they have not been deleted. A new "Status" column indicates whether that redirect is active or inactive. The export will not include any deleted redirects.

Production Bug Fixes

Service Resolution
Catalog Some attributes could not be deleted on the staging environment due to a query timing out. This has been corrected so that the query will not time out as easily and attributes can be successfully deleted in this environment.
Commerce Qatar sites were displaying "QR" instead of "QAR" for the currency in both English and Arabic. This has been fixed so that the correct currency code is displayed.
Commerce The SAR currency was being displayed as "SR" in the storefront page context and data layer tools. This has been corrected so that the correct currency code is displayed.
Commerce When the general setting "Require login to view live site" was enabled, some email notifications were not sent because the email service was redirected to login. This has been fixed so that all emails will be successfully triggered when this setting is in use.

 

Restricted Content

Internal Production Details


Find more information about the client-facing updates at these Jira tickets:

The following enhancements are internal-only and not exposed to clients:

  • COM-8640: You can now change the timeout threshold for the External Discounts API response using the Kibo.config ExternalDiscountAdapterTimeoutInMilliseconds
  • CHAR-5311: Internal calls being made to PHP Get Inventory from the Fulfillment APIs have been moved to the Java version of Get Inventory.
  • CAT-4966: A safety catch has been added for when an item in the ProductImages array does not contain the locale, which could previously cause the Product Create API to not work as expected. Empty locales will now use the locale from the master catalog.

The following bug fixes are internal-only and not exposed to clients:

  • CAT-4926: Fixed an issue where property names were incorrectly cased when received from Product Admin Discounts serialized from distributed cache (such as with Arc.js).
  • CHAR-5182: Fixed an issue where restarting redis caused connection failures.
  • CAT-4517: Fixed an issue where manual re-indexing did not always use the correct casing from the en-US context and resulted in duplicate Solr docs.

Find more information about the client-facing bug fixes at these Jira tickets:

  • Attribute Deletion Error: CAT-4976 (reported by Wolters Kluwer and Peavey Industries)
  • QAR Currency Code: COM-8532 (reported by Al Futtaim)
  • SAR Currency Code: COM-8662 (reported by Al Futtaim)
  • Emails Not Sending: COM-8668 (reported by Omron)

Production Sandbox Features 

Commerce

  • Return Label Enhancement: The Order Admin UI now automatically includes the appropriate Return ID, Order ID, Order Number, and Shipment Number when generating a return label. Previously, these values were not provided and were displayed as "undefined" on the label. Those values will now be populated on the label as expected.

Fulfillment

  • Other Digital Products: The digital product fulfillment process and product type settings have been updated to support digital items other than gift cards or store credit, such as warranties or service fees. This does not support digital art, books, music, printable documents, software, or other files that must be downloaded. These items will be immediately fulfilled and captured upon order placement.

Import/Export

  • Import Validation Enhancement: The import/export tool has been updated to better validate imported product data, where previously incorrect data types caused the UI to crash. Now, an error message will be displayed instead of crashing to ensure a more user-friendly experience.

Inventory

  • Inventory Allocation Visibility: You can now click the Allocated value of any item in the inventory table to view a breakdown of all Ready shipments that have allocated quantity for that item at the selected location. This information can then be filtered by Shipment Type or Shipment ID, and if future inventory is enabled then you can also view shipments allocated with incoming inventory and filter by specific dates. For more details, see the Inventory UI Overview.

Subscriptions

  • Subscription API Filters: Some API filters that were previously supported on the Orders API but not the Subscription API have been added, including the subtotal, total, currencyCode, and several attribute fields. For a full list of available fields, see the Sorting & Filtering APIs documentation.

Sandbox Bug Fixes

Service Resolution
Catalog Category codes in search merchandizing rules were not validating against the correct catalog, resulting in unexpected validation failures. This has been fixed so that the codes are always checked against the intended catalog.
Catalog Create Discount API requests failed when the thresholdMessage property was not included in the payload, even though that property had not previously been required. This has been fixed so that discounts can be created successfully without restructuring API integrations to include this field.
Commerce When creating an offline order, the fulfillment type was unable to be selected in sandboxes. This has been corrected so that desired fulfillment options can be successfully applied to offline orders again.
Commerce Swapping bundles in subscriptions to replace an item in the original bundle did not work as expected, as the new item would still appear in the updated subscription. This was due to a blank options array for the bundled item, which has been corrected so that subscriptions retain the proper item continuity.
Commerce Initiating a credit for $0 in the Admin UI would trigger a credit for the order amount instead. This has been corrected so that a credit will only be triggered if the amount entered by the Admin user is greater than zero.
Fulfillment Fulfillment Manager and Fulfillment Employee roles were not being created for new fulfillment locations, causing errors and preventing users from accessing the Fulfiller UI. This has been fixed so that when a new location is created, those roles will be available for it.
Order Routing When filtering routing locations by a distance of 10km, locations outside of that radius were still being returned. This has been fixed so that only locations within the appropriate distance are included in filtered results.

 

Restricted Content

Internal Sandbox Details


Find more information about the client-facing updates at these Jira tickets:

The following enhancements are internal-only and not exposed to clients:

  • CHAR-5513: The Warm Buffer Pool script has been updated to be compatible with MySQL 8.0.
  • CHAR-5512: Percentile metrics have been added to all DataProvider related queries.
  • CHAR-4391: Cache Invalidation API endpoints have been made internal-only.
  • CHAR-5150: RIS has been updated to support ExtendedRequestLoggingMiddleware to log extra fields that are configurable by environment.
  • FFMT-4349: Backwards-compatible support has been added to the query that finds eligible shipments for manifests, helping address an issue where multiple packing slips with different carriers resulted in the shipment being fetched incorrectly for one carrier.
  • CAT-4941: The manual SQL query that adds sales rank properties to the base product type has been changed, allowing tenants to explicitly add them without involving engineering.
  • CAT-4924: As a follow-up to Multi-Locale Catalogs, hardcoded strings have been removed and French localization for some labels has been added.
  • CAT-4826: Get Aggregate Inventory API calls now route to the realtime inventory service.
  • CAT-5073: A SQL script that changes a sproc for performance enhancements has been incorporated into the codebase.
  • CAT-5050: Google Feed can now support float attribute values and RAW or non product attribute values, as well as a list of additional fields for Algolia data sync. See the ticket for more details.
  • CAT-4927: To support an upcoming enhancement to add productName to dynamic category expression fields, the API now supports targeting productName with contains predicate.

The following bug fixes are internal-only and not exposed to clients:

  • COM-8628: The Product Admin calls sent when adding an item to cart have been replaced with a better process, in which Get Product and Validate Product are used to check whether an item is enabled for reservation and acts appropriately.

Find more information about the client-facing bug fixes at these Jira tickets:

  • Category Code Validation: CAT-5003 (reported by Peavey Industries)
  • Discount Threshold Messages: CAT-5059 (reported by Ace Hardware)
  • Offline Order Fulfillment Type: COM-8696 (reported by Pearson VUE)
  • Swapping Subscription Bundles: COM-8713 (reported by Proactiv)
  • $0 Order Credits: COM-8537 (reported by Positec)
  • Missing Fulfiller Roles: TECR-366 (reported by The Level Group)
  • Order Routing Distance Filter: CHAR-5589 (reported by London Drugs)