Docs Menu
Docs Home
/

RFID: Real-Time Product Tracking

Enhance retail inventory management with RFID. Technology and MongoDB Atlas for real-time tracking, improved accuracy, and data-driven insights across your supply chain.

Use cases: Catalog, Personalization

Industries: Retail

Products: MongoDB Atlas

Partners: Zebra Technologies 123RFID app, Zebra RFID readers/scanners

Retailers must ensure accurate and consistent inventory information across multiple channels while handling vast amounts of data. However, traditional methods struggle to keep pace with the demands of today's dynamic market.

RFID technology offers a solution to this scenario. Retailers can gain real-time visibility into inventory levels by automatically tracking tagged items with electromagnetic fields. This implementation optimizes stock management, reduces labor costs, and elevates customer satisfaction.

To harness the full potential of RFID technology, MongoDB Atlas provides a robust platform for capturing, processing, and analyzing the massive datasets it generates.

You can efficiently manage product information and gain key advantages by integrating RFID technology with a robust database solution. The benefits include:

  • Improve inventory accuracy: Eliminate stock discrepancies and reduce out-of-stocks, ensuring products are where customers expect them to be.

  • Boost operational efficiency: Streamline processes like receiving, picking, and packing, leading to faster turnaround times and cost savings.

  • Enhance customer experience: Fulfill orders accurately and quickly, boosting customer satisfaction and loyalty.

  • Gain data-driven insights: Leverage detailed product and sales data to make informed business decisions and optimize product assortment.

By attaching RFID tags to your products and setting up a network of readers, you can track items from the manufacturing floor to the end consumer. Examine the general architecture of a RFID system and a specific example with Zebra Technologies below.

This architecture shows a comprehensive system with RFID technology to monitor product movement through the supply chain. MongoDB Atlas serves as the underlying data layer to manage and analyze RFID data.

End-to-end supply chain RFID tracking architecture

Figure 1. End-to-end supply chain RFID tracking architecture

This architecture consists of the following key components:

  • RFID data collection: RFID tags attached to products using RFID capture information.

  • Data management: MongoDB Atlas stores and processes collected RFID data.

  • Data analysis: The system utilizes MongoDB Atlas to extract valuable insights from the data through data cleaning, transformation, and analysis.

The RFID product tracking architecture diagram explains how to connect the Zebra Technologies 123RFID app to MongoDB Atlas using an API gateway. This setup enables real-time inventory management and ensures data accuracy.

Example of a RFID product architecture with Atlas and Zebra Technologies

Figure 2. Example of a RFID product tracking architecture based on the integration of Zebra Technologies with MongoDB Atlas

This architecture consists of the following key components:

  • RFID data capture: The Zebra Technologies 123RFID app collects product information via RFID tags.

  • Data integration: An API gateway seamlessly transfers RFID data from the app to MongoDB Atlas.

  • Data storage and analysis: MongoDB Atlas serves as the central repository for RFID data, enabling comprehensive data analysis.

The following guide explains how you can integrate a retail RFID product tracking application with MongoDB Atlas. It shows how to use this application for efficient inventory checks.

1

Cluster Setup

  • Select a cloud provider.

  • Choose a region.

  • Configure cluster specifications (e.g., instance size, storage).

Network Security

  • Configure network access.

  • Identify IP access list for edge devices and application servers.

  • Use user authentication.

  • Create a database user with read and write permissions for the inventory database.

Connection

  • Obtain a connection string from MongoDB Atlas.

  • Use your connection string to connect your application to the cluster.

2

Project Setup

  • Open the 123RFID project in Xcode, or open the project using the name you assigned.

  • Configure your project settings.

  • Add the required frameworks and libraries from the Zebra SDK.

  • Configure build settings, including library and framework search paths.

Device Pairing

  • Enable Bluetooth on iOS device.

  • Pair the RFID reader using the 123RFID app.

Running the Application

  • Connect your iOS device to Mac.

  • Select the device as target in Xcode.

  • Run the application.

3

The getMatchingTagList method in Objective-C compares RFID tags from the current physical inventory with a predefined list of tags, and updates the user interface accordingly. This procedure works as follows:

  • Retrieves the current inventory and the predefined tag list.

  • Compares inventory tags with the tag list to find matches.

  • Removes matched tags from the missing tags list.

  • Updates the UI with counts of unique and total tags.

  • Stops the inventory operation and confirms a complete match if all tags are accounted for.

4

The sendUrlRequestToFlag method sends a POST request to a specified URL to indicate the result of the inventory check. This process works as follows:

  • Initializes a POST request to the target URL.

  • Sets the JSON content type header.

  • Prepares a JSON payload with inventory check results.

  • Sends a POST request and logs the results.

  • Displays a warning message based on the inventory check outcome.

5

Leverage MongoDB Change Streams for instant notifications and visualize the data using MongoDB Atlas Charts. The code sets up a change stream to monitor new inventory checks in a collection named inventoryCheck.

Below set ChartsEmbedSDK as a variable.

Below set pushToast as a variable.

Verify that real-time notifications and dashboard updates work properly.

Endpoint Setup

  • Use MongoDB Change Streams to monitor changes in the inventoryCheck collection.

const startWatchInventoryCheck = async (dashboard, addAlert, utils) => {
console.log("Start watching stream");
const runs = await getMongoCollection(utils.dbInfo.dbName, "inventoryCheck");
const filter = {
filter: {
operationType: "insert"
}
};
const stream = runs.watch(filter);
const closeStreamInventoryCheck = () => {
console.log("Closing stream");
stream.return();
};
try {
for await (const change of stream) {
console.log(change.fullDocument);
addAlert(change.fullDocument.checkResult);
dashboard.refresh();
}
} catch (error) {
console.error("Error watching stream:", error);
}
};

Embed the dashboard

  • Use MongoDB Charts embedding SDK to integrate the dashboard into your web application.

  • Import the necessary libraries and context.

  • Create an instance of ChartsEmbedSDK with your base URL.

  • Define and render the dashboard properties into a designated div.

  • Start the change stream and handle real-time updates with alerts.

Implement Real-time Alerts

  • Display success or error alerts based on the inventory check results using pushToast.

Ensure Integration

  • Verify that real-time notifications and dashboard updates work seamlessly.

  • Maintain accurate inventory data and respond quickly to discrepancies.

  • Provide real-time inventory management: Leverage RFID technology and MongoDB Atlas to achieve accurate and up-to-date inventory data.

  • Improve efficiency: Streamline inventory processes, reduce stockouts, and optimize operations through data-driven insights.

  • Data-driven decision making: Use MongoDB Atlas Charts for real-time visualizations, enabling informed business decisions.

  • Francesco Baldissera, MongoDB

  • Pedro Bereilh, MongoDB

  • Rami Pinto, MongoDB

  • Sebastian Rojas Arbulu, MongoDB

  • Mehar Grewal, MongoDB

  • Prashant Juttukonda, MongoDB

  • AI-Powered Retail: Personalization and Accuracy

  • Event-Driven Inventory Management System

  • Launching an Agentic RAG Chatbot with MongoDB and Dataworkz

Back

Digital Receipts

On this page