Handling Product Returns Without Invoice Numbers
Overview​
This guide explains how to enable product returns in Ultimate POS when customers don't have their invoice numbers. The solution involves allowing negative quantities in POS transactions.
Prerequisites​
- Administrative access to Ultimate POS files
- Basic knowledge of file editing
- Understanding of role permissions in Ultimate POS
Step 1: Modify the Quantity Input Field​
Navigate to the product row template file:
resources/views/sale_pos/product_row.blade.php
Find the Input Field​
Locate the quantity input field that contains the data-min="1"
attribute:
<input
type="text"
data-min="1"
class="form-control pos_quantity input_number"
name="products[{{$row_count}}][quantity]"
...
/>
Remove the Minimum Restriction​
Remove the data-min="1"
attribute from the input field:
<input
type="text"
class="form-control pos_quantity input_number"
name="products[{{$row_count}}][quantity]"
...
/>
This change allows users to enter negative values in the quantity field, which is essential for processing returns.
Step 2: Set Up Role Permissions​
Create appropriate role permissions to control who can process returns with negative quantities.
Not all staff members should have permission to create transactions with negative quantities. Set up proper role restrictions to prevent misuse.
Step 3: Processing Returns​
Once the code modification is complete, follow these steps to process a return:
-
Create a new transaction/sale
- Go to the POS interface
- Start a new transaction
-
Add returned products
- Search and add the products being returned
- Use barcode scanning if available
-
Enter negative quantities
- For each returned item, enter a negative quantity
- Example:
-1
for returning 1 item,-2
for returning 2 items
-
Complete the transaction
- Process the transaction as normal
- The system will automatically subtract the items from inventory
Benefits​
- No invoice required: Process returns without needing the original receipt
- Automatic inventory adjustment: Negative quantities properly update stock levels
- Audit trail: All return transactions are recorded in the system
- Flexible processing: Handle various return scenarios
Each return transaction will increment the invoice numbering sequence. This means that processing returns will consume invoice numbers just like regular sales transactions.
Important Considerations​
- Backup your files before making any modifications
- Test thoroughly in a development environment first
- Train staff on the new return process
- Monitor return transactions for any unusual activity
- Review role permissions regularly
💛 Support this project
Binance ID:
478036326