All Releases
View all releases

July 27, 2023 release notes

Highlights

Operations Portal

Export shipping methods

In your Kodaris system, you can manage the shipping methods for your commerce website under Orders > Shipping Methods. These shipping methods can also be synced to Kodaris from your ERP. In this release, we've added the ability to export your full sheet of shipping methods. You can use both the import and export to bulk create/update shipping methods from external spreadsheets.

508_kor_26_release_export_shipping_methods1.png

Manage company addresses from a spreadsheet

All the company addresses in your Kodaris system can be found by navigating to Customers > Company Addresses. Here you can search, filter, and track your addresses across all companies. In this release, we've added another Data spreadsheet view where you can also add/edit/delete these addresses in bulk.

508_kor_26_release_data_tab_company_addresses.png

View discount details

In your Kodaris system, you can setup various discounts and additional charges that are automatically applied to your customers' orders. You can view these discounts and additional charges by navigating to Pricing & Discounting > Discounts. In this release, we've added a detail screen where you can view and edit the fields on a discount in a form. You can use this along with the discount spreadsheet to update and manage your discounts.

508_individual_discount_record_details.png

Delete customer and internal files from a company

Under any company account in your Kodaris system, you have both an internal and customer Document Management System. The internal document system is used for storing internal documents about the company and the customer document system is available to the customer in their customer portal. You can attach any files your customers need to access or download here.

In this release, we've added the ability to delete internal and customer documents. Find the document you'd like to delete, select the row, and choose Edit > Delete.

508_delete_selected_company_files.png

View user fields on product list and company catalog items

In this release, we've added the 10 user fields on product list items and company catalog items to the product list and company catalog item spreadsheets. User fields are on many entities in your Kodaris system and you can store any data you like in them. You can map in values from your ERP or use them for Kodaris only data.

508_product_list_user_fields.png

508_company_catalog_user_fields.png

PIM

View all products within a category from the category assignment spreadsheet

Under PIM > Products > Category Assignment, you can view all your products in an embedded spreadsheet along with all the categories each product is in. In the sheet you have all the product columns (such as name, description, etc) and you also have 20 columns (Category 1 - Category 20) which contain the categories the product is in.

In this release, we've added a category search box at the top of the sheet that you can use to filter for all products that are in a specific category.

  1. Start searching for a category in this box
  2. A dropdown will appear that lists the available categories in the system
  3. Select the one you are looking for
  4. The sheet will update to only show the products which are within that category
508_products_category_assignment_filter_down.png

508_category_assignment_filter_type_and_select.png

Proof of Delivery

View internal and customer files on a delivery

As previously mentioned, your Kodaris system comes with a full proof of delivery module with real time status updates, tracking, proof of delivery, and self serve accounts. As part of this, your drivers can use the Kodaris Driver Logistics app to upload proof of delivery attachments, signatures, pictures, checklists and more. There are two modes of operation for the app. One uses orders, and the other utilizes trips and deliveries.

As an enhancement to the second mode using trips and deliveries, we've released an update to show any customer or internal files that were attached to a delivery by the Logistics app. To view these files:

  1. Login to your operations portal
  2. Navigate to Logistics > Deliveries
  3. Select a delivery
  4. Choose either the Customer Files or the Internal Files tab
508_proof_of_delivery_files_for_deliveries___1_.png

Customer Portal

Set your customer portal home screen

By default, your Kodaris customer portal shows a default home screen when your customers login. It displays a welcoming message along with some shortcut navigation links to quickly take them into other areas of the customer portal.

In this release, we've added a setting you can use to change the screen your customer is taken to after they login. For example, maybe you want your users taken to the the Orders screen after logging in instead of the default screen.

  1. Login to your operations portal
  2. Navigate to System > Settings and search for customerHomeScreen
  3. Set the value to orders
  4. Now when your customers login, they will be taken to Orders
508_release_highlight_customer_home_screen_setting.png
508_release_highlight_customer_portal_home_screen.png

Tickets

  1. KOD-12622: Drop Charts in Employee Portal
  2. KOD-8899: PIM - Products - Filter on Category Assignment
    • Preconditions:
      • Open Operations portal and login as employee.
      • Go to PIM -> Products -> Category Assignment.
    • Case 1:
      • Make sure you can see “Category“ autocomplete in the actions row.
      • Make sure autocomplete works as expected.
      • Make sure when you choose a category, the grid is updated with appropriate products.
    • Regression:
      • Make sure grid layout is not broken.
      • Test updating and assigning products to categories using this grid.
      • As the autocomplete content height calculation was updated, check that the autocomplete content is displayed correctly and scrolling appears only if amount of items more is panel content height in other places.
    • Case 1:
      • Go to CRM -> Activities.
      • Click on create activity button.
      • Check Company and Template autocompletes work as expected.
    • Case 2:
      • Go to CRM -> Activities -> activity details.
      • Make sure "+ Add assignee" autocomplete works as expected.
    • Case 3:
      • Go to Operations -> Tax Rates -> Taxes details.
      • Make sure “Country“ autocomplete works as expected.
    • Case 4:
      • Go to Development -> Punchout.
      • Make sure “Company“ and “Customer“ autocompletes work as expected.
    • Case 5:
      • Go to CRM -> Companies -> Company details.
      • Click on a Catalog tab.
      • Make sure “+ Assign product“ autocomplete works as expected.
  3. KOD-14180: Add Schema Markup for Content Pages
  4. KOD-14927: BI Enhancements
  5. KOD-15007: Operations Portal - Link in Payment Comment Notification Redirects to Blank if Not Logged In
    • Leave a comment in Customer Comments on the accounts receivable screen. Log out of Operations Portal.
    • Click on the invoice link from received email. Check that you are be redirected to login screen.
    • Regression Tests: Test opening all accounts-receivable screens with logged-out user.
  6. KOD-15036: Update Invoice Fields to Correct Ones
  7. KOD-15127: Customer Portal - Setup Order Interceptors and Templates
    • Test emails and PDFs throughly for regressions
      • Pricing
      • Addons/discounts
      • Remit
      • Billto
      • Invoice/due/etc
  8. KOD-15211: Add Export for ShippingMethods
    • On the Shipping Methods Screen click File -> Export.
    • Check that in the dialog window there will be only 1 input field for Filename which is required and should not be empty. Click Save. If the filename is empty - it won’t let you save the export.
    • Check that import was successful and there are imported fields in the file, that was downloaded.
  9. KOD-15229: Update UX to Use externalCompanyCode Instead of externalID
    • In Operations Portal set *externalCompanyCode* in the company detail screen to some value.
    • If externalCompanyCode is defined it should be displayed in the store at the header section on the store site, and also in the dropdown for choosing a child company in the customer portal in the switch account dialog window.
    • Regression Tests:
      • Test *header* in store and the *Switch Account* dialog window in the customer portal in the case when the user doesn’t have externalCompanyCode defined - it should work as usual and show externalID if that is defined on the company, or the company code if external ID is not defined.
  10. KOD-15287: Sending the New Mailing Templates for Invoices & Statements
  11. KOD-15289: Requested Invoice Layout Updates
  12. KOD-15405: Customer Portal Updates
  13. KOD-15420: Layout Featured Image Not Using Full Box
    • Open any empty page in Gutenberg Editor. You’ll see a *Select Template modal*. Find a template called “*More*“. Check that it fully fills the dedicated image box.
    • Regression Tests:
      • Check the look of the preview of template images.
  14. KOD-15429: Generate "Success" Page for Sample Punchout Request
    • Try to call {{/api/user/punchOut/cart}} endpoint. Previously this endpoint was returning cartXML request result (it was String format)
    • Now endpoint should redirect you to success page (if you're using Swagger it will show HTML page code in result window)
  15. KOD-15431: Limit Releases on Product Documentation to Last 9
  16. KOD-15433: Selecting A Date on Password Expires Field Doesn't Work
  17. KOD-15435: Link Sign-in Page in Product Documentation
  18. KOD-15447: BI Updates
  19. KOD-15456: Add Ability to Delete Company Customer Files in Operations Portal
    • Case 1:
      • Go to CRM -> Companies -> Company -> Customer Files
      • Attach Customer Files
      • Check viewing and downloading file
      • Choose attached Customer Files
      • Delete chosen file
    • Case 2:
      • Go to CRM -> Companies -> Company -> Internal Files
      • Attach Internal Files
      • Check viewing and downloading file
      • Choose attached Internal Files
      • Delete chosen file
  20. KOD-15484: urlRewriteView and urlRewriteEdit Roles Can't Access URL Rewrite Screen
    • Preconditions:
      • Go to Employee portal -> Operations -> Employees -> Employee roles
      • Make sure employee has ‘{{urlRewriteView', 'urlRewriteEdit}}' roles assigned (please verify text case because it’s case sensitive)
    • Case 1:
      • Login to Employee portal with the employee you just set roles on
      • Go to System ? URL rewrites
      • Make sure page is loaded correctly
    • Case 2:
      • Login to Employee portal with the employee you just set roles on
      • Go to System ? URL rewrites
      • Make sure page is loaded correctly
      • Update some values from the table
      • Reload page
      • Make sure updated values are presented in the table
    • Regression:
      • Make sure roles is matching Text case
  21. KOD-15488: Bug With the Mobile App
  22. KOD-15495: Navigation Enhancement
  23. KOD-15512: Adding Data Tab to Company Addresses Screen in Operations Portal
    • Regression tests:
      • Go to global company addresses screen in the portal.
      • You should see two tabs: Search and Data.
      • Search tab should look and behave as it did before. Test viewing, searching, filtering, sorting. Test navigating to details.
      • Go to the data tab: Test viewing, viewing details, searching, filtering, sorting, adding, editing, deleting company addresses here. Only edit and delete your test addresses, not addresses already in there. Be sure to test editing all fields.
  24. KOD-15524: Customer ProductCrossReference APIs
    • It could be tested only on API level until UX is done
      • # POST {{/api/account/productCrossReference/{companyID}}} - create ProductCrossReference for specified company
      • # DELETE {{/api/account/productCrossReference/{companyID}/ {productCrossReferenceID}}} - delete ProductCrossReference for specified company
      • # POST {{/api/account/productCrossReference/{companyID}/list}} - get list of ProductCrossReference for specified company
    • No regressions because they are new endpoints
  25. KOD-15531: Setup Inventory
    • On category and search pages
      • Test as a logged in user and public user
        • Make sure you see pricing and inventory
        • Test both the grid and list view
        • Test adding to order, etc
        • Make sure everything works as normal and looks good
        • Test mobile device as well
        • Test custom dimensions
    • On product detail pages
      • Test as a logged in user and public user
      • Make sure you see pricing and inventory
      • Test adding to order, etc
      • Make sure everything works as normal and looks good
      • Test mobile device as well
      • Test custom dimension
    • On both the category, search and product detail pages, make sure that:
      • While pricing is loading, it says “Calculating price…”
      • When pricing has loaded and there is a price, it says the price
      • When pricing has loaded and there is not a price, it says “Call for pricing”
  26. KOD-15541: Add Ability to Edit Store Name and Store Address
    • Login to employee portal
    • Go back to website and check theme panel
    • Check if storeName and storeAddress can be edited there; updating should have no errors
  27. KOD-15544: Set Completed Date When a Warehouse Transfer is Created
    • Test next endpoints:
      • POST - {{/api/system/warehouseTransfer}}
      • Make sure field “completed” is not empty
      • POST - {{/api/system/warehouseTransfer/index/{warehouseTransferID}}}
      • Try to index - to see if it is successful, check response fields (if all fields you filled are indexed and values present in response)
  28. KOD-15596: Pricing API Call
    • Tests:
      • Login
      • View pricing on Search, Category, and Product Pages
      • Go through checkout and order completion
      • Make sure all works as normal including confirmations
  29. KOD-15602: Improve Mobile Display on Content Area
  30. KOD-15609: Fix Filtering by Trip ID on the Deliveries Screen in the Portal
    • Please go on delivery screen and check if filtering on tripId column works fine
  31. KOD-15610: Add Internal Files and Customer Files Tab to Delivery/Details Screen
    • On delivery detail screen please check if there are Internal Files and Customer Files tabs
    • In employee portal as a full employee with administrator permission
      • Navigate to Deliveries
      • You should see two new tabs: Customer Files and Internal Files
      • Test viewing these tabs
        • Ensure that the thumbnails and icons are shown properly
        • Test downloading the files
        • Ensure the data in the grid is accurate and looks fine
    • In employee portal as an employee with just deliveryView and deliveryInternalFileView
      • Navigate to Deliveries
        • You should see two new tabs: Customer Files and Internal Files
        • Test viewing these tabs
          • Ensure that the thumbnails and icons are shown properly
          • Test downloading the files
  32. KOD-15638: Use Another Image Different from Feature Image on Page Layouts
  33. KOD-15640: Reviewing Pricing Calls
    • Regression tests:
      • Make sure pricing still displays for public and logged-in users
  34. KOD-15645: IntranetPage -> Fix Page-editor Endpoint
    • Now /page-editor endpoint is identical for Intranet Page and Content Page
  35. KOD-15647: Display Product Category Disclaimer
    • View a few categories that do not have a productDisclaimer setting
      • The category page should look as normal
      • Test adding products to cart, viewing pricing, filtering, sorting, etc.
    • View a few categories that do have a productDisclaimer setting
      • The category page should look as normal but the disclaimer should show under the title
      • Test adding products to cart, viewing pricing, filtering, sorting, etc.
  36. KOD-15653: Change Error Message When Verifying Bank Account
    • On accounts-receivable/search, please check if the error message is shown correctly
  37. KOD-15657: Quote Vendor Quote Screen - Vendor field Is Not Populated
    • Case 1:
      • Go to Quotes page
      • Choose any quote
      • Go to Vendor Quotes
      • Check if the column "Vendor ID" is displayed
    • Case 2:
      • Go to Vendor Quotes page
      • Go to Data tab
      • Check if the column "Vendor ID" is displayed
    • Case 3:
      • Go to Vendor Invoices page
      • Go to Data tab
      • Check if the column "Vendor ID" is displayed
  38. KOD-15660: Rename Active Payments by Company File
    • Make sure that global setting {{savePaymentStatementsAsCustomerFile}} is turned ON
    • Find a Company which has any of period balances
    • Go to {{CustomerFiles}} tab for the selected Company and click the button in top menu {{Generate Statement PDF -> Generate and Send}}
    • Wait for a while and refresh {{CustomerFile}} records, make sure that newly-appeared file has requested name
  39. KOD-15665: Surface UserX Fields in Company Catalog Grid and Product Lists Grid
    • Company Details -> Catalog -> products grid on the right.
    • Company Details -> Products Lists -> Product List Details (there is a table of products)
    • Please check on both these screens above if there are user1-user10 fields and they are editable
  40. KOD-15679: Setting Enabled but Documents Not Displayed in Customer Portal
  41. KOD-15686: Add Endpoint to Delete Customer Files
  42. KOD-15690: Product primaryImage Not Displaying on Product Details Page
  43. KOD-15692: Allow filter by mappingCode
  44. KOD-15709: CMS - History Tab/Screen Is Not Displaying
    • Open Employee portal
      • Go to CMS -> Pages -> Page Details
      • Click on a History tab
      • Make sure History tab is displayed and loaded
    • Regression:
      • Open Employee portal
      • Go to CMS -> Pages -> Page Details
    • Case 1:
      • Click on a Details tab
      • Make sure Details tab is displayed and loaded correctly
    • Case 2:
      • Click on a Public files tab
      • Make sure Public files tab is displayed and loaded correctly
    • Case 3:
      • Click on a Customer comments tab
      • Make sure Customer comments tab is displayed and loaded correctly
    • Case 4:
      • Click on Internal comments tab
      • Make sure Internal comments tab is displayed and loaded correctly
    • Case 5:
      • Click on Development tab
      • Make sure Development tab is displayed and loaded correctly
    • Case 6:
      • Click on History tab
      • Make sure History tab is displayed and loaded correctly
    • Case 7:
      • Click on Custom fields tab
      • Make sure Custom fields tab is displayed and loaded correctly
    • Case 8:
      • Test adding new Gutenberg pages and editing in the Gutenberg editor
      • Test the content page tree in the employee portal, make sure you can click on the links and it navigates to the details fine
  45. KOD-15717: Add Link to Request Account Deletion Under Settings
  46. KOD-15721: Remove General Data Tab Search Feature
    • Check that there is no data search on the following screens:
      • Quotes
      • Orders
      • External Orders
      • Summary Orders
      • Order Shipments
      • Warehouse Transfers
      • Pricing Types
      • Accounts Receivable
      • Accounts Payable
      • Vendor Invoices
      • Vendor Quotes
      • Vendor Pricing
      • Skus
      • Cross References
      • Inventory Conversions
      • Unit Conversions
      • Product Units
      • Subscriptions
      • Messages
      • Order Discounts
      • Events
      • Emails
      • Users
      • Schemas
  47. KOD-15723: Check on Error Message When Verifying Bank Account
    • To test that everything works as expected at first we need to call POST {{/api/system/paymentProcessing/verifyBankAccount}} endpoint, and verify that we have more detailed message:
    • Here it says that routing number is invalid.
    • On the other hand, when we do call customer endpoint {{/api/account/paymentProcessing/verifyBankAccount}}, the message should remain the same as it was.
  48. KOD-15731: Customers -> Company Categories Screen Throws Error with externalID Edit
    • Please check if externalID can save string value
  49. KOD-15734: Add Discount Name and Code to Details Page
    • On discount detail page, please check if discount / discountID shows
  50. KOD-15736: Update Printer to Printed in Credit App
    • Please check if there is correct spelling of ‘printed’ instead of ‘printer’
  51. KOD-15741: Add Store Email Address to Customer Config Endpoint
  52. KOD-15745: Enforce PO Required Flag at Checkout from the shipto Level
  53. KOD-15750: UX to Update Employee Portal Configuration
  54. KOD-15788: Field Mapped to the Mode Of Delivery
  55. KOD-15794: Order Discount Screen not Highlighted When Active
    • Case 1:
      • Go to Order page
      • Choose any order
      • Go to Order Discounts tab
      • Order Discounts tab should be highlighted
  56. KOD-15795: Created Company Category on Company Does Not Appear Until Page Is Refreshed
    • Please go to Companies -> Company Catalog screen
    • Find company that does not have category on catalog screen
    • Try to add new category and check if it shows right after you added it
    • Try to add some more categories and they should appear the same as the first one
    • Test assigning products and remove products and removing categories
  57. KOD-15800: Wrap "Error When User Uploads Duplicate Image" in a Setting
    • Login as Employee
    • Test A:
      • Go To CMS -> “Media” screen
      • Upload file and check if it was saved as expected without any errors
      • Try to upload file with the same name (could be the same file as previously) and check if appropriate error was returned
      • Upload file with another name (could rename previous file) and check if it was saved as expected without any errors
    • Test B:
      • Find {{allowUploadingDuplicateFilename}} in the system settings and set the value to 1
      • Repeat test A
      • Confirm that the previous file uploaded with the same name was overwritten
  58. KOD-15804: PDF Preview Blank in Customer Portal
  59. KOD-15814: Fix for UX to Update Employee Portal Configuration
    • Use employee configuration endpoint /api/system/employee/configuration.
    • Now values that stored as JSON and supposed to be a map in endpoint result value should be empty if setting value is not valid JSON (for example {{estimators}}, {{quotingPriceGroups}} or {{quotingPriceLevels}})