Fixes
[VA-9972] - DHL not appearing as a shipping option
[VA-9977] - Cannot apply a deposit balance to an open invoice
Release Notes
[VA-9858] - Export invoices into CSV and upload to SFTP
- This feature is for TriState.
- Versa can export invoices from selected customers ( ROAD RANGER and Road Ranger Texas) to an SFTP site provided by Nexus EDI once the invoices are posted in Versa. The sales invoice will be exported into the sales invoice format for our import invoice feature.
- Export will be done in a worker, and we will rely on a liquid invoice form (in the format of CSV) to do the actual creation of invoices in CSV. Richard will create a liquid form that mimics our invoice import format. use a test form for now.
- In versa, there is also a UI to enter SFTP details. /ftp_servers and the menu to ftp is visible when the feature ''EDI Van' is on for the firm, and this makes this UI always available to all firms.
- Versa has created a new custom field of boolean type on the customer bill called "Export To Nexus EDI". The worker will look for the customer bill with this custom field set to true. Find any invoices that have not been transmitted to the SFTP folder and use the liquid form to create a file in CSV and upload to SFTP. We need to create a communication event on the invoice to indicate that the files have been sent to SFTP. The preference of such a record will be used to determine if an invoice is to be uploaded to SFTP or not. The worker will look for the first SFTP record for the firm and use it to upload the file. We will hardcode the firm ID in the worker since this is only needed for one firm.
[VA-9924] - Allow secondary authentication method other than SMS
- We authenticate users by SMS, and sometimes, when a user's phone is not available (travelling or SMS got blocked), the user needs an alternative method of authentication. So we will add a backup email (which cannot be the same email as the user's primary email) in the User Authentication Phone record for the user. When a user is sent an SMA message and asked to enter the code to verify. We can give the user a link to say, "Receive code via email?" When the user clicks on this, we will ask the user to enter their alternative email (not their primary email, which must be the same as the alternative email they entered), and then we will send the code to this email, and the user can enter it. This link is only available for user with the alternative email set in their profile.
- To enter this alternative email, we will add to the dashboard/user_authentication_phone view (accessed by a button update phone number for authentication in user_preferences). The user can enter an alternative email to their account. Explain how the alternative email is used: "In case you cannot receive a code via your phone. You can request to have the code sent to this email."
- Also, add to the view when the user first logs in and asks to enter their mobile phone number. Not sure if the view is shared with the view above.
[VA-9978] - User can map Shopify orders by source name and have the orders be associated with fixed customers
- Versa has added a new area in the webstore setting page for Shopify, similar to marketplace deductions. It is called the new area Marketplace Customer Mapping. The user can enter a source name and choose a customer by name, so any orders with the specified source will be tied to the specified customer.
- The customer selection is done similarly to ordering a new page, so the user will enter a few letters, and an auto-suggested list shows up for the user to choose which customer.
[VA-9980] - Add contact to prospects and allow the user to create an opportunity from customers
- We have contacts(party model) associated with customer bills, so we need to support that for prospects too.
- Versa has created a new tab for prospects to list contacts associated with the prospect. See how we implement the contacts tab with customer bill to (related_parties method in customer_bill_to.rb) . We should add a new field to related party model for user to record a note. (They can use to indicate what kind of contact this person is. For AR, AP, etc). Update the add new contact modal (for both customer bill to and prospects) to take this new field. When a customer bill to is created from the prospect. We should copy the related parties record from prospect to customer bill to but do not create the associated parties record, just link them to the related parties records for customer bill to instead.
User can choose to create a new prospect from an existing customer via a new link on the new opportunity page. after the prospect is created, it is auto selected on the new opportunity page for user to continue.
[VA-9981] - Add setting to control auto replacement of missing products
- In Versa if a product cannot be matched to an existing product. we replace the product with a generic product called shopify misc. we need to add a setting to control this behaviour, called the setting 'Auto Replace Unmatched Products" Default is on. The tooltip text for setting page is "If we cannot find a product in the Shopify order, we will still download the order and replace the product with a place holder product called Shopify Misc Product.
- This way, orders will still come it. If you do not want this auto replacement to happen, turn this off and the orders will not be imported due to the missing products. You will see such error in the error logs for webstores and after the missing product is created in Versa, the orders will then be downloaded". So when setting is off, this replacement of product should not happen. when on, stick with current behaviour.
[VA-9982] - Products are displayed with duplicate description
- If user put same text in product name and in product description (for trading names), when we list the product's full name (called practical name in code),the same text appear twice. Change code to handle duplicated desc, if we detect there is a duplicate . only use the trading name.
[VA-9983] - Import tags on shopify order and use as description of payment receipts
- Include Shopify order tags in payment receipt descriptions for easier identification and reconciliation.
Add A new checkbox "Import tags as payment description" which will appear below "Import tags on order" - Once this is checked, when new payment receipt is created, the tags will be appended to the payment receipt description as comma separate text.
[VA-9984] - Add check on transfer order page to disallow non-inventory product. Shows inventory tab on transfer order page
- Versa will now enable users to show inventory so user can see how much they can transfer without leaving the page.
- User will not be able to choose product that is not inventoried for transfer
[VA-9986] - Add new filter to Sales by Products and Services for User to choose one or more products
- Replace Inventoried Product Part Number filter from a text range to be a auto suggest list and user can pick one of more product(part number).
- This is also added to the Customer Sales by Product report
[VA-9987] - New UI for reports listing page
Overview
Complete redesign of the /reports/operations page to modernize the user interface and improve user experience. The page now features a cleaner, more intuitive layout with better visual hierarchy and interactivity.
What's New
Modern, Card-Based Design
- Reports are now displayed as clean, professional cards instead of a simple list
- Each card shows the report name, description, and custom report badge (if applicable)
- Consistent card heights for a more organized appearance
Horizontal Category Navigation
- Replaced the dropdown menu with easy-to-scan horizontal tabs
- Active category highlighted in orange for clear visual feedback
- Icons for each category for faster recognition
- Mobile-friendly with horizontal scrolling on smaller screens
Improved Interactivity
- Hover effects show which reports are clickable
- Animated chevron icon that rotates when you expand a report
- Loading indicator appears inside the card while parameters are being fetched
- Smoother animations and transitions throughout
- Add link back to reports in the report viewing page
Enhanced Search
- Taller, more prominent search bar
- Simplified placeholder text ("Search...")
- Better focus styling with orange accent
Quick Access to Favorites
- Star button on each report card to add/remove from "My Reports"
- Visual feedback shows which reports are already in your favorites
Caching
Report filters and report listing are cached to make repeated access faster.
Mobile Responsive
- Optimized layout for tablets and mobile devices
- Touch-friendly buttons and tap targets
- Scrollable category tabs on smaller screens
Frequently used reports
- System will track report usage by user
- For each report category, the report used the most by the user will be shown at the top of list as frequently used reports. My reports will show frequently used reports across all categories.
Benefits
- Faster Navigation: Find reports more quickly with visual category tabs
- Better Discoverability: Descriptions and icons help identify the right report
- Cleaner Interface: Modern design reduces visual clutter
- More Intuitive: Clear visual cues guide you through the workflow
- Consistent Experience: Same professional look across all report categories
[VA-9991] - create new report products on open opportunities
-
Under the sales category but require CRM pipeline feature to see them
1. Products on opportunities
-
Show a list of products on open opportunities(non closed or lost)
1. Pipeline Value by Stage
Purpose: See total opportunity value at each pipeline stage
Columns: Stage Name, Number of Opportunities, Total Value, Avg Value, Oldest Opportunity Date
Filters: Pipeline, Date Range, Sales Agent, Prospect/Customer
Business Value: Identify bottlenecks, forecast revenue by stage2. Opportunity Aging Report
Purpose: Track how long opportunities have been in each stage
Columns: Opportunity #, Prospect/Customer, Stage, Days in Current Stage, Days Since Created, Expected Close Date, Value
Filters: Pipeline, Stage, Date Range, Sales Agent
Business Value: Find stalled deals, prioritize follow-ups
Alert: Highlight opportunities over 30/60/90 days old3. Win/Loss Analysis
Purpose: Understand conversion rates and why deals are won or lost
Columns: Period, Total Opps, Won Count, Lost Count, Win Rate %, Total Won Value, Avg Deal Size
Filters: Date Range (by close date), Pipeline, Sales Agent, Product Category
Business Value: Improve sales process, identify patterns.
Comments and Suggestions
0 comments
Article is closed for comments.
Related articles