November 2, 2021 — 1.2142 Service Update

Production Tenant Features

eCommerce & Order Management Functionality

  • User Interface Updates: Several minor updates have been made across the Kibo Composable Commerce Platform Admin interface:
    • The login page now says “Username or Email” instead of only “Email,” as admins can log in with either.
    • Shipment numbers displayed on the order details page are now hyperlinks to the respective shipment in the Fulfiller UI, allowing faster customer care and fulfillment. (The link will not be active if the Admin user doesn’t have access to that fulfillment location.)
    • In the order details tab, the internal notes have been moved underneath the basic order information and attributes.
    • Labels in the order notes section of the order details tab have been updated for a better user experience. This section has been renamed to “Internal Order Notes,” the “Add Internal Notes” button is now simply “Add,” and these labels are now consistent across the order details and order creation flow, as well as both the Admin and Fulfiller UIs.
    • When creating a return in the Fulfiller UI, a Quantity Shipped column is now displayed that will display the amount of that item on the shipment. The existing Quantity column has been renamed to “Quantity to Return” and will default to the Quantity Shipped amount. The return reason drop-down value can now default to a “returnReason” set in the tenant settings of the theme language file.
  • ReCAPTCHA Site Setting: The ability to enable Google ReCAPTCHA when adding payments to an order has been added to the general site settings. This setting can be found in the Storefront section of the settings and also includes a form to specify a site key, secret password, and desired validity score (which defaults to 50%). When enabled, a user will be forced to validate when they add payment information. 
  • Refund to Existing Gift Card Update: If the Refund On Existing Gift Card site setting is selected, then the system will distribute the amount between multiple existing cards accordingly if more than one was used to pay for the order. When issuing refunds, the modal has also been updated by moving the line items in order to display a field for whether a Return Processing Fee has been applied. 
  • Bulk Delete Inventory API: A new version of the Delete Inventory API can now accept more than one item at a time. This endpoint is .../v5/inventory/deleteItems and accepts arrays for item UPCs and location codes where the inventory should be deleted from. The Inventory API documentation will update after release.
  • Batch Custom Data API: A new API has been created for batch custom data creation, which takes in multiple key:value pairs and adds them to the order item specified in the endpoint. This does not support adding custom data to multiple items or shipments at once, but allows all custom data to be configured for an item in one call rather than making a separate request for each key:value pair. This endpoint is .../v2/orderItem/{orderItemId}/customData/batch?orderID={orderId} and accepts an orderId, itemId, and customDataList array of objects with the key name and value strings in the body. The Order API specs will update after the release.
  • Disable Backorder Re-Auth: Voiding and re-authing credit cards can now be turned off for implementations using subscription tokens that don’t expire, so that backorders can be released by the automatic backorder job without attempting to re-auth payments. Previously, this would place those orders into Customer Care and require the client to manually manage backorders. There is not yet an Admin UI site setting for this, so this update only allows re-auth to be turned off in the back-end for implementations that need it.

Order Management Functionality

  • Location Mapping Updates: Location mappings are now synced in locations and location groups when deletion events occurs. When a location is removed from a group or a location group is deleted, the mappings on any connected locations or groups and their retailer IDs are updated accordingly. See the Location Management and Location Group user guides for more information about these features.
  • Refund S&H in Fulfiller UI: To make the Admin and Fulfiller UIs more consistent in how they handle returns and shipping/handling tax, a “Refund Shipping & Handling” checkbox has been added to the Fulfiller UI’s modal for processing returns. If disabled, the return total will be the sum of the subtotal and item tax (which is the existing functionality). If enabled, the return total will now be calculated as the sum of the subtotal, item tax, and shipping/handling tax. This option is enabled by default. Additionally, the automatic Refund API has been updated to better support refund functionality in the Fulfiller UI by handling partial refund cases in which only some line items are refunded OR less than the total quantity of a line item is refunded. See the Fulfiller UI user guide for instructions on how to process returns.
  • Fulfiller Custom Carriers: Version 1.2138 introduced the ability to configure custom carriers and shipping types via the Location Groups API, such as for BoxKnight. Now, the Fulfiller UI is able to display this information after it has been set – the custom carrier name and service types will be selectable options in the Prepare For Shipment step. Tracking numbers can then be added and removed for that shipment as usual, and the appropriate information will be displayed on the shipping label. Note that for the particular BoxKnight use case, BoxKnight will only be supported for Canadian locations. Additionally, any language translation or customization of the buttons must be done via the fulfiller theme. See the Fulfiller UI user guide for information about the Prepare for Shipment flow, and the Customization documentation for how to edit the fulfiller theme.
  • Payment Errors Block Fulfillment: The shipment workflow has been updated with new behavior in which the fulfillment process now considers an order's payment status to determine if a shipment can be fulfilled. This changes how the Fulfiller UI and the Fulfillment APIs may be used to process shipments and fulfill orders. Now, a shipment can only be fulfilled if the order's rollup payment status is Pending, Paid, Pending and Errored, or Paid and Errored. If the status is Unpaid or Errored, then all shipments on the order will be blocked from being fulfilled through either API or UI until the order is no longer in that errored state. Refer to the Fulfiller UI guide to see how blocked shipments are displayed in that interface.

Translated OMS Functionality

  • Customer Custom Data: Translated APIs now map customer custom data fields properly from the legacy Create Order API to the Kibo Composable Commerce Platform. Previously, this custom data was not properly handled and created in KCCP after the Create Order call was translated. With this update, placing an order with customer.customData results in the data being displayed on the Customer page of the Admin UI. See the translated Create Order API doc here.

Search Functionality

  • User Interface Updates: The configuration settings in the Search Settings have been updated to better align buttons, table data, and whitespace. Button colors have been changed in the Search Schema.
  • Spell Correction: Two types of spellchecks are now supported for the site search, providing Auto Correct and Did You Mean? functionality. For these options to be available, spell correction must first be enabled in the schema settings. When that is done, a new “Spell Correction” section will be editable on the site search configuration page. Here, the Auto Correct and Did You Mean? features can be toggled on or off individually. Note that spellcheck mappings are automatically performed and thus cannot be manually configured in the schema. The Search documentation will be updated with more information will be updated with the production release, but you can find the core theme update required to enable this feature here.

Production Sandbox Features

eCommerce & Order Management Functionality

  • Order Admin Updates: Some improvements have been made to the Orders page of the Admin UI. If the user is viewing a specific order’s details and then uses the search bar, the search results will automatically be opened in a panel on the left rather than requiring the user to manually expand the results. When the user clicks one of these results, they will be taken to that order’s details page.
  • Quick Edits Updates: A couple of updates have been made to the Quick Edits feature to improve user experience. When selecting a category, the picker now displays the category name and code together in the format “CategoryName (Code)." When updating attributes whose values are product identifiers, such as when selecting product cross-sells, the picker now displays the product name and code together in the format “ProductName (Code).” See the Quick Edits documentation for more information about this feature.
  • B2B Update: When an Admin user is approving a B2B account and adding a sales representative, they can now select the specific site that the account should be applied to. This ensures that the B2B user will be able to set their password for the correct site from the Welcome and Password Reset emails. The site options that are allowed to be selected from are those in the customer set to which the customer belongs to. See the B2B documentation for more information about this feature.

Order Management Functionality

  • Delete Failed Bulk Shipments: When generating shipments with a bulk creation call, all shipments in the call will be deleted if a failure is experienced during the creation process. Previously, the shipments would be cancelled which led to some confusion as cancellation did not make sense in that situation and was misleading for users.
  • Default Shipping Method Updates: The Fulfiller service can now better support cases in which the same service type is used as the default for both standard and express shipping. Previously, using the same default for both of these options caused incorrect order routing behavior as the service type was not always properly marked as isExpress in API data. Now, the service type will always be marked isExpress as long as it is a default express shipping type, even if it is also a standard default. For information about configuring service types as these defaults, see the user guide.
  • Import Order w/ CC Last Four: An optional field has been added to the OMS-Only Import Order API call, ccLastFour in the payments.card data object, in which the last four digits of a credit card number can be passed. When provided, the Admin UI will display this field with the payment method details in the order view as well as when performing refunds. This allows customer service representatives to confirm the customer’s card receiving the refund. If this data is not provided from the Import API, then the UI will show the last four digits of the token (which is the current behavior). Support for this field will be added to the translated Import Order process in an upcoming release.


Bug Fixes

The following list summarizes resolved issues for this release.

StatusResolution
Targeted for Production TenantsSubtotals were getting cut off in the order details tab of the Order Admin UI when image sizes did not fit the order grid. This has been fixed so that this page better handles image sizes and can display the full order pricing values and total.
Targeted for Production TenantsThe System > Applications page of the Admin UI only displayed up to 200 items, even if the implementation had more than 200 items. This has been corrected so that all applications will be displayed as expected and pagination works properly on the page.
Targeted for Production  TenantsThe Shipments API was returning the incorrect tax amount for canceled items by truncating a decimal, e.g. displaying tax as 0.1 instead of 0.13. This has been fixed so that the taxes are accurately calculated and passed in full.
Targeted for Production TenantsWhen changing the account password in the Admin UI while SSO-based authentication is set up, an error would always be returned indicating that the current password did not match. This has been corrected so that the error message better explains to the user that they should change their password through their external identity provider.
Targeted for Production  TenantsA newly created collection was not displaying in its category on the storefront, due to out of stock errors that occurred despite all member products being in stock. This error has been fixed so that it is not erroneously thrown and the collection can be properly displayed.
Targeted for Production  TenantsWhen editing product attributes, the values were not able to be dragged and dropped into a different order. This has been fixed so that attribute values can be successfully reordered.
Targeted for Production  TenantsA delivery service item’s SKU was being displayed in the Validate Stock step of the Fulfiller UI, even though service items do not have any stock to be validated. This has been corrected so that these services are not included in stock validation and if they are the only item left on a shipment to be validated, then the shipment will automatically progress to the next step as intended.
Targeted for Production  TenantsWhen changing shipment level fields in the Fulfiller UI, appeasement reasons were not mapped to the item level and item level fields would not be displayed correctly. This has been fixed so that shipment edits will result in the item values also properly updating.
Targeted for Production  SandboxesMaking Suggestion or Candidates API calls with custom order routing data sets defining a maximum fulfillment radius per location and filter attributes for distance resulted in an Internal Server Error due to a mismatch between integer and decimal values. This has been fixed so that these values can be compared.