IP Library Granted Patent US 11,836,717
Granted Patent B2
US 11,836,717 · App. 16/567,042 · Granted Dec 5, 2023

System and method for processing payments in fiat currency using blockchain and tethered tokens

Inventors: Vijay Madisetti (Johns Creek, GA); Arshdeep Bahga (Chandigarh, IN)
Assignee: Vijay Madisetti
G06Q20/381G06Q20/38G06Q20/389H04L9/3268H04L2209/56
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,836,717
App. No.
16/567,042
Granted
Dec 5, 2023
Kind
B2
Abstract

A method of processing a payment including receiving a payment lookup request, identifying a user network account on a blockchain network, sending a payment authorization request to and receiving authorization from a user, transferring ownership of an in-network token responsive to the authorization, sending a debit request to a user financial account, receiving a debit response from the user financial account, sending a credit request to a receiver financial account, and receiving a credit response from the receiver financial account.

Claims (140)

1. A method of processing a payment comprising:

performing a user registration process comprising:

receiving a user network account registration request comprising user data from the user comprising a user name, a user telephone number, and a user e-mail address from client software running on a user device, the user device being a computerized device, the client software being configured to send and receive messages associated with the user telephone number;

generating a user network account comprising the user data;

sending a first verification code to the user telephone number and a second verification code to the user e-mail address;

receiving the first and second verification codes from the client software;

receiving a transaction, from the client software, signed by a user master key generated by the client software, to create a sealed user record contract, the sealed user record contract comprising hashed user data, being the product of application of a one-way hashing function to the user data; and

recording the sealed user record contract to a blockchain network, producing a sealed user record contract address; and

adding the sealed user record contract address to the user network account;

receiving a request for a user virtual account number from the user;

identifying the user network account associated with the user;

generating a user virtual account number responsive to the request for a virtual account number from the user;

recording a mapping of the user virtual account number to the user network account to a list of mappings on the blockchain network;

sending the user virtual account number to the user;

receiving a payment lookup request comprising the user virtual account number, a receiver network account address, and a payment value from a receiver user;

identifying the user network account on the blockchain network responsive to the user virtual account number;

sending a payment authorization request to the user associated with the user virtual account number responsive to the payment lookup request;

receiving a payment authorization indication from the user;

transferring ownership of an in-network token of a value responsive to the payment value from the user network account to the receiver network account responsive to the payment authorization indication;

sending a debit request to an external financial account associated with the user, defined as a user financial account, to transfer fiat currency to a currency exchange in an amount responsive to the value of the transferred in-network token;

receiving a debit response from the user financial account via the blockchain network indicating:

the user financial account transferred a first fiat currency to the currency exchange;

the currency exchange exchanged the first fiat currency to a first tethered token; and

the currency exchange transferred ownership of the first tethered token by recording a token contract to the blockchain network;

exchanging the first tethered token for a global token;

exchanging the global token for a second tethered token;

sending a credit request to an external financial account associated with the receiver, defined as a receiver financial account, to transfer value from the first tethered token to the receiver financial account, the credit request comprising recording a transfer of ownership of the second tethered token to the receiver;

receiving a credit response from the receiver financial account via the blockchain network indicating:

the currency exchange exchanged the value of the second tethered token to a second fiat currency, defining credit fiat value; and

the currency exchange transferred the credit fiat value to the receiver financial account;

wherein a fiat currency of the user financial account is a first fiat currency and the receiver financial account is a second fiat currency different from the first fiat currency;

wherein the first tethered token is tethered to the first fiat currency; and

wherein the second tethered token is tethered to the second fiat currency.

2. The method according to claim 1 the user registration process further comprises:

sending a first verification code to the user telephone number and a second verification code to the user e-mail address; and

receiving the first and second verification codes from the client software.

3. The method according to claim 1 wherein the user registration process further comprises:

receiving the user data, the hashed user data that has been signed by the user, the seal contract address, and biometric data associated with the user, defining certification data;

verifying the certification data by comparing it to the user data comprised by the user network account, the seal contract address comprised by the user network account, and the hashed user data comprised by the seal contract;

upon verifying the certification data:

generating a certification token;

generating a sealed verification record contract comprising the result of applying a one-way hashing function to the combination of the hashed user data and the certification token;

recording the sealed verification record contract on the blockchain network at a sealed verification record contract address;

generating a certification record contract comprising the sealed record address, the certification token, and the sealed verification record contract address;

recording the certification record contract on the blockchain network at a certification record contract address; and

adding each of the sealed verification record contract address and the certification record contract address to the user network account.

4. The method according to claim 1 wherein the user registration process further comprises;

receiving a sealed user record contract address, a sealed verification record contract address, and a certification record contract address; and

adding the sealed user record contract address, the sealed verification record contract address, and the certification record contract address to the user network account.

5. The method according to claim 1 wherein receiving a payment authorization indication from the user comprises at least one of receiving a message from the user telephone number authorizing the payment and receiving a message from the client software authorizing the payment.

6. The method according to claim 1 wherein sending a payment authorization request to the user comprises at least one of sending a message to the user telephone number and sending a message to the user via the client software.

7. The method according to claim 1 wherein identifying the user virtual account number on the blockchain network comprises:

comparing the user virtual account number to the list of mappings of virtual account numbers to user account;

identifying an identified mapping comprising the user virtual account number; and

retrieving user account information from the identified mapping.

8. The method according to claim 1 wherein the debit response indicates the steps of the user financial account transferred fiat currency to the currency exchange and the currency exchange exchanged the fiat currency to a first tethered token were performed using a Value Transfer Token Protocol (VTTP).

9. The method according to claim 1 wherein the credit response indicates the steps of the currency exchange exchanged the value of the first tethered token to fiat currency, defining credit fiat value and the currency exchange transferred the credit fiat value to the receiver financial account were performed using VTTP.

10. A method of processing a payment comprising:

performing a user registration process comprising:

receiving a user network account registration request comprising user data from the user comprising a user name, a user telephone number, and a user e-mail address from client software running on a user device, the user device being a computerized device configured to send and receive messages associated with the user telephone number;

generating a user network account comprising the user data;

sending a first verification code to the user telephone number and a second verification code to the user e-mail address;

receiving the first and second verification codes from the client software;

receiving a transaction, from the client software, signed by a user master key generated by the client software, to create a sealed user record contract, the sealed user record contract comprising hashed user data, being the product of application of a one-way hashing function to the user data;

recording the sealed user record contract to a blockchain network, producing a sealed user record contract address; and

adding the sealed user record contract address to the user network account;

receiving a request for a user virtual account number from a user;

identifying the user network account associated with the user;

generating a user virtual account number responsive to the request for a virtual account number from the user;

recording a mapping of the user virtual account number to the user network account to a list of mappings on the blockchain network;

sending the user virtual account number to the user;

receiving a payment lookup request comprising the user virtual account number, a receiver network account address, and a payment value from a receiver user;

identifying the user network account on the blockchain network responsive to the user virtual account number;

sending a payment authorization request to the user associated with the user virtual account number responsive to the payment lookup request;

receiving a payment authorization indication from the user;

transferring ownership of an in-network token of a value responsive to the payment value from the user network account to the receiver network account responsive to the payment authorization indication;

sending a debit request to an external financial account associated with the user, defined as a user financial account, to transfer fiat currency to a currency exchange in an amount responsive to the value of the transferred in-network token;

receiving a debit response from the user financial account via the blockchain network indicating:

the user financial account transferred a first fiat currency to the currency exchange;

the currency exchange exchanged the first fiat currency to a first tethered token; and

the currency exchange transferred ownership of the first tethered token by recording a token contract to the blockchain network;

exchanging the first tethered token for a global token;

exchanging the global token for a second tethered token;

sending a credit request to an external financial account associated with the receiver, defined as a receiver financial account, to transfer value from the first tethered token to the receiver financial account, the credit request comprising recording a transfer of ownership of the second tethered token to the receiver; and

receiving a credit response from the receiver financial account via the blockchain network indicating:

the currency exchange exchanged the value of the second tethered token to a second fiat currency, defining credit fiat value; and

the currency exchange transferred the credit fiat value to the receiver financial account;

wherein a fiat currency of the user financial account is a first fiat currency and the receiver financial account is a second fiat currency different from the first fiat currency;

wherein the first tethered token is tethered to the first fiat currency; and

wherein the second tethered token is tethered to the second fiat currency.

11. The method according to claim 10 further comprising performing a user registration process comprising:

sending a first verification code to the user telephone number and a second verification code to the user e-mail address; and

receiving the first and second verification codes from the client software.

12. The method according to claim 10 wherein the user registration process further comprises:

receiving the user data, the hashed user data that has been signed by the user, the seal contract address, and biometric data associated with the user, defining certification data;

receiving biometric data associated with the user;

verifying the certification data by comparing it to the user data comprised by the user network account, the seal contract address comprised by the user network account, and the hashed user data comprised by the seal contract;

upon verifying the certification data:

generating a certification token;

generating a sealed verification record contract comprising the result of applying a one-way hashing function to the combination of the hashed user data and the certification token;

recording the sealed verification record contract on the blockchain network at a sealed verification record contract address;

generating a certification record contract comprising the sealed record address, the certification token, and the sealed verification record contract address;

recording the certification record contract on the blockchain network at a certification record contract address; and

adding each of the sealed verification record contract address and the certification record contract address to the user network account.

13. The method according to claim 10 wherein the user registration process further comprises;

receiving a sealed user record contract address, a sealed verification record contract address, and a certification record contract address; and

adding the sealed user record contract address, the sealed verification record contract address, and the certification record contract address to the user network account.

14. The method according to claim 10 wherein receiving a payment authorization indication from the user comprises at least one of receiving a message from the user telephone number authorizing the payment and receiving a message from the client software authorizing the payment.

15. The method according to claim 10 wherein sending a payment authorization request to the user comprises at least one of sending a message to the user telephone number and sending a message to the user via the client software.

16. A method of processing a payment comprising:

performing a user registration process comprising:

receiving a user network account registration request comprising user data from the user comprising a user name, a user telephone number, and a user e-mail address from client software running on a user device, the user device being a computerized device configured to send and receive messages associated with the user telephone number;

generating a user network account comprising the user data;

receiving a transaction, from the client software, signed by a user master key generated by the client software, to create a sealed user record contract, the sealed user record contract comprising hashed user data, being the product of application of a one-way hashing function to the user data;

recording the sealed user record contract to a blockchain network, producing a sealed user record contract address; and

adding the sealed user record contract address to the user network account;

receiving a request for a user virtual account number from a user;

identifying a user network account associated with the user;

generating a user virtual account number responsive to the request for a virtual account number from the user;

recording a mapping of the user virtual account number to the user network account to a list of mappings on the blockchain network;

sending the user virtual account number to the user

receiving a payment lookup request comprising the user virtual account number, a receiver network account address, and a payment value from a receiver user;

identifying the user network account on the blockchain network responsive to the user virtual account number, comprising:

comparing the user virtual account number to the list of mappings of virtual account numbers to user accounts;

identifying an identified a mapping comprising the user virtual account number; and

retrieving user account information from the identified mapping;

sending a payment authorization request to the user associated with the user virtual account number responsive to the payment lookup request;

receiving a payment authorization indication from the user;

transferring ownership of an in-network token of a value responsive to the payment value from the user network account to the receiver network account responsive to the payment authorization indication;

sending a debit request to an external financial account associated with the user, defined as a user financial account, to transfer fiat currency to a currency exchange in an amount responsive to the value of the transferred in network token;

receiving a debit response from the user financial account via the blockchain network indicating:

the user financial account transferred a first fiat currency to the currency exchange;

the currency exchange exchanged the first fiat currency to a first tethered token; and

the currency exchange transferred ownership of the first tethered token by recording a token contract to the blockchain network;

exchanging the first tethered token for a global token;

exchanging the global token for a second tethered token;

sending a credit request to an external financial account associated with the receiver, defined as a receiver financial account, to transfer value from the first tethered token to the receiver financial account, the credit request comprising recording a transfer of ownership of the second tethered token to the receiver; and

receiving a credit response from the receiver financial account via the blockchain network indicating:

the currency exchange exchanged the value of the second tethered token to a second fiat currency, defining credit fiat value; and

the currency exchange transferred the credit fiat value to the receiver financial account.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2026
From: MADISETTI, VIJAY
To: VM INNOVATIONS I, LLC
Reel/Frame 075116/0289 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2019
From: BAHGA, ARSHDEEP
To: MADISETTI, VIJAY
Reel/Frame 050352/0437 →
Continuity (14)
Continuation In Part 16396845 · Apr 29, 2019
Continuation In Part 15976910 · May 11, 2018
Continuation In Part 15896206 · Feb 14, 2018
Continuation In Part 15863128 · Jan 5, 2018
Continuation In Part 15830099 · Dec 4, 2017
Provisional Application 62849925 · May 19, 2019
Provisional Application 62844914 · May 8, 2019
Provisional Application 62841784 · May 1, 2019
Provisional Application 62841327 · May 1, 2019
Provisional Application 62819999 · Mar 18, 2019
Provisional Application 62818766 · Mar 15, 2019
Provisional Application 62818798 · Mar 15, 2019
Provisional Application 62652341 · Apr 4, 2018
Related Publication 20200005290A1 · Jan 2, 2020
Cited By (2)
US 12,481,969 US 12,579,544