Blockchain payment method and system
By adopting blockchain technology and tokens in the aid system, the system complexity and difficulty in scaling caused by the independent operation of aid organizations in the existing technology is solved, and better scalability and interoperability are achieved, and the use and redemption process of aid resources is simplified.
Patent Information
- Application Number
- JP2024506577
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-08-02
- Filing Date
- 2022-07-25
- Publication Date
- 2025-04-23
- Estimated Expiration
- 2042-07-25
AI Technical Summary
In the prior art, the independent operation of the aid organization causes the recipient to register and use multiple coupons and payment cards, which makes the system complex and difficult to expand. Especially in emergency situations such as disasters, there is a problem of difficulty in effectively managing and cross-use of aid resources.
By using blockchain technology and tokens, the aid organization creates digital tokens instead of traditional coupons and payment cards. The recipient uses the blockchain wallet to store and trade tokens. After the seller confirms the exchange with the aid organization through the platform, the aid organization transfers the corresponding fiat currency to the seller.
Aiding better scalability and interoperability of aid resources, recipients can receive assistance from multiple aid organizations through a single blockchain wallet, sellers can more easily accept and exchange token payments, and the system becomes more concise and easy to use.
Smart Images

Figure 0007667908000001 
Figure 0007667908000002 
Figure 0007667908000003
Abstract
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of and priority to U.S. Patent Application No. 17 / 391,490, filed August 2, 2021, the entire disclosure of which is incorporated herein by reference. [Technical field]
[0002] The present disclosure relates to facilitating benefit payments through the use of tokens and blockchain, particularly to the use of blockchain to manage the distribution and use of donated aid to increase interoperability and scaling of aid distribution. [Background technology]
[0003] Aid organizations and other nonprofits provided funds, food, shelter, and other resources to people in need throughout the world. In many places, such as those affected by devastating national disasters, there may be dozens of aid organizations all working in the area to help those who have been displaced or are otherwise in need of assistance. Often, each of these aid organizations will utilize vouchers or special payment cards to pay benefits to recipients who are provided assistance. Recipients can receive such vouchers or special payment cards and present them to authorized merchants to receive the specific goods or services provided or redeemed by the aid organization.
[0004] However, these donors often work independently of each other. As a result, recipients who receive benefits from more than one donor organization often have to register with each donor organization, receive separate vouchers and / or payment cards for each donor organization, and keep track of which merchants can be used to redeem which vouchers or payment cards. Similarly, each donor organization may have its own terms and constraints regarding the redemption of benefits, and therefore each merchant will often have to perform onboarding with each individual donor organization and keep track of different data and processes to receive the resulting reimbursement for the goods or services provided on behalf of the donor organization. The result can be a cumbersome system for both recipients and merchants, and can be difficult to scale both vertically and horizontally, which can be very detrimental in the context in which these donors often operate.
[0005] There is therefore a need for a system that can increase interoperability of aid benefit payments and provide easier and more effective scaling for those in need, ensuring benefits are more widely and easily disbursed and used. Summary of the Invention
[0006] This disclosure provides a description of a system and method for facilitating benefit payments through the use of tokens and blockchain. A donor organization creates tokens for recipients to use in place of traditional vouchers and payment cards. The tokens are digital values associated with fiat currency. The tokens are stored on the blockchain and distributed to recipients via blockchain wallets by a platform. Instead of presenting a traditional voucher or payment card, the recipient presents the token to a merchant using the blockchain wallet, transferring ownership of the token to the merchant. The merchant redeems the token through the platform by providing a good or service to the recipient and proving ownership. The platform notifies the donor organization of the redemption, which then transfers a corresponding amount of fiat currency to the merchant's bank. The result is a system that can be easily scaled due to the versatility of blockchain. Additionally, any number of donor organizations and merchants can participate with very little orientation required, allowing for significant interoperability and allowing aid recipients to receive payments through a single blockchain wallet. As a result, the use of blockchain and payment tokens offers better scaling, interoperability, and increased ease of use than traditional aid payment systems.
[0007] A method for facilitating benefit payments through the use of tokens and blockchain includes receiving, by a receiver of a processing server, recipient information from a first computing system, the recipient information including at least a recipient identifier; storing blockchain data items in a blockchain, the blockchain data items including at least a payment token associated with the recipient information and a payee value generated using a public key of a cryptographic key pair; receiving, by the receiver of the processing server, a redemption message from a second computing system, the redemption message including at least the payment token, a digital signature generated using a private key of the cryptographic key pair, transaction account data, and a redemption amount; verifying, by a processor of the processing server, the digital signature using the public key of the cryptographic key pair; and sending, by a transmitter of the processing server, a transfer message to the first computing system, the transfer message including at least the transaction account data and the redemption amount.
[0008] A system for facilitating benefit payments through use of tokens and blockchain includes a first computing system, a second computing system, a blockchain, and a processing server, the processing server including a receiver that receives beneficiary information from the first computing system, the beneficiary information including at least a beneficiary identifier, the blockchain storing blockchain data items, the blockchain data items including at least a payment token associated with the beneficiary information and a payee value generated using a public key of a cryptographic key pair, the receiver of the processing server further receiving a redemption message from the second computing system, the redemption message including at least the payment token, a digital signature generated using a private key of the cryptographic key pair, transaction account data, and a redemption amount, the processing server further including a processor that verifies the digital signature using the public key of the cryptographic key pair, and a transmitter that transmits a transfer message to the first computing system, the transfer message including at least the transaction account data and the redemption amount.
[0009] The scope of the present disclosure is best understood from the following detailed description of exemplary embodiments when read in conjunction with the accompanying drawing figures, which include: [Brief description of the drawings]
[0010] [Figure 1] FIG. 1 is a block diagram illustrating a high level system architecture for facilitating benefit payments through the use of tokens and blockchain, according to an example embodiment. [Diagram 2] 2 is a block diagram illustrating a processing server in the system of FIG. 1 for facilitating benefit payments in accordance with an exemplary embodiment. [Figure 3A]FIG. 2 is a flow diagram illustrating a process for facilitating benefit payments through the use of tokens and blockchain in the system of FIG. 1 according to an exemplary embodiment. [Figure 3B] FIG. 2 is a flow diagram illustrating a process for facilitating benefit payments through the use of tokens and blockchain in the system of FIG. 1 according to an exemplary embodiment. [Figure 4] 1 is a flowchart illustrating an example method for facilitating benefit payments through the use of tokens and blockchain, according to an example embodiment. [Diagram 5] FIG. 1 is a block diagram illustrating a computer system architecture, in accordance with an exemplary embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Further areas of applicability of the present disclosure will become apparent from the detailed description provided hereinafter. It should be understood that the detailed description of the exemplary embodiments is intended for purposes of illustration only, and is therefore not intended to necessarily limit the scope of the present disclosure.
[0012] A system to facilitate benefit payments FIG. 1 illustrates a system 100 for facilitating payments of assistance benefits through the use of tokens and blockchain for tracking distribution and redemption of assistance benefits.
[0013] The system 100 can include a processing server 102. The processing server 102, which will be discussed in more detail below, can be configured to operate as a centralized platform that allows for the use of token distribution and redemption for the payment of aid benefits on behalf of one or more aid organizations or other entities. In the system 100, the payment system 104 can be a computing system operated by or on behalf of an aid organization, non-profit organization, or other entity that is interested in providing aid benefits to one or more recipients. To receive benefits, a recipient can register with the processing server 102 via a recipient device 106. The recipient device 106 can be a mobile computing device, such as a mobile phone, a smartphone, a smart watch, a wearable computing device, etc., which is configured to run an application program for a blockchain wallet, as will be discussed in more detail below.
[0014] Registration of the payee device 106 with the processing server 102 may include transmitting a device identifier associated with the payee device 106 to the processing server 102 along with identification information of the payee as its user. The device identifier may be any value unique to the payee device 106, among other computing devices, such as a media access control address, serial number, registration number, identification number, user name, email address, phone number, etc. Identification information for the payee may include any value or combination of values that can be used by the payee to receive benefits with an aid organization or other entity from which the payee can receive benefits. For example, identification information may include information from a government-issued identification card, such as a driver's license or passport, a social security number, a tax identification number, a date of birth, a legal name, etc. In one example, the payee device 106 may register an account with the processing server 102 for receipt of aid benefits by providing a social security number (e.g., identification information) and an email address (e.g., device identifier). The payee device 106 and the processing server 102 may communicate using any suitable communication network and method. This may be done, for example, via a web page, an application program, an application programming interface, or the like.
[0015] The processing server 102 can receive the registration data from the recipient device 106 and register a new profile for the recipient in a database or thereby make it accessible, as discussed in more detail below. In an embodiment, the recipient device 106 can be equipped with a blockchain wallet, as discussed in more detail below, as part of the registration process. In such an embodiment, the processing server 102 can generate a cryptographic key pair to be used as the blockchain wallet after receiving data from the recipient device 106 and can electronically transmit the cryptographic key pair to the recipient device 106. The recipient device 106 can store the private key and the public key that make up the cryptographic key pair and can thus manage the blockchain wallet. In an embodiment, the recipient device 106 can already have a blockchain wallet. During the registration process, the recipient device 106 can provide the processing server 102 with a public key for the blockchain wallet. In some cases, the processing server 102 can generate a cryptographic key pair that functions as the blockchain wallet for the recipient device 106 as part of the registration process. However, although the processing server 102 may maintain the cryptographic key pair in the recipient's profile, it cannot provide the private key directly to the recipient device 106 .
[0016] Once a payee is registered, the payee can contact a donor organization or other entity to request benefits. The payee and donor organization can interact using traditional methods and systems. As part of the interaction, the payee can provide at least identifying information to the donor organization that is used during registration with the processing server 102. This can be, for example, presenting a government issued identification card to the donor organization when requesting benefits.
[0017] When a donor organization is interested in providing benefits to a recipient (e.g., when the recipient is eligible to receive benefits under a program administered by the donor organization), the donor organization's or other entity's payment system 104 can generate one or more tokens. A token can be a digital data object corresponding to one or more units of fiat currency and can be used by the recipient in place of traditional payment instruments to receive aid benefits from a merchant. A token can include a unique identification value that is unique to the token among all tokens generated and distributed by the donor organization or other entity utilizing the processing server's platform. In some cases, each payment system 104 can generate or identify a unique identification value for a new token. In other cases, the processing server 102 can generate or identify a unique identification value that can be assigned to the payment system 104 for use in generating new tokens. A token can also include a header or other data field that can include a value that can be used in identifying information about the token or useful in redeeming the token. For example, a token may include a value indicative of a fiat currency with which the token is associated, a value indicative of an amount of the associated fiat currency that the token represents, one or more values indicative of goods or services for which the token may be redeemed, one or more values identifying a merchant for which the token may be redeemed, etc. In some embodiments, each token may be associated with a single unit of the corresponding fiat currency. In such embodiments, the payment system 104 may generate multiple payment tokens for a single distribution of an assistance benefit. For example, a single token may represent one dollar, and the payment system 104 may generate 100 tokens for distribution to a single recipient, representing the distribution of $100 in goods or services to the recipient.
[0018] The payment system 104 may generate the tokens necessary to distribute the assistance benefits to the recipients and may electronically transmit the generated tokens to the processing server 102 using appropriate communications networks and methods. In embodiments where the payment token may include information regarding the associated currency, value, and any constraints on the use of the payment token, the payment system 104 may electronically transmit the payment token to the processing server 102 without such data in addition to the token. In other embodiments, the payment system 104 may electronically transmit such information as the fiat currency associated with the payment token, the corresponding value of the payment token in that fiat currency, identifiers for any merchants at which the payment token may be used, product information regarding goods or services for which the payment token may be redeemed, etc.
[0019] The payment system 104 may also electronically transmit identification information about the payee to the processing server 102. The processing server 102 may receive the identification information and the payment token, and may use the identification information to identify a profile for the payee. The processing server 102 may identify a device identifier for the payee's payee device 106 in the identified profile, and may then proceed to distribute the payment token to the payee device 106. In an exemplary embodiment, the payment token may be stored in a blockchain, and its distribution to the payee device 106 may be performed via transferring ownership of the payment token to a blockchain wallet run by or belonging to the payee device 106.
[0020] To facilitate use of the blockchain, the system 100 may include a blockchain network 110. The blockchain networks 110 may each include a plurality of blockchain nodes 112. Each blockchain node 112 may be a computing system, such as that shown in FIG. 5 and discussed in more detail below, that is configured to perform functions associated with processing and managing the blockchain, including generating blockchain data values, validating proposed blockchain transactions, verifying digital signatures, generating new blocks, validating new blocks, and maintaining copies of the blockchain.
[0021] A blockchain may be a distributed ledger that includes at least a number of blocks. Each block may include at least a block header and one or more data values. Each block header may include at least a timestamp, a block reference value, and a data reference value. The timestamp may be the time when the block header is generated and may be represented using any suitable method (e.g., UNIX timestamp, DateTime, etc.). The block reference value may be a value that references (e.g., based on the timestamp) an earlier block in the blockchain. In an embodiment, the block reference value in the block header may be a reference to the block header of the block that was most recently added before the respective block. In an exemplary embodiment, the block reference value may be a hash value generated via hashing the block header of the most recently added block. The data reference value may similarly be a reference to one or more data values stored in the block that includes the block header. In an exemplary embodiment, the data reference value may be a hash value generated via hashing the one or more data values. For example, the block reference value may be the root of a Merkle tree that is generated using one or more data values.
[0022] The use of block reference values and data reference values in each block header can result in the blockchain being immutable. Any attempted modification to any data value requires the generation of a new data reference value for the block, which in turn requires the generation of a new block reference value for subsequent blocks, which in turn requires the generation of new block reference values in all subsequent blocks. This must be performed and updated at every single blockchain node 112 in the blockchain network 110 before generating and adding a new block to the blockchain in order to make the change permanent. Computational and communication limitations make such modifications very difficult, if not impossible, and thus the blockchain can be immutable.
[0023] In one embodiment, a blockchain can be used to store information about blockchain transactions that occur between two different blockchain wallets. A blockchain wallet can include a private key of a cryptographic key pair. This is used to generate a digital signature that serves as a payer's acknowledgement of the blockchain transaction. The digital signature can be verified by the blockchain network 110 using the public key of the cryptographic key pair. In some cases, the term "blockchain wallet" can refer specifically to a private key. In other cases, the term "blockchain wallet" can refer to a computing device (e.g., payee device 106, etc.) that stores a private key for use in blockchain transactions. For example, each computing device can each have its own private key for a respective cryptographic key pair and each can be a blockchain wallet for use in transactions with a blockchain associated with the blockchain network. The computing device can be any type of device suitable for storing and utilizing a blockchain wallet, such as a desktop computer, a laptop computer, a notebook computer, a tablet computer, a mobile phone, a smartphone, a smart watch, a smart TV, a wearable computing device, an embedded computing device, etc.
[0024] Each blockchain data value stored in the blockchain may correspond to a blockchain transaction or other data store, if applicable. A blockchain transaction may consist of at least a digital signature of the sender of the currency (e.g., the recipient device 106) generated using the sender's private key, a blockchain address of the recipient of the currency (e.g., the merchant system 114) generated using the recipient's public key, the blockchain currency amount to be transferred, or other stored data. In some blockchain transactions, the transaction may also include one or more blockchain addresses of the sender where the blockchain currency is currently stored (e.g., the digital signature certifies access to such currency), and an address generated using the sender's public key for any changes held by the sender. Addresses to which cryptocurrency has been sent that may be used in future transactions are called "output" addresses, which are addresses that have been previously used to capture the output of previous blockchain transactions, and are also called "unspent transactions". This is due to the fact that there may have been currency sent to the address in a previous transaction where that currency is still unspent. In some cases, the blockchain transaction may also include the sender's public key for use by the entity in validating the transaction. For conventional processing of a blockchain transaction, such data can be provided by either the sender or the recipient to a blockchain node 112 in the blockchain network 110. The node can verify the digital signature using the public key in the cryptographic key pair of the sender's wallet. The node can also verify access to the sender's funds (e.g., that the unspent transaction has not yet been spent and was sent to an address associated with the sender's wallet), a process known as "confirming" the transaction, and then include the blockchain transaction in a new block.New blocks, in traditional blockchain implementations, may be added to the blockchain and verified by other nodes in the blockchain network 110 before being distributed to all of the blockchain nodes 112 in the blockchain network 110, respectively. If the blockchain data value is not related to a blockchain transaction, but may instead be related to the storage of other types of data, then the blockchain data value may still include or involve verification of a digital signature.
[0025] In the system 100, blockchain transactions can be used within the blockchain to transfer ownership of a payment token. The processing server 102 can receive the payee's payment token from the payment system 104 and can submit the payment token to a blockchain node 112 in the blockchain network 110 for inclusion in a new blockchain data item having a destination address generated using the public key of the payee device's blockchain wallet. As a result, the payee device's 106 blockchain wallet can have ownership of the payment token once the new blockchain transaction is added to a block, confirmed, and added to the blockchain. In an embodiment, the processing server 102 can itself be a blockchain node 112 in the blockchain network 110 and can generate a new blockchain data value that includes the payment token and the payee device's 106 destination address and include the new blockchain data value in the newly created block that is confirmed and added to the blockchain.
[0026] Once the payment token is successfully added to the blockchain, the processing server 102 can provide a notification message to the recipient device 106 to notify the recipient that the payment token has been distributed for use in receiving the assistance benefit. In an embodiment, the notification message can include a transaction identifier or other value unique to the blockchain data value, including the payment token, for use by the recipient device 106 in identifying the blockchain data value on the blockchain for verification. The recipient is free to use the payment token to receive the assistance benefit, subject to any limitations and restrictions on the use of the token.
[0027] The recipient may visit or interact with a merchant where the recipient wishes to use a payment token, for example, directly at the merchant's storefront, through the merchant's application program, through a web page, over the phone, etc. The recipient may select one or more goods or services for which the one or more payment tokens can be used as payment. In one example, an aid organization may give the recipient tokens worth $50 that can be used to purchase food from an approved merchant, and the recipient may visit a grocery store and purchase $20 worth of milk and rice using the tokens. To facilitate such a payment, the recipient may initiate a transfer to the merchant of 20 tokens worth $1, initiate a transfer to the merchant of a single token worth $20, or initiate a transfer to the merchant of a single token worth more than $20. The recipient device 106 may be issued one or more new tokens for the remaining balance after the transferred tokens are redeemed by the merchant.
[0028] To transfer the payment token to the merchant, the payee device 106 may provide the payment token and a digital signature indicating the payee device's ownership of the payment token to the merchant system 114 associated with the merchant (e.g., in its blockchain wallet). In embodiments where the payee device 106 locally stores the blockchain wallet (e.g., or an application program used to access the blockchain wallet, such as a digital wallet application program), the payee device 106 may generate a digital signature using a private key of the blockchain wallet's cryptographic key pair using a suitable signature generation algorithm. In other embodiments, the processing server 102 may generate a digital signature for the payment token during the distribution process. The digital signature may be electronically transmitted to the payee device 106 as part of the notification message described above. The payee device 106 may generate or identify the digital signature, if applicable, and may transmit the digital signature electronically to the merchant system 114. The digital signature may be electronically transmitted to the merchant system 114 using any suitable communications network and method, such as via radio frequency, Bluetooth, wireless network, local area network, etc.
[0029] In one example, the digital signature can be transmitted using a machine-readable code, such as a barcode or a quick response (QR) code. For example, the recipient device 106 can generate or identify the digital signature and then generate an encoded machine-readable code with the digital signature. In another example, the processing server 102 can generate an encoded machine-readable code with the digital signature during the distribution process. The machine-readable code is electronically transmitted to the recipient device 106 in a notification message. For example, the recipient device 106 can receive the QR code or an image of the QR code from the processing server 102 in a Short Messaging Service (SMS) message or email. The recipient device 106 can then present the QR code or an image of the QR code to the merchant system 114 when redeeming the recipient's assistance benefit. The merchant system 114 can use an optical imaging device to read the machine-readable code and then decode the digital signature therefrom. In such an embodiment, a conventional mobile phone capable of receiving SMS messages or emails can still be used to receive and use the payment token, instead of a smartphone.
[0030] In embodiments in which the payment token includes data indicative of an associated fiat currency, value, and authorized use, the merchant system 1 14 may identify such data values within the payment token itself to verify that the payment token is appropriate. For example, the merchant system 1 14 may verify that the payment token is of an appropriate value to cover the goods or services purchased by the recipient. In another example, if the payment token is restricted as to the merchants at which the token can be used, or the goods or services for which the payment token can be used, the merchant system 1 14 may identify such data within the payment token to determine whether the payment can be used at the merchant and for the goods or services requested by the recipient. In embodiments in which such data is not included in the payment token itself, the merchant system 1 14 may electronically transmit the payment token to the processing server 102. The processing server 102 may identify a profile associated with the payment token and identify the data associated therewith, provided by the payment system 104 during the initial distribution of the token. The processing server 102 may then provide such data (e.g., fiat currency, currency amount, merchant constraints, product constraints, etc.) to the merchant system 114 for the merchant's use in verifying that the transaction is appropriate. In some cases, the merchant system 114 may provide the payment token to the processing server 102 along with information about the desired purchase (e.g., transaction amount, merchant identifier, product identifier). In such a case, the processing server 102 may identify a profile for the token and use the data therein to determine that the transaction is appropriate and provide the result of the determination to the merchant system 114. If the transaction is appropriate, the merchant system 114 may proceed with the transaction by receiving a digital signature of the payment token from the payee device 106.
[0031] Once the merchant system 114 receives the digital signature for the payment token, the merchant can offer a transaction for the benefit to the recipient associated with the recipient device 106. The recipient can then receive the benefit from the aid organization via the payment token and transfer the digital signature to the merchant to receive the benefit goods or services using the token, thereby participating in the system 100.
[0032] After the merchant system 114 receives the digital signature, the merchant may freely redeem the corresponding payment token to receive the associated fiat currency from the aid organization. To redeem the payment token, the merchant system 114 may electronically transmit the payment token and the digital signature to the processing server 102 using an appropriate communications network and method, along with account information associated with the transaction account to which the merchant wishes to make the payment. The account information may include an account number, a routing number, and / or any other data suitable for facilitating a payment transaction, a wire transfer, or other suitable type of payment from one transaction account to another. The processing server 102 may receive the payment token, the digital signature, and the account information from the merchant system 114 and verify the digital signature. To verify the digital signature, the processing server 102 may identify the public key of a cryptographic key pair associated with the blockchain wallet to which the payment token was distributed and use the public key to verify the digital signature using an appropriate signature generation algorithm. Upon successful verification of the digital signature, the processing server 102 may determine that the authorized payee device 106 has successfully released possession of the payment token, thereby spending the payment token with the merchant. The processing server 102 may transfer ownership of the payment token, either directly or via a blockchain node 112, to a new blockchain wallet, such as associated with the processing server 102 or the payment system 104, to prevent repeated use of the payment token, such as by having new blockchain data values added to the blockchain including the payment token, the digital signature, and the destination address generated using the new blockchain wallet.
[0033] After the digital signature is verified, the processing server 102 can electronically send a message to the payment system 104 using an appropriate communication network and method, instructing the payment system 104 to initiate settlement of the payment token to the merchant. The message can include the payment token and / or the fiat currency and its associated currency amount, as well as account information provided by the merchant system 114. The payment system 104 can receive the information from the processing server 102 and instruct the payment bank 108 to transfer funds to the merchant bank 116 associated with the merchant. The payment bank 108 can be a bank or other financial institution or entity that has issued a transaction account to a donor organization or other entity for use in funding an electronic payment transaction. The merchant bank 116 can be a bank or other financial institution or entity that has issued a transaction account associated with the account information to the merchant for use in receiving funds in an electronic payment transaction. The payment bank 108 can receive the currency amount and account information from the payment system 104 and can initiate an electronic payment transaction (e.g., or wire transfer or other suitable mechanism) for the currency amount to the indicated transaction account issued by the merchant bank 116. The merchant bank 116 can receive the fiat currency amount from the payment bank 108 and credit the merchant's transaction account accordingly. Thus, the merchant can receive the fiat currency equivalent of the payment token after redeeming the payment token with the processing server 102.
[0034] In some embodiments, a payee can use a single blockchain wallet for multiple payment systems 104 and / or merchant systems 114. In such embodiments, a new destination address for each payment token received can be generated by the blockchain wallet. The destination address can be used to generate a digital signature or can be transmitted along with the digital signature. In other embodiments, a new blockchain wallet can be used for each payment system 104 from which the payee device 106 receives a payment token. Each blockchain wallet can be managed via a single application program or a unique application program on the payee device 106. In embodiments where the payee device 106 receives the QR code with the digital signature directly from the processing server 102, the processing server 102 can use one or more blockchain wallets per payee, as needed.
[0035] In some embodiments, the processing server 102 may utilize a platform for distribution of payment tokens associated with multiple fiat currencies. In such embodiments, each payment token may indicate (e.g., directly within the token or within a token profile stored by the processing server 102) the fiat currency with which it is registered. When the merchant system 114 initiates redemption of a payment token, the merchant system 114 may indicate a desire to receive currency in the associated fiat currency of the payment token or via a different currency. If a different currency is indicated, the currency amount of the payment token may be converted from the associated fiat currency selected by the merchant system 114 to the different currency. Any suitable method may be used to perform the currency conversion. In some embodiments, the payment token itself (e.g., directly within a data value within the token or stored in a token profile for the payment token in the processing server 102) may indicate a conversion rate for conversion from the associated fiat currency to one or more other fiat currencies.
[0036] The methods and systems discussed herein provide for the facilitation of the distribution of aid benefits by one or more aid organizations or other entities to recipients through the use of payment tokens stored in a blockchain. This results in a system that is significantly more scalable than conventional systems and can provide interoperability across multiple aid organizations, non-profit organizations, and other groups, as well as across multiple merchants. As a result, a recipient can receive benefits from multiple organizations using a single recipient device 106 without the need for multiple payment instruments. The use of payment tokens also allows merchants to easily accept payments for redemption of benefits across any number of aid organizations that can be quickly redeemed for fiat currency using standard electronic payment transactions. The result is a significantly improved system over conventional systems for increased convenience for organizations, recipients, and merchants.
[0037] Processing Server 2 illustrates one embodiment of a processing server 102 in system 100. It will be apparent to one of ordinary skill in the art that the embodiment of processing server 102 illustrated in FIG. 2 is provided by way of example only and may not encompass all possible configurations of a processing server 102 suitable for performing functions as discussed herein. For example, computer system 500 illustrated in FIG. 5 and discussed in more detail below may be a suitable configuration of a processing server 102. Additional components in system 100, such as payment system 104, payee device 106, payment bank 108, blockchain node 112, and merchant system 114, may include the components illustrated in FIG. 2 and discussed below.
[0038] The processing server 102 may include a receiving device 202. The receiving device 202 may be configured to receive data over one or more networks via one or more network protocols. In some cases, the receiving device 202 may be configured to receive data from the payment system 104, the payee device 106, the blockchain node 112, the merchant system 114, and other systems and entities via one or more communication methods, such as radio frequency, local area network, wireless area network, cellular communication network, Bluetooth, the Internet, and the like. In some embodiments, the receiving device 202 may include multiple devices, such as different receiving devices for receiving data via different networks, such as a first receiving device for receiving data via a local area network and a second receiving device for receiving data via the Internet. The receiving device 202 may receive an electronically transmitted data signal. Data may be superimposed or encoded on the data signal and may be decoded, parsed, read, or obtained via reception of the data signal by the receiving device 202. In some cases, the receiving device 202 can include a parsing module to parse the received data signal to obtain data overlaid thereon. For example, the receiving device 202 can include a parsing program configured to receive the data signal and convert the received data signal into usable input for functions performed by the processing device to implement the methods and systems described herein.
[0039] The receiving device 202 can be configured to receive a data signal transmitted electronically by the payment system 104. This data signal can be overlaid or encoded with a payment token and associated data such as a currency amount, a merchant identifier, a product identifier, etc. The receiving device 202 can also be configured to receive a data signal transmitted electronically by the payee device 106. This data signal can be overlaid or encoded with registration data (e.g., device identifier, identification information, public key, etc.). The receiving device 202 can also be configured to receive a data signal transmitted electronically by the blockchain node 112. This data signal can be overlaid or encoded with a blockchain data value, a block, a confirmation message, etc. The receiving device 202 can also be configured to receive a data signal transmitted electronically by the merchant system 114. This data signal can be overlaid or encoded with a payment token, a digital signature, and account information.
[0040] The processing server 102 may also include a communication module 204. The communication module 204 may be configured to transmit data between the modules, engines, databases, storage, and other components of the processing server 102 for use in performing the functions discussed herein. The communication module 204 may include one or more communication types and may utilize various communication methods for communication within a computing device. For example, the communication module 204 may include a bus, a contact pin connector, wires, and the like. In an embodiment, the communication module 204 may also be configured to communicate between the internal components of the processing server 102 and external components of the processing server 102, such as an externally connected database, a display device, an input device, and the like. The processing server 102 may also include a processing device. The processing device may be configured to perform the functions of the processing server 102 discussed herein, as would be apparent to one of ordinary skill in the art. In an embodiment, the processing device may include and / or consist of multiple engines and / or modules specifically configured to perform one or more functions of the processing device, such as the query module 216, the generation module 218, the validation module 220, and the like. As used herein, the term "module" can refer to software or hardware specifically programmed to receive input, perform one or more operations using the input, and provide an output. The inputs, outputs, and operations performed by various modules will be apparent to one of ordinary skill in the art based on this disclosure.
[0041] The processing server 102 may include a payee database 206. The payee database 206 may be configured to store a number of payee profiles 208 using any suitable data storage format and schema. The payee database 206 may be a relational database utilizing a structured query language for storing, identifying, modifying, updating, accessing, etc., structured data sets stored therein. Each payee profile 208 may be a structured data set configured to store data related to one or more payees and / or payee devices 106, including, for example, a device identifier, identification information, a payment token, a digital signature, a public key, a private key, etc.
[0042] The processing server 102 may include a token database 210. The token database 210 may be configured to store multiple token profiles 212 using any suitable data storage format and schema. The token database 210 may be a relational database utilizing a structured query language for storing, identifying, modifying, updating, accessing, etc., structured data sets stored therein. Each token profile 212 may be a structured data set configured to store data related to one or more payment tokens, including, for example, the payment token, associated data values (e.g., fiat currency, currency amount, merchant identifier, product identifier, etc.), blockchain transaction identifier, public key of the blockchain wallet to which the payment token was distributed, etc.
[0043] The processing server 102 may also include a memory 214. The memory 214 may be configured to store data for use by the processing server 102 in performing the functions discussed herein, such as public and private keys, symmetric keys, etc. The memory 214 may be configured to store data using appropriate data formatting methods and schemas, and may be any suitable type of memory, such as read-only memory, random access memory, etc. The memory 214 may include, for example, cryptographic keys and algorithms, communication protocols and standards, data formatting standards and protocols, program code for processing device modules and application programs, and other data that may be suitable for use by the processing server 102 in performing the functions disclosed herein, as would be apparent to one of ordinary skill in the art. In an embodiment, the memory 214 may consist of or include a relational database. The relational database utilizes a structured query language for storing, identifying, modifying, updating, accessing, etc., structured data sets stored therein. The memory unit 214 can be configured to store, for example, cryptographic keys, communication information, data formatting rules, distribution token values, blockchain data, signature generation algorithms, currency conversion data, account information, and the like.
[0044] The processing server 102 may include a query module 216. The query module 216 may be configured to run a query on a database to identify information. The query module 216 may receive one or more data values or query strings and run the query string based thereon on an indicated database, such as the storage unit 214 of the processing server 102, to identify information stored therein. The query module 216 may then output the identified information to an appropriate engine or module of the processing server 102, as appropriate. The query module 216 may, for example, run a query on the payee database 206 to identify a payee profile 208. The payee profile 208 includes identification information received from the payment system 104 to identify the payee device 106 to which the payment token is to be distributed.
[0045] The processing server 102 may also include a generation module 218. The generation module 218 may be configured to generate data for use by the processing server 102 in performing functions discussed herein. The generation module 218 may receive instructions as input, may generate data based on the instructions, and may output the generated data to one or more modules of the processing server 102. For example, the generation module 218 may be configured to generate notification messages, confirmation messages, blockchain data values, blocks, digital signatures, machine-readable codes, distribution tokens, unique identification values, and the like.
[0046] The processing server 102 may also include a validation module 220. The validation module 220 may be configured to perform validation on the processing server 102 as part of the functionality discussed herein. The validation module 220 may receive instructions as input (which may also include data used in performing the validation), perform the validation upon request, and output the results of the validation to another module or engine of the processing server 102. The validation module 220 may be configured, for example, to validate digital and cryptographic signatures using appropriate signature generation algorithms and keys to validate payment tokens and their usage, etc.
[0047] The processing server 102 may also include a transmitting device 222. The transmitting device 222 may be configured to transmit data over one or more networks via one or more network protocols. In some cases, the transmitting device 222 may be configured to transmit data to the payment system 104, the payee device 106, the blockchain node 112, the merchant system 114, and other entities via one or more communication methods, such as a local area network, a wireless area network, cellular communication, Bluetooth, radio frequency, the Internet, and the like. In some embodiments, the transmitting device 222 may include multiple devices, such as different transmitting devices for transmitting data over different networks, such as a first transmitting device for transmitting data over a local area network and a second transmitting device for transmitting data over the Internet. The transmitting device 222 may electronically transmit a data signal overlaid with data that may be parsed by a receiving computing device. In some cases, the transmitting device 222 may include one or more modules for overlaying, encoding, or formatting the data into a data signal suitable for transmission.
[0048] The sending device 222 can be configured to electronically send a data signal to the payment system 104. The data signal can be overlaid or encoded with the payment token and the account information. The sending device 222 can also be configured to electronically send a data signal to the payee device 106. The data signal can be overlaid or encoded with the payment token, a digital signature, a machine-readable code, a notification message, etc. The sending device 222 can also be configured to electronically send a data signal to the blockchain node 112. The data signal can be overlaid or encoded with the payment token, a destination address, a blockchain data value, a block, a confirmation message, etc. The sending device 222 can also be configured to electronically send a data signal to the merchant system 114. The data signal can be overlaid or encoded with a payment token, a decision regarding a data value associated with the payment token, etc.
[0049] Process for facilitating the distribution and redemption of payment tokens 3A and 3B show a process for facilitating the distribution and redemption of payment tokens via a blockchain for the distribution and redemption of assistance benefits in system 100.
[0050] In step 302, a recipient interested in receiving an assistance benefit from an assistance organization or other entity may use a recipient device 106 to register with the processing server 102 to receive the benefit via a payment token. The recipient device 106 may electronically transmit at least a device identifier associated with the recipient device 106 and identification information associated with the recipient to the processing server 102 using an appropriate communication network and method. In step 304, the receiving device 202 of the processing server 102 may receive data from the recipient device 106. In step 306, the query module 216 of the processing server 102 may perform a query on the recipient database 206 of the processing server 102 to insert therein a new recipient profile 208 for the recipient including at least the device identifier and the identification information.
[0051] At step 308, a payment system 104 associated with an aid organization or other entity wishing to distribute benefits to a recipient may issue one or more payment tokens targeted to the recipient to the processing server 102. Each payment token may be a data object including a token identification value, additional data values indicating the fiat currency and amount the payment token represents, and any values relating to constraints on the use and redemption of the payment token. At step 310, a receiving device 202 of the processing server 102 may receive the payment token from the payment system 104. This may be accompanied by a new recipient profile 208 created in step 306 that includes identification information associated with the recipient to whom the payment token is being issued.
[0052] At step 312, the query module 216 of the processing server 102 may perform a query on the token database 210 of the processing server 102 to store therein a new token profile 212 including at least the payment token and the identification information associated with the payee. At step 314, the processing server 102 may register the payment token. Registering the payment token may include performing functions necessary for distributing and using the payment token to the payee. As part of the registration, the generation module 218 of the processing server 102 may generate a cryptographic key pair comprising a private key and a public key to act as a blockchain wallet for the payment token. The generation module 218 may also generate a digital signature using the private key and a signature generation algorithm and generate a destination address using the public key. The sender 222 of the processing server 102 may electronically transmit the payment token and the destination address to a blockchain node 112 in the blockchain network 110 for inclusion in a new blockchain data value included in a new block that is generated and added to the blockchain. The generation module 218 of the processing server 102 may also generate an encoded QR code having at least the generated digital signature and the payment token. In an embodiment, the query module 216 of the processing server 102 may perform a query on the token database 210 of the processing server 102 to update the token profile 212 associated with the payment token and add the cryptographic key pair thereto.
[0053] At step 316, the sending device 222 of the processing server 102 may electronically send the notification message to the payee device 106 using an appropriate communication network and method. This may be done, for example, via an SMS message, email, application program, etc. The notification message may include at least a QR code. At step 318, the payee device 106 may receive the notification message. The payee may take the payee device 106 to a merchant and select one or more goods or services to purchase using the payment token. At step 320, the payee device 106 may display the QR code on its display device for reading by the merchant system 114. At step 322, the merchant system 114 may read the QR code using an optical imaging device such as a camera. At step 324, the merchant system 114 may decode the payment token and the digital signature from the QR code using conventional methods. If the payment token may be subject to one or more constraints on its use, the merchant system 114 may first verify (e.g., directly or using the processing server 102) that the payment token is being used in accordance with any applicable constraints, such as by merchant, product type, amount, etc. In step 326, the merchant system 114 may electronically transmit a redemption message to the processing server 102 using an appropriate communications network and method. The redemption message may include at least the payment token, a digital signature, and account information associated with a transaction account into which the merchant wishes to receive the fiat currency equivalent of the payment token.
[0054] At step 328, the receiving device 202 of the processing server 102 may receive the redemption message from the merchant system 114. At step 330, the processing server 102 may verify the digital signature. The query module 216 of the processing server 102 may perform a query on the token database 210 of the processing server 102 to identify the token profile 212 that includes the payment token and identify the public key stored therein. The verification module 220 of the processing server 102 may verify the digital signature using the public key and a signature generation algorithm. Upon successful verification, at step 332, the sending device 222 of the processing server 102 may electronically transmit a payment instruction message to the payment system 104 using an appropriate communication network and method. The payment instruction message may include at least the payment token and the account information received in the redemption message.
[0055] At step 334, the payment system 104 may receive a payment instruction message from the processing server 102. At step 336, the payment system 104 may initiate an electronic payment transaction for settlement of the currency amount of the fiat currency corresponding to the payment token to the transaction account associated with the account information received in the payment instruction message. Initiating the electronic payment transaction may include providing the currency amount and the account information to the payment bank 108. The payment bank 108 may transfer the appropriate amount of the fiat currency to the merchant bank 116, which may credit the appropriate amount to the transaction account indicated in the account information. At step 338, the merchant may accordingly receive settlement of the appropriate amount of the fiat currency after redemption of the accepted payment token as payment for goods or services traded by the recipient for assistance benefits provided by the assistance organization or other entity.
[0056] Exemplary Methods for Facilitating Benefit Payments FIG. 4 illustrates a method 400 for facilitating benefit payments through the use of tokens and blockchain.
[0057] At step 402, benefit information may be received from a first computing system (e.g., payment system 104) by a receiver (e.g., receiving device 202) of a processing server (e.g., processing server 102). The benefit information includes at least a beneficiary identifier (e.g., identification information). At step 404, a blockchain data entry may be stored in the blockchain. The blockchain data entry includes at least a payment token associated with the beneficiary information and a payee value generated using the public key of the cryptographic key pair.
[0058] At step 406, a redemption message may be received by a receiver of the processing server from a second computing system (e.g., merchant system 114). The redemption message includes at least the payment token, a digital signature generated using the private key of the cryptographic key pair, the transaction account data, and the redemption amount. At step 408, the digital signature may be verified by a processor of the processing server (e.g., verification module 220) using the public key of the cryptographic key pair. At step 410, a transfer message may be sent by a transmitter of the processing server (e.g., sending device 222) to the first computing system. The transfer message includes at least the transaction account data and the redemption amount.
[0059] In one embodiment, the payee information may include a payment token. In one embodiment, the method 400 may further include generating, by a processor of the processing server (e.g., the generating module 218), a payment token based on at least the received payee information. In one embodiment, the payee information may further include a currency amount, and the redemption amount may be less than or equal to the currency amount. In one embodiment, the payee information may further include a payment token, and the transfer message may further include the payment token. In one embodiment, the method 400 may further include receiving, by a receiver of a fourth computing system (e.g., the paying bank 108), a payment instruction from the first computing system, the payment instruction including at least transaction account data, a redemption amount, and source account data, and initiating, by a processor of the fourth computing system, an electronic payment transaction for payment of the redemption amount from a first transaction account associated with the source account data to a second transaction account associated with the transaction account data.
[0060] In an embodiment, the method 400 may also include transmitting, by a transmitter of the processing server, the notification message to a third computing system (e.g., the recipient device 106). The third computing system is identified based on at least the recipient identifier. In a further embodiment, the notification message may include a private key of a cryptographic key pair. In another further embodiment, the notification message may include machine-readable code encoded with the private key of the cryptographic key pair. In yet another further embodiment, the notification message may include a digital signature.
[0061] Computer System Architecture 5 illustrates a computer system 500 in which embodiments of the present disclosure or portions thereof may be implemented as computer readable code. For example, the processing server 102 of FIGS. 1 and 2, and the payment system 104, payee device 106, payment bank 108, blockchain node 112, and merchant system 114 of FIG. 1 may be implemented in the computer system 500 using hardware, non-transitory computer readable media having instructions stored thereon, or a combination thereof, and may be implemented in one or more computer systems or other processing systems. The hardware may embody modules and components used to implement the methods of FIGS. 3A, 3B, and 4.
[0062] Where programmable logic is used, such logic may be executed on commercially available processing platforms configured with executable software code to become a specific purpose computer or special purpose device (e.g., programmable logic arrays, application specific integrated circuits, etc.). Those skilled in the art will appreciate that embodiments of the disclosed subject matter may be practiced using a variety of computer system configurations, including multi-core multiprocessor systems, minicomputers, mainframe computers, computers linked or clustered with distributed functionality, as well as pervasive or small computers that may be embedded in virtually any device. For example, at least one processor device and memory unit may be used to implement the above-described embodiments.
[0063] A processor unit or device discussed herein may be a single processor, multiple processors, or a combination thereof. A processor device may have one or more processor "cores." As discussed herein, the terms "computer program medium," "non-transitory computer-readable medium," and "computer usable medium" are generally used to refer to tangible media, such as removable storage unit 518, removable storage unit 522, and a hard disk installed in hard disk drive 512.
[0064] Various embodiments of the present disclosure are described with respect to this exemplary computer system 500. After reading this description, it will become apparent to one of ordinary skill in the art how to implement the present disclosure using other computer systems and / or computer architectures. Although the operations may be described as sequential processes, some of the operations may in fact be performed in parallel, concurrently, and / or in a distributed environment, using program code stored locally or remotely for access by single or multi-processor machines. Additionally, in some embodiments, the order of the operations may be rearranged without departing from the spirit of the disclosed subject matter.
[0065] The processor unit 504 may be a dedicated or general-purpose processor unit that is specifically configured to perform the functions discussed herein. The processor unit 504 may be connected to a communication infrastructure 506, such as, for example, a bus, a message queue, a network, a multi-core message passing scheme, etc. The network may be any network suitable for performing the functions as disclosed herein, and may include a local area network (LAN), a wide area network (WAN), a wireless network (e.g., WiFi), a cellular network, a satellite network, the Internet, optical fiber, coaxial cable, infrared, radio frequency (RF), or any combination thereof. Other suitable network types and configurations will be apparent to those skilled in the art. The computer system 500 may also include a primary memory 508 (e.g., random access memory, read-only memory, etc.), and may also include a secondary memory 510. The secondary memory 510 may include a hard disk drive 512 and a removable storage drive 514, such as, for example, a floppy disk drive, a magnetic tape drive, an optical disk drive, a flash memory, etc.
[0066] The removable storage drive 514 can read from and / or write to the removable storage unit 518 in a well-known manner. The removable storage unit 518 can include a removable storage medium that can be read from and written to by the removable storage drive 514. For example, if the removable storage drive 514 is a floppy disk drive or a universal serial bus port, the removable storage unit 518 can be a floppy disk or a portable flash drive, respectively. In one embodiment, the removable storage unit 518 can be a non-transitory computer-readable recording medium.
[0067] In some embodiments, secondary storage 510 may include alternative means for allowing computer programs or other instructions to be loaded into computer system 500, such as removable storage unit 522 and interface 520. Examples of such means may include program cartridges and cartridge interfaces (e.g., as found in video game systems), removable memory chips (e.g., EEPROM, PROM, etc.) and associated sockets, and other removable storage units 522 and interfaces 520 as would be apparent to one skilled in the art.
[0068] Data stored in computer system 500 (e.g., primary memory 508 and / or secondary memory 510) may be stored on any type of suitable computer-readable medium, such as optical storage devices (e.g., compact discs, digital versatile discs, Blu-ray discs, etc.) or magnetic tape storage devices (e.g., hard disk drives). Data may be organized in any type of suitable database configuration, such as, for example, a relational database, a Structured Query Language (SQL) database, a distributed database, an object database, etc. Suitable configurations and types of storage devices will be apparent to those skilled in the art.
[0069] Computer system 500 may also include a communications interface 524. Communications interface 524 may be configured to allow software and data to be transferred between computer system 500 and external devices. Exemplary communications interface 524 may include a modem, a network interface (e.g., an Ethernet card), a communications port, a PCMCIA slot and card, and the like. The software and data transferred through communications interface 524 may be in the form of signals, which may be electronic, electromagnetic, optical, or other signals as would be apparent to one skilled in the art. The signals may travel over communications path 526, which may be configured to carry signals and may be implemented using wire, cable, fiber optics, a telephone line, a cellular phone link, a radio frequency link, and the like.
[0070] The computer system 500 may further include a display interface 502. The display interface 502 may be configured to allow data to be transferred between the computer system 500 and an external display device 530. Exemplary display interfaces 502 may include a High-Definition Multimedia Interface (HDMI), a Digital Visual Interface (DVI), a Video Graphics Array (VGA), and the like. The display device 530 may be any suitable type of display device for displaying data transmitted via the display interface 502 of the computer system 500. The display device may include a cathode ray tube (CRT) display, a liquid crystal display (LCD), a light-emitting diode (LED) display, an electrostatic touch display, a thin film transistor (TFT) display, and the like.
[0071] The computer program medium and computer usable medium can refer to storage units such as the main storage unit 508 and the secondary storage unit 510, which can be memory semiconductors (e.g., DRAM, etc.). These computer program products can be means for providing software to the computer system 500. Computer programs (e.g., computer control logic) can be stored in the main storage unit 508 and / or the secondary storage unit 510. Also, the computer programs can be received via the communication interface 524. Such computer programs, when executed, can enable the computer system 500 to perform the methods as discussed herein. In particular, the computer programs, when executed, can enable the processor unit 504 to perform the methods illustrated by Figures 3A, 3B, and 4 as discussed herein. Thus, such computer programs can represent the control units of the computer system 500. If the present disclosure is implemented using software, the software can be stored in the computer program product and loaded into the computer system 500 using the removable storage drive 514, the interface 520, and the hard disk drive 512, or the communication interface 524.
[0072] The processor unit 504 may include one or more modules or engines configured to perform the functions of the computer system 500. Each of the modules or engines may be implemented using hardware, or in some cases may also utilize software, such as corresponding program code and / or programs stored in the main memory 508 or secondary memory 510. In such cases, the program code may be compiled by the processor unit 504 (e.g., by a compiling module or engine) prior to execution by the hardware of the computer system 500. For example, the program code may be source code written in a programming language that is translated into a lower level language, such as assembly language or machine code, for execution by the processor unit 504 and / or any additional hardware components of the computer system 500. The compiling process may include the use of lexical analysis, preprocessing, syntax analysis, semantic analysis, syntax-directed translation, code generation, code optimization, and any other techniques that may be suitable for translating program code into a lower level language suitable for controlling the computer system 500 to perform the functions disclosed herein. As a result of such processing, it will be apparent to one skilled in the art that computer system 500 is a specially configured computer system 500 that is uniquely programmed to perform the functions described above.
[0073] Technology consistent with the present disclosure provides, among other features, systems and methods for facilitating benefit payments through the use of tokens and blockchain. While various exemplary embodiments of the disclosed systems and methods have been described above, it should be understood that they have been presented for purposes of illustration only, and not limitation. It is not exhaustive and does not limit the disclosure to the precise form disclosed. Modifications and variations are possible in light of the above teachings or can be acquired from the practice of the present disclosure without departing from the breadth or scope.
Claims
1. 1. A method for facilitating benefit payments through use of tokens and blockchain, comprising: receiving, by a receiver of the processing server, beneficiary information from the first computing system, said beneficiary information including at least a beneficiary identifier; storing a blockchain data item in a blockchain, the blockchain data item including at least a payment token associated with the payee information and a payee value generated using a public key of a cryptographic key pair; receiving, by the receiver of the processing server, a redemption message from a second computing system, the redemption message including at least the payment token, a digital signature generated using a private key of the cryptographic key pair, transaction account data, and a redemption amount; verifying, by a processor of the processing server, the digital signature using the public key of the cryptographic key pair; sending, by a transmitter of the processing server, a transfer message to the first computing system, the transfer message including at least the transaction account data and the redemption amount; A method comprising:
2. The method of claim 1 , wherein the beneficiary information includes the payment token.
3. 10. The method of claim 1 , generating, by the processor of the processing server, the payment token based at least on the received beneficiary information; The method further comprising:
4. 10. The method of claim 1 , The method further comprising transmitting, by the transmitter of the processing server, a notification message to a third computing system, the third computing system being identified based at least on the beneficiary identifier.
5. The method of claim 4 , wherein the notification message includes the private key of the encryption key pair.
6. 5. The method of claim 4, wherein the notification message comprises machine-readable code encoded with the private key of the cryptographic key pair.
7. The method of claim 4 , wherein the notification message includes the digital signature.
8. 10. The method of claim 1 , The recipient information further includes a currency amount; The redemption amount is less than or equal to the currency amount.
9. 10. The method of claim 1 , The beneficiary information further includes the payment token; The transfer message further comprises the payment token.
10. 10. The method of claim 1 , receiving, by a receiver at a fourth computing system, a payment instruction from the first computing system, the payment instruction including at least the transaction account data, the redemption amount, and a withdrawal account data; initiating, by a processor of the fourth computing system, an electronic payment transaction for payment of the redemption amount from a first transaction account associated with the withdrawal account data to a second transaction account associated with the transaction account data; The method further comprising:
11. 1. A system for facilitating benefit payments through the use of tokens and blockchain, comprising: a first computing system; a second computing system; and Blockchain and a processing server; the processing server includes a receiver for receiving beneficiary information from the first computing system, the beneficiary information including at least a beneficiary identifier; The blockchain stores blockchain data items, the blockchain data items including at least a payment token associated with the recipient information and a payee value generated using a public key of a cryptographic key pair; the receiver of the processing server further receives a redemption message from the second computing system, the redemption message including at least the payment token, a digital signature generated using a private key of the cryptographic key pair, transaction account data, and a redemption amount; The processing server includes: a processor for verifying the digital signature using the public key of the cryptographic key pair; a transmitter for sending a transfer message to the first computing system, the transfer message including at least the transaction account data and the redemption amount; The system further comprises:
12. 12. The system of claim 11, wherein the beneficiary information includes the payment token.
13. 12. The system of claim 11, wherein the processor of the processing server further generates the payment token based at least on the received beneficiary information.
14. 12. The system of claim 11, further comprising a third computing system; The transmitter of the processing server transmits a notification message to the third computing system, the third computing system being identified based at least on the beneficiary identifier.
15. 15. The system of claim 14, wherein the notification message includes the private key of the encryption key pair.
16. 15. The system of claim 14, wherein the notification message comprises a machine-readable code encoded with the private key of the cryptographic key pair.
17. 15. The system of claim 14, wherein the notification message includes the digital signature.
18. 12. The system of claim 11, The recipient information further includes a currency amount; The redemption amount is less than or equal to the currency amount.
19. 12. The system of claim 11, The beneficiary information further includes the payment token; The transfer message further includes the payment token.
20. 12. The system of claim 11, and a fourth computing system, the fourth computing system comprising: a receiver for receiving a payment instruction from the first computing system, the payment instruction including at least the transaction account data, the redemption amount, and a withdrawal account data; a processor for initiating an electronic payment transaction for payment of the redemption amount from a first transaction account associated with the withdrawal account data to a second transaction account associated with the transaction account data; Including, the system.
Citation Information
Patent Citations
Management system, management method, and program for prepaid card
JP2016200939A
Local currency issuance utilization system
JP2018195224A
Regional currency management system, regional currency management method, and regional currency distribution infrastructure
JP2020095489A
Payment system and payment method
JP2020144526A
Cryptocurrency system
US20210027281A1