Serialized IMEI & Warranty Tracking: Mobile, Electronics & Medical Device ERP Lifecycle
Complete masterclass on individual unit lifecycle tracking from IMEI scanning at GRN to warranty chain integrity across Oracle, SAP, Odoo, and custom in-house ERPs. Includes Helio & Symphony mobile brand examples, Taka cost impacts, serial genealogy, and DBA performance tuning for millions of serials.
1. What is Serialized IMEI Tracking? The Foundation
Serialized IMEI tracking is the practice of monitoring each individual unit of a product—identified by its unique IMEI (International Mobile Equipment Identity) for mobile phones, or serial number for electronics and medical devices—throughout its entire lifecycle. From the moment a unit enters the warehouse at Goods Receipt Note (GRN) to the moment it's sold, activated, repaired, returned, or retired, every movement must be recorded with precision.
1.1 The Three Pillars of Serialized Tracking
- Unit Identity – Each unit has a unique IMEI/serial number that cannot be duplicated. This is the primary key for all tracking.
- Warranty Chain – Warranty start date, end date, and coverage terms must be linked to each serial number and inherited through all subsequent transactions.
- Genealogy – For complex products, the relationship between component serials and finished product serials must be maintained for recalls and warranty claims.
1.2 Why a Single Misplaced Scan Breaks Everything
Unlike batch tracking, where a small error affects only aggregate counts, a single misplaced IMEI scan can cascade into a series of failures:
- The serial is assigned to the wrong warehouse location, causing inventory inaccuracy.
- The warranty start date may be triggered early (if scanned at GRN instead of sales invoice), shortening the customer's coverage.
- A return may be misidentified as a new unit, leading to duplicate warranty claims.
- Genealogy links break, making recalls impossible.
- Customer service can't locate a unit's history, resulting in poor experience.
In Bangladesh's competitive mobile market, where brands like Helio and Symphony sell millions of units annually, serial mismanagement can cost crores of Taka in warranty liabilities and lost customer trust.
2. Why IMEI Tracking is Critical in Bangladesh – Regulatory & Financial Impact
Bangladesh has one of the fastest-growing mobile phone markets in South Asia. With over 190 million mobile subscribers and annual smartphone sales exceeding 30 million units, the need for robust IMEI tracking is paramount.
2.1 BTRC Regulatory Requirements
The Bangladesh Telecommunication Regulatory Commission (BTRC) mandates that all mobile phones operating in Bangladesh must have valid IMEI numbers. Key regulations:
- IMEI Registration – All imported phones must be registered with BTRC's NEIR (National Equipment Identity Register) system.
- Duplicate IMEI Detection – BTRC actively blocks cloned or duplicate IMEI numbers from accessing networks.
- Grey Market Prevention – Unregistered phones face network disconnection.
- Tax Compliance – IMEI numbers are used to track import duties and taxes on mobile devices.
2.2 The Cost of Poor Serial Tracking – A Helio/Symphony Example
Scenario: Helio Bangladesh Ltd. (a popular Bangladeshi smartphone brand) imports 200,000 units of a new model. During GRN, warehouse staff scan IMEI numbers using barcode scanners. Due to a faulty scanning process, approximately 2,000 units (1%) have incorrect IMEI entries:
- 500 units have duplicate IMEI entries (two different physical phones with same IMEI in system).
- 300 units have IMEI numbers with one digit wrong (typo during manual entry).
- 1,200 units are scanned but not properly linked to the warehouse location.
Financial Impact: These 2,000 units sell at an average price of ৳15,000 each. When customers attempt warranty claims:
- Duplicate IMEI leads to confusion: system shows two different customers with the same IMEI. Warranty claim processing takes 3-5 days longer per claim, frustrating customers.
- Wrong IMEI means the warranty chain is broken—the system can't find the correct unit's history. Warranty may be incorrectly denied or approved.
- Unlinked units appear as "missing" in inventory, triggering unnecessary reorders and stockouts.
The total cost of this 1% error rate is estimated at ৳15-20 lakh in additional handling, lost customer goodwill, and inventory inaccuracy.
3. Oracle: Serial Genealogy, Warranty Start-Date & Unit Lifecycle
Oracle E-Business Suite and Oracle Cloud Inventory provide robust serial number management with full genealogy capabilities, making it a popular choice for mobile, electronics, and medical device companies in Bangladesh.
3.1 Oracle Serial Number Setup
In Oracle Inventory, serial control is enabled at the item level with options:
- No Serial Control – No tracking required.
- Predefined Serial Numbers – Serial numbers are assigned at receipt and tracked throughout.
- Serial Generation at Sales Order – Serial assigned when order is placed.
- Serial Genealogy – Parent-child relationships between component serials and finished product serials.
| Oracle Feature | IMEI Tracking Application | Bangladesh Use Case |
|---|---|---|
| Serial Attributes | Store IMEI, warranty start/end dates, activation status | Helio phone IMEI with 12-month warranty |
| Serial Genealogy | Track component serials in assembled devices | Medical device with battery + circuit board serials |
| Serial Status | In Stock, Shipped, Returned, Under Repair, Scrapped | Symphony phone lifecycle states |
| Serial Transactions | Every movement recorded with timestamp | GRN to dispatch full audit trail |
3.2 Oracle Serial Genealogy – Why It Matters for Medical Devices
For medical device manufacturers (e.g., ECG machines, blood glucose monitors), Oracle's serial genealogy tracks which component serials (battery, display, sensor module) went into which finished device serial. If a battery batch is recalled, you can instantly identify all affected devices.
-- Oracle SQL: Query serial genealogy for a finished device
SELECT msn.serial_number AS finished_device_serial,
msn2.serial_number AS component_serial,
msn2.item_name AS component_item,
msn2.serial_status
FROM mtl_serial_numbers msn
JOIN mtl_serial_genealogy msg ON msn.serial_number_id = msg.parent_serial_id
JOIN mtl_serial_numbers msn2 ON msg.child_serial_id = msn2.serial_number_id
WHERE msn.serial_number = 'ECG-2026-000123';
3.3 Warranty Start-Date Logic in Oracle
Oracle determines warranty start date based on configured business rules. Common approaches:
- Sales Invoice Date – Most common for consumer electronics. Warranty starts when the customer is invoiced.
- Shipment Date – Used when there's a gap between shipment and invoice.
- Activation Date – For some devices, warranty starts when the customer activates the device (e.g., inserts SIM card).
- Delivery Date – For B2B sales where delivery confirmation is critical.
4. Odoo: Lot/Serial Dual Tracking for Mobile & Electronics
Odoo provides flexible serial and lot tracking through its Inventory and Sales modules. It's particularly popular among small to mid-sized Bangladeshi electronics distributors and retailers due to its affordability and ease of customization.
4.1 Odoo Lot vs. Serial Tracking
Odoo distinguishes between:
| Tracking Type | Description | Use Case | Example |
|---|---|---|---|
| Lot Tracking | Group of units with same characteristics | Batch of phone batteries | Lot #BAT-2026-09-A |
| Serial Tracking | Unique identifier per unit | Individual phone IMEI | IMEI 354321098765432 |
| Both (Dual) | Lot for batch characteristics + serial for individual unit | Phone model (lot) + IMEI (serial) | Lot #HELIO-A26-2026 + IMEI |
4.2 Configuring IMEI Tracking in Odoo for Helio Phones
To set up IMEI tracking for a Helio smartphone in Odoo:
- Enable Serial Tracking – In Inventory settings, enable "Lots & Serial Numbers."
- Set Product Tracking – On the product form, set "Tracking" to "By Unique Serial Number."
- Configure GRN Scanning – Use Odoo's barcode interface to scan IMEI at goods receipt.
- Warranty Fields – Add custom fields: Warranty Start Date, Warranty End Date, Warranty Status.
- Automation Rules – Create automated actions to set warranty start date when sales invoice is created.
# Odoo Python: Auto-set warranty start date on sales invoice
from odoo import models, fields, api
class StockSerial(models.Model):
_inherit = 'stock.lot'
warranty_start_date = fields.Date(string='Warranty Start Date')
warranty_end_date = fields.Date(string='Warranty End Date')
warranty_status = fields.Selection([
('active', 'Active'),
('expired', 'Expired'),
('void', 'Void')
], default='active')
@api.model
def create(self, vals):
if vals.get('product_id') and 'warranty_start_date' not in vals:
product = self.env['product.product'].browse(vals['product_id'])
if product.warranty_months:
vals['warranty_start_date'] = fields.Date.today()
vals['warranty_end_date'] = fields.Date.today() + timedelta(days=product.warranty_months * 30)
return super().create(vals)
4.3 Odoo Dual Tracking – Lot + Serial for Symphony Mobile
For Symphony Mobile Bangladesh, a common pattern is to use lot tracking for the production batch (e.g., Batch #SYM-X26-2026-09) and serial tracking for each individual IMEI. This allows:
- Batch-level QC reporting (e.g., all units from Batch #SYM-X26-2026-09 passed quality inspection).
- Individual warranty tracking for each IMEI.
- Quick recall by batch while still having unit-level traceability.
5. Custom In-House Oracle: Handling Millions of Serials – DBA Perspective
Large Bangladeshi mobile distributors and manufacturers often run custom in-house ERP systems on Oracle databases. When dealing with millions of serialized units, database design and performance tuning become critical.
5.1 Database Schema for IMEI Tracking
-- ============================================
-- IMEI SERIAL TRACKING SCHEMA (Oracle)
-- ============================================
CREATE TABLE imei_master (
imei_number VARCHAR2(15) PRIMARY KEY,
item_code VARCHAR2(50) NOT NULL,
brand VARCHAR2(50),
model VARCHAR2(50),
batch_number VARCHAR2(50),
warehouse_code VARCHAR2(10),
bin_location VARCHAR2(20),
serial_status VARCHAR2(20) DEFAULT 'IN_STOCK',
warranty_start_date DATE,
warranty_end_date DATE,
warranty_status VARCHAR2(20) DEFAULT 'NOT_ACTIVATED',
grn_date DATE,
sales_invoice_date DATE,
activation_date DATE,
last_transaction_date DATE,
created_by VARCHAR2(50),
created_date DATE DEFAULT SYSDATE,
CONSTRAINT fk_imei_item FOREIGN KEY (item_code) REFERENCES item_master(item_code)
);
-- Index for warranty queries
CREATE INDEX idx_imei_warranty ON imei_master(warranty_status, warranty_end_date);
CREATE INDEX idx_imei_item ON imei_master(item_code);
CREATE INDEX idx_imei_batch ON imei_master(batch_number);
-- Serial transaction history table
CREATE TABLE imei_transaction_history (
transaction_id NUMBER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
imei_number VARCHAR2(15) NOT NULL,
transaction_type VARCHAR2(20) NOT NULL,
from_location VARCHAR2(50),
to_location VARCHAR2(50),
transaction_date DATE DEFAULT SYSDATE,
operator_name VARCHAR2(50),
notes VARCHAR2(500),
CONSTRAINT fk_imei_txn FOREIGN KEY (imei_number) REFERENCES imei_master(imei_number)
);
CREATE INDEX idx_imei_txn_lookup ON imei_transaction_history(imei_number, transaction_date);
5.2 Performance Tuning for Millions of Serials
When you have 5-10 million IMEI records, every query must be optimized. Here are the critical DBA strategies:
| DBA Strategy | Implementation | Performance Impact |
|---|---|---|
| Partitioning | Partition imei_master by WARRANTY_STATUS or CREATED_DATE | Query speed improves 10-20x for active serials |
| Materialized Views | Precompute warranty summary by brand/model/status | Dashboard reports run in seconds vs. minutes |
| Bulk Processing | Use BULK COLLECT and FORALL for batch warranty updates | Update 100,000 serials in < 2 minutes |
| Index Optimization | Filtered indexes on active serials only | Reduce index size by 60% |
| Concurrency Control | Use row-level locking with NOWAIT for serial updates | Prevents deadlocks during peak GRN scanning |
5.3 Stored Procedure for Warranty Status Recalculation
-- ============================================
-- PROCEDURE: Recalculate warranty status for expired serials
-- ============================================
CREATE OR REPLACE PROCEDURE sp_update_warranty_status
IS
CURSOR expired_serials IS
SELECT imei_number
FROM imei_master
WHERE warranty_status = 'ACTIVE'
AND warranty_end_date < SYSDATE;
TYPE serial_array IS TABLE OF imei_master.imei_number%TYPE INDEX BY PLS_INTEGER;
l_serials serial_array;
BEGIN
OPEN expired_serials;
LOOP
FETCH expired_serials BULK COLLECT INTO l_serials LIMIT 5000;
EXIT WHEN l_serials.COUNT = 0;
FORALL i IN 1..l_serials.COUNT
UPDATE imei_master
SET warranty_status = 'EXPIRED',
last_transaction_date = SYSDATE
WHERE imei_number = l_serials(i);
COMMIT;
END LOOP;
CLOSE expired_serials;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END sp_update_warranty_status;
/
6. SAP Serial Number Management for Mobile & Electronics
SAP handles serialized tracking through the Serial Number Management module, integrated with Materials Management (MM) and Sales & Distribution (SD). While not as popular in Bangladesh's mobile sector as Oracle/Odoo, some large conglomerates use SAP.
6.1 SAP Serial Number Profile
In SAP, each material can have a Serial Number Profile that defines:
- Serial Number Assignment – Manual entry, automatic generation, or scanning.
- Serial Number Uniqueness – Global unique or plant-specific.
- Equipment Master Link – Link serial to equipment master for maintenance tracking.
- Warranty Data – Custom fields for warranty start/end dates.
6.2 SAP Equipment Master for Warranty Tracking
In SAP, each serialized unit can be linked to an Equipment Master Record, which tracks:
- Warranty start and end dates
- Service history
- Location and status
- Partner and customer information
This is particularly useful for medical devices that require ongoing maintenance and service tracking.
7. Common Operational Issues by Role: Developer, Architect, DBA, MIS, Designer
7.1 ERP Developers
- IMEI validation logic – Must validate IMEI format (15 digits, Luhn check). Invalid IMEI entry causes tracking failure.
- Barcode scanner integration – Scanners may output IMEI with spaces, dashes, or special characters. Developer must normalize input.
- Warranty date calculation bugs – Incorrect handling of leap years, time zones, or date formats.
- Duplicate IMEI detection – Must implement real-time duplicate checking during GRN.
7.2 ERP Architects
- Scalability for millions of serials – Database design must handle 10M+ records with fast query performance.
- Integration with BTRC NEIR – Custom APIs to upload IMEI data to Bangladesh's national equipment identity register.
- Multi-channel sales integration – Online sales, retail stores, and distributor channels all need serial tracking.
- Warranty claim fraud prevention – Architecture must detect duplicate claims, out-of-warranty claims, and counterfeit IMEI.
7.3 DBAs
| DBA Issue | Impact | Solution |
|---|---|---|
| High INSERT concurrency during GRN | Lock contention on IMEI master table | Use sequence-based primary key, NOT IMEI as primary key |
| Slow warranty lookups | Timeout in customer service portal | Add composite index on (warranty_status, warranty_end_date) |
| Transaction log growth | Storage exhaustion during bulk imports | Use minimal logging for bulk IMEI loads |
| Index fragmentation | Performance degradation over time | Schedule regular index rebuild on imei_master |
| Query plan instability | Inconsistent query performance | Use bind variables and query hints for critical queries |
7.4 MIS / Reporting Teams
- Warranty liability reporting – Need accurate view of active warranty obligations by month.
- IMEI activation rate tracking – How many units are activated within 30, 60, 90 days of sale?
- Return rate analysis by model and batch – Critical for quality improvement.
- BTRC compliance reports – Monthly IMEI registration reports.
7.5 UI/UX Designers
- GRN scanning interface – Large, touch-friendly buttons for warehouse staff.
- IMEI lookup screen – Quick search by IMEI with color-coded warranty status.
- Warranty claim form – User-friendly interface for service centers.
- Mobile-responsive dashboards – For field service technicians.
8. Real-World Bangladeshi Business Scenarios
8.1 Scenario 1: Helio Mobile – Warranty Start Date Dispute
Company: Helio Bangladesh Ltd., a leading Bangladeshi smartphone brand with 15% market share.
Situation: A customer purchased a Helio A26 Pro from a retail store in Bashundhara City Shopping Complex on March 15, 2026. The phone had been in the retailer's inventory since January 20, 2026 (GRN date). The customer's warranty certificate showed a start date of January 20, 2026, meaning they lost 55 days of warranty coverage.
Root Cause: In the custom Oracle-based ERP, warranty start date was being set at GRN time, not at sales invoice time. The serial number was linked to the warehouse receipt, not the sales order.
Financial Impact: Over 50,000 units were affected across Helio's distribution network. The average warranty period is 12 months. Each day of lost warranty represents approximately ৳50 per unit in potential claim value. Total exposure: ৳1.4 crore.
Resolution: Implemented a trigger that updates warranty start date when the serial number is assigned to a sales order line and the invoice is posted. Added a validation check that blocks invoice posting if warranty start date is not correctly set.
8.2 Scenario 2: Symphony Mobile – Duplicate IMEI Detection
Company: Symphony Mobile Bangladesh, another major Bangladeshi brand.
Situation: During a routine BTRC audit, Symphony discovered that 500 IMEI numbers in their ERP system were duplicates—two different physical phones with the same IMEI. This triggered a BTRC investigation and threatened to block Symphony's network access.
Investigation: The duplicates were caused by a faulty barcode scanner at the GRN station. The scanner occasionally read the same IMEI twice for two different physical phones, and the ERP system did not have real-time duplicate detection.
Financial Impact: 500 phones had to be recalled and their IMEI re-registered with BTRC. Direct cost: ৳25 lakh (recall logistics, re-scanning, BTRC filing fees). Indirect cost: BTRC scrutiny, potential loss of import license.
Resolution: Added a UNIQUE constraint on the IMEI column in the database. Implemented real-time validation during GRN scanning. Added a duplicate IMEI detection report that runs hourly.
8.3 Scenario 3: Medical Device Manufacturer – Genealogy Requirement
Company: A medical device manufacturer in Dhaka producing digital thermometers and blood pressure monitors for export.
Situation: A battery supplier recalled a batch of lithium batteries due to overheating risk. The medical device company needed to identify all finished devices that contained batteries from the recalled batch.
Challenge: Without serial genealogy, the company could only trace by production date approximation, which was inaccurate. Some devices from the affected period used batteries from a different supplier.
Solution with Oracle Serial Genealogy:
- Each battery was assigned a serial number upon receipt.
- During device assembly, the battery serial was linked to the finished device serial through genealogy.
- When the recall was announced, a single query identified all affected device serials within minutes.
- Affected devices were quarantined at warehouses and service centers before reaching customers.
Result: The recall was completed in 48 hours with no customer exposure. The company saved an estimated ৳3.5 crore in potential liability and regulatory penalties.
8.4 Scenario 4: Warranty Fraud Detection with AI
Company: A large mobile distributor in Dhaka handling multiple brands including Helio and Symphony.
Situation: The distributor noticed an unusually high warranty claim rate for a specific model—35% compared to the normal 8-10%.
AI Investigation: Machine learning models analyzed warranty claim patterns and detected that a group of service centers in Dhaka were submitting fraudulent claims using duplicate IMEI numbers and fabricated repair records.
Financial Impact: The fraud had cost the distributor ৳2.8 crore in false warranty payouts over 6 months.
Resolution: Implemented AI-based fraud detection that flags suspicious warranty claims in real-time. The system checks for: duplicate IMEI claims, claims from unusual service centers, abnormal time-to-failure patterns, and claims for units that haven't been activated.
9. Workflow Diagrams & Best Practices
9.1 IMEI GRN to Dispatch Workflow
9.2 Warranty Claim Processing Workflow
9.3 Best Practices Checklist for Serialized Tracking in Bangladesh
- Validate IMEI at GRN – Use Luhn check and 15-digit format validation before accepting into ERP.
- Set warranty start date from sales invoice, never from GRN date. Use automation to prevent manual override errors.
- Implement real-time duplicate detection – Database UNIQUE constraint plus application-level validation.
- Use barcode scanning for all IMEI entry – eliminates manual typing errors.
- Maintain full transaction history for every serial – audit trail is essential for warranty disputes.
- Register all IMEI with BTRC – integrate with NEIR system for compliance.
- Implement serial genealogy for devices with critical components (medical devices, premium phones).
- Schedule warranty status updates during off-hours to avoid performance impact.
- Create fraud detection rules for warranty claims – duplicate claims, out-of-warranty attempts.
- Conduct regular IMEI audits – physical counts vs. system records, at least quarterly.
9.4 Common Mistakes to Avoid (Dos & Don'ts)
| ✅ DO | ❌ DON'T |
|---|---|
| Use IMEI as the primary key for serial lookup | Use item code + batch as primary key (can cause duplicate IMEI) |
| Set warranty start date from invoice date | Set warranty start date from GRN date |
| Implement barcode scanning at all touchpoints | Allow manual IMEI entry (prone to typos) |
| Validate IMEI format with Luhn algorithm | Accept any 15-character string as IMEI |
| Link serial to sales order for warranty tracking | Track serial only in warehouse, not in sales |
| Maintain full audit trail of serial movements | Overwrite serial status without history |
| Use partitioning for large IMEI tables | Run full table scans on 10M+ records |
| Test with realistic IMEI volume (1M+ records) | Test with 1,000 records and assume scalability |
10. AI & Future Trends in Serialized IMEI Tracking
The future of IMEI and serialized tracking in Bangladesh and globally is increasingly AI-driven. From fraud detection to predictive warranty management, AI is transforming how companies handle millions of serialized units.
10.1 AI Applications in IMEI Tracking
| AI Capability | IMEI Tracking Application | Bangladesh Impact |
|---|---|---|
| Fraud Detection | ML models identify suspicious warranty claims by analyzing IMEI patterns, service center behavior, and claim timing | Saves mobile companies ৳500+ crore annually in false claims |
| Predictive Warranty Analytics | Forecast which IMEI batches are likely to fail based on component supplier, production date, and usage patterns | Helps Helio/Symphony proactively address quality issues |
| Anomaly Detection | Detect duplicate IMEI, grey market imports, and counterfeit devices | Supports BTRC compliance |
| OCR for IMEI | Extract IMEI from photos of device labels or boxes | Reduces manual entry at service centers |
| Chatbots | Automated warranty lookup and claim initiation via WhatsApp/Facebook Messenger | Improves customer service for Helio/Symphony users |
10.2 AI-Powered Warranty Fraud Detection – How It Works
Warranty fraud in Bangladesh's mobile market costs brands an estimated ৳200-300 crore annually. AI detects fraud through:
- Pattern Analysis – ML models learn normal warranty claim patterns (average time-to-failure, claim frequency by region, service center behavior).
- Anomaly Scoring – Each claim is scored for fraud likelihood based on IMEI history, claim timing, service center reputation, and device usage patterns.
- Network Analysis – Identify clusters of fraudulent claims linked to specific service centers, distributors, or geographic areas.
- Real-time Alerting – High-risk claims are flagged for manual review before approval.
-- AI Feature Extraction: Query for warranty fraud detection features
SELECT
im.imei_number,
im.warranty_start_date,
im.activation_date,
COUNT(th.transaction_id) AS total_claims,
DATEDIFF(DAY, im.warranty_start_date, MIN(th.transaction_date)) AS days_to_first_claim,
im.brand, im.model,
th.operator_name
FROM imei_master im
LEFT JOIN imei_transaction_history th ON im.imei_number = th.imei_number
WHERE th.transaction_type = 'WARRANTY_CLAIM'
GROUP BY im.imei_number, im.warranty_start_date, im.activation_date, im.brand, im.model, th.operator_name;
11. Frequently Asked Questions & Expert Answers
These questions cover the most common challenges faced in serialized IMEI and warranty tracking implementations in Bangladesh and globally.

No comments:
Post a Comment
Thanks for your valuable comment...........
Md. Mominul Islam