IP Library › Granted Patent US 10,997,554
Granted Patent B1
US 10,997,554 · App. 17/066,350 · Granted May 4, 2021

Systems and methods for dynamic balancing of virtual bundles

Inventors: Shuyun McMaster (Bothell, WA); Subrahmanya Pramod Nanduri (Sunnyvale, CA); Darin Miller (Sammamish, WA); Kenny Shi (Bellevue, WA)
Assignee: Coupang Corp.
G06Q10/0875G06F9/547G06F16/2379G06F16/285G06F16/953G06K7/10366G06K7/1413G06Q10/06315G06Q30/0185G06Q30/0635G06Q30/0639
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,997,554
App. No.
17/066,350
Granted
May 4, 2021
Kind
B1
Abstract

A computer-implemented system for dynamic inventory balancing including at a processor and a memory device comprising instructions that when executed configure the processor to perform operations. The operations including receiving an inventory data feed from at least one fulfillment center, storing (in a database) a plurality of virtual bundles with associated grouping numbers and quantities—the plurality of virtual bundles having item bundles grouping two or more of a same item in the inventory data. The operations also include exposing the database to queries from a seller portal through at least one of RESTful service, a queue based system, an index, or an object table and receiving a client order, the client order comprising a bundle selection from the plurality of virtual bundles, and updating the plurality of virtual bundles by rebalancing the plurality of virtual bundles and corresponding associated quantities based on the bundle selection.

Claims (86)

1. A system for dynamic inventory balancing comprising:

at least one processor; and

at least one memory device comprising instructions that when executed configure the at least one processor to perform operations comprising:

receiving an inventory data feed from at least one fulfillment center;

storing, in a database, a plurality of virtual bundles with associated grouping numbers and quantities, the plurality of virtual bundles comprising item bundles grouping two or more of a same item in the inventory data;

exposing the database to queries from a seller portal through at least one of RESTful service, a queue based system, an index, or an object table;

receiving, from the seller portal, a client order, the client order comprising a bundle selection from the plurality of virtual bundles;

in response to receiving the client order, updating the plurality of virtual bundles by rebalancing the plurality of virtual bundles and corresponding associated quantities based on the bundle selection;

receiving updated inventory data from the at least one fulfillment center;

rebalancing the plurality of bundles in the database based on the updated inventory data; and

in response to updating the plurality of virtual bundles, notifying the seller portal of changes in the database,

wherein:

the updated inventory data overrides quantities associated with the plurality of bundles stored in the database; and

exposing the database comprises exposing the database as a RESTful service to the seller portal.

2. The system of claim 1 , wherein updating the plurality of virtual bundles comprises:

determining an updated item inventory based on the bundle selection;

rebalancing the plurality of virtual bundles through sequential assignment of items maximizing bundle diversity; and

updating the database to modify an item inventory.

3. The system of claim 1 , wherein storing the plurality of bundles comprises:

generating a plurality of encoded tags, each of the encoded tags encoding an item ID and a bundle group, and

generating a record in the database for each item in the inventory data and each of the plurality of bundles, each data record comprising an encoded tag field and a quantity field.

4. The system of claim 1 , wherein:

the updated inventory data is received periodically as snapshot inventory with a periodicity of at least one a day; and

the plurality of bundles are associated with discounted prices, the plurality of virtual bundles of higher grouping are associated with a lower per item price than virtual bundles of lower grouping.

5. The system of claim 1 , wherein:

the inventory data feed is a real time data feed coupled to inventory systems of the at least one fulfillment center, the inventory systems comprising at least one of a scan code system, an imaging inventory system, or a wireless tag systems; and

the seller portal is configured to transmit availability and price of the plurality of bundles to client devices by querying the database through one or more API calls.

6. The system of claim 1 , wherein:

the inventory data reflects a physical quantity of items in the at least one fulfillment center; and

updating the plurality of virtual bundles comprises:

aggregating inventories associated with the plurality of virtual bundles; and

rebalancing the plurality of virtual bundles based on the aggregated inventories.

7. The system of claim 1 , wherein:

at least two bundles are created for each item in the inventory data; and

rebalancing the plurality of virtual bundles comprises updating the database by decreasing a number of available bundles.

8. The system of claim 1 , wherein the operations further comprise:

in response to receiving the client order, identifying a selected fulfillment center for the client order from the at least one fulfillment center and communicating the client order to the selected fulfillment center.

9. A computer-implemented method for dynamic inventory balancing comprising:

receiving an inventory data feed from at least one fulfillment center;

storing, in a database, a plurality of virtual bundles with associated grouping numbers and quantities, the plurality of virtual bundles comprising item bundles grouping two or more of a same item in the inventory data;

exposing the database to queries from a seller portal through at least one of RESTful service, a queue based system, an index, or an object table;

receiving, from the seller portal, a client order, the client order comprising a bundle selection from the plurality of virtual bundles;

in response to receiving the client order, updating the plurality of virtual bundles by rebalancing the plurality of virtual bundles and corresponding associated quantities based on the bundle selection;

receiving updated inventory data from the at least one fulfillment center;

rebalancing the plurality of bundles in the database based on the updated inventory data; and

in response to updating the plurality of virtual bundles, notifying the seller portal of changes in the database,

wherein:

the updated inventory data overrides quantities associated with the plurality of bundles stored in the database; and

exposing the database comprising exposing the database as a RESTful service to the seller portal.

10. The method of claim 9 , wherein updating the plurality of virtual bundles comprises:

determining an updated item inventory based on the bundle selection;

rebalancing the plurality of virtual bundles through sequential assignment of items maximizing bundle diversity; and

updating the database to modify an item inventory.

11. The method of claim 9 , wherein storing the plurality of bundles comprises:

generating a plurality of encoded tags, each of the encoded tags encoding an item ID and a bundle group, and

generating a record in the database for each item in the inventory data and each of the plurality of bundles, each data record comprising an encoded tag field and a quantity field.

12. The method of claim 9 , wherein:

the updated inventory data is received periodically as snapshot inventory with a periodicity between of at least once a day; and

the plurality of bundles are associated with discounted prices, the plurality of virtual bundles of higher grouping are associated with a lower per item price than virtual bundles of lower grouping.

13. The method of claim 9 , wherein:

the inventory data feed is a real time data feed coupled to inventory systems of the at least one fulfillment center, the inventory systems comprising at least one of a scan code system, an imaging inventory system, or a wireless tag systems; and

the seller portal is configured to transmit availability and price of the plurality of bundles to client devices by querying the database through one or more API calls.

14. The method of claim 9 , wherein:

the inventory data reflects a physical quantity of items in the at least one fulfillment center; and

updating the plurality of virtual bundles comprises:

aggregating inventories associated with the plurality of virtual bundles; and

rebalancing the plurality of virtual bundles based on the aggregated inventories.

15. The method of claim 9 , wherein:

at least two bundles are created for each item in the inventory data; and

rebalancing the plurality of virtual bundles comprises updating the database by decreasing a number of available bundles.

16. The method of claim 9 , wherein the operations further comprise:

in response to receiving the client order, identifying a selected fulfillment center for the client order from the at least one fulfillment center and communicating the client order to the selected fulfillment center.

17. An apparatus comprising:

one or more processors; and

one or more memory devices comprising instructions that when executed configure the one or more processors to:

receive an inventory data feed from at least one fulfillment center;

store, in a database, a plurality of virtual bundles with associated grouping numbers and quantities, the plurality of virtual bundles comprising item bundles grouping two or more of a same item in the inventory data by:

generating a plurality of encoded tags, each of the encoded tags encoding an item ID and a bundle group, and

generating a record in the database for each item in the inventory data and each of the plurality of bundles, each data record comprising an encoded tag field and a quantity field;

expose the database to queries from a seller portal as a RESTful service;

receive, from the seller portal, a client order, the client order comprising a bundle selection from the plurality of virtual bundles;

in response to receiving the client order, update the plurality of virtual bundles by rebalancing the plurality of virtual bundles through sequential assignment of items maximizing bundle diversity;

receive updated inventory data from the at least one fulfillment center;

rebalance the plurality of bundles in the database based on the updated inventory data; and

in response to updating the plurality of virtual bundles, notify the seller portal of changes in the database,

wherein the updated inventory data overrides quantities associated with the plurality of bundles stored in the database.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2020
From: MCMASTER, SHUYUN; NANDURI, SUBRAHMANYA PRAMOD; MILLER, DARIN; SHI, KENNY
To: COUPANG CORP.
Reel/Frame 054013/0468 →
Cited By (2)
US 12,330,882 US 12,626,217