Transforming 3PL Operations: Real-Time Data Sync Between Customers & upBin – Warehouse Management System via Google Pub/Sub
Our client using upBin, a 3PL (Third-Party Logistics) Warehouse Management System (WMS),
to manage inventory, orders, and warehouse operations. The requirement was to ensure
real-time synchronization of data between customer systems and upBin using Google Pub/Sub.
Challenges Faced
- Manual Updates: Orders and inventory details were updated manually in upBin, causing delays and errors.
- Customer Visibility: Customers didn’t have real-time visibility into order and stock status.
- Scalability: Managing multiple customer integrations with traditional API methods was complex and not scalable.
Our Solution
We built a real-time integration framework using Google Pub/Sub that bridges the customer system and upBin WMS.
This solution allows customers to publish order and stock updates instantly while the WMS system processes
them asynchronously and reliably.
- Data Flow via Pub/Sub: Each transaction (Order, ASN, GRN, Dispatch) is published as a message to a
dedicated topic in Google Pub/Sub.
- Message Subscription: A backend microservice subscribed to these topics listens for new messages
and updates the WMS database accordingly.
- Error Handling: Failed messages are logged and moved to a Dead Letter Queue (DLQ) for reprocessing.
- API Validation Layer: Controllers in the integration layer validate payload structure, authenticate API keys,
and push updates back to customers via Pub/Sub acknowledgment.
- Real-Time Dashboard: Both customers and warehouse users can monitor data flow and message processing in real time.
Controller-Level Integration
The following controllers were built to handle data exchange between customer portals and upBin:
- OrderController: Handles creation and updates of customer orders from Pub/Sub topics.
- InventoryController: Syncs stock updates and availability across multiple customer accounts.
- DispatchController: Manages shipment confirmation, tracking updates, and delivery status.
- ErrorController: Captures failed transactions and routes them for manual review or automatic retry.
Key Highlights
- Achieved instant order processing and warehouse data synchronization.
- Reduced manual effort and eliminated API bottlenecks.
- Enabled real-time visibility for both customers and warehouse operators.
- Provided an error-tolerant and scalable solution built on Google Cloud infrastructure.
Results
The integration successfully automated the complete data flow between customers and upBin.
Orders, stock updates, and dispatch data are now synchronized instantly with 100% reliability.
The 3PL operation now enjoys reduced human intervention, faster processing, and error-free reporting.
Table Structure Example
Field |
Type |
Description |
OrderID |
VARCHAR(50) |
Unique identifier for each customer order |
CustomerCode |
VARCHAR(50) |
Unique code assigned to each customer |
ItemCode |
VARCHAR(50) |
Unique identifier for each item |
Quantity |
INT |
Quantity ordered or dispatched |
Status |
VARCHAR(30) |
Current processing status of the order |
LastSyncTime |
DATETIME |
Timestamp of the last synchronization between systems |