WO2018125858A1 - Crowdsourced delivery based on a set of requirements - Google Patents
Crowdsourced delivery based on a set of requirements Download PDFInfo
- Publication number
- WO2018125858A1 WO2018125858A1 PCT/US2017/068400 US2017068400W WO2018125858A1 WO 2018125858 A1 WO2018125858 A1 WO 2018125858A1 US 2017068400 W US2017068400 W US 2017068400W WO 2018125858 A1 WO2018125858 A1 WO 2018125858A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- delivery
- requirements
- mobile devices
- delivery agent
- package
- Prior art date
Links
- 238000012384 transportation and delivery Methods 0.000 title claims abstract description 166
- 229940124447 delivery agent Drugs 0.000 claims abstract description 135
- 238000013475 authorization Methods 0.000 claims abstract description 58
- 238000000034 method Methods 0.000 claims abstract description 23
- 230000004044 response Effects 0.000 claims abstract description 8
- 230000005540 biological transmission Effects 0.000 claims abstract description 7
- 238000012790 confirmation Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 14
- 238000012546 transfer Methods 0.000 description 14
- 230000009471 action Effects 0.000 description 6
- 229910003460 diamond Inorganic materials 0.000 description 6
- 239000010432 diamond Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000004075 alteration Effects 0.000 description 3
- 239000000969 carrier Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 239000003814 drug Substances 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 229940079593 drug Drugs 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 1
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 1
- 206010034016 Paronychia Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000383 hazardous chemical Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000004570 mortar (masonry) Substances 0.000 description 1
- 230000003014 reinforcing effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Definitions
- This invention relates generally to package delivery and, more specifically, to crowdsourced package delivery.
- FIG. 1 depicts a portable device 102 presenting a user interface for a crowdsource delivery agent, according to some embodiments
- FIG. 2 depicts an illustration of blocks, according to some embodiments;
- FIG. 3 depicts an illustration of transactions, according to some embodiments;
- FIG. 4 depicts a flow diagram, according to some embodiments;
- FIG. 5 depicts a process diagram, according to some embodiments.
- FIG. 6 depicts an illustration of a delivery record, according to some embodiments.
- FIG. 7 depicts a system diagram configured, according to some embodiments.
- FIG. 8 is a block diagram of a system 800 for creating a crowdsourced delivery plan, according to some embodiments.
- FIG. 9 is a flow diagram including example operations for creating a crowdsourced delivery plan, according to some embodiments.
- FIG. 10 is a flow diagram depicting example operations for confirming a delivery agent's location, according to some embodiments.
- FIG. 11 is a flow diagram depicting example operations for confirming a customer's location, according to some embodiments.
- a system for creating a crowdsourced delivery plan for a package comprises a certification system, the certification system configured to receive, from a retailer, an indication of items included in the package, determine, based on the indication of items included in the package, a set of requirements, and transmit, to a plurality of portable devices, information regarding the delivery, each of the plurality of portable devices configured to receive, from the certification system, the information regarding the delivery, transmit, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receive, in response to the transmission of the acceptance of the delivery, an authorization, and present, at a pickup point, the authorization.
- FIG. 1 provides an introduction to a system for creating a crowdsourced delivery plan for a package.
- the system utilizes blockchain to maintain a list of certifications for delivery agents.
- Descriptions of some embodiments of blockchain technology are provided with reference to FIGS. 2 - 7 herein.
- Blockchain technology may be utilized to maintain a record of certifications for delivery agents.
- One or more of the certification systems described herein may comprise a node in a distributed blockchain system storing a copy of the blockchain record.
- Updates to the blockchain may comprise the transfer and/or recordation of certifications and one or more nodes on the system may be configured to incorporate one or more updates into blocks to add to the distributed database.
- FIGS. 8 - 9 provides additional details regarding a system for creating a crowdsourced delivery plan for a package. Introduction:
- FIG. 1 depicts a portable device 102 presenting a user interface for a crowdsource delivery agent, according to some embodiments. While FIG. 1 depicts the portable device 102 as a cellular phone, the portable device can be any suitable device (e.g., a computer, tablet, a dedicated device, etc.).
- the user interface is part of a system for creating a crowdsourced delivery plan for a package.
- a retailer wants to find a crowdsourced delivery agent to deliver a package
- the retailer transmits a notification to the system.
- the portable device 102 presents potential deliveries, from which a delivery agent can accept one or more of the potential deliveries.
- the delivery agent receives an authorization on the portable device 102.
- the authorization can be a visual, audible, or transmittable code (e.g., via nearfield communication).
- pickup of the package is automated such that the delivery agent simply presents the authorization at a pickup point and the package is delivered to the delivery agent.
- the retailer transmits a notification informing the system of the delivery.
- the notification includes information regarding the package (i.e., the package to be delivered).
- the information can include an indication of items included in the package, as well as other delivery instructions, such as an address, timing requirements, etc.
- the items in the package may have restrictions on delivery agents that can deliver the package. The restrictions can be set by retailer policy, law, or any other suitable source. For example, if one of the items in the package is a firearm, the retailer, or law, may require that the person delivering the package have certain certifications, such as not being a convicted felon or having a special license (e.g., a license to carry a firearm or a license to deliver a firearm).
- the certifications can be of any suitable type or quality, such as age (i.e., age of the delivery agent), ratings (e.g., ratings received by previous customers, retailers, or certification systems), ability to use the item (e.g., a certification that the delivery agent is capable of demonstrating use of the item), ability to install the item (e.g., a certification that the delivery agent is capable of installing the item), criminal history, medical history, education, type of vehicle used for delivery, length of delivery experience, etc.
- the system can store credentials, as well as delivery agent identities, in a blockchain format. [0021] After receiving the indication of the items included in the package, the system determines a set of requirements for the delivery agent.
- the certification system or the portable device 102 determines the set of requirements.
- the set of requirements is dependent upon the items in the package and specifies the type(s), if any, of certification required of the delivery agent.
- the delivery agent associated with the portable device 102 is only capable of accepting the delivery if the delivery agent associated with the portable device 102 meets the set of requirements.
- the certification may only transmit potential deliveries to portable devices associated with delivery agents that meet the set of requirements, or the portable device 102 may only present potential deliveries for which the delivery agent associated with the portable device 102 meets the set of requirements.
- the delivery agent can view and select deliveries via the portable device 102.
- the user interface presented by the portable device 102 depicted in FIG. 1 is but an example of one suitable user interface.
- the user interface can have a different appearance and/or have greater, or fewer, features than the user interface depicted in FIG. 1.
- the user interface depicted in FIG. 1 includes windows for potential deliveries.
- the user interface includes a first window 106 for a first potential delivery ("Delivery 1") and a second window 122 for a second potential delivery ("Delivery 2").
- the first window 106 is in the foreground and provides information and options related to the first potential delivery.
- the first window 106 includes address information 108, including a map option 110 to show the address on a map, restriction information 112 (i.e., the set of requirements required to deliver the package), timing requirements 114, and an accept option 116 (the selection of which accepts the delivery).
- the delivery agent can select the second window 122 to bring the second window 122, and the information and options related to the second potential delivery, to the foreground.
- the user interface also includes an "all deliveries" button 118 and a "deliveries near me” button 120. Selection of the "all deliveries” button 118 shows all potential deliveries, for example, in a grid, on a map, etc. Selection of the "deliveries near me” button 120 shows all deliveries near the portable device 102, for example, in a grid, on a map, etc.
- FIG. 1 provides an introduction to a system for creating crowdsource delivery plans
- FIGS. 2 - 7 provides additional detail regarding blockchain.
- Distributed database and shared ledger database generally refer to methods of peer-to- peer record keeping and authentication in which records are kept at multiple nodes in the peer-to- peer network instead of kept at a trusted party.
- a blockchain may generally refer to a distributed database that maintains a growing list of records in which each block contains a hash of some or all previous records in the chain to secure the record from tampering and unauthorized revision.
- a hash generally refers to a derivation of original data.
- the hash in a block of a blockchain may comprise a cryptographic hash that is difficult to reverse and/or a hash table.
- Blocks in a blockchain may further be secured by a system involving one or more of a distributed timestamp server, cryptography, public/private key authentication and encryption, proof standard (e.g. proof-of-work, proof-of-stake, proof-of-space), and/or other security, consensus, and incentive features.
- a block in a blockchain may comprise one or more of a data hash of the previous block, a timestamp, a cryptographic nonce, a proof standard, and a data descriptor to support the security and/or incentive features of the system.
- a blockchain system comprises a distributed timestamp server comprising a plurality of nodes configured to generate computational proof of record integrity and the chronological order of its use for content, trade, and/or as a currency of exchange through a peer-to-peer network.
- a node in the distributed timestamp server system takes a hash of a block of items to be timestamped and broadcasts the hash to other nodes on the peer-to-peer network. The timestamp in the block serves to prove that the data existed at the time in order to get into the hash.
- each block includes the previous timestamp in its hash, forming a chain, with each additional block reinforcing the ones before it.
- the network of timestamp server nodes performs the following steps to add a block to a chain: 1) new activities are broadcasted to all nodes, 2) each node collects new activities into a block, 3) each node works on finding a difficult proof-of-work for its block, 4) when a node finds a proof-of-work, it broadcasts the block to all nodes, 5) nodes accept the block only if activities are authorized, and 6) nodes express their acceptance of the block by working on creating the next block in the chain, using the hash of the accepted block as the previous hash.
- nodes may be configured to consider the longest chain to be the correct one and work on extending it.
- a digital currency implemented on a blockchain system is described by Satoshi Nakamoto in "Bitcoin: A Peer-to-Peer Electronic Cash System” (http://bitcoin.org/bitcoin. pdf), the entirety of which is incorporated herein by reference.
- a blockchain comprises a hash chain or a hash tree in which each block added in the chain contains a hash of the previous block.
- block 0 200200 represents a genesis block of the chain.
- Block 1 210 contains a hash of block 0 200
- block 2 220 contains a hash of block 1 210
- block 3 230 contains a hash of block 2 220, and so forth.
- block N 290 contains a hash of block N-l .
- the hash may comprise the header of each block.
- a blockchain may comprise a hash chain stored on multiple nodes as a distributed database and/or a shared ledger, such that modifications to any one copy of the chain would be detectable when the system attempts to achieve consensus prior to adding a new block to the chain.
- a block may generally contain any type of data and record.
- each block may comprise a plurality of transaction and/or activity records.
- blocks may contain rules and data for authorizing different types of actions and/or parties who can take action.
- transaction and block forming rules may be part of the software algorithm on each node.
- any node on the system can use the prior records in the blockchain to verify whether the requested action is authorized.
- a block may contain a public key of an owner of an asset that allows the owner to show possession and/or transfer the asset using a private key. Nodes may verify that the owner is in possession of the asset and/or is authorized to transfer the asset based on prior transaction records when a block containing the transaction is being formed and/or verified.
- rules themselves may be stored in the blockchain such that the rules are also resistant to tampering once created and hashed into a block.
- the blockchain system may further include incentive features for nodes that provide resources to form blocks for the chain. For example, in the Bitcoin system, "miners' are nodes that compete to provide proof-of-work to form a new block, and the first successful miner of a new block earns Bitcoin currency in return.
- FIG. 3 an illustration of blockchain-based transactions according to some embodiments is shown.
- the blockchain illustrated in FIG. 3 comprises a hash chain protected by private/public key encryption.
- Transaction A 310 represents a transaction recorded in a block of a blockchain showing that owner 1 (recipient) obtained an asset from owner 0 (sender).
- Transaction A 310 contains owner's 1 public key and owner 0's signature for the transaction and a hash of a previous block.
- owner 1 transfers the asset to owner 2
- a block containing transaction B 320 is formed.
- the record of transaction B 320 comprises the public key of owner 2 (recipient), a hash of the previous block, and owner 1 's signature for the transaction that is signed with the owner 1 's private key 325 and verified using owner l 's public key in transaction A 310.
- owner 2 transfers the asset to owner 3
- a block containing transaction C 330 is formed.
- the record of transaction C 330 comprises the public key of owner 3 (recipient), a hash of the previous block, and owner 2's signature for the transaction that is signed by owner 2's private key 335 and verified using owner 2's public key from transaction B 220.
- the system may check previous transaction records and the current owner's private and public key signature to determine whether the transaction is valid.
- transactions are be broadcasted in the peer-to-peer network and each node on the system may verify that the transaction is valid prior to adding the block containing the transaction to their copy of the blockchain.
- nodes in the system may look for the longest chain in the system to determine the most up-to-date transaction record to prevent the current owner from double spending the asset.
- the transactions in FIG. 3 are shown as an example only.
- a blockchain record and/or the software algorithm may comprise any type of rules that regulate who and how the chain may be extended.
- the rules in a blockchain may comprise clauses of a smart contract that is enforced by the peer-to-peer network.
- FIG. 4 a flow diagram according to some embodiments is shown.
- the steps shown in FIG. 4 may be performed by a processor-based device, such as a computer system, a server, a distributed server, a timestamp server, a blockchain node, and the like.
- the steps in FIG. 4 may be performed by one or more of the nodes in a system using blockchain for record keeping.
- a node receives a new activity.
- the new activity may comprise an update to the record being kept in the form of a blockchain.
- the new activity may comprise a asset transaction.
- the new activity may be broadcasted to a plurality of nodes on the network prior to step 401.
- the node works to form a block to update the blockchain.
- a block may comprise a plurality of activities or updates and a hash of one or more previous block in the blockchain.
- the system may comprise consensus rules for individual transactions and/or blocks and the node may work to form a block that conforms to the consensus rules of the system.
- the consensus rules may be specified in the software program running on the node.
- a node may be required to provide a proof standard (e.g. proof of work, proof of stake, etc.) which requires the node to solve a difficult mathematical problem for form a nonce in order to form a block.
- the node may be configured to verify that the activity is authorized prior to working to form the block. In some embodiments, whether the activity is authorized may be determined based on records in the earlier blocks of the blockchain itself.
- step 402 if the node successfully forms a block in step 405 prior to receiving a block from another node, the node broadcasts the block to other nodes over the network in step 406.
- the first node to form a block may be permitted to add incentive payment to itself in the newly formed block.
- step 420 the node then adds the block to its copy of the blockchain.
- the node works to verify that the activity recorded in the received block is authorized in step 404.
- the node may further check the new block against system consensus rules for blocks and activities to verify whether the block is properly formed.
- the node may reject the block update and return to step 402 to continue to work to form the block. If the new block is verified by the node, the node may express its approval by adding the received block to its copy of the blockchain in step 420. After a block is added, the node then returns to step 401 to form the next block using the newly extended blockchain for the hash in the new block.
- the node may verify the later arriving blocks and temporarily store these block if they pass verification. When a subsequent block is received from another node, the node may then use the subsequent block to determine which of the plurality of received blocks is the correct/consensus block for the blockchain system on the distributed database and update its copy of the blockchain accordingly. In some embodiments, if a node goes offline for a time period, the node may retrieve the longest chain in the distributed system, verify each new block added since it has been offline, and update its local copy of the blockchain prior to proceeding to step 401.
- step 501 party A initiates the transfer of a digitized item to party B.
- the digitized item may comprise a digital currency, a digital asset, a document, rights to a physical asset, etc.
- Party A may prove that he has possession of the digitized item by signing the transaction with a private key that may be verified with a public key in the previous transaction of the digitized item.
- step 502 the exchange initiated in step 501 is represented as a block.
- the transaction may be compared with transaction records in the longest chain in the distributed system to verify part A's ownership.
- a plurality of nodes in the network may compete to form the block containing the transaction record.
- nodes may be required to satisfy proof-of-work by solving a difficult mathematical problem to form the block.
- other methods of proof such as proof-of-stake, proof-of-space, etc. may be used in the system.
- the node that is first to form the block may earn a reward for the task as incentive. For example, in the Bitcoin system, the first node to provide prove of work to for block the may earn a Bitcoin.
- a block may comprise one or more transactions between different parties that are broadcasted to the nodes. In step 503, the block is broadcasted to parties in the network.
- nodes in the network approve the exchange by examining the block that contains the exchange.
- the nodes may check the solution provided as proof-of-work to approve the block.
- the nodes may check the transaction against the transaction record in the longest blockchain in the system to verify that the transaction is valid (e.g. party A is in possession of the asset he/she s seeks to transfer).
- a block may be approved with consensus of the nodes in the network.
- the new block 506 representing the exchange is added to the existing chain 505 comprising blocks that chronologically precede the new block 506.
- the new block 506 may contain the transaction(s) and a hash of one or more blocks in the existing chain 505.
- each node may then update their copy of the blockchain with the new block and continue to work on extending the chain with additional transactions.
- step 507 when the chain is updated with the new block, the digitized item is moved from party A to party B.
- FIG. 6 a diagram of a blockchain according to some embodiments in shown.
- FIG. 6 comprises an example of an implementation of a blockchain system for delivery service record keeping.
- the delivery record 600 comprises digital currency information, address information, transaction information, and a public key associated with one or more of a sender, a courier, and a buyer.
- nodes associated the sender, the courier, and the buyer may each store a copy of the delivery record 610, 620, and 630 respectively.
- the delivery record 600 comprises a public key that allows the sender, the courier, and/or the buyer to view and/or update the delivery record 600 using their private keys 615, 625, and the 635 respectively.
- the sender may use the sender's private key 615 to authorize the transfer of a digital asset representing the physical asset from the sender to the courier and update the delivery record with the new transaction.
- the transfer from the seller to the courier may require signatures from both the sender and the courier using their respective private keys.
- the new transaction may be broadcasted and verified by the sender, the courier, the buyer, and/or other nodes on the system before being added to the distributed delivery record blockchain.
- the courier may use the courier's private key 625 to authorize the transfer of the digital asset representing the physical asset from the courier to the buyer and update the delivery record with the new transaction.
- the transfer from the courier to the buyer may require signatures from both the courier and the buyer using their respective private keys.
- the new transaction may be broadcasted and verified by the sender, the courier, the buyer, and/or other nodes on the system before being added to the distributed delivery record blockchain.
- the delivery record may be updated by one or more of the sender, courier, and the buyer to form a record of the transaction without a trusted third party while preventing unauthorized modifications to the record.
- the blockchain based transactions may further function to include transfers of digital currency with the completion of the transfer of physical asset.
- a distributed blockchain system comprises a plurality of nodes 710710 communicating over a network 720.
- the nodes 710710 may be comprise a distributed blockchain server and/or a distributed timestamp server.
- one or more nodes 710710 may comprise or be similar to a "miner" device on the Bitcoin network.
- Each node 710710 in the system comprises a network interface 711, a control circuit 712, and a memory 713.
- the control circuit 712 may comprise a processor, a microprocessor, and the like and may be configured to execute computer readable instructions stored on a computer readable storage memory 713.
- the computer readable storage memory may comprise volatile and/or nonvolatile memory and have stored upon it a set of computer readable instructions which, when executed by the control circuit 712, causes the node 710710 update the blockchain 714 stored in the memory 713 based on communications with other nodes 710710 over the network 720.
- the control circuit 712 may further be configured to extend the blockchain 714 by processing updates to form new blocks for the blockchain 714.
- each node may store a version of the blockchain 714, and together, may form a distributed database.
- each node 710710 may be configured to perform one or more steps described with reference to FIGS. 6-7 herein.
- the network interface 71 1 may comprise one or more network devices configured to allow the control circuit to receive and transmit information via the network 720.
- the network interface 711 may comprise one or more of a network adapter, a modem, a router, a data port, a transceiver, and the like.
- the network 720 may comprise a communication network configured to allow one or more nodes 710710 to exchange data.
- the network 720 may comprise one or more of the Internet, a local area network, a private network, a virtual private network, a home network, a wired network, a wireless network, and the like.
- the system does not include a central server and/or a trusted third party system. Each node in the system may enter and leave the network at any time.
- blockchain may be used to support a payment system based on cryptographic proof instead of trust, allowing any two willing parties to transact directly with each other without the need for a trusted third party.
- Bitcoin is an example of a blockchain backed currency.
- a blockchain system uses a peer-to-peer distributed timestamp server to generate computational proof of the chronological order of transactions.
- a blockchain system is secure as long as honest nodes collectively control more processing power than any cooperating group of attacker nodes. With a blockchain, the transaction records are
- a blockchain may use to secure digital documents such as digital cash, intellectual property, private financial data, chain of title to one or more rights, real property, digital wallet, digital representation of rights including, for example, a license to intellectual property, digital representation of a contractual relationship, medical records, security clearance rights, background check information, passwords, access control information for physical and/or virtual space, and combinations of one of more of the foregoing that allows online interactions directly between two parties without going through an intermediary.
- a trusted third party is not required to prevent fraud.
- a blockchain may include peer-to-peer network timestamped records of actions such as accessing documents, changing documents, copying documents, saving documents, moving documents, or other activities through which the digital content is used for its content, as an item for trade, or as an item for remuneration by hashing them into an ongoing chain of hash-based proof-of-work to form a record that cannot be changed in accord with that timestamp without redoing the proof- of-work.
- actions such as accessing documents, changing documents, copying documents, saving documents, moving documents, or other activities through which the digital content is used for its content, as an item for trade, or as an item for remuneration by hashing them into an ongoing chain of hash-based proof-of-work to form a record that cannot be changed in accord with that timestamp without redoing the proof- of-work.
- the longest chain proves the sequence of events witnessed, proves that it came from the largest pool of processing power, and that the integrity of the document has been maintained.
- the network for supporting blockchain based record keeping requires minimal structure.
- messages for updating the record are broadcast on a best-effort basis. Nodes can leave and rejoin the network at will and may be configured to accept the longest proof-of-work chain as proof of what happened while they were away.
- a blockchain based system allows content use, content exchange, and the use of content for remuneration based on cryptographic proof instead of trust, allowing any two willing parties to employ the content without the need to trust each other and without the need for a trusted third party.
- a blockchain may be used to ensure that a digital document was not altered after a given timestamp, that alterations made can be followed to a traceable point of origin, that only people with authorized keys can access the document, that the document itself is the original and cannot be duplicated, that where duplication is allowed and the integrity of the copy is maintained along with the original, that the document creator was authorized to create the document, and/or that the document holder was authorized to transfer, alter, or otherwise act on the document.
- blockchain may refer to one or more of a hash chain, a hash tree, a distributed database, and a distributed ledger.
- blockchain may further refer to systems that uses one or more of cryptography, private/public key encryption, proof standard, distributed timestamp server, and inventive schemes to regulate how new blocks may be added to the chain.
- blockchain may refer to the technology that underlies the Bitcoin system, a "sidechain” that uses the Bitcoin system for authentication and/or verification, or an alternative blockchain (“altchain”) that is based on Bitcoin concept and/or code but are generally independent of the Bitcoin system.
- FIGS. 2 - 7 provides additional detail regarding blockchain technology
- FIG. 8 describes a system for creating a crowdsourced delivery plan.
- FIG. 8 is a block diagram of a system 800 for creating a crowdsourced delivery plan, according to some embodiments.
- the system 800 includes a retailer 802 (or multiple retailers), a certification system 804 (or multiple certification systems), and portable devices 806.
- the certification system 804 can be backend system that includes one or more control circuits 808.
- the control circuit 808 can comprise a fixed-purpose hard-wired hardware platform (including but not limited to an application-specific integrated circuit (ASIC) (which is an integrated circuit that is customized by design for a particular use, rather than intended for general-purpose use), a field-programmable gate array (FPGA), and the like) or can comprise a partially or wholly- programmable hardware platform (including but not limited to microcontrollers,
- ASIC application-specific integrated circuit
- FPGA field-programmable gate array
- control circuit 808 is configured (for example, by using corresponding programming as will be well understood by those skilled in the art) to carry out one or more of the steps, actions, and/or functions described herein.
- control circuit 808 operably couples to a memory.
- the memory may be integral to the control circuit 808 or can be physically discrete (in whole or in part) from the control circuit 808 as desired.
- This memory can also be local with respect to the control circuit 808 (where, for example, both share a common circuit board, chassis, power supply, and/or housing) or can be partially or wholly remote with respect to the control circuit 808 (where, for example, the memory is physically located in another facility, metropolitan area, or even country as compared to the control circuit 808).
- This memory can serve, for example, to non-transitorily store the computer instructions that, when executed by the control circuit 808, cause the control circuit 808 to behave as described herein.
- this reference to "non-transitorily” will be understood to refer to a non-ephemeral state for the stored contents (and hence excludes when the stored contents merely constitute signals or waves) rather than volatility of the storage media itself and hence includes both non-volatile memory (such as read-only memory (ROM) as well as volatile memory (such as an erasable programmable read-only memory (EPROM).
- ROM read-only memory
- EPROM erasable programmable read-only memory
- the retailer 802 When the retailer 802 wishes to ship a package via crowdsourced delivery agent, the retailer 802 transmits a notification to the certification system 804.
- the notification contains an indication of items included in the package. Additionally, the notification can include other delivery information, such as delivery addresses, delivery instructions, timing requirements, retailer and/or customer preferences, etc.
- the certification system 804 transmits this
- the certification system 804 ensures that only delivery agents capable of delivering the package (i.e., those that meet the set of requirements for the package) can accept the delivery.
- the certification system 804 determines a set of requirements. The set of requirements is based on the items included in the package and indicate the certifications required of the delivery agent.
- the certification system 804 transmits the information regarding the delivery only to ones of the portable devices 806 that are associated with delivery agents meeting the set of requirements. Accordingly, only the ones of the portable devices 806 that are associated with delivery agents that meet the set of requirements will receive the information.
- the certification system 804 determines which delivery agents (and associated portable devices 806) are capable of delivering the package by referencing a list, or in some embodiments, a blockchain, or both.
- the list can include indications of delivery agents and associated portable devices 806 and the blockchain can include certifications for each of the delivery agents.
- the certification system transmits the information regarding the delivery to all of the portable devices 806.
- the portable devices 806 ensure that only delivery agents meeting the set of requirements can accept the delivery. That is, an application running on the portable devices 806 ensures that only delivery agents meeting the set of requirements can accept the delivery.
- the portable devices 806, after receiving the information regarding the delivery determine whether the delivery agent associated with the portable device 806 is capable of delivering the package. For example, the portable devices 806 can reference a list or blockchain to determine if the delivery agent associated with the portable device 806 meets the set of requirements.
- the portable devices 806 can prevent delivery agents that are not capable of delivering the package from accepting the delivery in any suitable manner.
- the portable devices 806 may only present the delivery to the delivery agents that are capable of delivering the package (i.e., if a delivery agent does not meet the set of requirements, the portable device 806 associated with the delivery agent will not present the potential delivery), can make deliveries for which delivery agents are not capable unselectable, etc.
- the portable devices 806 After receiving the information regarding the delivery, the portable devices 806 presents the potential deliveries to the delivery agents. As one example, the portable devices 806 can present the potential deliveries to the delivery agents via a user interface, such as a touchscreen graphical user interface (GUI). An application running on the portable devices 806 can generate the user interface. From the user interface, the delivery agents can view different potential deliveries, view information about the potential deliveries, and accept potential deliveries. When a delivery agent selects a potential delivery, the portable device 806 transmits an acceptance of the delivery. The portable device 806 can transmit the acceptance of the delivery to the certification system 804 and/or the retailer 802.
- GUI touchscreen graphical user interface
- the portable device 806 After transmitting the acceptance, the portable device 806 receives an authorization.
- the portable device 806 receives the authorization from the certification system 804 and/or the retailer 802, dependent upon where the acceptance was sent.
- the authorization is a code or identifier that allows the delivery agent to retrieve the package.
- the authorization can be a code (an alphabetic code, a numeric code, an alphanumeric code, a two- or three- dimensional barcode (i.e., a quick response ("QR") code), an auditory code, or a transmittable code (e.g., a radiofrequency ("RF") code).
- the authorization can include information identifying the delivery agent, the retailer, certifications required to deliver the package, delivery information for the package, etc. Additionally, the authorization can be unique to the delivery agent and/or the portable device 806 so that only a portable device 806 containing the correct authorization can retrieve the package. In some embodiments, the authorizations can also be tracked in a blockchain.
- FIG. 8 provides additional information regarding a system for creating a crowdsourced delivery plan
- FIG. 9 describes example operations for creating a crowdsourced delivery plan.
- FIG. 9 is a flow diagram including example operations for creating a crowdsourced delivery plan, according to some embodiments. The flow continues at block 902.
- an indication of items in a package is received.
- a system comprising a certification system and portable devices can receive the indication of the items.
- the certification system can receive the indication of the items from a retailer seeking a crowdsourced delivery agent.
- the indication of the items can be included in a notification of a delivery request.
- the certification system can receive delivery information, such as addresses, timing requirements, delivery instructions, etc.
- the flow continues at block 904.
- a set of requirements is determined.
- the certification system and/or portable devices can determine the set of requirements.
- the system determines the set of requirements based on the items included in the package.
- the set of requirements is based on certifications required to deliver the items in the package.
- the certifications can be of any suitable type or quality, such as age (i.e., age of the delivery agent), ratings (e.g., ratings received by previous customers, retailers, or certification systems), ability to use the item (e.g., a certification that the delivery agent is capable of demonstrating use of the item), ability to install the item (e.g., a certification that the delivery agent is capable of installing the item), criminal history, medical history, education, etc.
- age i.e., age of the delivery agent
- ratings e.g., ratings received by previous customers, retailers, or certification systems
- ability to use the item e.g., a certification that the delivery agent is capable of demonstrating use of the item
- ability to install the item e.g.,
- information regarding the delivery is transmitted.
- the certification system transmits the information regarding the delivery to the portable devices.
- the information regarding the delivery includes the set of restrictions (if determined by the certification system) as well as information relevant to delivery of the package (e.g., addresses, timing requirements, preferences, etc.).
- the flow continues at block 908.
- acceptance of the delivery is transmitted.
- one, or more, of the portable devices transmits the acceptance of the delivery.
- the acceptance can be delivered to the certification system, the retailer, or both.
- the portable device After receiving the information regarding the delivery, the portable device presents the delivery agent with information about the delivery.
- the delivery agent reviews the information about the delivery and can choose whether to accept the delivery. In some embodiments, the delivery agent can only accept the delivery if he or she meets the set of requirements (i.e., has the requisite certifications to deliver the package).
- the flow continues at block 912.
- an authorization is received.
- the portable device receives the authorization.
- the portable device receives the authorization from the certification system and/or the retailer.
- the authorization is a code or identifier that allows the delivery agent to retrieve the package.
- the authorization can be a code (an alphabetic code, a numeric code, an alphanumeric code, a two- or three-dimensional barcode (i.e., a quick response ("QR") code), an auditory code, or a transmittable code (e.g., a radiofrequency ("RF”) code).
- QR quick response
- RF radiofrequency
- the authorization can include information identifying the delivery agent, the retailer, certifications required to deliver the package, delivery information for the package, etc.
- the authorization is based on a cryptographic hash. Additionally, the authorization can be unique to the delivery agent and/or the portable device so that only a portable device containing the correct authorization can retrieve the package.
- the flow continues at block 914.
- FIG. 10 is a flow diagram depicting example operations for confirming a delivery agent's location, according to some embodiments.
- a system for creating a crowdsourced delivery plan for a package includes additional security features. On such feature ensures that a crowdsource delivery agent is in a location suitable to retrieve the item. For example, if the delivery is for a prescription medication, the delivery agent will not be able to retrieve the prescription medication unless he or she is at a specified location, such as a pharmacy.
- Such authentication may prevent unauthorized persons from electronically imitating a delivery agent (e.g., presenting an authorization that was fraudulently obtained) and retrieving a delivery.
- the flow begins at block 1002.
- a presentation of an authorization is received.
- a delivery agent can present, via his or her mobile device, the authorization. Because the authorization allows the delivery agent to retrieve the item, it is important to ensure that the person presenting the authorization is indeed the delivery agent. While the authorization provides a certain level of security (i.e., the authorization is only provided to a delivery agent capable of delivering the items), it may be susceptible to imitation. For example, an unauthorized person may steal or otherwise acquire the authorization.
- the flow continues at block 1004.
- the location of the delivery agent to whom the authorization was transmitted is determined. For example, if Delivery Agent A accepted the delivery and in turn received the authorization, the system determines the location of Delivery Agent A. The flow continues at decision diamond 1006.
- the location of the delivery agent to whom the authorization was transmitted is determined. If the location of the delivery agent to whom the authorization was transmitted is confirmed (i.e., the delivery agent is in the proper location to retrieve the item), the flow continues at block 1008. However, if at decision diamond 1006, the location of the delivery agent to whom the authorization was transmitted is not confirmed, the flow continues at block 1010.
- retrieval of the item is allowed. Because the location of the delivery agent to whom the authorization was transmitted was confirmed, the delivery agent will be permitted to retrieve the item. [0069] As previously discussed, if at decision diamond 1006, the location of the delivery agent to whom the authorization was transmitted is not confirmed, the flow continues at block 1010. At block 1010, retrieval of the item is not allowed. For example, when the authorization is presented at the pharmacy, Delivery Agent A (from the example above) is not at the pharmacy. Because Delivery Agent A is not at the pharmacy, it is assumed that whoever is presenting the authorization is doing so fraudulently. Consequently, this person will not be permitted to retrieve the item.
- FIG. 1 1 is a flow diagram depicting example operations for confirming a customer's location, according to some embodiments.
- location determination can be used in increase the security, and accuracy, of item delivery.
- enhanced security can be provided by ensuring that the customer is near the item when the item is delivered. Such a location determination may prevent packages from being stolen, as well as ensure that the delivery agent is in the correct location when delivering an item.
- the flow begins at block 1102.
- a request to deliver an item is received.
- a delivery agent can transmit the request to deliver the item via a mobile device.
- the request can be explicit or implicit (e.g., the request is triggered when an item is scanned for delivery).
- the flow continues at block 1104.
- a location of a recipient is determined. For example, the system determines the location of the person to whom the item is to be delivered. The system can make this determination based, for example, on a location of the recipient's mobile device. The flow continues at decision diamond 1106.
- decision diamond 1106 it is determined whether the recipient is in the delivery location. That is, it is determined whether the recipient's location can be confirmed. The recipient's location is confirmed if the recipient is in the correct location for the delivery (e.g., at his or her home or office, at the delivery location, etc.). If the recipient's location is confirmed, the flow continues at block 1 108. However, if the recipient's location is not confirmed, the flow continues at block 1 110.
- a confirmation is transmitted to the delivery agent.
- the system can transmit the confirmation to the delivery agent's mobile device.
- the confirmation indicates that the recipient's location has been confirmed and that the delivery agent can deliver the item.
- an instruction to refuse delivery is transmitted to the delivery agent.
- the system can transmit the instruction to refuse delivery to the delivery agent's mobile device. Because the recipient's location has not been confirmed, the delivery agent should not deliver the item.
- the system described herein can be used to facilitate deliveries from the customers to the retailer.
- the customer takes the role of the retailer in that the customer, for example, via a computer transmits a notification to the system indicating that the customer would like a package to be delivered to the retailer.
- Such embodiments are useful for returning purchased items, disposing of materials (e.g., hazardous materials), etc.
- a system for creating a crowdsourced delivery plan for a package comprises a certification system, the certification system configured to receive, from a retailer, an indication of items included in the package, determine, based on the indication of items included in the package, a set of requirements, and transmit, to a plurality of portable devices, information regarding the delivery, each of the plurality of portable devices configured to receive, from the certification system, the information regarding the delivery, transmit, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receive, in response to the transmission of the acceptance of the delivery, an authorization, and present, at a pickup point, the authorization.
- a system and a corresponding method performed by the system comprises receiving, at a certification system from a retailer, an indication of items included in a package, determining, based on the indication of the items included in the package, a set of requirements, transmitting, to a plurality of portable devices, information regarding a delivery, receiving, from the certification system, the information regarding the delivery, transmitting, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receiving, in response to the transmission of the acceptance of the delivery, an authorization, and presenting, at a pickup point, the authorization.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Economics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- Marketing (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Operations Research (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Quality & Reliability (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Power Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
In some embodiments, apparatuses and methods are provided herein useful to creating a crowdsourced delivery plan. In some embodiments, a system for creating a crowdsourced delivery plan for a package comprises a certification system configured to receive, from a retailer, an indication of items included in the package, determine, based on the indication of items included in the package, a set of requirements, and transmit, to a plurality of portable devices, information regarding the delivery, each of the plurality of portable devices configured to receive, from the certification system, the information regarding the delivery, transmit, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receive, in response to the transmission of the acceptance, an authorization, and present, at a pickup point, the authorization.
Description
CROWDSOURCED DELIVERY BASED ON A SET OF REQUIREMENTS
Cross-Reference to Related Application
[0001] This application claims the benefit of U.S. Provisional Application Number 62/439,329, filed December 27, 2016, which is incorporated by reference in its entirety herein.
Technical Field
[0002] This invention relates generally to package delivery and, more specifically, to crowdsourced package delivery.
Background
[0003] As an increasing number of customers shop remotely (e.g., online or over the phone), the number of packages delivered by retailers increases. Package delivery is not an insignificant cost to retailers. While retailers might prefer to pass these delivery costs on to the customers, customers often expect free or low-cost shipping options. Consequently, to remain competitive and encourage customers to shop more frequently, whether in a brick-and-mortar facility or remotely, retailers are seeking new low-cost shipping options. One such option is crowdsourced delivery. Crowdsourced delivery however poses problems that shipping with established carriers does not. For example, while it may be safe to assume that all employees of established carriers have proper certifications to deliver packages containing regulated or controlled items, such an assumption may not be as well-founded with crowdsourced delivery agents. Consequently, a need exists for a system that can create delivery plans with crowdsourced delivery agents which ensures that the crowdsourced delivery agents have the proper certifications.
Brief Description of the Drawings
[0004] Disclosed herein are embodiments of systems, apparatuses and methods pertaining to creating a crowdsourced delivery plan. This description includes drawings, wherein:
[0005] FIG. 1 depicts a portable device 102 presenting a user interface for a crowdsource delivery agent, according to some embodiments;
[0006] FIG. 2 depicts an illustration of blocks, according to some embodiments; [0007] FIG. 3 depicts an illustration of transactions, according to some embodiments;
[0008] FIG. 4 depicts a flow diagram, according to some embodiments;
[0009] FIG. 5 depicts a process diagram, according to some embodiments;
[0010] FIG. 6 depicts an illustration of a delivery record, according to some embodiments;
[0011] FIG. 7 depicts a system diagram configured, according to some embodiments;
[0012] FIG. 8 is a block diagram of a system 800 for creating a crowdsourced delivery plan, according to some embodiments;
[0013] FIG. 9 is a flow diagram including example operations for creating a crowdsourced delivery plan, according to some embodiments;
[0014] FIG. 10 is a flow diagram depicting example operations for confirming a delivery agent's location, according to some embodiments; and
[0015] FIG. 11 is a flow diagram depicting example operations for confirming a customer's location, according to some embodiments.
[0016] Elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and/or relative positioning of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well- understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention. Certain actions and/or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. The terms and expressions used herein have the ordinary technical meaning as is accorded to such terms and expressions by persons skilled in the technical field as set forth above except where different specific meanings have otherwise been set forth herein.
Detailed Description
[0017] Generally speaking, pursuant to various embodiments, systems, apparatuses, and methods are provided herein useful to creating a crowdsourced delivery plan. In some embodiments, a system for creating a crowdsourced delivery plan for a package comprises a certification system,
the certification system configured to receive, from a retailer, an indication of items included in the package, determine, based on the indication of items included in the package, a set of requirements, and transmit, to a plurality of portable devices, information regarding the delivery, each of the plurality of portable devices configured to receive, from the certification system, the information regarding the delivery, transmit, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receive, in response to the transmission of the acceptance of the delivery, an authorization, and present, at a pickup point, the authorization.
[0018] As previously discussed, the frequency with which customers shop remotely is increasing. Accordingly, shipping costs for retailers are increasing with the increased number of packages that must be delivered to the customers shopping remotely. While crowdsourced delivery may decrease some of these costs, it also poses new problems. For example, state or federal law may require that a delivery agent have certain certifications to deliver regulated items, such as alcohol, pharmaceuticals, firearms, etc. While established carriers (e.g., USPS, UPS, FedEx, etc.) may have plans and contingencies in place for delivery of such items, crowdsourced systems and methods lack many of these controls. Accordingly, embodiments described herein seek to minimize or eliminate these issues via a system that determines a set of requirements for delivery and ensures that only those crowdsourced delivery agents meeting those requirements are able to deliver the packages. The discussion of FIG. 1 provides an introduction to a system for creating a crowdsourced delivery plan for a package. In some embodiments, the system utilizes blockchain to maintain a list of certifications for delivery agents. Descriptions of some embodiments of blockchain technology are provided with reference to FIGS. 2 - 7 herein. Blockchain technology may be utilized to maintain a record of certifications for delivery agents. One or more of the certification systems described herein may comprise a node in a distributed blockchain system storing a copy of the blockchain record. Updates to the blockchain may comprise the transfer and/or recordation of certifications and one or more nodes on the system may be configured to incorporate one or more updates into blocks to add to the distributed database. The discussion of FIGS. 8 - 9 provides additional details regarding a system for creating a crowdsourced delivery plan for a package.
Introduction:
[0019] FIG. 1 depicts a portable device 102 presenting a user interface for a crowdsource delivery agent, according to some embodiments. While FIG. 1 depicts the portable device 102 as a cellular phone, the portable device can be any suitable device (e.g., a computer, tablet, a dedicated device, etc.). The user interface is part of a system for creating a crowdsourced delivery plan for a package. When a retailer wants to find a crowdsourced delivery agent to deliver a package, the retailer transmits a notification to the system. The portable device 102 presents potential deliveries, from which a delivery agent can accept one or more of the potential deliveries. After accepting the delivery, the delivery agent receives an authorization on the portable device 102. The authorization can be a visual, audible, or transmittable code (e.g., via nearfield communication). In some embodiments, pickup of the package is automated such that the delivery agent simply presents the authorization at a pickup point and the package is delivered to the delivery agent.
[0020] Before the system presents delivery opportunities to delivery agents, the retailer transmits a notification informing the system of the delivery. The notification includes information regarding the package (i.e., the package to be delivered). The information can include an indication of items included in the package, as well as other delivery instructions, such as an address, timing requirements, etc. The items in the package may have restrictions on delivery agents that can deliver the package. The restrictions can be set by retailer policy, law, or any other suitable source. For example, if one of the items in the package is a firearm, the retailer, or law, may require that the person delivering the package have certain certifications, such as not being a convicted felon or having a special license (e.g., a license to carry a firearm or a license to deliver a firearm). The certifications can be of any suitable type or quality, such as age (i.e., age of the delivery agent), ratings (e.g., ratings received by previous customers, retailers, or certification systems), ability to use the item (e.g., a certification that the delivery agent is capable of demonstrating use of the item), ability to install the item (e.g., a certification that the delivery agent is capable of installing the item), criminal history, medical history, education, type of vehicle used for delivery, length of delivery experience, etc. As discussed in more detail with regard to FIGS. 2 - 7, the system can store credentials, as well as delivery agent identities, in a blockchain format.
[0021] After receiving the indication of the items included in the package, the system determines a set of requirements for the delivery agent. As discussed in more detail below, dependent upon the embodiment, the certification system or the portable device 102 determines the set of requirements. The set of requirements is dependent upon the items in the package and specifies the type(s), if any, of certification required of the delivery agent. In either embodiment, the delivery agent associated with the portable device 102 is only capable of accepting the delivery if the delivery agent associated with the portable device 102 meets the set of requirements. For example, the certification may only transmit potential deliveries to portable devices associated with delivery agents that meet the set of requirements, or the portable device 102 may only present potential deliveries for which the delivery agent associated with the portable device 102 meets the set of requirements. The delivery agent can view and select deliveries via the portable device 102.
[0022] The user interface presented by the portable device 102 depicted in FIG. 1 is but an example of one suitable user interface. The user interface can have a different appearance and/or have greater, or fewer, features than the user interface depicted in FIG. 1. The user interface depicted in FIG. 1, includes windows for potential deliveries. As depicted in FIG. 1, the user interface includes a first window 106 for a first potential delivery ("Delivery 1") and a second window 122 for a second potential delivery ("Delivery 2"). The first window 106 is in the foreground and provides information and options related to the first potential delivery.
Specifically, the first window 106 includes address information 108, including a map option 110 to show the address on a map, restriction information 112 (i.e., the set of requirements required to deliver the package), timing requirements 114, and an accept option 116 (the selection of which accepts the delivery). The delivery agent can select the second window 122 to bring the second window 122, and the information and options related to the second potential delivery, to the foreground. The user interface also includes an "all deliveries" button 118 and a "deliveries near me" button 120. Selection of the "all deliveries" button 118 shows all potential deliveries, for example, in a grid, on a map, etc. Selection of the "deliveries near me" button 120 shows all deliveries near the portable device 102, for example, in a grid, on a map, etc.
[0023] While the discussion of FIG. 1 provides an introduction to a system for creating crowdsource delivery plans, the discussion of FIGS. 2 - 7 provides additional detail regarding blockchain.
Blockchain Technology:
[0024] Distributed database and shared ledger database generally refer to methods of peer-to- peer record keeping and authentication in which records are kept at multiple nodes in the peer-to- peer network instead of kept at a trusted party. A blockchain may generally refer to a distributed database that maintains a growing list of records in which each block contains a hash of some or all previous records in the chain to secure the record from tampering and unauthorized revision. A hash generally refers to a derivation of original data. In some embodiments, the hash in a block of a blockchain may comprise a cryptographic hash that is difficult to reverse and/or a hash table. Blocks in a blockchain may further be secured by a system involving one or more of a distributed timestamp server, cryptography, public/private key authentication and encryption, proof standard (e.g. proof-of-work, proof-of-stake, proof-of-space), and/or other security, consensus, and incentive features. In some embodiments, a block in a blockchain may comprise one or more of a data hash of the previous block, a timestamp, a cryptographic nonce, a proof standard, and a data descriptor to support the security and/or incentive features of the system.
[0025] In some embodiments, a blockchain system comprises a distributed timestamp server comprising a plurality of nodes configured to generate computational proof of record integrity and the chronological order of its use for content, trade, and/or as a currency of exchange through a peer-to-peer network. In some embodiments, when a blockchain is updated, a node in the distributed timestamp server system takes a hash of a block of items to be timestamped and broadcasts the hash to other nodes on the peer-to-peer network. The timestamp in the block serves to prove that the data existed at the time in order to get into the hash. In some
embodiments, each block includes the previous timestamp in its hash, forming a chain, with each additional block reinforcing the ones before it. In some embodiments, the network of timestamp server nodes performs the following steps to add a block to a chain: 1) new activities are broadcasted to all nodes, 2) each node collects new activities into a block, 3) each node works on finding a difficult proof-of-work for its block, 4) when a node finds a proof-of-work, it broadcasts the block to all nodes, 5) nodes accept the block only if activities are authorized, and 6) nodes express their acceptance of the block by working on creating the next block in the chain, using the hash of the accepted block as the previous hash. In some embodiments, nodes
may be configured to consider the longest chain to be the correct one and work on extending it. A digital currency implemented on a blockchain system is described by Satoshi Nakamoto in "Bitcoin: A Peer-to-Peer Electronic Cash System" (http://bitcoin.org/bitcoin. pdf), the entirety of which is incorporated herein by reference.
[0026] Now referring to FIG. 2, an illustration of a blockchain according to some embodiments is shown. In some embodiments, a blockchain comprises a hash chain or a hash tree in which each block added in the chain contains a hash of the previous block. In FIG. 2, block 0 200200 represents a genesis block of the chain. Block 1 210 contains a hash of block 0 200, block 2 220 contains a hash of block 1 210, block 3 230 contains a hash of block 2 220, and so forth.
Continuing down the chain, block N 290 contains a hash of block N-l . In some embodiments, the hash may comprise the header of each block. Once a chain is formed, modifying or tampering with a block in the chain would cause detectable disparities between the blocks. For example, if block 1 is modified after being formed, block 1 would no longer match the hash of block 1 in block 2. If the hash of block 1 in block 2 is also modified in an attempt to cover up the change in block 1 , block 2 would not then match with the hash of block 2 in block 3. In some embodiments, a proof standard (e.g. proof-of-work, proof-of-stake, proof-of-space, etc.) may be required by the system when a block is formed to increase the cost of generating or changing a block that could be authenticated by the consensus rules of the distributed system, making the tampering of records stored in a blockchain computationally costly and essentially impractical. In some embodiments, a blockchain may comprise a hash chain stored on multiple nodes as a distributed database and/or a shared ledger, such that modifications to any one copy of the chain would be detectable when the system attempts to achieve consensus prior to adding a new block to the chain. In some embodiments, a block may generally contain any type of data and record. In some embodiments, each block may comprise a plurality of transaction and/or activity records.
[0027] In some embodiments, blocks may contain rules and data for authorizing different types of actions and/or parties who can take action. In some embodiments, transaction and block forming rules may be part of the software algorithm on each node. When a new block is being formed, any node on the system can use the prior records in the blockchain to verify whether the requested action is authorized. For example, a block may contain a public key of an owner of an asset that allows the owner to show possession and/or transfer the asset using a private key.
Nodes may verify that the owner is in possession of the asset and/or is authorized to transfer the asset based on prior transaction records when a block containing the transaction is being formed and/or verified. In some embodiments, rules themselves may be stored in the blockchain such that the rules are also resistant to tampering once created and hashed into a block. In some embodiments, the blockchain system may further include incentive features for nodes that provide resources to form blocks for the chain. For example, in the Bitcoin system, "miners' are nodes that compete to provide proof-of-work to form a new block, and the first successful miner of a new block earns Bitcoin currency in return.
[0028] Now referring to FIG. 3, an illustration of blockchain-based transactions according to some embodiments is shown. In some embodiments, the blockchain illustrated in FIG. 3 comprises a hash chain protected by private/public key encryption. Transaction A 310 represents a transaction recorded in a block of a blockchain showing that owner 1 (recipient) obtained an asset from owner 0 (sender). Transaction A 310 contains owner's 1 public key and owner 0's signature for the transaction and a hash of a previous block. When owner 1 transfers the asset to owner 2, a block containing transaction B 320 is formed. The record of transaction B 320 comprises the public key of owner 2 (recipient), a hash of the previous block, and owner 1 's signature for the transaction that is signed with the owner 1 's private key 325 and verified using owner l 's public key in transaction A 310. When owner 2 transfers the asset to owner 3, a block containing transaction C 330 is formed. The record of transaction C 330 comprises the public key of owner 3 (recipient), a hash of the previous block, and owner 2's signature for the transaction that is signed by owner 2's private key 335 and verified using owner 2's public key from transaction B 220. In some embodiments, when each transaction record is created, the system may check previous transaction records and the current owner's private and public key signature to determine whether the transaction is valid. In some embodiments, transactions are be broadcasted in the peer-to-peer network and each node on the system may verify that the transaction is valid prior to adding the block containing the transaction to their copy of the blockchain. In some embodiments, nodes in the system may look for the longest chain in the system to determine the most up-to-date transaction record to prevent the current owner from double spending the asset. The transactions in FIG. 3 are shown as an example only. In some embodiments, a blockchain record and/or the software algorithm may comprise any type of rules that regulate who and how the chain may be extended. In some embodiments, the rules in a
blockchain may comprise clauses of a smart contract that is enforced by the peer-to-peer network.
[0029] Now referring to FIG. 4, a flow diagram according to some embodiments is shown. In some embodiments, the steps shown in FIG. 4 may be performed by a processor-based device, such as a computer system, a server, a distributed server, a timestamp server, a blockchain node, and the like. In some embodiments, the steps in FIG. 4 may be performed by one or more of the nodes in a system using blockchain for record keeping.
[0030] In step 401 , a node receives a new activity. The new activity may comprise an update to the record being kept in the form of a blockchain. In some embodiments, for blockchain supported digital or physical asset record keeping, the new activity may comprise a asset transaction. In some embodiments, the new activity may be broadcasted to a plurality of nodes on the network prior to step 401. In step 402, the node works to form a block to update the blockchain. In some embodiments, a block may comprise a plurality of activities or updates and a hash of one or more previous block in the blockchain. In some embodiments, the system may comprise consensus rules for individual transactions and/or blocks and the node may work to form a block that conforms to the consensus rules of the system. In some embodiments, the consensus rules may be specified in the software program running on the node. For example, a node may be required to provide a proof standard (e.g. proof of work, proof of stake, etc.) which requires the node to solve a difficult mathematical problem for form a nonce in order to form a block. In some embodiments, the node may be configured to verify that the activity is authorized prior to working to form the block. In some embodiments, whether the activity is authorized may be determined based on records in the earlier blocks of the blockchain itself.
[0031] After step 402, if the node successfully forms a block in step 405 prior to receiving a block from another node, the node broadcasts the block to other nodes over the network in step 406. In some embodiments, in a system with incentive features, the first node to form a block may be permitted to add incentive payment to itself in the newly formed block. In step 420, the node then adds the block to its copy of the blockchain. In the event that the node receives a block formed by another node in step 403 prior to being able to form the block, the node works to verify that the activity recorded in the received block is authorized in step 404. In some embodiments, the node may further check the new block against system consensus rules for
blocks and activities to verify whether the block is properly formed. If the new block is not authorized, the node may reject the block update and return to step 402 to continue to work to form the block. If the new block is verified by the node, the node may express its approval by adding the received block to its copy of the blockchain in step 420. After a block is added, the node then returns to step 401 to form the next block using the newly extended blockchain for the hash in the new block.
[0032] In some embodiments, in the event one or more blocks having the same block number is received after step 420, the node may verify the later arriving blocks and temporarily store these block if they pass verification. When a subsequent block is received from another node, the node may then use the subsequent block to determine which of the plurality of received blocks is the correct/consensus block for the blockchain system on the distributed database and update its copy of the blockchain accordingly. In some embodiments, if a node goes offline for a time period, the node may retrieve the longest chain in the distributed system, verify each new block added since it has been offline, and update its local copy of the blockchain prior to proceeding to step 401.
[0033] Now referring to FIG. 5, a process diagram a blockchain update according to some implementations in shown. In step 501 , party A initiates the transfer of a digitized item to party B. In some embodiments, the digitized item may comprise a digital currency, a digital asset, a document, rights to a physical asset, etc. In some embodiments, Party A may prove that he has possession of the digitized item by signing the transaction with a private key that may be verified with a public key in the previous transaction of the digitized item. In step 502, the exchange initiated in step 501 is represented as a block. In some embodiments, the transaction may be compared with transaction records in the longest chain in the distributed system to verify part A's ownership. In some embodiments, a plurality of nodes in the network may compete to form the block containing the transaction record. In some embodiments, nodes may be required to satisfy proof-of-work by solving a difficult mathematical problem to form the block. In some embodiments, other methods of proof such as proof-of-stake, proof-of-space, etc. may be used in the system. In some embodiments, the node that is first to form the block may earn a reward for the task as incentive. For example, in the Bitcoin system, the first node to provide prove of work to for block the may earn a Bitcoin. In some embodiments, a block may comprise one or more transactions between different parties that are broadcasted to the nodes. In step 503, the block is
broadcasted to parties in the network. In step 504, nodes in the network approve the exchange by examining the block that contains the exchange. In some embodiments, the nodes may check the solution provided as proof-of-work to approve the block. In some embodiments, the nodes may check the transaction against the transaction record in the longest blockchain in the system to verify that the transaction is valid (e.g. party A is in possession of the asset he/she s seeks to transfer). In some embodiments, a block may be approved with consensus of the nodes in the network. After a block is approved, the new block 506 representing the exchange is added to the existing chain 505 comprising blocks that chronologically precede the new block 506. The new block 506 may contain the transaction(s) and a hash of one or more blocks in the existing chain 505. In some embodiments, each node may then update their copy of the blockchain with the new block and continue to work on extending the chain with additional transactions. In step 507, when the chain is updated with the new block, the digitized item is moved from party A to party B.
[0034] Now referring to FIG. 6, a diagram of a blockchain according to some embodiments in shown. FIG. 6 comprises an example of an implementation of a blockchain system for delivery service record keeping. The delivery record 600 comprises digital currency information, address information, transaction information, and a public key associated with one or more of a sender, a courier, and a buyer. In some embodiments, nodes associated the sender, the courier, and the buyer may each store a copy of the delivery record 610, 620, and 630 respectively. In some embodiments, the delivery record 600 comprises a public key that allows the sender, the courier, and/or the buyer to view and/or update the delivery record 600 using their private keys 615, 625, and the 635 respectively. For example, when a package is transferred from a sender to the courier, the sender may use the sender's private key 615 to authorize the transfer of a digital asset representing the physical asset from the sender to the courier and update the delivery record with the new transaction. In some embodiments, the transfer from the seller to the courier may require signatures from both the sender and the courier using their respective private keys. The new transaction may be broadcasted and verified by the sender, the courier, the buyer, and/or other nodes on the system before being added to the distributed delivery record blockchain. When the package is transferred from the courier to the buyer, the courier may use the courier's private key 625 to authorize the transfer of the digital asset representing the physical asset from the courier to the buyer and update the delivery record with the new transaction. In some
embodiments, the transfer from the courier to the buyer may require signatures from both the courier and the buyer using their respective private keys. The new transaction may be broadcasted and verified by the sender, the courier, the buyer, and/or other nodes on the system before being added to the distributed delivery record blockchain.
[0035] With the scheme shown in FIG. 6, the delivery record may be updated by one or more of the sender, courier, and the buyer to form a record of the transaction without a trusted third party while preventing unauthorized modifications to the record. In some embodiments, the blockchain based transactions may further function to include transfers of digital currency with the completion of the transfer of physical asset. With the distributed database and peer-to-peer verification of a blockchain system, the sender, the courier, and the buyer can each have confidence in the authenticity and accuracy of the delivery record stored in the form of a blockchain.
[0036] Now referring to FIG. 7, a system according to some embodiments is shown. A distributed blockchain system comprises a plurality of nodes 710710 communicating over a network 720. In some embodiments, the nodes 710710 may be comprise a distributed blockchain server and/or a distributed timestamp server. In some embodiments, one or more nodes 710710 may comprise or be similar to a "miner" device on the Bitcoin network. Each node 710710 in the system comprises a network interface 711, a control circuit 712, and a memory 713.
[0037] The control circuit 712 may comprise a processor, a microprocessor, and the like and may be configured to execute computer readable instructions stored on a computer readable storage memory 713. The computer readable storage memory may comprise volatile and/or nonvolatile memory and have stored upon it a set of computer readable instructions which, when executed by the control circuit 712, causes the node 710710 update the blockchain 714 stored in the memory 713 based on communications with other nodes 710710 over the network 720. In some embodiments, the control circuit 712 may further be configured to extend the blockchain 714 by processing updates to form new blocks for the blockchain 714. Generally, each node may store a version of the blockchain 714, and together, may form a distributed database. In some embodiments, each node 710710 may be configured to perform one or more steps described with reference to FIGS. 6-7 herein.
[0038] The network interface 71 1 may comprise one or more network devices configured to allow the control circuit to receive and transmit information via the network 720. In some embodiments, the network interface 711 may comprise one or more of a network adapter, a modem, a router, a data port, a transceiver, and the like. The network 720 may comprise a communication network configured to allow one or more nodes 710710 to exchange data. In some embodiments, the network 720 may comprise one or more of the Internet, a local area network, a private network, a virtual private network, a home network, a wired network, a wireless network, and the like. In some embodiments, the system does not include a central server and/or a trusted third party system. Each node in the system may enter and leave the network at any time.
[0039] With the system and processes shown in, once a block is formed, the block cannot be changed without redoing the work to satisfy census rules thereby securing the block from tampering. A malicious attacker would need to provide proof standard for each block subsequent to the one he/she seeks to modify, race all other nodes, and overtake the majority of the system to affect change to an earlier record in the blockchain.
[0040] In some embodiments, blockchain may be used to support a payment system based on cryptographic proof instead of trust, allowing any two willing parties to transact directly with each other without the need for a trusted third party. Bitcoin is an example of a blockchain backed currency. A blockchain system uses a peer-to-peer distributed timestamp server to generate computational proof of the chronological order of transactions. Generally, a blockchain system is secure as long as honest nodes collectively control more processing power than any cooperating group of attacker nodes. With a blockchain, the transaction records are
computationally impractical to reverse. As such, sellers are protected from fraud and buyers are protected by the routine escrow mechanism.
[0041] In some embodiments, a blockchain may use to secure digital documents such as digital cash, intellectual property, private financial data, chain of title to one or more rights, real property, digital wallet, digital representation of rights including, for example, a license to intellectual property, digital representation of a contractual relationship, medical records, security clearance rights, background check information, passwords, access control information for physical and/or virtual space, and combinations of one of more of the foregoing that allows
online interactions directly between two parties without going through an intermediary. With a blockchain, a trusted third party is not required to prevent fraud. In some embodiments, a blockchain may include peer-to-peer network timestamped records of actions such as accessing documents, changing documents, copying documents, saving documents, moving documents, or other activities through which the digital content is used for its content, as an item for trade, or as an item for remuneration by hashing them into an ongoing chain of hash-based proof-of-work to form a record that cannot be changed in accord with that timestamp without redoing the proof- of-work.
[0042] In some embodiments, in the peer-to-peer network, the longest chain proves the sequence of events witnessed, proves that it came from the largest pool of processing power, and that the integrity of the document has been maintained. In some embodiments, the network for supporting blockchain based record keeping requires minimal structure. In some embodiments, messages for updating the record are broadcast on a best-effort basis. Nodes can leave and rejoin the network at will and may be configured to accept the longest proof-of-work chain as proof of what happened while they were away.
[0043] In some embodiments, a blockchain based system allows content use, content exchange, and the use of content for remuneration based on cryptographic proof instead of trust, allowing any two willing parties to employ the content without the need to trust each other and without the need for a trusted third party. In some embodiments, a blockchain may be used to ensure that a digital document was not altered after a given timestamp, that alterations made can be followed to a traceable point of origin, that only people with authorized keys can access the document, that the document itself is the original and cannot be duplicated, that where duplication is allowed and the integrity of the copy is maintained along with the original, that the document creator was authorized to create the document, and/or that the document holder was authorized to transfer, alter, or otherwise act on the document.
[0044] As used herein, in some embodiments, the term blockchain may refer to one or more of a hash chain, a hash tree, a distributed database, and a distributed ledger. In some embodiments, blockchain may further refer to systems that uses one or more of cryptography, private/public key encryption, proof standard, distributed timestamp server, and inventive schemes to regulate how new blocks may be added to the chain. In some embodiments, blockchain may refer to the
technology that underlies the Bitcoin system, a "sidechain" that uses the Bitcoin system for authentication and/or verification, or an alternative blockchain ("altchain") that is based on bitcoin concept and/or code but are generally independent of the Bitcoin system.
[0045] Descriptions of embodiments of blockchain technology are provided herein as illustrations and examples only. The concepts of the blockchain system may be variously modified and adapted for different applications.
[0046] While the discussion of FIGS. 2 - 7 provides additional detail regarding blockchain technology, the discussion of FIG. 8 describes a system for creating a crowdsourced delivery plan.
Additional Details Regarding a System for Creating Crowdsourced Delivery Plans:
[0047] FIG. 8 is a block diagram of a system 800 for creating a crowdsourced delivery plan, according to some embodiments. The system 800 includes a retailer 802 (or multiple retailers), a certification system 804 (or multiple certification systems), and portable devices 806. The certification system 804 can be backend system that includes one or more control circuits 808. The control circuit 808 can comprise a fixed-purpose hard-wired hardware platform (including but not limited to an application-specific integrated circuit (ASIC) (which is an integrated circuit that is customized by design for a particular use, rather than intended for general-purpose use), a field-programmable gate array (FPGA), and the like) or can comprise a partially or wholly- programmable hardware platform (including but not limited to microcontrollers,
microprocessors, and the like). These architectural options for such structures are well known and understood in the art and require no further description here. The control circuit 808 is configured (for example, by using corresponding programming as will be well understood by those skilled in the art) to carry out one or more of the steps, actions, and/or functions described herein.
[0048] By one optional approach the control circuit 808 operably couples to a memory. The memory may be integral to the control circuit 808 or can be physically discrete (in whole or in part) from the control circuit 808 as desired. This memory can also be local with respect to the control circuit 808 (where, for example, both share a common circuit board, chassis, power
supply, and/or housing) or can be partially or wholly remote with respect to the control circuit 808 (where, for example, the memory is physically located in another facility, metropolitan area, or even country as compared to the control circuit 808).
[0049] This memory can serve, for example, to non-transitorily store the computer instructions that, when executed by the control circuit 808, cause the control circuit 808 to behave as described herein. As used herein, this reference to "non-transitorily" will be understood to refer to a non-ephemeral state for the stored contents (and hence excludes when the stored contents merely constitute signals or waves) rather than volatility of the storage media itself and hence includes both non-volatile memory (such as read-only memory (ROM) as well as volatile memory (such as an erasable programmable read-only memory (EPROM).
[0050] When the retailer 802 wishes to ship a package via crowdsourced delivery agent, the retailer 802 transmits a notification to the certification system 804. The notification contains an indication of items included in the package. Additionally, the notification can include other delivery information, such as delivery addresses, delivery instructions, timing requirements, retailer and/or customer preferences, etc. The certification system 804 transmits this
information, as information regarding the delivery, to the portable devices 806.
[0051] In a first embodiment, the certification system 804 ensures that only delivery agents capable of delivering the package (i.e., those that meet the set of requirements for the package) can accept the delivery. In such embodiments, the certification system 804 determines a set of requirements. The set of requirements is based on the items included in the package and indicate the certifications required of the delivery agent. After determining the set of requirements, the certification system 804 transmits the information regarding the delivery only to ones of the portable devices 806 that are associated with delivery agents meeting the set of requirements. Accordingly, only the ones of the portable devices 806 that are associated with delivery agents that meet the set of requirements will receive the information. Because only the ones of the portable devices 806 that are associated with delivery agents that meet the set of requirements will receive the information, only delivery agents that meet the set of requirements can accept the delivery. The certification system 804 determines which delivery agents (and associated portable devices 806) are capable of delivering the package by referencing a list, or in some embodiments, a blockchain, or both. For example, the list can include indications of delivery
agents and associated portable devices 806 and the blockchain can include certifications for each of the delivery agents.
[0052] In a second embodiment, the certification system transmits the information regarding the delivery to all of the portable devices 806. In such embodiments, the portable devices 806 ensure that only delivery agents meeting the set of requirements can accept the delivery. That is, an application running on the portable devices 806 ensures that only delivery agents meeting the set of requirements can accept the delivery. The portable devices 806, after receiving the information regarding the delivery, determine whether the delivery agent associated with the portable device 806 is capable of delivering the package. For example, the portable devices 806 can reference a list or blockchain to determine if the delivery agent associated with the portable device 806 meets the set of requirements. The portable devices 806 can prevent delivery agents that are not capable of delivering the package from accepting the delivery in any suitable manner. For example, the portable devices 806 may only present the delivery to the delivery agents that are capable of delivering the package (i.e., if a delivery agent does not meet the set of requirements, the portable device 806 associated with the delivery agent will not present the potential delivery), can make deliveries for which delivery agents are not capable unselectable, etc.
[0053] After receiving the information regarding the delivery, the portable devices 806 presents the potential deliveries to the delivery agents. As one example, the portable devices 806 can present the potential deliveries to the delivery agents via a user interface, such as a touchscreen graphical user interface (GUI). An application running on the portable devices 806 can generate the user interface. From the user interface, the delivery agents can view different potential deliveries, view information about the potential deliveries, and accept potential deliveries. When a delivery agent selects a potential delivery, the portable device 806 transmits an acceptance of the delivery. The portable device 806 can transmit the acceptance of the delivery to the certification system 804 and/or the retailer 802.
[0054] After transmitting the acceptance, the portable device 806 receives an authorization. The portable device 806 receives the authorization from the certification system 804 and/or the retailer 802, dependent upon where the acceptance was sent. The authorization is a code or identifier that allows the delivery agent to retrieve the package. For example, the authorization
can be a code (an alphabetic code, a numeric code, an alphanumeric code, a two- or three- dimensional barcode (i.e., a quick response ("QR") code), an auditory code, or a transmittable code (e.g., a radiofrequency ("RF") code). The authorization can include information identifying the delivery agent, the retailer, certifications required to deliver the package, delivery information for the package, etc. Additionally, the authorization can be unique to the delivery agent and/or the portable device 806 so that only a portable device 806 containing the correct authorization can retrieve the package. In some embodiments, the authorizations can also be tracked in a blockchain.
[0055] While the discussion of FIG. 8 provides additional information regarding a system for creating a crowdsourced delivery plan, the discussion FIG. 9 describes example operations for creating a crowdsourced delivery plan.
[0056] FIG. 9 is a flow diagram including example operations for creating a crowdsourced delivery plan, according to some embodiments. The flow continues at block 902.
[0057] At block 902, an indication of items in a package is received. For example, a system comprising a certification system and portable devices can receive the indication of the items. Specifically, the certification system can receive the indication of the items from a retailer seeking a crowdsourced delivery agent. The indication of the items can be included in a notification of a delivery request. In addition to the indication of the items, the certification system can receive delivery information, such as addresses, timing requirements, delivery instructions, etc. The flow continues at block 904.
[0058] At block 904, a set of requirements is determined. For example, the certification system and/or portable devices can determine the set of requirements. The system determines the set of requirements based on the items included in the package. The set of requirements is based on certifications required to deliver the items in the package. The certifications can be of any suitable type or quality, such as age (i.e., age of the delivery agent), ratings (e.g., ratings received by previous customers, retailers, or certification systems), ability to use the item (e.g., a certification that the delivery agent is capable of demonstrating use of the item), ability to install the item (e.g., a certification that the delivery agent is capable of installing the item), criminal history, medical history, education, etc. The flow continues at block 906.
[0059] At block 906, information regarding the delivery is transmitted. For example, the certification system transmits the information regarding the delivery to the portable devices. The information regarding the delivery includes the set of restrictions (if determined by the certification system) as well as information relevant to delivery of the package (e.g., addresses, timing requirements, preferences, etc.). The flow continues at block 908.
[0060] At block 908, information regarding the delivery is received. For example, the portable devices can receive the information regarding the delivery. The flow continues at block 910.
[0061] At block 910, acceptance of the delivery is transmitted. For example, one, or more, of the portable devices transmits the acceptance of the delivery. The acceptance can be delivered to the certification system, the retailer, or both. After receiving the information regarding the delivery, the portable device presents the delivery agent with information about the delivery. The delivery agent reviews the information about the delivery and can choose whether to accept the delivery. In some embodiments, the delivery agent can only accept the delivery if he or she meets the set of requirements (i.e., has the requisite certifications to deliver the package). The flow continues at block 912.
[0062] At block 912, an authorization is received. For example, the portable device receives the authorization. The portable device receives the authorization from the certification system and/or the retailer. The authorization is a code or identifier that allows the delivery agent to retrieve the package. For example, the authorization can be a code (an alphabetic code, a numeric code, an alphanumeric code, a two- or three-dimensional barcode (i.e., a quick response ("QR") code), an auditory code, or a transmittable code (e.g., a radiofrequency ("RF") code). The authorization can include information identifying the delivery agent, the retailer, certifications required to deliver the package, delivery information for the package, etc. In some embodiments, the authorization is based on a cryptographic hash. Additionally, the authorization can be unique to the delivery agent and/or the portable device so that only a portable device containing the correct authorization can retrieve the package. The flow continues at block 914.
[0063] At block 914, the authorization is presented at a pickup point. For example, the delivery agent can present, via the portable device, the authorization. In some embodiments, the pickup is automated and presentation of the authorization causes delivery of the package to the delivery agent.
[0064] FIG. 10 is a flow diagram depicting example operations for confirming a delivery agent's location, according to some embodiments. In some embodiments, a system for creating a crowdsourced delivery plan for a package includes additional security features. On such feature ensures that a crowdsource delivery agent is in a location suitable to retrieve the item. For example, if the delivery is for a prescription medication, the delivery agent will not be able to retrieve the prescription medication unless he or she is at a specified location, such as a pharmacy. Such authentication may prevent unauthorized persons from electronically imitating a delivery agent (e.g., presenting an authorization that was fraudulently obtained) and retrieving a delivery. The flow begins at block 1002.
[0065] At block 1002, a presentation of an authorization is received. For example, a delivery agent can present, via his or her mobile device, the authorization. Because the authorization allows the delivery agent to retrieve the item, it is important to ensure that the person presenting the authorization is indeed the delivery agent. While the authorization provides a certain level of security (i.e., the authorization is only provided to a delivery agent capable of delivering the items), it may be susceptible to imitation. For example, an unauthorized person may steal or otherwise acquire the authorization. The flow continues at block 1004.
[0066] At block 1004, the location of the delivery agent to whom the authorization was transmitted is determined. For example, if Delivery Agent A accepted the delivery and in turn received the authorization, the system determines the location of Delivery Agent A. The flow continues at decision diamond 1006.
[0067] At decision diamond 1006, the location of the delivery agent to whom the authorization was transmitted is determined. If the location of the delivery agent to whom the authorization was transmitted is confirmed (i.e., the delivery agent is in the proper location to retrieve the item), the flow continues at block 1008. However, if at decision diamond 1006, the location of the delivery agent to whom the authorization was transmitted is not confirmed, the flow continues at block 1010.
[0068] At block 1008, retrieval of the item is allowed. Because the location of the delivery agent to whom the authorization was transmitted was confirmed, the delivery agent will be permitted to retrieve the item.
[0069] As previously discussed, if at decision diamond 1006, the location of the delivery agent to whom the authorization was transmitted is not confirmed, the flow continues at block 1010. At block 1010, retrieval of the item is not allowed. For example, when the authorization is presented at the pharmacy, Delivery Agent A (from the example above) is not at the pharmacy. Because Delivery Agent A is not at the pharmacy, it is assumed that whoever is presenting the authorization is doing so fraudulently. Consequently, this person will not be permitted to retrieve the item.
[0070] FIG. 1 1 is a flow diagram depicting example operations for confirming a customer's location, according to some embodiments. As discussed above with respect to FIG. 10, location determination can be used in increase the security, and accuracy, of item delivery. In some embodiments, enhanced security can be provided by ensuring that the customer is near the item when the item is delivered. Such a location determination may prevent packages from being stolen, as well as ensure that the delivery agent is in the correct location when delivering an item. The flow begins at block 1102.
[0071] At block 1 102, a request to deliver an item is received. For example, a delivery agent can transmit the request to deliver the item via a mobile device. The request can be explicit or implicit (e.g., the request is triggered when an item is scanned for delivery). The flow continues at block 1104.
[0072] At block 1 104, a location of a recipient is determined. For example, the system determines the location of the person to whom the item is to be delivered. The system can make this determination based, for example, on a location of the recipient's mobile device. The flow continues at decision diamond 1106.
[0073] At decision diamond 1106, it is determined whether the recipient is in the delivery location. That is, it is determined whether the recipient's location can be confirmed. The recipient's location is confirmed if the recipient is in the correct location for the delivery (e.g., at his or her home or office, at the delivery location, etc.). If the recipient's location is confirmed, the flow continues at block 1 108. However, if the recipient's location is not confirmed, the flow continues at block 1 110.
[0074] At block 1 108, a confirmation is transmitted to the delivery agent. For example, the system can transmit the confirmation to the delivery agent's mobile device. The confirmation
indicates that the recipient's location has been confirmed and that the delivery agent can deliver the item.
[0075] As previously discussed, if the recipient's location is not confirmed, the flow continues at block 1110. At block 11 10, an instruction to refuse delivery is transmitted to the delivery agent. For example, the system can transmit the instruction to refuse delivery to the delivery agent's mobile device. Because the recipient's location has not been confirmed, the delivery agent should not deliver the item.
[0076] While the discussion thus far describes retailers delivering to customers, in some embodiments, the system described herein can be used to facilitate deliveries from the customers to the retailer. In other words, the customer takes the role of the retailer in that the customer, for example, via a computer transmits a notification to the system indicating that the customer would like a package to be delivered to the retailer. Such embodiments are useful for returning purchased items, disposing of materials (e.g., hazardous materials), etc.
[0077] Those skilled in the art will recognize that a wide variety of other modifications, alterations, and combinations can also be made with respect to the above described embodiments without departing from the scope of the invention, and that such modifications, alterations, and combinations are to be viewed as being within the ambit of the inventive concept.
[0078] In some embodiments, a system for creating a crowdsourced delivery plan for a package comprises a certification system, the certification system configured to receive, from a retailer, an indication of items included in the package, determine, based on the indication of items included in the package, a set of requirements, and transmit, to a plurality of portable devices, information regarding the delivery, each of the plurality of portable devices configured to receive, from the certification system, the information regarding the delivery, transmit, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receive, in response to the transmission of the acceptance of the delivery, an authorization, and present, at a pickup point, the authorization.
[0079] In some embodiments, a system and a corresponding method performed by the system comprises receiving, at a certification system from a retailer, an indication of items included in a package, determining, based on the indication of the items included in the package, a set of
requirements, transmitting, to a plurality of portable devices, information regarding a delivery, receiving, from the certification system, the information regarding the delivery, transmitting, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of portable devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery, receiving, in response to the transmission of the acceptance of the delivery, an authorization, and presenting, at a pickup point, the authorization.
Claims
1. A system for creating a crowdsourced delivery plan for a package, the system
comprising:
a certification system, the certification system configured to:
receive, from a retailer, an indication of items included in the package;
determine, based on the indication of items included in the package, a set of requirements; and
transmit, to a plurality of mobile devices, information regarding the delivery; each of the plurality of mobile devices configured to:
receive, from the certification system, the information regarding the delivery; transmit, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of mobile devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery; receive, in response to the transmission of the acceptance of the delivery, an authorization; and
present, at a pickup point, the authorization.
2. The system of claim 1, wherein the certification system is further configured to:
determine, from a list of delivery agents based on the set of requirements, the delivery agents meeting the set of requirements, wherein the transmission of the information regarding the delivery is only to the ones of the plurality of mobile devices associated with the delivery agents meeting the set of requirements.
3. The system of claim 1, wherein each of the plurality of mobile devices is further configured to:
determine whether a delivery agent associated with one of the plurality of mobile devices meets the set of requirements; and
if the delivery agent associated with the one of the plurality of mobile devices meets the set of requirements, present, via the one of the plurality of mobile devices, the information regarding the delivery; and
if the delivery agent associated with the one of the plurality of mobile devices does not meet the set of requirements, not present the information regarding the delivery.
4. The system of claim 1, wherein each of the delivery agent has one or more certifications, and wherein the set of requirements included specific required certifications.
5. The system of claim 4, wherein indications of each of the delivery agents and the one or more certifications are maintained as data in one or more blocks of a blockchain system, wherein each of the one or more blocks contains a hash of at least some of the data, and wherein the one or more blocks are accessible by at least one of the certification system and the plurality of mobile devices.
6. The system of claim 4, wherein the certifications include one or more of age, ratings, ability to use one or more of the items, ability to install one or more of the items, criminal history, medical history, type of vehicle used for delivery, length of delivery experience, and education.
7 The system of claim 1, wherein the authorization is based on a hash.
8. The system of claim 7, wherein the authorization is a code.
9. The system of claim 1, wherein each of the plurality of mobile devices includes an application associated with the certification system.
10. The system of claim 1, wherein the retailer includes a customer of the retailer.
11. The system of claim 1, wherein the control circuit is further configured to:
receive presentation of the authorization; and
determine a location of the delivery agent, wherein
if the location of the delivery agent is confirmed, allow retrieval of the package; if the location of the delivery agent is not confirmed, not allow retrieval of the package
12. The system of claim 1, wherein the control circuit is further configured to:
receive, from the delivery agent, a request to deliver the package; and
determine a location of the delivery agent, wherein
if the location of the delivery agent is confirmed, transmit, to the delivery agent, a confirmation;
if the location of the delivery agent is not confirmed, transmit, to the delivery agent, an instruction to refuse delivery.
13. A method for creating a crowdsourced delivery plan for a package, the method comprising:
receiving, at a certification system from a retailer, an indication of items included in the package;
determining, based on the indication of items included in the package, a set of
requirements;
transmitting, to a plurality of mobile devices, information regarding the delivery;
receiving, from the certification system, the information regarding the delivery;
transmitting, to the certification system, an acceptance of the delivery, wherein only ones of the plurality of mobile devices associated with delivery agents meeting the set of requirements is capable of acceptance of the delivery;
receiving, in response to the transmission of the acceptance of the delivery, an
authorization; and
presenting, at a pickup point, the authorization.
14. The method of claim 13, further comprising:
determining, by the certification system from a list of delivery agents based on the set of requirements, the delivery agents meeting the set of requirements, wherein the
information regarding the delivery is only transmitted to the ones of the ones of the plurality of mobile devices associated with the delivery agents meeting the meeting the set of requirements.
15. The method of claim 13, further comprising:
determining, by each of the plurality of mobile devices, whether a delivery agent
associated with one of the plurality of mobile devices meets the set of requirements; and
if the delivery agent associated with the one of the plurality of mobile devices meets the set of requirements, presenting, via the one of the plurality of mobile devices, the information regarding the delivery; and
if the delivery agent associated with the one of the plurality of mobile devices does not meet the set of requirements, not presenting the information regarding the delivery.
16. The method of claim 13, wherein each of the delivery agents has one or more certifications, and wherein the set of requirements includes specific required certifications.
17. The method of claim 16, wherein indications of each delivery agent and the one or more certifications are maintained as data in one or more blocks of a blockchain system, wherein each of the one or more blocks contains a hash of at least some of the data, and wherein the one or more blocks are accessible by at least one of the certification system and the plurality of mobile devices.
18. The method of claim 16, wherein the certifications include one or more of age, ratings, ability to use one or more of the items, ability to install one or more of the items, criminal history, medical history, type of vehicle used for delivery, length of delivery experience, and education.
19. The method of claim 13, wherein the authorization is based on a hash.
20. The method of claim 19, wherein the authorization is a code.
21. The method of claim 13, wherein each of the plurality of mobile devices includes an application associated with the certification system.
22. The method of claim 13, wherein the retailer includes a customer of the retailer.
23. The method of claim 13, further comprising:
receiving presentation of the authorization; and
determining a location of the delivery agent, wherein
if the location of the delivery agent is confirmed, allowing retrieval of the
package;
if the location of the delivery agent is not confirmed, not allowing retrieval of the package.
24. The method of claim 13, further comprising:
receiving, from the delivery agent, a request to deliver the package; and
determining a location of the delivery agent, wherein
if the location of the delivery agent is confirmed, transmitting, to the delivery agent, a confirmation;
if the location of the delivery agent is not confirmed, transmitting, to the delivery agent, an instruction to refuse delivery.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MX2019007716A MX2019007716A (en) | 2016-12-27 | 2017-12-26 | Crowdsourced delivery based on a set of requirements. |
CA3048226A CA3048226A1 (en) | 2016-12-27 | 2017-12-26 | Crowdsourced delivery based on a set of requirements |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662439329P | 2016-12-27 | 2016-12-27 | |
US62/439,329 | 2016-12-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018125858A1 true WO2018125858A1 (en) | 2018-07-05 |
Family
ID=62629942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2017/068400 WO2018125858A1 (en) | 2016-12-27 | 2017-12-26 | Crowdsourced delivery based on a set of requirements |
Country Status (4)
Country | Link |
---|---|
US (2) | US11605044B2 (en) |
CA (1) | CA3048226A1 (en) |
MX (1) | MX2019007716A (en) |
WO (1) | WO2018125858A1 (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8874477B2 (en) | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
US11132629B2 (en) * | 2014-07-30 | 2021-09-28 | Allstate Insurance Company | Crowdsourced roadside assistance service provider assignment system |
US9282430B1 (en) | 2014-07-30 | 2016-03-08 | Allstate Insurance Company | Roadside assistance service provider assignment system |
CA3047006A1 (en) | 2016-12-16 | 2018-06-21 | Walmart Apollo, Llc | Systems and methods for assessing delivery vehicles |
KR20190117950A (en) * | 2018-04-09 | 2019-10-17 | 김나윤 | System for affiliating parcel service targeting at unspecified individuals and method for delivering article using this |
GB201811263D0 (en) * | 2018-07-10 | 2018-08-29 | Netmaster Solutions Ltd | A method and system for managing digital using a blockchain |
HUE063542T2 (en) * | 2018-07-30 | 2024-01-28 | Direct4Me D O O | Smart unattended home delivery box |
US10958708B2 (en) * | 2018-08-22 | 2021-03-23 | International Business Machines Corporation | Crowdsourcing big data transfer |
US11924360B2 (en) | 2018-10-08 | 2024-03-05 | Green Market Square Limited | Blockchain timestamp agreement |
US10608829B1 (en) * | 2018-10-08 | 2020-03-31 | International Business Machines Corporation | Blockchain timestamp agreement |
US11637691B2 (en) * | 2018-11-06 | 2023-04-25 | International Business Machines Corporation | Management of a size of a ledger |
US11823117B2 (en) * | 2018-11-30 | 2023-11-21 | Target Brands, Inc. | Delivery mode optimization in supply chain architecture |
US11907893B2 (en) | 2020-02-21 | 2024-02-20 | Walmart Apollo, Llc | Order fulfillment with community-based delivery |
KR102208399B1 (en) * | 2020-07-07 | 2021-01-27 | 박재용 | System for protecting personal Intellectual Property and method thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140025524A1 (en) * | 2011-12-14 | 2014-01-23 | Cfph, Llc | Examples of delivery and/or referral services that may use mobile enhancements and/or auction mechanisms |
US20150227890A1 (en) * | 2014-02-07 | 2015-08-13 | Kristin Kaye Bednarek | Communications system and smart device apps supporting segmented order distributed distribution system |
Family Cites Families (119)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6253129B1 (en) | 1997-03-27 | 2001-06-26 | Tripmaster Corporation | System for monitoring vehicle efficiency and vehicle and driver performance |
GB9817081D0 (en) | 1998-08-06 | 1998-10-07 | Johnson Security Limited | Method and apparatus for secure carriage |
US6195005B1 (en) | 1998-09-11 | 2001-02-27 | Key-Trak, Inc. | Object carriers for an object control and tracking system |
US20040236635A1 (en) | 1999-01-08 | 2004-11-25 | Publicover Mark W. | Distribution system |
US7177825B1 (en) | 1999-05-11 | 2007-02-13 | Borders Louis H | Integrated system for ordering, fulfillment, and delivery of consumer products using a data network |
US7257552B1 (en) | 2000-03-27 | 2007-08-14 | Hector Franco | Consumer products distribution system |
AU5134301A (en) | 2000-04-04 | 2001-10-15 | Sameday.Com, Inc. | Order fulfillment system and method |
EP1297472A2 (en) | 2000-06-16 | 2003-04-02 | Manugistics, Inc. | Transportation planning, execution, and freight payment managers and related methods |
US6806807B2 (en) | 2000-06-30 | 2004-10-19 | Jordan Cayne | Intelligent locking system |
US6411897B1 (en) | 2000-07-10 | 2002-06-25 | Iap Intermodal, Llc | Method to schedule a vehicle in real-time to transport freight and passengers |
US6240362B1 (en) | 2000-07-10 | 2001-05-29 | Iap Intermodal, Llc | Method to schedule a vehicle in real-time to transport freight and passengers |
SG98425A1 (en) | 2000-09-13 | 2003-09-19 | First Cube Pte Ltd | A method and system using sms notification for facilitating delivery of goods |
US6785718B2 (en) | 2000-10-23 | 2004-08-31 | Schneider Logistics, Inc. | Method and system for interfacing with a shipping service |
GB0027371D0 (en) | 2000-11-09 | 2000-12-27 | Selwyn Frederick P | Intelligent container |
US6990534B2 (en) * | 2001-07-20 | 2006-01-24 | Flowfinity Wireless, Inc. | Method for a proactive browser system for implementing background frame maintenance and asynchronous frame submissions |
US20030040944A1 (en) | 2001-08-22 | 2003-02-27 | Hileman Ryan M. | On-demand transportation system |
US20030046173A1 (en) | 2001-08-30 | 2003-03-06 | Benjier James A. | Store delivery of products ordered over a computer network |
US20040069850A1 (en) | 2002-01-31 | 2004-04-15 | De Wilde Eric D. | Truck cargo management rfid tags and interrogators |
JP4040580B2 (en) | 2003-03-25 | 2008-01-30 | 富士通株式会社 | Operation management server and operation management program |
DE10331356A1 (en) | 2003-07-11 | 2005-02-17 | Autopark-Vip-Online Gmbh | Goods transporting and delivery container has locking arrangement for its opening and closing and a part of a coupling arrangement with which it is connected to a matching fastening in a fixed docking station |
US20070192111A1 (en) | 2003-09-12 | 2007-08-16 | Chasen Matthew D | Peer-to-peer network method and system for shipment delivery transactions |
US7149658B2 (en) | 2004-02-02 | 2006-12-12 | United Parcel Service Of America, Inc. | Systems and methods for transporting a product using an environmental sensor |
US20060026030A1 (en) | 2004-08-02 | 2006-02-02 | Jack Jacobs | System and method for matching users |
WO2006052543A2 (en) | 2004-11-03 | 2006-05-18 | Axiolog Group, Inc. | Computerized system for transporting cargo |
US7945469B2 (en) | 2004-11-16 | 2011-05-17 | Amazon Technologies, Inc. | Providing an electronic marketplace to facilitate human performance of programmatically submitted tasks |
US7339469B2 (en) | 2004-11-22 | 2008-03-04 | Maersk Logistics Usa, Inc. | Shipping container monitoring and tracking system |
US8554694B1 (en) | 2005-01-31 | 2013-10-08 | Amazon Technologies, Inc. | Computer system and method for community-based shipping |
US20060232412A1 (en) | 2005-04-15 | 2006-10-19 | Jorge Tabacman & Associates P/L | Intelligent reader system and method for identifying and tracking goods and materials transported in pallets, including but not limited to scaffolding materials |
US9805395B2 (en) * | 2012-01-19 | 2017-10-31 | Dizpersion Corporation | Online marketing system and method |
US8626540B2 (en) | 2005-05-23 | 2014-01-07 | Oracle International Corporation | Method and apparatus for transportation planning based on mission-specific vehicle capacity constraints |
CA2957133C (en) * | 2005-06-21 | 2020-04-28 | United Parcel Service Of America, Inc. | Systems and methods for providing personalized delivery services |
US9459622B2 (en) | 2007-01-12 | 2016-10-04 | Legalforce, Inc. | Driverless vehicle commerce network and community |
US20070185598A1 (en) | 2006-01-23 | 2007-08-09 | Ortega Francisco E | Cargo reservation system and method |
US7945470B1 (en) * | 2006-09-29 | 2011-05-17 | Amazon Technologies, Inc. | Facilitating performance of submitted tasks by mobile task performers |
EP2135200A4 (en) | 2007-02-12 | 2011-12-28 | Sean O'sullivan | Shared transport system and service network |
US8560461B1 (en) | 2008-03-31 | 2013-10-15 | Amazon Technologies, Inc. | Shipment splitting analyzer |
US8160972B1 (en) | 2008-05-12 | 2012-04-17 | Union Beach L.P. | Traveler's package pick-up and delivery service |
US8095304B2 (en) | 2008-06-30 | 2012-01-10 | The Boeing Company | Cargo tracking and visibility system and method |
US8195496B2 (en) | 2008-11-26 | 2012-06-05 | Sap Aktiengesellschaft | Combining multiple objective functions in algorithmic problem solving |
US8244594B2 (en) | 2009-08-26 | 2012-08-14 | Consumeron, Llc | Method for remote acquisition and delivery of goods |
US9230292B2 (en) | 2012-11-08 | 2016-01-05 | Uber Technologies, Inc. | Providing on-demand services through use of portable computing devices |
US20120030133A1 (en) | 2010-02-26 | 2012-02-02 | Rademaker William B | Systems and methods for arranging delivery of a package |
US9805536B2 (en) | 2011-01-20 | 2017-10-31 | Cfph, Llc | Multi-system distributed processing of delivery and/or referral information for orders |
US20140229258A1 (en) | 2011-03-16 | 2014-08-14 | Malak Seriani | Systems and methods enabling transportation service providers to competitively bid in response to customer requests |
WO2012122583A1 (en) | 2011-03-17 | 2012-09-20 | Dei Gratia Pty Ltd | Last mile logistics |
EP2940663A1 (en) | 2011-12-05 | 2015-11-04 | United States Postal Service | A system and method of control of electronic parcel lockers |
US20130246207A1 (en) | 2012-03-19 | 2013-09-19 | Uber Technologies, Inc. | System and method for dynamically adjusting prices for services |
US9066206B2 (en) | 2012-07-03 | 2015-06-23 | Uber Technologies, Inc. | System and method for providing dynamic supply positioning for on-demand services |
US20150206093A1 (en) | 2012-07-27 | 2015-07-23 | Google Inc. | Crowd sourced delivery assistance |
US20140058902A1 (en) | 2012-08-21 | 2014-02-27 | Ovni, Inc. | Distributed system for remote ordering |
US20140236856A1 (en) | 2013-02-15 | 2014-08-21 | Jakhongir Baykhurazov | Methods for coordinating the delivery of parcels by travelers |
US20150081581A1 (en) | 2013-09-19 | 2015-03-19 | Zzzoom, LLC | Secure delivery of packages |
US20140278851A1 (en) | 2013-03-12 | 2014-09-18 | Venkata Krishna Prasad Kopanati | Method and a trusted social network platform for facilitating peer-to-peer shipment delivery |
US9721224B2 (en) | 2013-03-14 | 2017-08-01 | Coreorient Oy | System and method for managing transportation and storage of goods |
US20140278634A1 (en) | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Spatiotemporal Crowdsourcing |
WO2014145742A2 (en) | 2013-03-15 | 2014-09-18 | United Parcel Service Of America, Inc. | Group buying systems and related methods |
CA2910639A1 (en) | 2013-05-03 | 2014-11-06 | Aethon, Inc. | System and method for locking a carrier/container for tracking, controlling access, and providing delivery confirmation |
GR20130100414A (en) | 2013-07-12 | 2015-02-20 | Ανδρεας-Λεωνιδας Κυπριανου Προδρομιδης | Method and system for the transport of items through trusted networks |
US20160180274A1 (en) | 2013-08-09 | 2016-06-23 | Air Products And Chemicals, Inc. | Method and system for monitoring deliveries |
US20150046298A1 (en) | 2013-08-09 | 2015-02-12 | Air Products And Chemicals, Inc. | Method and system for monitoring deliveries |
CN104463516A (en) | 2013-09-18 | 2015-03-25 | Sap欧洲公司 | Order/vehicle distribution based on order density |
US9639909B2 (en) | 2013-09-30 | 2017-05-02 | At&T Intellectual Property I, L.P. | Determining available storage capacity of a vehicle |
US20220348363A1 (en) * | 2013-10-07 | 2022-11-03 | Shay C. Colson | 3-d printed packaging |
WO2015057721A1 (en) | 2013-10-14 | 2015-04-23 | United Parcel Service Of America, Inc. | Systems and methods for facilitating delivery of a parcel to a suitably sized locker |
WO2015084688A1 (en) | 2013-12-02 | 2015-06-11 | Wal-Mart Stores, Inc. | System and method for conducting a multi-channel order |
DE102014105246A1 (en) * | 2013-12-05 | 2015-06-11 | Deutsche Post Ag | Locking unit, housing with locking unit and method for unlocking one or more doors of the housing |
EP2881905B1 (en) | 2013-12-09 | 2018-02-07 | Cleveron AS | Self-service parcel terminal |
US20150161563A1 (en) | 2013-12-09 | 2015-06-11 | Crowdshipping, Inc. | Systems and Methods for Crowdsourced Shipping |
US20150199632A1 (en) | 2014-01-15 | 2015-07-16 | Xerox Corporation | Method and system for recommending mobile tasks to crowd workers |
US20150242829A1 (en) | 2014-02-24 | 2015-08-27 | Michael Mahesh Bhaskaran | System and method for managing a single point of sale of plurality of merchandise from plurality of retailer |
US20160071056A1 (en) | 2014-03-21 | 2016-03-10 | United Parcel Service Of America, Inc. | Programmatically executing time compressed delivery |
US20150363843A1 (en) | 2014-04-23 | 2015-12-17 | United Parcel Service Of America, Inc. | Dynamic provisioning of pick-up, delivery, transportation, and/or sortation options |
US20150310388A1 (en) | 2014-04-28 | 2015-10-29 | Sudha Jamthe | Local couriers network in the context of an on-line trading platform |
US9792574B2 (en) | 2014-05-06 | 2017-10-17 | Elwha Llc | System and methods for verifying that one or more end user transport directives do not conflict with one or more package delivery directives |
WO2015173829A1 (en) | 2014-05-14 | 2015-11-19 | Van Der Berg Ilan | Integrated ride sharing system and method for fleet management systems |
US9536271B2 (en) | 2014-05-16 | 2017-01-03 | Uber Technologies, Inc. | User-configurable indication device for use with an on-demand transport service |
US10380537B2 (en) | 2014-05-23 | 2019-08-13 | Transform Sr Brands Llc | Merchandise pickup system, method, and media for allied merchants |
US9460524B1 (en) | 2014-05-30 | 2016-10-04 | Amazon Technologies, Inc. | Estimating available volumes using imaging data |
US10223664B2 (en) | 2014-05-30 | 2019-03-05 | United Parcel Service Of America, Inc. | Concepts for using action identifiers in messages |
US20160012391A1 (en) | 2014-07-08 | 2016-01-14 | Rick Burnett | Shipper and Carrier Interaction Optimization Platform |
US20160048804A1 (en) | 2014-08-14 | 2016-02-18 | Sunil Paul | Systems and methods for transportation services for package delivery |
US10528901B2 (en) | 2014-09-17 | 2020-01-07 | Uber Technologies, Inc. | Managing service provider accounts based on completion of tasks |
US20160086128A1 (en) | 2014-09-18 | 2016-03-24 | Fetch1 Transport LLC | System and method for on-demand transportation of parcels |
US9821768B2 (en) | 2014-10-01 | 2017-11-21 | Continental Intelligent Transportation Systems LLC | Geo-proximity vehicle alert and access system for security and package exchange efficiency |
US20160104113A1 (en) * | 2014-10-13 | 2016-04-14 | Marc Gorlin | Peer to Peer Delivery System |
US20160104112A1 (en) | 2014-10-13 | 2016-04-14 | Marc Gorlin | Peer to Peer Delivery System |
US20160189098A1 (en) | 2014-12-30 | 2016-06-30 | Here Global B.V. | Method and apparatus for providing access to contextually relevant vehicles for delivery purposes |
US20160195404A1 (en) | 2015-01-05 | 2016-07-07 | Ford Global Technologies, Llc | Peer to peer car sharing social-graph configurator |
KR102290966B1 (en) | 2015-01-19 | 2021-08-19 | 클리어 데스티네이션 인크. | Systems and methods for managing and optimizing delivery networks |
US20160225115A1 (en) | 2015-02-01 | 2016-08-04 | James A. Levy | Transportation System Using Crowdsourced Warehouses and Storage Facilities |
SG11201706351SA (en) | 2015-02-05 | 2017-09-28 | Uber Technologies Inc | Programmatically determining location information in connection with a transport service |
US9269103B1 (en) | 2015-02-19 | 2016-02-23 | Square, Inc. | Combining orders for delivery |
US9639908B1 (en) | 2015-03-20 | 2017-05-02 | Square, Inc. | Variable delivery zones for delivery orders |
US9551788B2 (en) | 2015-03-24 | 2017-01-24 | Jim Epler | Fleet pan to provide measurement and location of a stored transport item while maximizing space in an interior cavity of a trailer |
US20160328678A1 (en) | 2015-05-07 | 2016-11-10 | United Parcel Service Of America, Inc. | Initiating shipment of an item using a mobile/wearable device |
US10304025B2 (en) | 2015-05-26 | 2019-05-28 | Locanis Ag | Controlling industrial trucks in a warehouse |
US20160364812A1 (en) | 2015-06-11 | 2016-12-15 | Raymond Cao | Systems and methods for on-demand transportation |
US20160364823A1 (en) | 2015-06-11 | 2016-12-15 | Raymond Cao | Systems and methods for on-demand transportation |
US20160364679A1 (en) | 2015-06-11 | 2016-12-15 | Raymond Cao | Systems and methods for on-demand transportation |
US9904900B2 (en) | 2015-06-11 | 2018-02-27 | Bao Tran | Systems and methods for on-demand transportation |
WO2016204307A1 (en) | 2015-06-15 | 2016-12-22 | 주식회사 메쉬코리아 | Method and server for processing delivery information and checking attendance at work |
US20160379167A1 (en) | 2015-06-25 | 2016-12-29 | Amazon Technologies, Inc. | Dynamic resource allocation and scheduling |
US20170032341A1 (en) | 2015-07-31 | 2017-02-02 | Bank Of America Corporation | Traceable Deposit Container |
US20160019669A1 (en) | 2015-08-04 | 2016-01-21 | Ranjith Gopalakrishnan | Online people deputation system |
US11144870B2 (en) | 2015-09-21 | 2021-10-12 | United Parcel Service Of America, Inc. | Systems and methods for reserving space in carrier vehicles to provide on demand delivery services |
US11307042B2 (en) | 2015-09-24 | 2022-04-19 | Allstate Insurance Company | Three-dimensional risk maps |
US10157436B2 (en) * | 2015-10-09 | 2018-12-18 | Gt Gettaxi Limited | System for navigating vehicles associated with a delivery service |
CA3153451A1 (en) | 2015-11-02 | 2017-05-11 | Sargent Manufacturing Company | Methods and systems for ensuring secure delivery of parcels using internet-enabled storage receptacle |
US9771018B2 (en) | 2015-12-03 | 2017-09-26 | Opus Inspection, Inc. | System and method for identification of transport vehicles and drivers |
US11049059B2 (en) * | 2016-02-03 | 2021-06-29 | Operr Technologies, Inc | Method and system for on-demand customized services |
US9778057B2 (en) | 2016-02-08 | 2017-10-03 | Uber Technologies, Inc. | Selecting a route to a destination based on zones |
US20170236088A1 (en) * | 2016-02-15 | 2017-08-17 | DeliveryCircle LLC | Delivery method and system |
CN107133752B (en) | 2016-02-29 | 2022-01-28 | 菜鸟智能物流控股有限公司 | Data processing for logistics distribution, and method and device for logistics distribution based on mobile terminal of distribution party |
US9811838B1 (en) | 2016-03-16 | 2017-11-07 | Square, Inc. | Utilizing a computing system to batch deliveries for logistical efficiency |
WO2017184859A2 (en) | 2016-04-20 | 2017-10-26 | TIZE TECHNOLOGIES INC. (AccompliceTM) | System and method for cloud computing on-demand dynamic service management engine |
US9934530B1 (en) | 2016-09-30 | 2018-04-03 | Square, Inc. | Application programming interfaces for courier services |
CA3047006A1 (en) | 2016-12-16 | 2018-06-21 | Walmart Apollo, Llc | Systems and methods for assessing delivery vehicles |
WO2018112301A1 (en) | 2016-12-16 | 2018-06-21 | Walmart Apollo, Llc | Systems and methods for assessing available cargo capacity for multiple vehicles |
US9928540B1 (en) | 2016-12-27 | 2018-03-27 | Square, Inc. | System for integrating courier service with customer applications |
-
2017
- 2017-12-26 US US15/854,651 patent/US11605044B2/en active Active
- 2017-12-26 CA CA3048226A patent/CA3048226A1/en not_active Abandoned
- 2017-12-26 WO PCT/US2017/068400 patent/WO2018125858A1/en active Application Filing
- 2017-12-26 MX MX2019007716A patent/MX2019007716A/en unknown
-
2023
- 2023-01-26 US US18/160,190 patent/US20230177445A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140025524A1 (en) * | 2011-12-14 | 2014-01-23 | Cfph, Llc | Examples of delivery and/or referral services that may use mobile enhancements and/or auction mechanisms |
US20150227890A1 (en) * | 2014-02-07 | 2015-08-13 | Kristin Kaye Bednarek | Communications system and smart device apps supporting segmented order distributed distribution system |
Also Published As
Publication number | Publication date |
---|---|
US11605044B2 (en) | 2023-03-14 |
MX2019007716A (en) | 2019-12-16 |
US20230177445A1 (en) | 2023-06-08 |
CA3048226A1 (en) | 2018-07-05 |
US20180181904A1 (en) | 2018-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230177445A1 (en) | Crowdsourced delivery based on a set of requirements | |
US10423921B2 (en) | Delivery reservation apparatus and method | |
US10635801B2 (en) | Systems and methods for securing access to storage and retrieval systems | |
US20180144292A1 (en) | Apparatus and method for tracking consumer premises inventory | |
US10592642B2 (en) | Systems and methods for decentralized content distribution | |
US20190101896A1 (en) | Controlled 3-d printing | |
US20180349968A1 (en) | Systems and methods for product review management with distributed database | |
US20180253691A1 (en) | Systems and Methods for Delivering Products to a Customer | |
US11121857B2 (en) | Systems, devices, and methods for in-field authenticating of autonomous robots | |
WO2019226986A1 (en) | Nested blockchain system | |
US20190386986A1 (en) | System and method for automated vehicle authentication | |
US10628874B2 (en) | Systems and methods for automatically ordering a product item via a wearable technology | |
US20190098013A1 (en) | System and Methods for Location Verification with Blockchain Controls | |
WO2019227052A1 (en) | System and methods for multi-variant tracking | |
WO2016193156A1 (en) | Computer-implemented tracking mechanism and data management | |
US20190244531A1 (en) | Systems and methods for managing last mile deliveries | |
WO2019227025A1 (en) | System and methods for exception handling in a distributed computing environment | |
US20200051092A1 (en) | System and method for product recall using blockchain | |
US11310052B1 (en) | Identity authentication blockchain | |
US20230401526A1 (en) | Systems and methods for controlled data sharing in supply chains | |
WO2023150049A1 (en) | System and method for automatic product source tracing | |
US20190205970A1 (en) | System and method for securing products utilizing dna information | |
KR102601098B1 (en) | Method and device for providing voucher approval information | |
US20230401525A1 (en) | Systems and methods for invoice adjustment in supply chains |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17889205 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 3048226 Country of ref document: CA |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17889205 Country of ref document: EP Kind code of ref document: A1 |