Requirement
This initiative aims to revolutionize the way we manage our inventory, streamline operations, enhance accuracy, and ultimately drive profitability.
- Optimized Inventory Control: The proposed WMS will provide real-time visibility into our inventory levels, locations, and movement, ensuring that we can make informed decisions to minimize overstock and stockouts.
- Enhanced Order receiving: By automating order processes, the WMS will reduce errors, and helpful while receiving or transferring stocks to warehouse.
- Efficient Space Utilization: We will maximize warehouse space utilization, leading to cost savings and the ability to handle increased stock volume.
- Data-Driven Insights: The integrated system will provide actionable insights through robust reporting and analytics, helping us identify trends, forecast demand, and make data-driven decisions.
Prerequisites:
- We need the mock-up of the receipt PDF to create the PDF.
- Provide the roles to set as approvers for the custom record.
Deliverables
Web App
We have included the details for implementing the solution to manage customer payments automatically as below.
We will create a web app to enter the details by warehouse operators.
The Firebase will be used for storing the data and the APIs will be added in the firebase to post the data to NetSuite through NetSuite Endpoints.

Overall Application Requirements
| Front-end | React.js |
| Backend | Node.js |
| Hosting Server | Firebase |
App General Features:
- Header – The header section will have the logo, Dashboard, User, and login.
- Sidebar – The Sidebar section will have selection options
- Main Content – The section will display main details based on selected options
We will be creating a web app using Node.js, React.js, and Firebase to build the application. Below, the outline the details:
Scope of the Project:
- Firebase console (https://console.firebase.google.com/)
- Set up authentication, database, and storage according to your application requirements.
- Set up front end.
- Integrate Firebase with frontend.
- Implement Authentication
- Create API Endpoints (Node.js): Define API endpoints using Express to handle data operations with Firebase (e.g., saving data, retrieving data, etc.). These endpoints will be used to communicate with your React.js frontend.
- Make API calls from your React.js components to the Node.js backend using Axios, Fetch, or any other suitable method.
- Deploy your React.js frontend and Node.js backend separately. We can use hosting services like Firebase Hosting for the frontend and Firebase Cloud Functions for the backend.
Warehouse operator Authentication details:
- We will adding a record to store the password of collectors in encrypted format to login to the custom page to collect the payment.
- And the email address in the record will consider as the username of the warehourse operator to login to the payment page.
- To identify the users, we will add options in WMS set up records
- Once the user login to the custom page using these credentials, based on the checkbox values, the custom WMS pages will show.
Login page:
We will provide a login page to log in for the to the custom page.
- The username will be the email address in the record.
- By using Custom encryption, the credentials were encrypted and then stored in the password field
- Initially, we will add a test password in the record for the initial phase. And users can reset the password through the Reset page.
Reset page:
- When the user forgets the password then clicks the reset password button to reset the password
- After entering the valid E-mail click the reset button then by that email search for the user and taken details (internal id, username, email id).
- When the user clicks the link, a page will show for creating a new password.
- After entering the password it’ll be updated in the respective employee record.
- The user can log in if the entered credentials and credentials in the record are identical. Once logged in after authentication, the user is navigated to the homepage.
Home page:
Once login to the page, based on the role, the user will have different options in the home page.
In the home page, operator have following options to perform:
- Cycle counts – bins
- Bin transfer
- Receive purchase orders.
- Network label printing
- Stock count
Error page:
If the script fails to create the NetSuite’s custom record, the user navigates to the error page.
Success page:
If the process is successful, navigate to the success page.
Functionalities in App
Cycle counts – bins
A cycle count is an inventory auditing procedure, which falls under inventory management, where a small subset of inventory, in a specific location, is counted on a specified day.
The barcode scanner feature allows users to scan various types of items, including inventory items, serialized items, and lot-numbered items, in real-time.
- We will be providing an option to count the inventory by scanning.
- Select Warehouse page: the user can see the list of Warehouses and can select the required warehouse from the list.
- Select Bin page: The user can select the required bin listed from the Bin page. All the bin from the selected location will be listed.
- Enter/Scan Item page: After selecting the bin, you will need to scan or manually enter the item name or barcode in the provided field. Once you have entered the item information, click on Submit.
- Enter/Scan Quantity page: The application will then navigate to the scan page, where the user can start scanning or manually enter the quantity of the scanned items. Use the barcode scanner to scan the item barcode or type in the quantity if needed. Click on Submit to save the scanned item and its quantity.
- Inventory Count page: After submitting the quantity, the user will be redirected to the Inventory Count screen. Here, the user will be able to view the scanned item and its quantity, which will be updated in real time.
- Scanned items page: If the user want to review all the scanned items that have been recorded, then navigate to the scanned items page. In the scanned items page list, the user will find an overview of all the items that have been scanned during the inventory count process.
Bin transfer
Once the item has been approved, the WMS app generates its license plate and determines a suggested location within the info of specific items.
- Scan the license plate or enter manually.
- The license plate will be generated at the time of receiving and the user can scan the license plate to add the item SKU to the result page.
- The item detail page will have the item details and bin details (staging bin) which is assigned at the time of item receiving.
- Display info on a specific item.
- The user needs to enter the quantity from bin (the label will have the required item details).
- The “To bin” field will be a drop-down field that includes all the suggested “To bins” in the related location.
- Upon submitting the details will automatically create a bin transfer record in the NetSuite. The Inventory will be updated in NetSuite and all the items will be available in the “To Bins” for future transactions.
- If there are any error occurs, the user gets notified through a warning or alert message showing the cause of the error.
- If there is more quantity entered for transfer.
- If there is no suggested bin for “To Bins”.
Receive purchase orders.
Inbound functions refer to the activities related to receiving and validating items. At this stage, it is important to check if the goods received are right in terms of quantity and quality.
- Scan Purchase Order (PO) number/barcode (EAN) or RFID or it may be entered manually if there is no built-in scanner.
- Select item quantity.
- Display and edit information of a specific Item Number: The user needs to check the details populated from the scanned results. When the user scans the item label using the barcode scanning device will display the item SKU in the field and all other details need to be entered by the user manually.
- Quantity
- Memo
- UOM
- Staging Bin
- Confirm or cancel item received: if the Item Number is confirmed it will be added to the warehouse’s inventory and an item receipt will be created in the NetSuite as well.
- Load over-receiving or under-receiving: automatic notifications informing about the mismatch between the initially announced quantity and the number of goods received. The next steps in case of over-receiving may include confirming or rejecting it.
- At the time of submitting the item received for the purchase order, we will cross-check the data with the related purchase order and show a notification to the user if any over-receiving or under-receiving happens.
- The user can either notify the administrator or authorized manager by clicking the submit button from the alert box. All the warehouse employees are associated with the supervisor or authorized employee and is controlled by NetSuite custom records.
- The supervisor can approve the request from the email and will automatically create the item receipt directly in the NetSuite
- Generate license plate: for each approved item, the system automatically generates an internal number to track this item in the warehouse and a place for storing it (putaway).
- Quality check – report issues of Item Number (EAN): if the received item is damaged or faulty, a worker can report a problem by adding a photo and describing a problem.
- We will be providing an icon called quality check in the PO receiving page where the user can take a photo of the damaged product and the details (if any) and on submitting, a custom record will be created in the NetSuite for the quality check.
- The custom record has the defected product image and the details entered by the user.
- The authorised supervisor can have the flexibility to reject or approve the receiving after validating the issues.
Network label printing
We will be generating a license plate at the time of item receiving which includes the following details. We will be adding a print option to print the label on purchase order receiving final phase to print the label.
- Item Barcode (contains the SKU)
- Item Description.
- Item Received Bin (Staging Bin).
- UOM.
The user can see the item details in the page (Print license page) and is editable to the user if any update needs to be made to the item label.
The above details will be auto fetched from the purchase order from the receive page.