All Releases
February 27, 2025 February 20, 2025 February 13, 2025 February 6, 2025 January 30, 2025 January 23, 2025 January 16, 2025 January 9, 2025 January 2, 2025 December 26, 2024 December 19, 2024 December 12, 2024 November 28, 2024 November 21, 2024 November 14, 2024 November 7, 2024 October 31, 2024 October 24, 2024 October 17, 2024 October 10, 2024 October 3, 2024 September 26, 2024 September 19, 2024 September 12, 2024 September 5, 2024 August 29, 2024 August 22, 2024 August 15, 2024 August 8, 2024 August 1, 2024 July 25, 2024 July 18, 2024 July 11, 2024 June 27, 2024 June 20, 2024 June 13, 2024 June 6, 2024 May 30, 2024 May 23, 2024 May 16, 2024 May 9, 2024 May 2, 2024 April 25, 2024 April 18, 2024 April 11, 2024 April 4, 2024 March 28, 2024 March 21, 2024 March 14, 2024 March 7, 2024 February 29, 2024 February 22, 2024 February 15, 2024 February 8, 2024 February 1, 2024 January 25, 2024 January 18, 2024 January 11, 2024 January 4, 2024 December 21, 2023 December 14, 2023 December 7, 2023 November 30, 2023 November 16, 2023 November 9, 2023 November 2, 2023 October 26, 2023 October 19, 2023 October 12, 2023 October 5, 2023 September 28, 2023 September 21, 2023 September 14, 2023 September 7, 2023 August 31, 2023 August 24, 2023 August 17, 2023 August 10, 2023 August 3, 2023 July 27, 2023 July 20, 2023 July 13, 2023 July 6, 2023 June 29, 2023 June 22, 2023 June 15, 2023 June 8, 2023 June 1, 2023 May 25, 2023 May 18, 2023 May 11, 2023 May 4, 2023 April 27, 2023 April 20, 2023 April 13, 2023 April 6, 2023 March 30, 2023 March 23, 2023 March 16, 2023 March 9, 2023 March 2, 2023 February 23, 2023 February 16, 2023 February 9, 2023 February 2, 2023 January, 2023 December, 2022 November, 2022 October, 2022 September, 2022 August, 2022 July, 2022 June, 2022 May, 2022 April, 2022 March, 2022 February, 2022 January, 2022 December, 2021 November, 2021 October, 2021 September, 2021 August, 2021 July, 2021 June, 2021 May, 2021 April, 2021 March, 2021 February, 2021 January, 2021 December, 2020
View all releases

August 15, 2024 release notes

Highlights

Operations Portal

Generate recently ordered catalogs from Operations Portal

Currently, the Kodaris system generates recently ordered products for all customer accounts. In this release, we’ve added the ability to manually generate recently ordered catalogs right from the Operations Portal. This is a default feature and can be done in just a few clicks. Before the generation process begins, you can choose a date range, and orders placed within your specific range will show in the catalogs.

Learn how to use this feature in the video below:

https://youtu.be/k1KXINNWXng

Export Search Rules

You can now export files on the Search Rules screen! The process to do this is the same as exporting files in other data grids throughout the Operations Portal.

See the video below to learn more about the feature:

https://youtu.be/MCWqYKVbcDk

Re-Tender an order from the Orders screen

For COD or checkout payments, you can now re-push a tender to the ERP, if needed. On orders with “Web Order Payment” as the Transaction Type, you will now see the option to select “Tender Order” from the More button.

Watch this video to see how to tender an order from the Orders screen:

https://youtu.be/OVtqKAtQXD0

Customer Portal

Receive notifications for customer comments on invoices

Credit Managers can now receive notifications via email when a customer comments on an invoice in the Customer Portal. The email will include the invoice number, the email address of the person who left the comment, date and time the comment was created, and the comment text.

If you’d like to turn on this setting, check out this video:

https://youtu.be/pxev3kVmifM

Tickets

  1. KOD-17525: Add Recently Purchased Products to a Platform Default Option
    • Regression Tests
    • Case 1
      • Log into the Operations Portal.
      • Check the display of data on a specific Companies page.
      • Go to CRM → Companies
      • Check data on the companies page:
        • Make sure that when the page loads, all elements are positioned correctly and the layout looks correct.
        • Click on the “Actions“ button and make sure it is clickable and includes the “Populate recently ordered catalog“ option.
      • Check that the Console tab in Development tools does not contain any errors related to the Companies tab.
    • Tests
    • Case 1
      • Test new features and UI changes.
      • Ensure that new feature changes are implemented and displayed correctly.
    • Log into the Operations Portal
    • Go to CRM → Companies
      • Check the new functionality on the companies page.
      • Check that the Actions button exists on the tab and located on the right side in the navigation panel.
      • Check that when you click on the Actions button, it opens a dialog window with the Start Time and End Time fields, as well as the Cancel and Submit buttons.
      • Check that when you choose a valid Start Time and End Time and click on the Submit button, the request is made to {{/api/system/order/populateRecentlyOrderedItems with 200 OK and valid queryParams }}.
      • Check that when you leave the Start Time and End Time empty and click on the Submit button, the request is made to {{/api/system/order/populateRecentlyOrderedItems with 200 OK without any queryParams }}.
      • Check that when you choose a valid Start Time and End Time or leave fields empty and click on the Submit button, the message “{{Ordered catalogs for the specific date range were populated succesfully}}“ appears in the bottom left-hand part of the screen.
      • Check that if you enter incorrect data into the Start Time or End Time fields, validation will work and the fields will be highlighted in red.
  2. KOD-20485: Check Missing In Stock & Store Filters on Company Catalogs
    • Regression Tests
    • Case 1
      • For this regression testing, we are going to test the Categories, In Stock, and Store filters on a Company Catalog.
    • Case 2
      • For this regression testing, we need to go to a Group Catalog.
      • On a catalog with children, you should see the Categories filter, and on a catalog with no children you shouldn’t see any filter.
    • Tests
    • Case 1
      • To test the new functionality, you need to go to a child Company Catalog. Now, you should see the In Stock and Warehouse filters there. You should test them to make sure they work.
    • Case 2
      • For this test, we need to go to a Customer Catalog.
      • On a catalog with children, you should see the Categories filter only, and on a catalog with no children you shouldn’t see any filters at all.
  3. KOD-20506: EFT Payment Polishing
    • Regression Tests
    • Case 1
      • Check that in EFT terms pdf, terms still show correctly.
    • Tests
    • Case 1
      • Check that in EFT terms, there is no longer an extra ‘]' after '(the “Company”)’
  4. KOD-20879: Implementation - Configure/Test ERP Connection
  5. KOD-20880: Implementation - Customer portal
  6. KOD-20909: Remove filterable for dates on several pages
    • Tests
    • Case 1
      • Navigate to Companies → Data Tab → Created field
      • Check if Created is filterable
    • Case 2
      • Navigate to Trip Segments → End date field
      • Check if End date is filterable
    • Case 3
      • Navigate to ERP Settings → Source Modified Time field
      • Check if Source Modified Time is filterable
    • Case 4
      • Navigate to System Events → Created field
      • Check if Source Modified Time is filterable
    • Case 5
      • Navigate to Trips → delivery date field
      • Check if Delivery Date is disabled for filtering, it must be crossed with line.
    • Case 6
      • Navigate to Pricing → Data Tab
      • Add the following columns: priceEffectiveDate, created, startDate, endDate lastModified, lastModifiedLocally, and lastSyncedToErp
      • Check if priceEffectiveDate and created are disabled.
      • Check if startDate, endDate lastModified, lastModifiedLocally and lastSyncedToErp are filterable.
  7. KOD-20927: Add API call on Credit Card orders to 'Finish' the order in CSD
  8. KOD-20955: Record Video on How to Hand Price Order Items & Test that it Works
  9. KOD-20956: Update Interceptor to make shipping methods host compatible
  10. KOD-20993: MaxRecall Integration Connection - Next steps
    • New settings for credentials and enable the maxRecall sync:
      • {{maxRecallApiUrl}}
      • {{maxRecallUsername}}
      • {{maxRecallPassword}}
      • {{maxRecallIsEnabled}}
    • Settings used for syncing documents:
      • {{maxRecallOrderDocTypes }}-> For syncing order documents. Example of value: 1160-ProofOfDelivery,1131-ProofOfDelivery
      • {{maxRecallCompanyDocTypes}} -> For syncing Company documents. Example of value: 1140-CompanyDocuments
      • {{jobSyncMaxRecallDocs }} -> For enable syncing in Job. Will be run in DailyIntervalJob.
      • {{maxRecallOrderStatuses }} -> This is used for sync order which specific status. By default the setting contains ‘Invoiced,Paid’
    • Tests
    • Case 1 (Sync Order documents as CustomerFiles from endpoints)
      • Endpoints {{/api/system/integration/maxrecall/syncCustomerFilesAsync}} and
      • {{/api/system/integration/maxrecall/syncCustomerFiles/D{docTypeID}}}
      • Execute what the ticket described. This is, sync order documents from maxRecall and save them as CustomerFile.
      • The async one will be use to sync older documents for the first time since you can specify a date (The date will be an invoiceDate so it must be in format {{%m/%d/%y}} example: 02/15/20).
      • The process will find orders where order.status in ({{maxRecallOrderStatuses)}} and order.extra3 > invoiceDate until now.
      • Then will loop over them and start syncing one by one from MaxRecall.
      • The type of documents which will be saved is determined by {{maxRecallOrderDocTypes }} setting.
      • Let’s imagine a case where we have an Order with the following data
      • And we have {{maxRecallOrderDocTypes }} with value = 1160-ProofOfDelivery,1131-ProofOfDelivery
      • Then if we run the async endpoint with current date = 13/08/24 then it won’t find it and therefore documents for this order will not be sync (But it will sync other orders which has extra5 equals as today).
      • So, now imagine that the order.extra5 has date = 13/08/24 and you run the async method with current date (Today is 13/08/24), then the order will be picked.
      • Then it will find documents in MaxRecall where DocType = 1160 and order number = order.extra5 and the same with DocType = 1131 (These values are taken from {{maxRecallOrderDocTypes}}).
      • If there are any new documents to download, they will be saved as CustomerFile and attached to the current order.
      • If the document was already synced before (The customerFile already existed for the maxrecall document) then you will get an error, and it will continue processing other documents.
      • After processing the sync finishes, we should see one Event with the general status of orders processed (Code: MAXRECALL_SyncOrderCustomerFiles) and it may be another event if something failed in the communication between kodaris-maxrecall (Code: MaxRecallErrorResponse)
      • Note: If we want to test first only one order, we can use {{/api/system/integration/maxrecall/syncCustomerFiles/D{docTypeID}}} and pass the orderId on it, the docTypeID and FileType to be saved in the CustomerFile (eg: ProofOfDelivery)
      • After processing in a sync way, you will get an array of errors if any.
      • Then, you can verify the CustomerFiles attached in the order
    • Case 2 (Sync Order documents as CustomerFiles from Job)
      • For running the sync process In the DailyIntervalJob we need to enable setting: {{jobSyncMaxRecallDocs }}
      • The idea is to turn the job on after giving a first sync from date 2022 and then process only the new documents each day.
      • Keep this setting in false after testing everything works as expected.
    • Case 3 (Endpoints for testing purposes)
      • {/api/system/integration/maxrecall/Viewer/RetrieveDocumentByDocID/{docID} This will get you a HTML response with a filename on it. Then you can use it to download the file later.
      • The docID is taken from {{/api/system/integration/maxrecall/DocTypeForSXE/D/{DocTypeID}}} endpoint under response field 'url'.
      • {/api/system/integration/maxrecall/Viewer/DownloadPDF } the filename is taken from {/api/system/integration/maxrecall/Viewer/RetrieveDocumentByDocID/{docID} endpoint.
      • {/api/system/integration/maxrecall/search } This endpoint was intended to be super generic since it cannot be tested locally because credentials only work on environments so we could use this to test different urls calls. It accepts a Json indicating the endpoint and parameters.
        • The following endpoints create InternalFiles after syncing the documents from maxrecall:
        • {/api/system/integration/maxrecall/SyncInternalFiles/D{docTypeID} This has the same features as SyncCustomerFiles, but it only saves the files as InternalFiles without checking if the internalFile already exists. So if you run it 3 times, then the documents will be created 3 times.
        • {/api/system/integration/maxrecall/SyncInternalFilesAsync } This has the same features as SyncCustomerFilesAsync, so it uses the {{maxRecallOrderDocTypes}} setting for the DocTypes and you can specify the invoiceDate FROM (If null, it will use current day)
      • These endpoints are important for testing since it allows you to sync files and save them without modifying the CustomerFiles in the order.
  11. KOD-21029: Update cart with units when unit conversion present
  12. KOD-21042: Test releasing order to ERP
  13. KOD-21143: Defaulting Warehouse Based On Host
    • Regression Tests
    • Case 1
      • For instance in a single tenant mode (multiTenantMode = 0) with erpLogicEngine = InforCSD, run Cart test: add items to cart, change/select delivery address, complete checkout
    • Tests
    • Case 1
      • For instance, in multiTenantMode, go to Employee portal Host [Host 1] Details, Custom Fields tab and add a new setting with code forceDefaultHostWarehouse integerValue = 1 (could copy setting code, name, description from global setting), add or set setting with code defaultHostWarehouse value to one of the existing active warehouse codes.
      • On [Host 1] - log in as a Customer that is linked to [Host 2].
      • Initiate a new Cart by adding items to cart.
      • Now Cart/Order should be linked to the warehouse setup on [Host 1] defaultHostWarehouse.
      • Complete checkout, find this order in the Operations Portal and make sure it has Warehouse (Location) set to [Host 1] defaultHostWarehouse
    • Case 2
      • Run the same test case as Case 1, but when items are added to cart, try to switch the shipto location: in top bar and/or on the Step 2 of checkout.
      • Since Host 1 defaultHostWarehouse is configured and forceDefaultHostWarehouse is on - it should always use this warehouse for Order (while the default logic is to use warehouse from CompanyAddress or Company when changing the shipto address).
      • Complete checkout, find this order in the Operations Portal and make sure it has Warehouse (Location) set to [Host 1] defaultHostWarehouse
    • Case 3
      • On [Host 2] - log in as a Customer that is linked to this same [Host 2] (Customer’s Company is tagged with [Host 2]).
      • Here it should follow the default logic - use warehouse from CompanyAddress or Company when changing shipto address.
  14. KOD-21147: Convert from product lists to catalogs
    • Regression Tests
    • Case 1
      • As a logged-in and guest user, go to the product category page and product page. Make sure those pages load with no issues.
    • Case 2
      • As a not logged-in/guest user:
      • Make sure you don’t see the catalogs tab in the navigation bar and cannot reach catalogs page.
    • Case 3
      • As logged-in user make sure that:
        • Lists were replaced by catalogs at the top.
        • When you click on catalogs at the header, you’re redirected to where you can see Company Catalogs and Customer Catalogs.
    • Case 4
      • As a logged-in user, open the catalogs page with companyAdmin role and check the following:
        • Make sure you can see the “Add Catalog“ button for Company Catalogs.
        • When you click that button, make sure you see the modal that allows you to create a new catalog.
        • Choose parent catalog, enter name and description, and click “Add“ button.
        • Make sure you are redirected to the newly created catalog page.
    • Case 5
      • As a logged-in user without companyAdmin role make sure buttons “Add Catalog”, “Delete“, “Edit“ within company catalogs are not available to you.
    • Case 6
      • On a Company catalog as a logged-in user with companyAdmin role:
        • Make sure you can see the “Edit“ button in top right corner.
        • Click on “Edit“ button.
        • Make sure you see the modal that allows you to edit the catalog.
        • Make sure all values in modal are the same as the catalog data.
        • Change parent catalog, name or description, and click the “Update“ button.
        • Make sure modal is closed and all catalog data has been updated with your new values.
    • Case 7
      • As a logged in user with companyAdmin role, go to Category, Search, and Product pages:
        • Make sure you can see “ADD TO CATALOG“ dropdown instead of “ADD TO LIST“ in all products tiles.
        • Click on “ADD TO CATALOG“ and choose the catalog you’d like this product to be added to.
        • Go to the Catalog to which you added a product and make sure product was successfully added.
    • Case 8
      • On a Company catalog as a logged-in user with companyAdmin role:
        • Make sure you can see the “Remove“ button on all product tiles.
        • Click on the “Remove“ button.
        • Make sure the product has been removed successfully.
    • Case 9
      • On a Company catalog as a logged-in user with companyAdmin role:
        • Make sure you can see the “Delete“ button in top right corner.
        • Click on the “Delete“ button.
        • Make sure you are redirected to the “View All Catalogs“ page.
        • Make sure your catalog was removed successfully.
    • Case 10
    • As a customer, if the catalog has CustomerCanModify set to false, you shouldn’t be able to:
      • Edit
      • Add items
      • Delete
    • Case 11
      • When you’re adding a product to the same catalog twice, you shouldn’t receive any errors.
    • Case 12
      • Make sure that the Company Group catalogs are not editable at all for any user.
      • They also shouldn’t be in the “Add to Catalog” dropdowns.
    • Case 13
      • As a logged-in user try:
        • Creating a customer catalog
        • Adding an item to your catalog
        • Editing your catalog
        • Deleting items from catalog
        • Deleting your catalog
  15. KOD-21165: Web warehouse skus missing and cross ref syncs
  16. KOD-21172: Sync Cross Reference Table
  17. KOD-21177: Notifications for invoice comments in the customer portal
    • Regression Tests
    • Case 1
      • Test customer can still can add comments to the invoices in customer portal.
    • Case 2
      • Test company credit manager is alerted about new customer comment on the invoice when erp engine is InforCSD and alertCreditManager is ON.
  18. KOD-21192: Add more restrictions for warehouses
  19. KOD-21257: DDA App Updates
    • Regression Tests
    • Case 1
      • Go to Delivery details.
      • Tap Collect Signature.
      • Fill out the data and submit.
      • After data is populated (may take time), the Signature screen will change its look.
      • Also, new controls were added, namely Customer not on site checkbox & customer email input.
    • Case 2
      • Follow the exact same steps for Damage Waiver.
    • Case 3
      • Upload a POD photo from Gallery/Camera, check it’s being uploaded fine.
  20. KOD-21256: DDA App Updates
    • Regression Tests
    • Case 1
      • Go to any trip with deliveries, test Out For Delivery action.
      • Press Confirm.
      • Go to your deliveries. You should see status changed for all of them.
    • Case 2
      • Test statuses.
      • For example, if you select On my way, then Out For Delivery should be removed.
      • Same for Arrived and Delivered.
    • Case 3
      • You should see the Navigate button near address.
    • Case 4
      • Press delivery item action on your delivery.
      • You should have items here, divided by labels.
      • Press edit items.
      • All fields should be editable. Try editing fields.
      • if you enter QTY RECV lower then QTY SHIP, then you should see an icon near name.
      • After you finish editing this field, you should see undismissable pop up with reasons.
      • You have to select a reason and press confirm.
      • Then icon should be changed to App’s color icon.
      • You should be able to change the reason by clicking this icon.
      • Press Save Changes.
      • Your changes should be saved and you should be transferred back to delivery screen.
    • Case 5
      • Go to Collect Signature.
      • Enter name and press Tap to Sign.
      • Draw signature and press check sign on the top right.
      • You should not see `totes` confirmation. You should see a Thank you message
      • ADDITIONAL:
      • You should see 3 buttons on this screen:
        • Cross (closes screen)
        • Refresh (clears signature)
        • ✅ (completes)
  21. KOD-21259: Product not linking
  22. KOD-21268: Add cookies to demo site
  23. KOD-21269: Add setting cookiePolicyEnabled
  24. KOD-21282: Consolidation Issues - Product Code Changes
  25. KOD-21291: Statements order in the Invoice
  26. KOD-21301: Add 99 invoice setup to demo site
  27. KOD-21303: Add search rules server side export to UX in operations portal
    • Regression Tests
    • Case 1
      • Verify that recent changes have not affected the existing functionality related to Search Rule screen.
      • Log into the Operations Portal.
      • Navigate to the Search Rules screen.
      • Choose any file from the list and click on the 'file'.
      • Verify all available functionality, specifically:
        • Refresh
        • Import
    • Tests
    • Case 1
      • Ensure that clicking on Export triggers a request to the server at the following endpoint: /api/system/searchRule/export
      • Log into the system.
      • Navigate to the Search Rules screen.
      • Choose any file from the list and click on the ‘file’.
      • Verify all available functionality, specifically:
        • Export.
        • Attempt to open the file and ensure it has downloaded correctly.
  28. KOD-21304: Make shippingEngine setting host compatible
    • Regression Tests
    • Case 1
      • Check shipping options are still available and shown as expected in Cart checkout.
    • Case 2
      • Check shipping options are still available and shown as expected for Order/Quote in Operations Portal.
    • Case 3
      • Test getShippingTracking endpoint.
    • Case 4
      • Test getShippingTrackingData system-side endpoint.
    • Tests
    • Case 1
      • Check shippingEngine setting is used from customer’s host when in multitenant mode.
    • Case 2
      • Check shippingEngine setting is used from customer’s host for requested quote, when in multitenant mode.
    • Case 3
      • Test shipping engine using host domain.
    • Case 4
      • Test shipping engine using host domain(customer side).
  29. KOD-21305: Fix Combined Active column in Company Addresses grid
    • Regression Tests
    • Case 1
      • Ensure that changes don't impact existing features and that all components with changed code function and display correctly.
      • Check that the remaining parameters on Data tab are displayed and working correctly.
    • Tests
    • Case 1
      • Testing new features and UI changes.
      • Ensure that new features changes are implemented and displayed correctly.
      • Make sure the Combined Active attribute is deleted and disappears in the filter on the Company Addresses Data tab.
      • Make sure that the Combined Active attribute displays values ​​as Yes/No on the Company Addresses Search tab.
      • Verify that the Combined Active attribute correctly changes the values ​​on the Company Address Search tab when the Active + Web Active fields are changed.
      • Verify that on the Vendors -> Addresses page, the values in Combined Active field displays as Yes/No
  30. KOD-21308: Allow editing address fields
    • Regression Tests
    • Case 1
      • Make sure this setting: enableCompanyAddresses is set to 1.
      • On company address details page make sure you can still edit the same fields as before.
    • Case 2
      • Make sure this setting: enableCompanyAddresses is set to 0.
      • On company address details page make sure you can still edit the following fields:
        • languageCode
        • firstName
        • lastName
        • customerMayOverrideAddress
    • Tests
    • Case 1
      • Make sure this setting: enableCompanyAddresses is set to 0.
      • On company address details page make sure you can edit the following fields:
        • defaultBilling
        • defaultDelivery
  31. KOD-21316: Add manufacturerCode on product detail page
    • Regression Tests
    • Case 1
      • For both logged in and logged out user, make sure the product details page still loads properly.
    • Case 2
    • Tests
    • Case 1
      • Find a product that has a manufacturer code and manufacturer product code.
      • For both a logged in and logged out user, go to that product’s detail page → notice up top next to Part, you will see Manufacturer and Manufacturer Part # and the corresponding values next to it.
    • Case 2
      • Find a product that does not have a manufacturer code or manufacturer product code.
      • Notice that you will only see the values that are present.
    • Case 3
      • Find a product that does not have both the manufacturer code and manufacturer product code.
      • Notice that you will not see either values.
  32. KOD-21315: Enable Cart Queue
    • Regression Tests
    • Case 1
      • Log in to the commerce site.
      • Add some products to the cart.
      • Clear cart - confirm cart is empty and repeat step 2.
      • Update “Your Order“ tab:
        • Remove item from cart.
        • Update quantity for an item.
        • Add notes on an item.
      • Update “Location”:
        • Billing address should not be editable.
        • Click “Shipping same as billing“.
        • Update Shipping address, email, and phone.
      • Update “Payment” tab:
        • Select shipping option.
        • Set purchase order.
        • Add order details.
      • Click on “Request a quote” or “Place Order”.
      • Confirm all the information entered on steps 3-5 is displayed properly on:
        • Checkout page
        • Orders detail page on the customer portal
        • Email message
  33. KOD-21320: Commerce - Performance Improvement: Category & Search Pages load up to 250x faster now
  34. KOD-21323: Search Boosting
  35. KOD-21330: COD Payment Updates
  36. KOD-21332: Drag and Drop
  37. KOD-21334: Drag & Drop
  38. KOD-21333: Drag & Drop
  39. KOD-21335: Drag & Drop
  40. KOD-21336: Drag & Drop
  41. KOD-21338: Warehouses Missing from Pricing Screen - Employee Mobile App
  42. KOD-21339: Add new field "warehouses" on UX
    • Regression Tests
    • Case 1
      • Check that host global screen still loads properly.
    • Case 2
      • Check that host details screen still loads properly.
    • Case 3
      • Check that you can edit fields on host screen and everything loads without any problems.
    • Tests
    • Case 1
      • On host global screen, check if you see new field “Warehouses”.
    • Case 2
      • On host details screen, check if you see new field “Warehouses”.
    • Case 3
      • On global and details screen check that you can edit this field and it saves without any problems.
  43. KOD-21340: Requested Enhancements
  44. KOD-21343: Last purchased on "order again" slider
  45. KOD-21344: Make the storeCheckoutFAQs setting host compatible
  46. KOD-21347: Test order shipment notifications for guest user
  47. KOD-21350: Generate a new account in real time - set new field
  48. KOD-21361: Add phone number to the themer
    • Regression Tests
    • Case 1
      • Log in to the operations portal
      • Navigate to the commerce site.
      • Confirm Customize Theme panel is visible and clickable.
      • Change inputs for the shop info:
        • Name
        • Address 1
        • Address 2
        • City
        • State
        • Country
        • Postal Code
      • Confirm the information is updated.
    • Tests
    • Case 1
      • Log in to the operations portal.
      • Go to the commerce site.
      • Open Customizer Theme.
      • Confirm Phone Number input is displayed and contains value equals to storePhone setting value.
      • Update the Phone Number value.
      • Refresh the page and confirm phone number in the header section is updated to the value set on step 5.
      • Confirm Phone Number is updated on next pages:
        • account-activation
        • account-retrieval
        • register
    • Case 2
      • Update the phone number (repeat steps (1-5 from the case 1)
      • Navigate to the account password page.
      • Enter one digit password.
      • Click “Submit”
      • Confirm “Something went wrong” message is displayed.
      • Confirm after “contact us at” phone number value set.
    • Case 3
      • Update phone number via themer.
      • In the incognito mode, log in to the commerce site.
      • Navigate to the customer portal:
        • Quotes details page
        • Order details page.
      • Confirm contact number is set to the value on step 1.
      • Download order PDF
      • Confirm contact phone is displayed with value set on step 1.
      • Place an order or quote.
      • Confirm in the email contact number is equal to the one set on step 1.
  49. KOD-21364: Add ability to facet on the warehouse and the deliveryCrew fields
    • Regression Tests
    • Case 1
      • Validate that you can see the Delivery screen, go into the details and edit any delivery from there.
      • Endpoint api/system/trip/list was modified which is used in the operations portal in the Trip screen so make sure you can see that screen, go to the details, and also check for the request and response in the network tab:
        • If we don’t send any facetFields in the request, then in the response it should be null.
      • Endpoint /api/system/order/driverDelivery/updateOrderShipmentItem (This is used in the mobile app).
      • Make sure you can still update any of the other allowed fields:
        • "quantityReceived", "sscReceivedNote", "receivedReason"
      • So, try to update any of them without sending the quantityCustomerReceived field.
    • Tests
    • Case 1
      • New fields added to Delivery entity. Check you see those fields in the newtork tab under Delivery screen.
      • Update it from Swagger /api/system/delivery (PUT or PATCH)
  50. KOD-21372: UX to Add Additional Line Item & Status Fields
    • Regression Tests
    • Case 1
      • On the Order Items tab, make sure grid is loaded with no issues. Make sure you can add/remove columns to/from the grid.
    • Case 2
      • On the Deliveries tab make sure grid is loaded with no issues. Make sure you can add/remove columns to/from the grid.
    • Case 3
      • On the Order Items Tab make sure there were added 2 columns to the column list: Received Reason, SSC Received Note.
      • Make sure you can add them to the grid.
    • Case 4
      • On the Deliveries Tab make sure there were 2 new columns added to the grid: External Status, Status Details.
      • Make sure you can add them to the grid.
      • Those 2 columns should be filterable and sortable.
  51. KOD-21376: BI - Record Search Results for Metrics
  52. KOD-21378: Surface request IDs for easier troubleshooting
    • Regression Tests
    • Case 1
      • The requestId now will appear in all responses (At least the ones which return the structure of data, response and code.)
      • So, we have to validate that common flows on commerce site do not crash because of this. Go to the website and navigate through the site, add items to the cart, and create a Order (Guest order or as logged in).
      • Then go to the operations portal and make sure you can see that Order and see the details as well.
    • Tests
    • Case 1
      • Verify you get the header ‘x-kod-requestid' in all responses and the 6 chars are the correspondent requestId (You can ask for logs or force some errors in any endpoint you wish to verify it).
      • Besides, in json responses, you should see a new 'requestId’ retrieved which contains the current date and the requestId in the following format: yyyyMMddHHmmss-{requestId}
  53. KOD-21379: Map DQ Field tripDate to shipDate Field
  54. KOD-21381: Make SX Payment Settings Host Compatible
    • Regression Tests
    • Case 1
      • Sync a Payment to SX / CSD in a non-multihost site should continue working as expected and take the values from general settings.
      • For syncing a Payment we have to pay an order and wait until the payment syncs to the ERP or if we have already a Payment record in the database we could use /api/system/integration/infor/syncPayment/{paymentID} for testing.
    • Tests
    • Case 1
      • Sync a Payment to CSD / SX and make sure the sxPaymentTypeVisaMasterCardDiscover and sxPaymentTypeAmex values are taken from the Host.
      • For syncing a Payment we have to pay an order and wait until the payment is synced to the ERP or if we have already a Payment record in the database we could use /api/system/integration/infor/syncPayment/{paymentID} for testing.
      • The host is taken from the Payment.
  55. KOD-21382: Employee Portal - Add missing fields from Automated Invoicing & Statements to other screens
  56. KOD-21385: Add UX to pull data from the datalake
  57. KOD-21390: Customizer issue
  58. KOD-21401: Fix Quantity Backordered
  59. KOD-21403: Add Tender Order action to orders screen
    • Regression Tests
    • Case 1
      • For this case, we need to go to Orders > Select an order.
      • We have to check the functionality of the buttons inside “More” dropdown.
    • Tests
    • Case 1
      • For this test, we need to go to Orders > Select an order > Payments.
      • We need to make sure that we only see the Tender Order button inside “More” dropdown when the order has at least one payment with Transaction type being “Web Order Payment”.
      • Now, we need to click that button and we should see a success message and on Network tab we need to see a request per each of the payments on that order.
  60. KOD-21412: Allow UX to get prices and information for other warehouses from prices by codes
    • Regression Tests
    • Case 1
      • The logic is to use the priceCheckWarehouse from request as priority only if it is sent. So, corroborate that everything still works as is without sending the new parameter.
      • Check that you can see the products in the website, that you need to select a store to see prices (unless you have showInventoryPublic or you are logged in).
      • Check choosing another store and make sure you see different information (Perhaps prices are the same in some products, but you can modify the sku of the warehouse to modify some prices).
      • As a last step, log in as a customer and navigate in the page so that you can see the products / prices and select some of them to add them to the cart. Confirm no errors appear and the information is correct.
    • Tests
    • Case 1
      • Now pricesByCode can receive a new parameter 'priceCheckWarehouse' which will be used as the selected warehouse to get the product/sku/warehouse information.
      • So, even you have selected a warehouse in the UX, if the priceCheckWarehouse comes in request, the system will use that to calculate the prices for the product.
      • Without logging in neither selecting any store, send a priceCheckWarehouse in the request and see the prices and information for that warehouse code.
      • Now, without logging in, select the same store that you sent in the request (But this time do not send in the request) and corroborate that the information you see is the same (prices, quantities, etc.).
      • Validate that in the response.skuData you see all the skus/warehouses available for that product and if they are directShipped or not.
  61. KOD-21417: Preview Invoices Payment