DATE:
AUTHOR:
Ezzan
🌐 Web

WebApp Version 25.32 Changelog

DATE:
AUTHOR: Ezzan

This update includes new features, essential performance improvements, and usability enhancements, ensuring your daily operations run smoothly. We've also addressed several bug fixes to enhance stability and reliability. Thank you for your continued trust and feedback, which help us deliver the best possible service.


New Feature:

  • [Products] Consistent Negative Inventory Behavior for Serialized Product

    We’ve revamped the UX for serialized products to ensure consistency when interacting with the Negative Inventory feature. Previously, certain modules (e.g., adjustments) allowed serial numbers to go negative — for example, if you had two serials and reduced by three, the stock would become -1 — while other modules (such as voiding a bill) did not permit this. Now, all modules will follow the same rule: if the action would result in a negative serial stock, it will be allowed only if the outlet’s Negative Inventory setting is enabled. This creates a consistent and predictable behavior across the system.

  • [Promotion - Coupon] Empty Cart on Remove for Access-Type Coupons

    We’ve added a new configuration for Access-type Coupons, which are typically used by cashiers to temporarily gain specific permissions they usually don’t have, such as deleting items or applying discounts. This configuration is available when creating coupons, such as "FullAccess" or "Parked Deletion", and is referred to as "Empty Cart on Remove". When enabled, it ensures that if the coupon is removed later, the cart will be automatically cleared, forcing the user to refresh and re-add items before proceeding.

    In the cart, when a user removes an Access-type coupon with "Empty Cart on Remove" enabled, all items in the cart will be cleared instantly. This prevents scenarios where a cashier could exploit the timing of coupon balance deductions, for instance, using the coupon to perform restricted actions and then removing it to make it appear unused. By forcing a cart refresh and item re-entry, the system ensures proper tracking and prevents misuse.

Minor Improvements:

  • [Products - Variant] Improve Inventory Tab UX for Searching Outlet

  • [Sell] Prevent Item Removal via Browser Refresh for Non-Delete-Item Users

    We’ve improved the Sell UX for users without the Delete Item permission to prevent a potential fraud scenario where items could be removed from the cart by simply refreshing the browser. Now, when such users add items to the cart, those items will remain even after a page refresh, and the selected outlet will also be preserved, even if the user has access to multiple outlets. The only way to remove items is by applying a Full Access Coupon, after which the user can proceed with the transaction. When starting a new sell, the cart will reset as usual.

  • [Reports - Monthly] Provide Multiple Quantity Filter in Chart View

  • [Orders - Supplier Bill] Implement TinyMce Component for Void Bill Note

  • [Payment - Payment Made] Display Outlet Name in Payment Made Detail Page

  • [Adjustment] Handle Adding a Single Serial Number without the Enter Button

  • [Buy] Handle Adding a Single Serial Number without Enter Button

  • [Logistics]

    • Hide Selected Outlet from Source in Destination Option in Transfer Order Form

    • Display Filtered Date in Transfer Order Report by Product Page Title

    • Display Filtered Date in Transfer Order Report Detail Page Title

    • Rename Transfer Order Report Detail Route from Transfer to Detail

  • [Promotion - Coupon] Allow Full Access Coupon to Give Delete Item and Clear Sell Cart for Unauthorized Users

  • [Outlet - Import]

    • Auto Set Buy Enabled Configuration to Yes When Importing New Outlet

    • Provide Import Status Filter

Bug Fixes:

  • [Reports - Category] Fix Sales Percentage Discrepancy Between Table View and Chart View

  • [Reports - Monthly] Fix Filter Multiple Qty in Table View Report Does Not Work

  • [Payment - Payment Made]

    • Fix Incorrect Payment Aggregation in Payment Made from Join Bill

    • Fix Number Hyperlink for Record from Join Bill to Join Bill Info Instead of Supplier Bill Info

  • [Debt - Join Invoice] Fix Restricted Payment Method Still Appearing in Form

  • [Debt - Join Bill] Fix Restricted Payment Method Still Appearing in Form

  • [Adjustment - Report] Fix Adjustment Summary Display Incorrect Data

  • [Logistics - Transfer Order] Remove HTML Tag from Note in Receive & Adjust Form

Patch [25.32.1]:

  • [Products - Inventory Log] Show Both Outbound Number & Invoice Number If Different

  • [Sell]

    • Fix Item Cart Cache Not Disappear When Click Sell in New Tab After Sell Complete

    • Fix Item Quantity will Reset to 1 When Refreshing Cart for Users without Delete Item Role

    • Remove Invoice Discount When Removing Coupon (Empty Cart on Remove Configuration is Enabled)

  • [Contact - Customer] Hide Point History from Coupon Creation with Zero Point Deduction

  • [Reports - Products] Fix Filter Multiply Unit Qty Does Not Work Properly

  • [Reports - Monthly]

    • Fix Filter Multiply Unit Qty Does Not Work Properly

    • Fix Filter Compare to Last Two Years Does Not Work in Chart View

  • [Logistics] Fix Users Can Submit Serialized Product without Serial Number for Transfer Order 3 & 4 Steps

  • [Promotion - Coupon] Always Enable Point Deducted Configuration When Assigning Customer

  • [Outlet] Fix Default Buy Configuration Still False When Creating New Outlet

  • [Setup - Apps] Update Books URL

  • [API - Products] Fix Product Name not Mapped to Text

  • [API - Users] Provide Users System Type in Get User List API Response

Patch [25.32.2]:

  • [Products]

    • Fix API Get Row Count Display Incorrect Data

    • Provide Name Column for Display Name in Default Export Option

    • Allow Users to Update Variant Display Name from CSV Import

      This feature was developed based on customer request #5175

  • [Products - Inventory Log] Differentiate Icon Log Based on Transaction

  • [Orders - Customer Invoice] Display Domain in Midtrans Transaction List When Paying QRIS from Invoice Info

  • [Developer - Webhook Logs] Remove Role Restriction from Status and Event Filter

  • [Infrastructure]

    • Allow CORS for dealpos.app Sub-Domain

    • Remove Books-Shift Sync from Apps

  • [API - Outbound Logistics] Provide Multiple Enabled from PickList Outlet in Payload Request

Patch [25.32.3]:

  • [Product - Inventory Log] Fix Customer Name from Invoice is Missing in Outbound Log History

  • [Sell] Fix Page Access Not Properly Restricted After Logout and Login with Different User Permissions

  • [Developer - Configuration]

    • Restrict Developer Configuration Edit with Role

    • Restrict Delete Coupon Provider with Developer Edit Role

    • Display Response Time (ms) in Webhook Log Details

  • [API - Invoice] Get List Multiple Outlet with Variant

    • Provide Logistic Service in Response

    • Provide Thumbnail URL in Response

Patch [25.32.4]:


Stay tuned for more updates, and don't hesitate to reach out if you have any questions or need support.

Powered by LaunchNotes