1.28.83 Release

27/8/2026

Bug-Fixes

#1 [Request][Convert] Fix: Reset Classification Code When Auto-Reverting Rejected/Invalid e-Invoices

1. Overview
Resolved an issue where invoices that auto-reverted to a consolidated draft failed LHDN validation due to an incorrect classification code.

2. What Has Changed

Classification Code Reset on Auto-Revert
Previously: When a requested e-Invoice was rejected and auto-reverted to a General Public consolidated draft, the system did not reset the item classification code. This caused a continuous loop of validation failures upon resubmission.
Now: The system correctly resets the item classification code to 004 (the required code for the General Public profile) whenever an invoice reverts to a consolidated draft.

**3. Impact **
Auto-reverted consolidated invoices will now pass LHDN validation and can be successfully resubmitted without manual intervention or getting stuck in a rejection loop.

#2 [Bulk Action][Export Invoice] Fix: Resolve 502 Error During Bulk Export

1.** Overview**
Fixed a timeout error (Status Code 502) that occurred when trying to bulk export consolidated invoices containing a massive number of line items.

2. What Has Changed
Smarter Export Background Processing

Previously: The export process only moved to a background task if a user selected more than 1,000 invoices. This caused system timeouts if users selected fewer invoices that secretly contained tens of thousands of combined line items.

Now: The system checks both the invoice count and the line item count. If the selection exceeds 1,000 invoices OR 3,000 line items, the system safely processes the massive export in the background. A pop-up notification will appear, and the user will receive the file download link via email once the generation is complete.

3. Impact
Users can now successfully bulk export large data sets across all invoice types and channels without experiencing system crashes, gateway errors, or frontend timeouts.

#3 [Bulk Action][Delete] Fix: Validate Invoice Status Before Bulk Deletion

1. Overview
Fixed a validation gap in the Bulk Delete function that allowed the accidental deletion of invoices already submitted to LHDN.

2. What Has Changed

Bulk Delete Status Validation

Previously: The bulk delete tool lacked backend status validation, allowing users to accidentally delete submitted invoices. This behaved differently from the single delete function, which correctly blocked the action.

Now: The bulk delete feature strictly applies the same validation rules as the single delete function. The system verifies the status of every selected invoice at the backend, securely preventing the deletion of any document already submitted to LHDN.

3. Impact
Protects critical invoice data by ensuring only eligible records (such as Drafts or Errors) can be deleted, applying consistently across all environments, document types, and submission channels.

#4 [Invoice Submission][SFTP] Fix: Resolve Invoice Processing Issues

1. Overview
Fixed SFTP file processing failures and added automated alerts for inactivity.

2. What Has Changed

File Processing
Previously: A legacy configuration error and outdated validation rules caused invoices to fail and get stuck in the New folder.
Now: The system uses the correct folder paths and successfully processes updated CSV files that exclude deprecated columns.

SFTP Monitoring
Previously: Prolonged SFTP processing failures went completely undetected.
Now: The system actively tracks sync history and triggers automated Slack alerts if a workspace misses its expected schedule.

3. Impact
Invoices process reliably, and proactive Slack alerts prevent undetected SFTP outages.

#5 [Sales/SB][Consolidated] Fix: Exclude Consolidated Invoices from Credit Note Offset Invoice Status Validation

1. Overview
Fixed validation logic for Credit Notes to ensure accurate error handling and document routing for offset invoices.

2. What Has Changed

Non-Consolidated Credit Notes
Previously: The system returned inaccurate errors when an offset invoice existed but was not validated.
Now: Added a strict two-step check. It returns "Offset invoice not found" if missing, and "Offset invoice not validated yet" if unvalidated. Valid invoices proceed to LHDN.

Consolidated Credit Notes
Previously: Consolidated invoices falsely triggered "offset invoice not found" errors for existing offset invoices.
Now: Invoices with valid, blank, or "NA" offset references correctly save as drafts. Errors only trigger if the offset genuinely does not exist in the portal.

3. Impact
Credit Notes now route correctly to drafts or submission queues, and users receive precise error messages for missing or invalid offsets.

What's New

#1 Enhancement: Improve Invoice Management

1. Overview
Restricted line item modification capabilities for invoices generated outside the JomeInvoice Portal.

**2. What Has Changed **
Portal Submissions
Previously: All invoices allowed line item modifications regardless of their origin.
Now: Edit and delete buttons for line items remain fully accessible only for invoices created directly within the JomeInvoice Portal.

External Submissions
Previously: Users could edit or delete line items on invoices submitted via external channels.
Now: Edit and delete buttons for line items are hidden for all non-portal submissions (e.g., API, SFTP, CSV Uploads, Shopify, Loyverse) to protect the integrity of the original source data.

3. Impact
Prevents unintended line item changes on automated or externally synced submissions while maintaining full editing control for manually created portal invoices.

#2 Enhancement: Improve System Performance and Stability

1. Overview
Optimized consolidation jobs to prevent memory crashes and improve processing speed.

2. What Has Changed
Memory Stability
Previously: Loading massive datasets into memory risked system crashes.
Now: Chunk processing safely handles high-volume data without stalling.

B2C Invoices
Previously: The system unnecessarily processed "General Public" invoices.
Now: Skips these to conserve resources.

Re-queue Guard
Previously: Re-uploading could accidentally re-queue already consolidated invoices.
Now: Consolidated invoices are strictly blocked from entering the queue again.

3**. Impact **
Faster, crash-free consolidations with zero redundant background processing.