All Releases
View all releases

November 9, 2023 release notes

Highlights

Operations Portal

View files attached to an email

As part of the Kodaris platform, you can compose, send, and view all emails sent from the Kodaris system – including those for order confirmations, invoices, statements, payments, password resets, and more – in the System > Emails section of the Operations Portal. In this release, you can now click into and see the full email details as well as view any files attached to the sent email.

To use this feature, simply navigate to the Emails screen, select the email you would like to view by clicking the Details icon. On the following screen, you can view the email's specific information. To view any attached files, navigate to either the Customer or Internal Files tab.

749_navigate_to_email_details_screen.png
749_view_full_email_details.png
749_navigate_to_customer_files_tab_view_files.png

View external product codes on line items

As part of the Kodaris ordering capabilities, a new feature has been released where you can now choose to display your external product codes on an order in the operations portal. This allows employees to easily view which items have external product codes and what they are.

To display, navigate to Orders > Orders section of the Operations Portal. Enter the order number you would like to review, then click on the order's Details icon. On the following screen, click on the Show / Hide Columns menu and choose the External Product Code column.

749_select_external_column_option.png

Google search console verification

As part of the extensive features that Kodaris provides, Search Engine Optimization (SEO) is automatically generated and configured for your website, plus you have the option to manually adjust any SEO-related field if you so choose. In this release, we've added a feature where you can easily verify ownership of your Kodaris site for Google Search Console.

To use, navigate to the Marketing > SEO section of the Operations Portal. Scroll to the Meta Tag Verification section on the SEO screen, and follow the instructions to add your unique Google Search Console tag to your website.

This functionality does require configuration to your website implementation. Please reach out to your account manager if you are interested.

749_meta_tag_google_search_console_verification.png

Commerce

Display direct ship products

The Kodaris commerce platform offers an easy, intuitive shopping experience for your customers. To enhance their ordering experience, you now have the ability for direct shipped products to be displayed and purchased on your commerce site.

If you are interested in this feature, please contact your Kodaris Account Manager for configuration information.

749_direct_ship_flag_on_product.png

Display related products

Your Kodaris platform includes a powerful Product Inventory Management (PIM) module that can be used standalone or to power your Kodaris commerce or other commerce site. With this latest release, you can now choose to add a slider of related products to a specific product page on your commerce website. The slider could showcase additional products that a customer may want to purchase or other similar options – you get to choose what you would like to show.

To configure, go to the PIM section, then click on Products. Find the specific product - e.g. DXI624 - you would like to add related products to; click the Details icon for that product. Navigate to the Related Products screen and add as many products as you desire by using the "+ Relate product" field at the bottom of the screen. After adding, the related products will be displayed on a slider under the DXI624 product description.

Kodaris also provides the option to create or update related products en masse. You can do this via going to the PIM > Products > Data screen, clicking File > Import and selecting from one of the Related Product options.

Note: the display of the related products on your website is implementation specific. Please reach out to your Kodaris account manager if you are interested in adding it to your website.

749_add_related_products.png
749_display_related_products.png
749_import_related_products.png

Tickets

  1. KOD-13127: Customer App - Add Lists to Cart From List View
    • Tests
    • Case 1:
      • Log in as a customer
      • Create your private list and add products to it, or use one of the company lists
      • Press 3 dots on the right side from list (on the right side of amount of items you added to list)
      • Press “Add List to Cart”
      • Products should be added to cart; you should be redirected to cart
    • Case 2:
      • Log in as a customer
      • Use created list, create your private list and add products to it, or use one of the company lists
      • Press on the list to open list of items
      • On the top bar press 3 dots
      • Press “Add List to Cart”
      • Products should be added to cart; you should be redirected to cart
  2. KOD-12622: Drop Charts in Operations Portal
    • Regression Tests
    • Log in to your account:
      • On home page:
      • See if there are only two items on the Analytics section of the navigation pane: Customer Requests and AWS QuickSight
      • Try to manually write the URL to the deleted analytics page; it should redirect back to the home page
      • Refer to this document for the deleted pages and replaced charts
    • Log in to your account:
      • Go to Quotes, Cash Quotes, Orders, and Summary Orders Page
      • Open a sample data and try to edit its form
      • This should save the info that’s been edited
      • Reload to confirm the change
    • Tests
    • Log in to your account:
      • Go to Quote page and open a sample quote
      • On the Details tab, scroll down to the Analysis section on the right panel
      • Charts should work the same as before; it should show the margin value
      • *Note:* This also tests when a chart has no data, showing a blank chart
    • Log in to your account:
      • Go to Cash Quote page and open a sample cash quote
      • Scroll down to the Analysis section on the right side
      • It should show an analysis chart based on the margin data
    • Log in to your account:
      • Go to the Order page and open a sample order
      • Scroll down to the Analysis section on the right panel
      • It should show an analysis chart based on the chart data
    • Log in to your account:
      • Go to Summary Orders page and open a sample summary order
      • Scroll down to the analysis section of the page on the right panel.
      • It should show an analysis chart for its margin data
    • Login to your account:
      • Go to either Quotes, Orders, Cash Quotes, or Summary Orders Page and open a sample data
      • Scroll down to the analysis section on the right side
      • It should show a blank gray chart when *there’s no data for the analysis*
  3. KOD-13958: Update Icss API
    • Changed endpoint:
      • {{/api/system/icss/list}}
    • Regression Tests
    • Case 1:
      • {{/api/system/icss/list}}
    • Case 2:
      • Same as Case 1, but UX test
    • Case 3:
      • Server side endpoint
  4. KOD-15316: Auto Upload Lockbox File
  5. KOD-15593: Add Indicator if PDF or File Is Attached to Email
    • Tests
      • You have to have these permissions to be able to open
      • {{[administrator, superuser, emailView, emailEdit]}}
    • Case 1:
      • Check Email Detail screen
      • Go to Operations Portal > System > Emails
      • Click on > to open email detail screen
      • Details tab shows email details but user will not be able to update any information
    • Case 2:
      • Check Email Customer Files screen
      • Go to Operations Portal > System > Emails
      • Click on > to open email detail screen
      • Customer Files tab shows the email’s customer file attachments if there are any
    • Case 3:
      • Check Email Internal Files screen
      • Click on > to open email detail screen
      • Internal Files tab shows the email’s Internal file attachments if there are any
  6. KOD-16338: Fix the Error Page in Payment Portal
  7. KOD-16376: Fix Script Paging in the Operations Portal
    • Regression Tests
    • Case 1:
      • User scripts and interceptors page should be shown and you should be able to export the tables
    • Tests
    • Case 1:
      • Go to interceptors page, paging should not be available
    • Case 2:
      • Go to user scripts page, paging should not be available
  8. KOD-16378: Configure Direct Ship Products on Commerce Demo and Delivery ETA
    • Regression Tests
    • Case 1:
      • Check that the product detail, product list (both list and grid view) and cart item pages look good
    • Tests
    • Case 1:
      • Use drop ship product: 10SLICOS
      • For each of the following pages, make sure that the drop ship text displays “Ships Direct” instead of something with “from manufacturer”
        • Product detail
        • Product List (list and grid view)
        • Cart items
  9. KOD-16443: Popup to Confirm Reload Page - When a User Edits a Script in the Operations Portal
    • Regression Tests
    • Case 1:
      • Should be able to open user scripts, edit them, save and clear
    • Tests
    • Case 1:
      • Go to Development -> User Scripts, then go to some User Script
      • Try refreshing the page without making any changes to script; it should refresh without a popup
      • Try to edit the script and refresh the page; a confirmation popup should appear
      • If you press cancel, the reload will not happen; if you press reload - page will be reloaded.
      • Also try saving the data by pressing save button of cmd+s and reloading the page; it should reload
    • Case 2:
      • Go to Development -> User Scripts, then go to some User Script
      • Try leaving the page without making any changes to script, it should refresh without a popup
      • Try to edit the script and leave the page; a confirmation popup should appear
      • If you press cancel, the reload will not happen; if you press reload - page will be reloaded
      • Also try saving the data by pressing save button of cmd+s and leaving the page; it should reload
  10. KOD-16505: All Product Lists Showing Instead of Selected Company
    • Regression Tests
    • Case 1:
      • Please check that product list and product pages are displayed as expected
    • Case 2:
      • Please check that we can open list dropdown and add product to the list
    • Tests
    • Case 1:
      • Please check that on list dropdown are displayed only those lists that belongs to customer company (product list and product pages)
    • Case 2:
      • Please check steps above for logged in and guest users
  11. KOD-16612: Add externalProductCode to Line Item Grid on Order Items Screen
    • Tests
    • Case 1:
      • Verify External Product Code Column Visibility
      • Navigate to Orders → Orders → Choose an order → Items
      • Verify that the "External Product Code" column is not visible in the table
      • Click the "Show/Hide Columns" button and select "External Product Code" from the list
      • Confirm that the "External Product Code" column is now visible in the table
      • *Note: External Product code is not sortable, filterable, or editable
  12. KOD-16717: WebUI / CSD API Write Back Synchronization
    • Regression Tests
    • Case 1:
      • Create or update a product
    • Case 2:
      • Create or update a product price
    • Tests
    • Case 1:
      • Turn on new setting:
        • Go to Setting menu
        • Look for settings {{enableSyncProductPriceToERP}} and {{enableSyncProductToERP}}
        • Set value = 1 to both of them
    • Case 2:
      • Update product and see review logs to see that interceptors was called to update ERP
    • Case 3:
      • Update product price and see review logs to see that interceptors was called to update ERP
  13. KOD-16740: Trips & Deliveries - New Screens/Tabs Issues
    • Regression Tests
    • Case 1:
      • Go to Operations Portal
      • Go to Logistics -> Trips
      • Choose any available record
      • Check if these tabs look good:
        • Trips
        • Deliveries
        • Custom fields
        • Development
    • Case 2:
      • Go to Operations Portal
      • Go to Orders -> Order shipment
      • Choose any available record
      • Check if these tabs look good:
        • Details
        • Items
        • Custom fields
        • Development
    • Tests
    • Case 1:
      • Go to Operations Portal
      • Go to Logistics -> Trips
      • Choose any available record
      • Try to edit field Asset ID:
        • Check if you can see dropdown list to this field
        • Check if you can choose any value of dropdown list
        • Check if value is saved, reload page
    • Case 2:
      • Go to Operations Portal
      • Go to Logistics → Trips
      • Choose any available record
      • Try to edit field Employee ID:
        • Check if you can see dropdown list to this field
        • Check if you can choose any value of dropdown list
        • Check if value is saved, reload page
    • Case 3:
      • Go to Operations Portal
      • Go to Orders → Order shipment
      • Choose any available record
      • Go to Items tab
      • Try to:
        • Check if you can add new record
        • Check if you can update any of the records
        • Check if you can delete any of the records
    • Case 4:
      • Go to Operations Portal
      • Go to Orders → Order shipment
      • Choose any available record
      • Go to Custom Fields tab
      • Try to:
        • Check if you can add new record and field value saved
        • Check if you can update any of the records
        • Check if you can delete any of the records
  14. KOD-16748: Add InforCSD integration
    • Tests
    • Case 1:
      • Go to Operations Portal -> Development -> Integrations
      • Check than new Integration is added - InforCSD
  15. KOD-16804: Hidden Input in CMS Editor Has Extra Padding That Shows Up On Page
    • Regression Tests
    • Case 1:
      • Please make sure that other input fields display correctly
    • Tests
    • Case 1:
      • Log in to Operations Portal -> CMS -> Pages -> Edit page with Gutenberg Editor -> add new form block -> add input field with type hidden -> save the page and go to preview -> hidden field should be added without extra margins
    • Case 2:
      • Please add label for input type hidden and save the page -> label shouldn’t be displayed on the rendered page, it should only be present in the editor
  16. KOD-16814: CMS Page - Typing Values in Dropdown Option
    • Regression Tests
    • Case 1:
      • Please test if select field displays correctly
    • Tests
    • Case 1:
      • Log in to Operations Portal -> CMS -> Pages -> edit page with Gutenberg Editor -> add form block -> add select field -> try to add/modify some options -> focus behavior must be predictable without jumping
  17. KOD-16878: Add New Endpoint for Deleting Customer File
    • Tests
    • Case 1:
      • Go to new endpoint /api/system/customerFile/{customerFileId}
      • Choose a customerFileId to mark as deleted
      • Press execute and check that the results are ok under Menu → Customer Files
  18. KOD-16888: Demo Site Agree to Terms Issue
    • Regression Tests*
      • Prerequisites for the the first three tests: the termsAndConditionsURL setting should exist and be set to something
    • Case 1:
      • In the website, go through the reset password flow and make sure the Agree to Terms option shows up
    • Case 2:
      • After Case 1, add items to cart and go to the second cart page.
      • There shouldn't be an option to agree to terms
    • Case 3:
      • Go to the Operations Portal -> Customers -> Customers -> Custom Fields, and delete the setting “agreedToTermsTimestamp“
      • Go to the customer side as a logged in user → second cart page → and make sure the option to agree to terms is there and works; place the order
      • Add more items to your cart and go to the second cart page → there shouldn't be an option to agree to terms
    • Case 4:
      • Go to Operations Portal -> Settings -> termsandconditionsurl
      • If the setting does not exist, the terms and conditions should not show up on the reset password screen
      • Note: instead of deleting the setting, you could also set the value to nothing; it should work the same way
  19. KOD-16923: Operations Portal - Add New Permissions to Page Drafts Screen
    • Regression Tests
    • Case 1:
      • Set up your employee with roles from Test Case 1
      • Log in with employee that we set up in previous step
      • Check if you don’t have access to pages except Page Drafts
    • Tests
    • Case 1:
      • Log in to Operations Portal
      • Go to Operations -> Employees
      • Choose your test employee
      • Add roles:
        • {{contentDraftView}}
        • {{contentDraftEdit}}
        • {{contentDraftPublish}}
        • {{developer}}
        • {{contentPageSettingView}}
        • {{contentPageSettingEdit}}
        • {{contentDraftSettingView}}
        • {{contentDraftSettingEdit}}
    • Case 2:
      • Log in to Operations Portal with user that was set up in Case 1
      • Go to CMS → Page Drafts
      • Check if you have access to this screen
    • Case 3:
      • Log in to Operations Portal with user that was set up in Case 1
      • Go to CMS → Page Drafts
      • Choose one of available records
      • Check if:
        • You have access to this screen
        • Details page looks good
        • Can edit fields and it saves
    • Case 4:
      • Log in to Operations Portal with user that was set up in Case 1
      • Go to CMS → Page Drafts
      • Choose one of available records
      • Go to public files tab
      • Check:
        • Table with all records are shown
        • Add new file
        • Copy URL
        • Delete file
    • Case 5:
      • Log in to Operations Portal with user that was set up in Case 1
      • Go to CMS → Page Drafts
      • Choose one of available records
      • Go to Custom Fields tab
      • Check:
        • Table with all records are shown
        • Add new record
        • Update records
        • Delete records
    • Case 6:
      • Log in to Operations Portal with user that was set up in Case 1
      • Go to CMS → Page Drafts
      • Choose one of available records
      • Go to Development tab
      • Check if this screen looks good and you can edit fields
  20. KOD-16960: Check Jira Process on Automated Releases
  21. KOD-16976: Make sendAutomatedPDFInvoice-Email Template Prettier in Base Payment Portal
    • Tests
    • Case 1:
      • Check sendAutomatedPDFInvoice-Email layout by triggering the email on next install of payment portal
  22. KOD-16994: Drop Ship Set Up: Check
    • Regression Tests
    • Case 1:
      • Verify that {{Sync Vendor Order}} and {{Sync Vendor Product}} work
    • Tests
    • Case 1:
      • Verify that {{Split direct Order}} works with updates
  23. KOD-17034: Document CENPOS Integration
  24. KOD-17074: Payment Portal - Update Order Templates to Use termsType and termsTypeDescription from the Order not the Company
    • Tests:
    • Case 1:
      • Check Terms if still showing terms type description
  25. KOD-17086: Create/Implement a -99 Invoice Template - Platform
  26. KOD-17111: Fetching Category Cache in User Scripts
  27. KOD-17153: Mobile - Shipping Options at the Checkout
  28. KOD-17154: Kodaris Field to Use when no PDSC Record Is Found for B2B Customers
  29. KOD-17156: Keep List Price Up to Date
  30. KOD-17265: Upgrade Saturn Libraries - Round 1
    • Regression Tests
    • Case 1:
      • Test generating Customer PDF on Quotes
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 2:
      • Test generating Customer CSV on Quotes
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 3:
      • Test generating Internal PDF on Quotes
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 4:
      • Test generating Internal CSV on Quotes
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 5:
      • Test generating Internal PDF on Cash Quotes
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 6:
      • Test generating Customer PDF on Cash Quotes
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 7:
      • Test generating Internal PDF on Orders
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 8:
      • Test generating Customer PDF on Orders
      • You can also compare generated file with file that was generated before changes were deployed, make sure all data is in the file (depends on the environment you are testing on)
    • Case 10:
      • Test generating Internal PDF on Invoices
    • Case 8:
      • Test generating PDF on Statements
  31. KOD-17277: Customer App - Send Email Button Doesn't Work
    • Tests
    • Case 1:
      • Open customer app
      • Click ellipsis icon from the bottom nav and click Settings
      • Account deletion screen is displayed
      • The screen displays the following required fields: First Name, Last Name, Email, Reason for deletion
      • Fill-in all the fields
      • Click on Save
      • The following is displayed on screen: Your account deletion is in process and could take a few days to complete
    • Case 2:
      • Open customer app
      • Click ellipsis icon from the bottom nav and click Settings
      • Account deletion screen is displayed
      • The screen displays the following required fields: First Name, Last Name, Email, Reason for deletion
      • Fill-in all the fields except for one
      • Click on Save
      • A validation error is displayed under the text box that is not filled in
    • Case 3:
      • Open customer app
      • Click ellipsis icon from the bottom nav and click Settings
      • Account deletion screen is displayed
      • The screen displays the following required fields: First Name, Last Name, Email, Reason for deletion
      • Enter an invalid email address
      • Click on Save
      • A validation error is displayed under the email text box
  32. KOD-17279: Time Logging Screen Update
    • Regression Tests
    • Case 1:
      • On the tickets screen, test Log Time feature by clicking on Log Time button
      • Ticket field should have autocomplete; date should have a datepicker
      • Try submitting with not fully pre-filled form (you should not be able to log time if any field isn’t filled)
      • Try submitting fully pre-filled form with the valid data; with valid data you should be able to log time successfully
    • Tests
    • Case 2:
      • On the tickets screen, test Log Time feature by clicking on Log Time button
      • Ticket field should be required and you shouldn’t be able to log time without specifying it
      • Date should be already prefilled with today's date, but you still should be able to select another date you want via the datepicker
    • Case 3:
      • Open any Ticket Details page
      • On the header section should appear Log Time button as from the previous case
      • When you click this button, the same dialog window should be opened, except 1 change: Ticket field would be hidden (if you open this modal window from the ticket details, it means that you’ve already selected current ticket)
      • Other functionality should remain the same as on Case 1 and 2
  33. KOD-17283: Customer Portal - Edit Order Endpoint
    • Tests
    • Case 1:
      • Check whether the new setting exists: {{allowedCustomerOrderFieldsToEdit}} on employee side on setting page list and use the new swagger endpoint: PATCH: {{/api/account/order/{orderID}}}
      • Check whether the current setting have value: *purchaseOrder*
      • Then go to company list on employee side, create order from some company, and then copy ID of order for next step
      • Check new swagger endpoint: PATCH: {{/api/account/order/{orderID}}}
      • The current new endpoints use the the new setting: {{allowedCustomerOrderFieldsToEdit}} for filtering out fields which are not included in values of the setting before updating selected order
      • *we test two cases:*
        • When we update the field: *purchaseOrder* which mentioned in new setting: {{allowedCustomerOrderFieldsToEdit}} => *should be updatable*
        • When we want to update the field which not included in new setting, for example: field: {{shippingMethod}}, *should not update the current field*
  34. KOD-17289: Apps Not Showing Prices for Logged In Users - IOS
  35. KOD-17324: Demo Site - Add Related Products
    • Regression Tests
    • Case 1:
      • Products without related products should not show the widget
    • Tests
    • Case 1:
      • Add related products to a product
      • Make sure {{relatedProductTypes}} setting is set and value has {{RelatedProducts}}
      • Add/Delete Related Products in the Related Products tab in the Product page
      • Check the product page on the website to make sure that it is showing the related products slider/widget
      • Check the tablet and mobile layouts to make sure they aren't broken
  36. KOD-17325: Add customerCanModify to sscCompanyProductCategory
    • Tests
    • Case 1: Check new field: *customerCanModify* and the logic ways depend on customerCanModify: *true* or *false*
      • Go to employee side, on page:
      • Add some category
      • Add products to current new category
      • Use swagger endpoint:
        • {{/api/system/companyProductCategory/list}} to check whether the new field: customerCanModify is exist in result
      • Check whether customer can edit current companyProductCategory: *testCatalog* when customerCanModify = true
      • Check whether current selected category has *customerCanModify = true* and check whether logged in customer can modify current category, using these endpoints:
        • PATCH:{{/company/{companyID}/companyProductCategory/{companyProductCategoryID}}}
        • POST: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          productByCode/{productCode}}}
        • PATCH: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          product/{productID}}}
        • POST: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          bulkProduct}}
        • DELETE: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          productByCode/{productCode}}}
        • DELETE: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          bulkProduct}}
        • DELETE: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}}}
      • Check whether customer get exception message: “Unable to edit…“ when they want to edit the current companyProductCategory: *testCatalog* when customerCanModify = *false*
        • Before testing endpoints need to change the value of field: *customerCanModify to false* on employee side(swagger endpoint) use PATCH: [/api/system/companyProductCategory/{companyProductCategoryID}
      • For endpoint, should return exception: {{Unable to edit category}}
        • PATCH:{{/company/{companyID}/companyProductCategory/{companyProductCategoryID}}}
      • For endpoint, should return exception: {{This category cannot be deleted}}
        • DELETE: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}}}
      • For endpoints, should return exception: {{Unable to edit category product list}}
        • POST: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          productByCode/{productCode}}}
        • POST: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          bulkProduct}}
        • DELETE: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          productByCode/{productCode}}}
        • DELETE: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          bulkProduct}}
      • For endpoint, should return exception: {{Unable to edit product for category}} =>
        • PATCH: {{/company/{companyID}/companyProductCategory/{companyProductCategoryID}/
          product/{productID}}}
  37. KOD-17326: Add UX in Operations Portal for customerCanModify on sscCompanyProductCategory
    • Regression Tests
      • Log in to your account
      • Go to Companies page
      • Open a test company and go to *Catalog* tab
      • Edit a test by clicking the Edit Category button
      • Change the other fields *except* Customer Can Modify field and save
      • Refresh the page; changes should be applied
    • Log in to your account:
      • Go to Company Groups page
      • Open a test company group and go to *Catalog* tab
      • Edit a test by clicking the Edit Category button
      • Change the other fields *except* Customer Can Modify field and save
      • Refresh the page; changes should be applied
    • Log in to your account:
      • Go to Company Product Categories page
      • Open a test Product Category
      • Edit the other fields *except* Customer Can Modify field and save
      • Refresh the page; changes should be applied
    • Tests
    • Log in to your account:
      • Go to Companies page and open a test company
      • Navigate to Catalog tab and add a catalog
      • Add appropriate info
      • Save
      • New catalog should be saved; refresh page to confirm
    • From the previous test:
      • Edit the newly added catalog
      • Details should be accurate
      • Edit the Customer Can Modify field
      • Save
      • New value should be saved; reload the page to confirm
    • Log in to your account:
      • Go to Company Groups page
      • Open a test company group and go to Catalog tab
      • Click add catalog; input appropriate info
      • Click Save
      • Reload the page to confirm new catalog
    • From the previous test:
      • Edit the newly added catalog
      • Dialog should pop up; confirm the details and info should be accurate
      • Edit the Customer Can Modify field
      • Info should be saved; reload the page the confirm
    • Log in to your account:
      • Go to Company Product Categories page
      • Open a test company product category
      • Edit the Customer Can Modify field and save
      • Reload the page to confirm the change
  38. KOD-17328: Add Operations Portal UX for New Customer.isCompanyRestrictedCatalog
    • Regression Tests
    • Go to Operations Portal:
      • Open a customer’s Details page
      • Edit all the other fields except Company Restricted Catalog
      • Refresh to confirm changes
    • Tests
    • Go to Operations Portal:
      • Open a customer’s Details page
      • Go to Address & Settings section
      • Modify Company Restricted Catalog
      • Refresh to confirm changes
  39. KOD-17337: Add Import to Related Products
    • Tests
    • Case 1:
      • Test Related Products import on Products page → Data tab
  40. KOD-17339: Allow Endpoints to Return customFields on Certain Database Searches
    • Regression Tests
    • Case 1:
      • Regression testing public Product /list and /relatedProducts/list endpoints after adding interceptor
    • Case 2:
      • Testing for regression existing generateSearchResult () method functionality (with and without running interceptor {{searchDbPostProcessorCustomFields}}):
        • Company Product lists
        • Company Budgets
        • Category
    • Case 3:
      • Testing for regression existing generateSearchResult () which was modified by adding interceptor (searchDbPostProcessorCustomFields) in this ticket
    • Tests
    • Case 1:
      • *Need to turn on setting: enableDbSearchPostProcessor*
      • Testing endpoint:
      • POST /api/user/product/list
        • {noformat}print("===================Running searchDbPostProcessorCustomFields===================")
        • if (apiModel === 'ProductViewCommerceBasic') {
        • dto.customFields = {
        • "user1" : doc.user1,
        • "user2" : doc.user2,
        • "user3" : doc.user3
        • }
        • }
        • if (apiModel === 'RelatedProductViewCommerceDto') {
        • dto.customFields = {
        • "user1" : doc.user1,
        • "user2" : doc.user2
        • }
        • }
    • Case 2:
      • *Need to turn on setting: enableDbSearchPostProcessor*
      • Testting endpoint: POST
        • /api/user/product/relatedProducts/list
        • {noformat}print("===================Running searchDbPostProcessorCustomFields===================")
        • if (apiModel === 'ProductViewCommerceBasic') {
        • dto.customFields = {
        • "user1" : doc.user1,
        • "user2" : doc.user2,
        • "user3" : doc.user3
        • }
        • }
        • if (apiModel === 'RelatedProductViewCommerceDto') {
        • dto.customFields = {
        • "user1" : doc.user1,
        • "user2" : doc.user2
        • }
        • }{noformat}
  41. KOD-17357: Add Recently Purchased Products to a Platform Default Option
    • Regression Tests
    • Case 1:
      • {{DailyIntervalJob}} should still working as always with new setting {{populateRecentOrders}} = 0
    • Tests
    • Case 1:
      • Check new interceptor {{populateRecentOrders}}.js and new setting {{populateRecentOrders}}
    • Case 2:
      • New endpoint [POST]{{/api/system/order/populateRecentlyOrderedItems}}
      • Should not run interceptor {{populateRecentOrders.js}} with setting {{populateRecentOrders}} = 0
    • Case 3:
      • New endpoint [POST]{{/api/system/order/populateRecentlyOrderedItems}}
      • Should run interceptor {{populateRecentOrders.js}} with setting {{populateRecentOrders}} = 1 and no parameters provided
    • Case 4:
      • New endpoint [POST]{{/api/system/order/populateRecentlyOrderedItems}}
      • Should run run interceptor {{populateRecentOrders.js}} with setting {{populateRecentOrders}} = 1 and parameters provided
    • Case 5:
      • Run DailyIntervalJob with setting {{populateRecentOrders}} = 1
  42. KOD-17371: Trigger for Re-calculation of List price - For public Non-logged-in Users Pricing
  43. KOD-17372: Configuration for Logged-in Users v/s not Logged-in Users
  44. KOD-17375: Make Sure Addon Charges Are Supported in the Mobile App
  45. KOD-17377: Customer App - Display Pretty Shipping Method Name Instead of the Code
    • Tests
    • Case 1:
      • Log in to app
      • Press “My Orders” button on the main screen
      • Choose one order
      • While you are waiting for order to load, you should see Shipping Method as a code, not a name (this step is regression)
      • After order loads, the code should be changed to the pretty name, if it is exists for this shipping option (should exist for: DEL, WC, SHIP)
    • Case 2:
      • Log in to app
      • Press “My Orders” button on the main screen
      • Choose one order
      • If the order does not have {{purchaseOrder}} parameter, then it should not be shown
      • If the order has this parameter, it should be shown
  46. KOD-17379: Create New field for Shipping Methods Named lastSyncedFromErp
    • Regression Tests
    • Case 1:
      • Create a new Shipping Method
    • Case 2:
      • Edit an existing Shipping Method
    • Tests
    • Case 1:
      • Create a shipping method using Swagger: [POST] {{/api/system/shippingMethod}}
    • Case 2:
      • Edit shipping method using Swagger: [PUT]{{ /api/system/shippingMethod/{shippingMethodID}}}
    • Case 3:
      • Edit shipping method using Swagger: [PATCH]{{ /api/system/shippingMethod/{shippingMethodID}}}
    • Case 4:
      • List shipping methods using Swagger: [POST]{{ /api/system/shippingMethod/list}}
    • Case 5:
      • Export shipping methods using Swagger: [POST]{{ /api/system/shippingMethod/export}}
    • Case 6:
      • Delete shipping method using Swagger: [DELETE]{{ /api/system/shippingMethod/{shippingMethodID}}}
    • Case 7:
      • Get shipping method using Swagger: [GET]{{ /api/system/shippingMethod/{shippingMethodID}}}
  47. KOD-17382: Add New Fields to Deliveries Detail Screen - Platform
    • Regression Tests
    • Case 1:
      • Create new delivery
    • Case 2:
      • Edit existent delivery
    • Tests
    • Case 1:
      • Create new Delivery
    • Case 2:
      • Edit Delivery
    • Case 3:
      • Edit Delivery
    • Case 4:
      • List Deliveries
    • Case 5:
      • Get Delivery
    • Case 6:
      • Delete Delivery
  48. KOD-17395: Public User Home Page Updates
    • Regression Tests
    • Case 1:
      • Check Home Slider widget
      • Go to Operations Portal > CMS > Menus
      • Click on Home Slider link
      • Add/edit/delete tiles and check for any errors
      • Click on Activate and publish once you are done with the content to see the tiles on the site
    • Case 2:
      • Check Home Content tiles widget
      • Go to Operations Portal > CMS > Menus
      • Click on Home Content tiles link
      • Add/edit/delete tiles and check for any errors
      • Click on Activate and publish once you are done with the content to see the tiles on the site
    • Case 3:
      • Check Top Categories widget
      • Go to Operations Portal > CMS > Menus
      • Click on Top Categories link
      • Add/edit/delete tiles and check for any errors
      • Click on Activate and publish once you are done with the content to see the tiles on the site
    • Tests
    • Case 1:
      • Check Public user tiles
      • Go to Operations Portal > CMS > Menus
      • Click on Public User tiles link
      • Add/edit/delete tiles and check for any errors
      • Click on Activate and publish once you are done with the content to see the tiles on the site
      • Once you are on the site, you should be able to see the tiles if you are not logged in as a customer
      • Once you log in as a customer, the tiles should not show anymore
    • Case 2:
      • Check Public user tiles Multilingual
      • Go to Operations Portal > CMS > Menus
      • Click on Public User tiles link
      • Choose a language from the language dropdown to add/edit/delete multilingual tiles
      • Add/edit/delete tiles and check for any errors
      • Click on Activate and publish once you are done with the content to see the tiles on the site
      • Once you are on the site, choose the language you want to view; the tiles that you have added in that language should show up
  49. KOD-17405: Incorrect Filtering for /api/system/companyProductCategory/companyAddress/{companyAddressID}/list
    • Regression Tests
    • Case 1:
      • Check that it is filtering by *companyAddressID* when we do not add any filter to the payload
    • Tests
    • Case 1:
      • Check that it is always filtering by *companyAddressID*, does not matter what custom filter we are using in the payload
  50. KOD-17423: Escape Spaces in the Address Search
  51. KOD-17466: Infor CSD JS Script Fix
  52. KOD-17471: Add Possibility to Filter Field 'deliveryID'
    • Tests
    • Case 1:
      • Check on Swagger side, endpoint: /api/system/delivery/list, try to filter by deliveryID
      • Put condition to filterFields in searchParams
      • {noformat}{
      • "and": false,
      • "name": "deliveryID",
      • "not": false,
      • "operation": "IS",
      • "value": "7" <--- some id of delivery record
      • }{noformat}
  53. KOD-17503: Google Search Console Verification
    • Regression Tests
    • Case 1:
      • Go to the Operations Portal -> Marketing -> SEO
      • Enter a meta tag into the “Meta Tag Verification” section
      • Go to the website and view page source
      • The full meta tag from step 2 should be outputted in the head of the page
  54. KOD-17502: Add New Endpoint for Draft Page Creation
    • Regression Tests
    • Case 1:
      • Create a content page
    • Case 2:
      • Create a content page draft
    • Case 3:
      • Publish a content Page draft
    • Case 4:
      • Delete a content Page
    • Tests
    • Case 1:
      • Create a content Page draft using new endpoint:
      • [POST]{{/api/system/contentPage/draft/{contentPageID}}}
    • Case 2:
      • Publish a content page Draft and check that the original contentPage code was not modified
      • Also, content Page Draft Code should not be modified
  55. KOD-17512: Upper/Lower Case Issue with Switch Accounts Feature
  56. KOD-17513: No Pricing Showing on Customer Portal Order > Items Screen
  57. KOD-17527: Add customerCanModify to Company Product Categories Grid
    • Regression Tests
    • Log in to your account:
      • On Company Product Categories page:
      • On the grid, change the column values *EXCEPT the* Customer Can Modify field
      • Reload the page to confirm changes
    • Open a sample catalog:
      • Change the fields *EXCEPT* the Customer Can Modify field
      • Save; reload the page to confirm
      • You can confirm it further by going to the Company Product Categories grid and see if the changes has been applied
    • Tests
    • Log in to your account:
      • Go to Company Product Categories
      • On the grid, there’s a new column called Customer Can Modify
      • Modify the value
      • The change should be applied; reload to confirm the change
    • Following the previous test:
      • Go to the catalog’s detail page
      • Confirm that the change has been reflected in the page
      • Modify the value again inside the details page
      • Go back to the grid and confirm the change there
    • Log in to your account:
      • Go to Company Product Categories page
      • On the grid, confirm that the Customer Can Modify column is available
      • Show/hide the column
      • Try to edit the value in the grid; reload the confirm
  58. KOD-17563: Warehouse List Endpoint: Make Column Active, Sortable and Filterable
    • Regression Tests
    • Case 1:
      • Check if the page can be opened, filtered or sorted without any exceptions
    • Tests
    • Case 1:
      • Swagger → Endpoint:
      • {{/api/system/warehouse/list}}
      • 1.
        • Replace the {{filterFields}} property to this one to filter by {{active}} column which has {{No}} value
        • {noformat}"filterFields": [
        • {
        • "boost": null,
        • "fuzzy": null,
        • "not": false,
        • "name": "active",
        • "operation": "IS",
        • "tagged": false,
        • "value": false
        • }
        • ]{noformat}
      • 2.
        • Replace the {{filterFields}} property to this one to filter by {{active}} column which has {{No}} value
        • {noformat}"filterFields": [
        • {
        • "boost": null,
        • "fuzzy": null,
        • "not": false,
        • "name": "active",
        • "operation": "IS",
        • "tagged": false,
        • "value": true
        • }
        • ]{noformat}
      • 3.
        • Check the above 2 cases with name of the column {{isActive}}
        • {noformat}"filterFields": [
        • {
        • "boost": null,
        • "fuzzy": null,
        • "not": false,
        • "name": "isActive",
        • "operation": "IS",
        • "tagged": false,
        • "value": true / false
        • }
        • ]{noformat}
    • Case 2:
      • Swagger → Endpoint:
      • {{/api/system/warehouse/list}}
      • Check the sort behaviour by the column {{active}}
      • sortDirection → ASC
      • {noformat}"sorts": [
      • {
      • "sortBy": "active",
      • "sortDirection": "asc"
      • }
      • ]{noformat}
      • sortDirection → DESC
      • {noformat}"sorts": [
      • {
      • "sortBy": "active",
      • "sortDirection": "desc"
      • }
      • ]{noformat}
      • Check the sort behavior by the column {{isActive}}
      • sortDirection → ASC
      • {noformat}"sorts": [
      • {
      • "sortBy": "isActive",
      • "sortDirection": "asc"
      • }
      • ]{noformat}
      • sortDirection → DESC
      • {noformat}"sorts": [
      • {
      • "sortBy": "isActive",
      • "sortDirection": "desc"
      • }
      • ]{noformat}
    • Case 3:
      • UI -> Check the sorting on UI of the active column