BILATERAL BIDDING PLATFORM FOR USE IN BULK SALE OF ITEMS IN AN ELECTRONIC MARKETPLACE
20210383463 · 2021-12-09
Inventors
Cpc classification
G06Q30/0201
PHYSICS
G06Q30/0605
PHYSICS
G06F16/2379
PHYSICS
International classification
G06Q20/40
PHYSICS
Abstract
Utilities (e.g., systems, methods, etc.) for facilitating a bilateral bidding process between buyers and sellers of items (services, products, bundles, etc.) to allow buyers to obtain lower prices on the items through crowd bidding while simultaneously allowing sellers to essentially offset such lower prices on the items through increased sales volume of the items. Specifically, the disclosed utilities may make use of a network-based ecommerce system or platform that provides sellers of items access to real-time buyer demand and the optimum price that a plurality of buyers (e.g., customers) are willing to pay that yields increased profits. The disclosed platform also benefits buyers in cases when multiple sellers compete for the then current plurality of buyer demand resulting in a reduced price for the item based on the then real-time demand.
Claims
1-15. (canceled)
16. A method comprising: receiving, into a staging register of a computerized bidding system, a plurality of bid objects for a product and/or service from a plurality of potential buyers, wherein each of the plurality of bid objects includes a price object defining an upper limit of a price at which a buyer of the plurality of potential buyers is willing to pay for the product and/or service; organizing, by a bidding engine of the computerized bidding system, the plurality of bid objects in the staging register, wherein after the organizing the plurality of bid objects in the staging register comprise organized bid objects; moving, by the bidding engine at the beginning of a bid session, the organized bid objects into an active register of the computerized bidding system; receiving, by the bidding engine during the bid session, an indication of a particular bid object of the organized bid objects from a potential seller of the product and/or service; and generating, by the bidding engine at a conclusion of the bid session, an indication of a bid block.
17. The method of claim 16, wherein the organizing comprises organizing the plurality of bid objects in the staging register starting with a first bid object having a price object defining a highest price and continuing to at least a second bid object having a price object defining a lowest price.
18. The method of claim 16, wherein the bid block includes the particular bid object and at least one other bid object of the organized bid objects having a price object defining a price greater than or equal to a price defined by the price object of the particular bid object.
19. The method of claim 16 further comprising removing, from the active register by the bidding engine at the end of the bid session, any organized bid objects of the bid block having a price object defining a price less than a price defined by the particular bid object, wherein after the removing the organized bid objects remaining in the active register comprise remaining bid objects.
20. The method of claim 19 further comprising receiving, by the bidding engine during a subsequent bid session, an indication of another particular bid object of the remaining bid objects.
21. The method of claim 19 further comprising generating, by the bidding engine, an indication of a subsequent bid block.
22. The method of claim 21, wherein the subsequent bid block includes the another particular bid object and at least one other bid object of the remaining bid objects having a price object defining a price greater than or equal to a price defined by the price object of the another particular bid object.
23. The method of claim 19, wherein the bid session occurs for a first predetermined period of time, wherein the subsequent bid session occurs for a second predetermined period of time, and wherein the first and second predetermined periods of time are non-overlapping.
24. The method of claim 19, wherein receiving the plurality of bid objects into the staging register comprises receiving the plurality of bid objects into a bidding pool of the computerized bidding system.
25. The method of claim 24, wherein each bid object of the plurality of bid objects further includes a bid duration object defining a period of time that the bid object is valid in the bidding pool.
26. The method of claim 25 further comprising identifying any bid objects in the active register at the end of the bid session having expired bid duration objects and that are not in the bid block.
27. The method of claim 26, wherein the removing comprises removing the identified bid blocks having expired bid duration objects.
28. The method of claim 19 further comprising receiving, into the staging register during the bid session of the active register, a plurality of additional bid objects for the product and/or service.
29. The method of claim 28 further comprising moving, by the bidding engine at the beginning of the subsequent bid session, the additional bid objects into the active register.
30. The method of claim 16, wherein the receiving includes receiving, by the bidding engine during the bid session, a plurality of indications of a respective plurality of different ones of the bid objects in the active register from a respective plurality of potential sellers of the product and/or service.
31. The method of claim 16 further comprising disallowing receipt of bid objects from the staging register into the active register during the bid session.
32. One or more non-transitory computer readable media having program instructions stored thereon which, when executed by at least one processor, cause a machine to: cause a plurality of bid objects for a product and/or service from a plurality of potential buyers to be received into a staging register of a computerized bidding system, wherein each of the plurality of bid objects includes a price object defining an upper limit of a price at which a buyer of the plurality of potential buyers is willing to pay for the product and/or service; direct a bidding engine of the computerized bidding system to organize the plurality of bid objects in the staging register, wherein after the organizing the plurality of bid objects in the staging register comprise organized bid objects; direct, at the beginning of a bid session, the bidding engine to move the organized bid objects into an active register of the computerized bidding system; cause, during the bid session, an indication of a particular bid object of the organized bid objects to be received by the bidding engine from a potential seller of the product and/or service; and direct the bidding engine to generate an indication of a bid block at the conclusion of the bid session.
33. The one or more non-transitory computer readable media of claim 32, wherein when executed by the at least one processor, the program instructions further cause the machine to direct, at the end of the bid session, the bidding engine to remove from the active register any organized bid objects of the bid block having a price object defining a price less than a price defined by the particular bid object, wherein after being removed from the active register the organized bid objects remaining in the active register comprise remaining bid objects.
34. A computerized bidding system comprising: at least one web server configured to communicate via a network with: a plurality of buyer devices, and at least one seller device; one or more memory storage devices including: a staging register, and an active register; and at least one processor communicatively coupled to: the at least one web server, and the one or more memory storage devices, the at least one processor configured to: cause a plurality of bid objects for a product and/or service to be received, via the at least one web server, into the staging register from a plurality of potential buyers, wherein each of the plurality of bid objects includes a price object defining an upper limit of a price at which a buyer of the plurality of potential buyers is willing to pay for the product and/or service; direct a bidding engine of the computerized bidding system to organize the plurality of bid objects in the staging register, wherein after the organizing the plurality of bid objects in the staging register comprise organized bid objects; direct, at the beginning of a bid session, the bidding engine to move the organized bid objects into the active register; cause, during the bid session, an indication of a particular bid object of the organized bid objects to be received, via the at least one web server, by the bidding engine from a potential seller of the product and/or service; and direct the bidding engine to generate an indication of a bid block at the conclusion of the bid session.
35. The computerized bidding system of claim 34, wherein the at least one processor is further configured to remove, from the active register and at the end of the bid session, any organized bid objects of the bid block having a price object defining a price less than a price defined by the particular bid object from the , wherein after being removed from the active register the organized bid objects remaining in the active register comprise remaining bid objects.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
DETAILED DESCRIPTION
[0046] Disclosed herein are utilities (e.g., systems, methods, etc.) for facilitating a bilateral bidding process between buyers and sellers of items (services, products, bundles, etc.) to allow buyers to obtain lower prices on the items through crowd bidding while simultaneously allowing sellers to essentially offset such lower prices on the items through increased sales volume of the items. Specifically, the disclosed utilities make use of a network-based ecommerce system or platform (computerized system or platform) that provides sellers of items access to real-time buyer demand and the optimum price that a plurality of buyers (e.g., customers) are willing to pay that yields increased profits. The disclosed platform also benefits buyers in cases when multiple sellers compete for the then current buyer demand resulting in a reduced price for the item based on the then real-time demand.
[0047] Initial reference is made to
[0048] The platform 140 may include any appropriate combination of servers, databases, and/or other systems (e.g., disposed at one location or interconnected at a plurality of locations) that are configured to substantially seamlessly implement a bilateral bidding process between sellers and buyers for bulk items. Broadly, the platform 140 may include one or more application servers 143 for interfacing with one or more servers, systems and/or databases necessary to manage the bilateral bidding processing disclosed herein. As an example, the application servers 143 may include at least one auctioning system 152 that is configured to manage items subscribed to and/or added to the platform by sellers as well as bids for items received by the platform 140. For instance, the auctioning system 152 may include a bidding engine 153 (e.g., one or more sets of computer readable instructions executable by one or more processors of the auctioning system 152) that is configured to implement a plurality of rules, algorithms, processes and/or tools to execute the bilateral bidding processes disclosed herein.
[0049] The application servers 143 may also include (or be networked to and make use of) one or more payment systems 154 dedicated to payments and other financial processes and functions between the sellers 102, buyers 101, and ecommerce marketplace provider 103. The one or more application servers 143 (e.g., the auctioning system 152, payment system(s) 154) may communicate with one or more databases 145 via one or more database servers 144 as part of the bilateral bidding process. The database(s) 145 include any appropriate collection of structured data to enable the bilateral bidding process and may include or represent data provided by actors (sellers 102, buyers 101, ecommerce marketplace provider 103, third party entities, and other actors, etc.) and information systematically generated by the platform 140 and/or received from other systems, networks and devices used for the bilateral bidding process.
[0050] The platform 140 may communicate with buyers 101 and sellers 102 in any appropriate manner. For instance, the platform 140 may include at least one web server 141 (e.g., server software and associated hardware that processes incoming network requests over HTTP and/or other related protocols over the network(s) 130) and/or at least one API server 142 (e.g., servers dedicated for API functions and processes and enables third party applications used by seller device 113 and/or buyer devices 112 to interface with the platform 140). In relation to each buyer 101, the buyer 101 may utilize any appropriate buyer device 112 (e.g., smartphone, tablet, server, etc.) to access a web client 121 (e.g., browser) or a native app client 122 (e.g., app) to communicate with the at least one web server 141 over network 130. In relation to each seller 102, the seller 102 may utilize any appropriate seller device 113 (e.g., smartphone, tablet, server, etc.) to access a web client 123 (e.g., browser) or a native app client 124 (e.g., app) to communicate with the at least one web server 141 over network 130. In one arrangement, the seller device 113 may access any appropriate API 126 (e.g., developed by the ecommerce marketplace provider 103 or licensee of the provider 103 and includes a set of routines, protocols, and tools for building software applications) of an enterprise resource planning (ERP) system to integrate business functions (e.g., such as planning, purchasing, inventory, sales, marketing, finance and human resources) into the bilateral bidding process disclosed herein.
[0051] Turning now to
[0052] The platform 140 may maintain a listing (e.g., as part of a relational database management system (RDBMS) or the like) of various items 270 (e.g., in database 145 of
[0053] With additional reference now to the method 500 of
[0054]
[0055] On the buyer side and with reference now to the method 400 of
[0056]
[0057] Returning now to
[0058] Turning back to
[0059] In this example, Merchant 1 has selected the bid object 261 associated with customer/buyer E at a bid price of $765, Merchant 2 has selected the bid object 261 associated with customer/buyer H at a bid price of $699.99, and Merchant 3 has selected the bid object 261 associated with customer/buyer F at a bid price of $756. In one characterization, each seller's goal may be to select a particular one of the bid objects to create a respective bid block that offers the best ratio of price to volume they can provision based on current demand to maximize direct margins on bid transactions. Each seller may submit their bid object selections during an active bidding session and thereby create their respective bid blocks manually or via API for instance (e.g., where the API could execute rules to automatically create bid block based on item, bid object price, number of bid objects and thus buyers in the bid block, etc.).
[0060] At step 560 in
[0061] At a conclusion of the particular active bidding session 220, the bidding engine 280 may automatically identify the lowest (cheapest) selected bid object (or in other words the bid block with the most bid objects of all of the bid blocks) and then generate an indication regarding the same. For instance, the generated indication may be in the form of any appropriate data structure identifying the particular seller (e.g., a seller ID) associated with the identified bid object, the price of the bid object, all other bid objects above the selected bid objects and their corresponding prices and seller IDs, item ID, buyer IDs of all bid objects in the winning bid block, and/or the like. Turning back to
[0062] Referring again to the method 500 of
[0063] In one arrangement, the winning seller may be required to sell the item to each buyer in the winning bid block at the lowest bid price in the bid block. In other arrangement, the winning seller may sell the item to each buyer in the winning bid block at the respective bid price submitted by the respective buyer. From the buyer's perspective and referring to the method 400 of
[0064] Returning to
[0065]
[0066] The method 750 may then include the bidding engine organizing 758 the bid objects 261 from the most to the least expensive or in other words organizing the bid objects from the bid object 261 having the price object 263 (see
[0067] At or just before a beginning of a next active bid session (e.g., as known by the bid session cyclic schedule 240), the bidding engine 280 may move 762 the bid objects 261 from the staging register 322 into the active register 321, the bid objects 261 also being organized from most to least expensive in the active register 321. Once the bid objects 261 have been moved into the active register 321 and the next (now current) active bid session has begun, the bidding engine 280 may “lock” the active register 321 from addition of new bid objects 261 into the active register 321 and removal of existing bid objects from the active register 321 during the current active bid session. In this regard, new bid objects 261 received by the platform 140 for a particular item while a current bid session is being conducted for the same particular item are placed into the staging register 261 of the bid pool 320 for the same particular item in preparation for a subsequent bid session for the item. In one arrangement, the bid engine 280 may constantly organize the bid objects 261 in the staging area from most to least expensive. In other arrangement, the bid engine 280 may organize the bid objects 261 from most to least expensive at or just prior to movement of the bid objects 261 from the staging register 322 into the active register 321 for a next active bid session.
[0068] At 766, the method 750 may include receiving respective indications from respective sellers of bottom bid block prices, where each respective bottom bid block price and the bid objects above the bottom price (i.e., the more expensive bid objects) make up a respective bid block. In other words, the platform 140 may receive indications from respective sellers of different respective ones of the bid objects in the organized bid object list in the active register 321, where different respective bid blocks are created for each seller. For instance, see bid blocks 221 in
[0069] In one arrangement, the bid engine 280 (or a seller's API) may be configured to automatically adjust the seller's bid block based on seller preferences embodied in any appropriate rules as applied by the bid engine 280 or seller's API. As an example, in an effort to ensure that a seller's bid block wins the current bidding session, the seller may establish preferences on the platform 140 (e.g., stored on database(s) 145) dictating that the seller approves for the seller's bid block to automatically increase in size (e.g., by automatically reducing the seller's bottom bid object price) in response to another seller selecting a lower bottom bid object price. For instance, a seller could establish a rule that in the event another seller establishes a lower bottom bid object prices, the seller's bottom price is to automatically be adjusted (thus increasing the seller's bid block) to the next bid object below the other seller's bottom bid object) in the organize list of bid object, but not below a particular price. The seller may establish such preferences based on desired price to volume ratios it is seeking to achieve.
[0070] At or before an end of the current bid session, the method 750 (e.g., the bid engine) may query 770 whether each seller's in stock total of the particular item is greater than or equal to the number of bid objects in the seller's respective bid block. With reference to
[0071] At the end of the current bid session, the method 778 may query 778 whether more than one seller indication has been received or in other words whether more than one bid block was created during the bid session. If no (e.g., only one bid block was created), the bid engine 280 may then generate in indication to the single winning seller that the bid block was won (where the seller would then need to provision the items to the buyers in the bid block as discussed herein) and then the method may proceed to provision 790 the active register 321 for the subsequent bidding session for the item. If no indications were received (no bid blocks created during bid session), the method may proceed directly to step 790 without generating an indication regarding a winning bid block. If the answer to the query 778 is yes such that more than one seller indications were received (i.e., plurality bid blocks created by bid engine), then the bid engine 782 may automatically select 782 the one of the bid blocks having the lowest bottom price (i.e., the cheapest bid object 261) and then generate 786 an indication to the particular seller that selected the cheapest bid object 261 that their respective bid block has won the current active bid session. For instance,
[0072]
[0073] As another example, the bid engine 280 may access the preferences object 273 of each bid object 261 to determine whether the bid object has expired. For instance, in the case where the preferences object 261 for a particular bid object indicates the bid object 261 is to expire if another bid object 261 of the buyer in another bid pool for another type of item was previously include in a winning bid block. If so, the first bid object 261 may expire. The bid engine 280 may analyze each of the bid objects 261 in this manner and remove 866 any expired bid objects. For instance,
[0074] In one embodiment, the bid engine 280 may create or make use of a different respective pair of staging and active registers 322, 321 for a particular item during each subsequent bidding session for the item. For instance, as part of provisioning the bidding pool for a subsequent bidding session, the bid engine 280 may move remaining (and unexpired) bid objects from the active register 321 of the previous bid session into the active register 321 of the subsequent bid session. Furthermore, bid objects 261 received at the platform for a particular item during the prior bid session for the item would be received and stored into the staging register 322 for the subsequent bid session rather than for the prior bid session. In this regard, the bid engine would move unexpired bid objects from the staging register 322 of the subsequent bid session into the active register 321 for the subsequent bid session as part of provisioning the active register for a beginning of the subsequent bid session.
[0075] In some variations, the API server(s) 142 can include an ERP API to interface with the seller's ERP system 125. In some versions, the servers through the API receive UPC codes and quantities of goods of various types from the seller's/merchant's ERP 125. The system may then associate the items with current listings or even automatically create new listings. The merchant ERP's 125 may include pricing rules for each item or the merchant may direct the servers to selectively include its items in the active listings or begin bid sessions for new listings. In at least some embodiments, sellers can request analytics from the platform 140 server(s) concerning a whole host of information about the items it has listed and sold as well as historical information concerning the performance of bid sessions for a certain item. Based on trends and historical data, the sellers can more accurately gauge demand and market price for a particular item or class of particular items.
[0076] The disclosed utilities are integrated into a practical and non-conventional application by facilitating a bilateral bidding process between sellers and buyers that allows buyers to obtain lower prices on the items through crowd bidding while simultaneously allowing sellers to essentially offset such lower prices on the items through increased sales volume of the items. Specifically, the dynamic and systematic manner in which the disclosed platform introduces bid objects into the bidding pool and organizes them from most to least expensive, receives seller offers to sell different respective blocks of the bids in the pool, identifies a winning bid block and then provisions the bid pool for subsequent cyclical bidding sessions for the same type of item (e.g., by way of analyzing duration and preference objects of the bid objects to remove expired bid objects, introduce accumulated new bid objects, etc.) is non-conventional and therefore presents an inventive technical innovation.
[0077] It will be readily appreciated that many deviations may be made from the specific embodiments disclosed in the specification without departing from the spirit and scope of the invention. The illustrations and discussion herein have only been provided to assist the reader in understanding the various aspects of the present disclosure. Furthermore, one or more various combinations of the above discussed arrangements and embodiments are also envisioned.
[0078] Embodiments disclosed herein (e.g., the bidding engine 280) can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer-readable medium for execution by, or to control the operation of, data processing apparatus (processors, cores, etc.). The computer-readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter affecting a machine-readable propagated signal, or a combination of one or more of them. In addition to hardware, code that creates an execution environment for the computer program in question may be provided, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them.
[0079] A computer program (also known as a program, software, software application, script, or code) used to provide the functionality described herein can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
[0080] While this disclosure contains many specifics, these should not be construed as limitations on the scope of the disclosure or of what may be claimed, but rather as descriptions of features specific to particular embodiments of the disclosure. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.