News Digest - November 2023

Welcome to our monthly News Digest, a comprehensive source for the latest advancements and enhancements in Virto Commerce solutions as of November 2023.

Highlights

  • Latest Stable Platform Release 6 with a range of enhancements and updates.
  • Redesigned Related products and Compare products sections in the Storefront.
  • Marketplace enhancements.

Platform

:fire: We are thrilled to present the latest Stable Release with a range of enhancements and updates to elevate your Virto Commerce experience. To apply these updates, you can utilize the Virto Commerce CLI.

Virto Storefront:

  • Utilizes cart error notifications for a smoother shopping experience.
  • Executes multilingual support for broader reach.
  • Supports streamlined cart management and dashboard improvements.

Virto Platform:

  • Focuses on enhancing error handling, specifically addressing DbUpdateConcurrencyException.
  • Expands contract module features to include contract status and vendorId.
  • Updates Crud and Search services for more efficient catalog data management.
  • Optimizes payment processing with support for capture and refund operations.
  • Implements improvements in asset editor styles, DateTime handling, CRUD services, and security, resulting in a more reliable, efficient e-commerce platform.

Read more about Stable Bundle 6

  • The Virto Commerce plugin has been added to the Builder.io partners list.

  • The option to connect Azure App has been added to use Azure App Configuration between different environments.
    Read more about Adding Azure App Configuration.

  • The localization settings for dictionary items (such as Statuses, Groups, etc.) have been enabled to ensure that users can access localized content:

    • IsLocalizable property has been added for SettingDescriptor:

      public static SettingDescriptor AccountStatuses { get; } = new()
      {
          Name = "Virto.Commerce.Other.AccountStatuses",
          GroupName = "Platform|Security",
          ValueType = "SettingValueType.ShortText",
          IsDictionary = true,
          IsLocalizable = true,
          AllowedValues = new object[ ] { "New", "Approved", "Rejected", "Deleted" },
          DefaultValue = "New"
      
    • The Platform starts showing the specified statuses and their localizability:

    • A directive to add a label, an edit button, and a drop-down list with available statuses has been added. It can be used for such fields as Order Status

      <va-setting-value-select blade="blade"
                           label="'orders.blades.customerOrder-detail.labels.status' | translate"
                           placeholder="'orders.blades.customerOrder-detail.placeholders.status' | translate"
                           setting="'Order.Status'"
                           ng-model="blade.currentEntity.status"></va-localizable-setting-value-select>
      
      

Download and install the Platform

Contacts

  • To improve the usability of the module, the following changes have been made:

    • The dependency on Image Tools has been removed to use Native Image Tools features for thumbnail generation.​
    • The auto-resize functionality has been removed.
    • Member logo URLs now link directly to the original image ensuring a consistent and high quality display.
    • The admin back office now supports 64x64 thumbnail size to meet your specific needs.​

  • Now you can upload files to organizations, assign relevant documents to the desired organization, and make them accessible via the API:

Download and install the Contacts module

Orders

  • To disable access to the Playground UI in production mode and to improve the security, the VirtoCommerce:Playground:Enable setting ​has been added to the appsettings.json file. By default, it is true. Set it to false to disable the Playground.
     "VirtoCommerce": {
         "GraphQLPlayground": {
            "Enable": true
          }
    }
    
  • In the event of a failed transaction, you now have the option to utilize the same transaction ID for both capture and refund operations. Transaction Ids are checked for unique transactions only allowing for transaction repetition.

Download and install the Orders module

Assets

The Assets module now supports the .webp image format, a modern format that offers superior lossless and lossy compression for web images. Utilizing WebP enables webmasters and developers to create smaller, higher-quality images that enhance web performance.

Download and install the Assets module

Assets, Content

  • Publish/Unpublish button has been added to the Content module, allowing any PageBuilder-created page to be published or unpublished at any time. The unpublished pages get .page-draft extension and can be edited for further publishing.

  • Full-text search capability for permalink, content, etc. has been added.

Download and install the Assets module
Download and install the Content module

Notifications

The annoying autocomplete that is triggered by keywords in the placeholder has been disabled:

image

Download and install the Notification module

xAPI

  • The Product schema has been extended with GTIN - Global Trade Item Number.

  • To simlify the initial Virto Start configuration, the following modifications have been made:

    • The FrontendSecurity section with default OrganizationMaintainerRole has been added.
    • The VirtoCommerce:Swagger section has been added. ​
    • The IdentityOptions:MaxPasswordAge has been set to 90 (previously 0). IdentityOptions:RemindPasswordExpiryInDay has been set to 7 for security reasons.​
    • Search:OrderFullTextSearchEnabled has been set to true (previously false).​
    • Search:ContentFullTextSearchEnabled has been set to true (previously false).​

Download and install the xAPI module

Orders, Stores, xAPI

  • The Stores module settings now include a new switch that enables anonymous users to create orders. When this switch is turned on, the createOrderFromCart mutation will be executed for anonymous users. Otherwise, an authorization-required notification will be displayed.

Download and install the Orders module

Download and install the Store module

Download and install the xAPI module

xAPI, Profile, Notification

To streamline the user registration process during order creation, the following changes have been implemented:

  • The organizationId field in inviteUser mutation arguments is no longer mandatory​.​
  • Running the inviteUser mutation without the organizationId will result in a different email notification, specifically the SignUp notification Customer.
  • A new customerOrderId field has been added to inviteUser mutation arguments.​
  • Running inviteUser with customerOrderId adds it to the invite url link in the notification​.​
  • The customerOrderId field has been added to registerByInvitation mutation arguments​.
  • Running registerByInvitation with customerOrderId triggers the transferOrder command and associates the order with the provided userId.

Download and install the xAPI module

Download and install the Profile module

Download and install the Notification module

Storefront

  • The redesigned Related products section now contains most of the product card information and retains its main fuctions: Adding the desired quantity to the shopping cart, wishlist, or comparison list.

  • In the redesigned Compare products section, the product cards now have frames. The price field is more distinguishable now. Additionally, when scrolling through the comparison list, the text section of the product card now remains anchored at the top.

  • The new laconic design of the currency selectors makes the currency signs easier to distinguish.

  • The user is now notified of the minimum and maximum quantities of the product when adding it to the cart. Also, the notification bubbles now have borders for better readibility.

    image

View the enhancements on public demo site

Read more and install Storefront

Marketplace

  • We have now included the Import functionality as a standalone application in the Operator portal’s apps menu. This functionality mirrors the capabilities found in the Vendor portal, providing operators with the tools to manage import profiles, review import history, and upload files. This addition is a response to the Import on behalf feature, which empowers operators to initiate imports on behalf of vendors, streamlining the import process, even when vendors are not directly involved.

  • To provide even more product-related information, we’ve included a Videos widget on the product card. Clicking on this widget will open a list of videos associated with the product, allowing users to access multimedia content easily.

For more information, request a demo.

Documentation