IP Library › Granted Patent US 11,962,706
Granted Patent B2
US 11,962,706 · App. 17/665,696 · Granted Apr 16, 2024

Hosting account linking services to enable dynamic authentication and multi-computer event processing

Inventors: Udaya Kumar Raju Ratnakaram (Telangana, IN); Srilaxmi Sreepalli (Hyderabad, IN); Bhagya Lakshmi Sudha Lavanya Mallidi (Hyderabad, IN)
Assignee: Bank of America Corporation
H04L9/3236G06Q20/202H04L63/08
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,962,706
App. No.
17/665,696
Granted
Apr 16, 2024
Kind
B2
Abstract

Arrangements for account linking and dynamic device selection are provided. Registration data including one or more user accounts and/or payment devices may be received. A request to process a transaction may be received via a first device. User data may be retrieved to identify other devices. One or more external entities may provide user profile data including raw customer data and encrypted authentication data. A hash of the encrypted authentication data may be generated and stored. The system may dynamically generate a rendering displaying one or more payment devices available for selection. A second payment device may be selected and a handshake protocol initiated between a vendor device and a user device. Authentication data may be provided and a hash generated. The hashes may be compared and, if a match occurs, the transaction may be processed.

Claims (87)

1. A computing platform, comprising:

at least one processor;

a communication interface communicatively coupled to the at least one processor; and

a memory storing computer-readable instructions that, when executed by the at least one processor, cause the computing platform to:

receive registration data, the registration data including data associated with a plurality of payment devices associated with a user, each payment device of the plurality of payment devices being associated with a respective entity;

receive, via a vendor computing device, a request to initiate a transaction, the request to initiate the transaction including a customer identifier;

retrieve, based on the customer identifier, user information associated with the user;

transmit, via a secure application programming interface (API) call method, a request for user profile data to each respective entity associated with each payment device of the plurality of payment devices;

receive, from each respective entity associated with each payment device of the plurality of payment devices, user profile data, the user profile data including encrypted authentication data associated with each respective payment device and raw user data;

segregate the encrypted authentication data from the raw user data for each user profile received;

generate, for each user profile received, an encrypted hash of the segregated encrypted authentication data;

store, for each user profile received, the encrypted hash of the segregated encrypted authentication data;

dynamically generate a rendering including each payment device of the plurality of payment devices;

transmit the rendering to the vendor computing device;

receive, from the vendor computing device, selection of a first payment device of the plurality of payment devices;

generate a request for user authentication data and instruction to initiate a handshake protocol between the vendor computing device and a user computing device;

transmit the request for user authentication data and instruction to initiate the handshake protocol to the vendor computing device;

receive an indication that the handshake protocol was successful;

receive, from one of the vendor computing device and the user computing device, authentication response data;

generate an encrypted hash of the authentication response data;

compare the encrypted hash of the authentication response data to an encrypted hash of the segregated encrypted authentication data for the first payment device;

responsive to determining that the encrypted hash of the authentication response data matches the encrypted hash of the segregated encrypted authentication data for the first payment device, process the transaction; and

responsive to determining that the encrypted hash of the authentication response data does not match the encrypted hash of the segregated encrypted authentication data for the first payment device, deny the transaction.

2. The computing platform of claim 1 , wherein the vendor computing device is a point-of-sale system.

3. The computing platform of claim 1 , wherein the computing platform is associated with a first entity, the vendor computing device is associated with a second entity different from the first entity and the first payment device is associated with a third entity different from the first entity and the second entity.

4. The computing platform of claim 1 , wherein the raw user data includes user identifying information and account information for an account associated with each payment device.

5. The computing platform of claim 1 , wherein the authentication response data is received from the user computing device and is transmitted to the computing platform via the vendor computing device.

6. The computing platform of claim 1 , wherein the user information includes the registration data.

7. The computing platform of claim 1 , further including instructions that, when executed, cause the computing platform to:

generate an account ledger update instruction; and

transmit the account ledger update instruction to the respective entity associated with the first payment device.

8. A method, comprising:

receiving, by a computing platform, the computing platform having at least one processor and memory registration data, the registration data including data associated with a plurality of payment devices associated with a user, each payment device of the plurality of payment devices being associated with a respective entity;

receiving, by the at least one processor and via a vendor computing device, a request to initiate a transaction, the request to initiate the transaction including a customer identifier;

retrieving, by the at least one processor and based on the customer identifier, user information associated with the user;

transmitting, by the at least one processor and via a secure application programming interface (API) call method, a request for user profile data to each respective entity associated with each payment device of the plurality of payment devices;

receiving, by the at least one processor and from each respective entity associated with each payment device of the plurality of payment devices, user profile data, the user profile data including encrypted authentication data associated with each respective payment device and raw user data;

segregating, by the at least one processor, the encrypted authentication data from the raw user data for each user profile received;

generating, by the at least one processor and for each user profile received, an encrypted hash of the segregated encrypted authentication data;

storing, by the at least one processor and for each user profile received, the encrypted hash of the segregated encrypted authentication data;

dynamically generating, by the at least one processor, a rendering including each payment device of the plurality of payment devices;

transmitting, by the at least one processor, the rendering to the vendor computing device;

receiving, by the at least one processor and from the vendor computing device, selection of a first payment device of the plurality of payment devices;

generating, by the at least one processor, a request for user authentication data and instruction to initiate a handshake protocol between the vendor computing device and a user computing device;

transmitting, by the at least one processor, the request for user authentication data and instruction to initiate the handshake protocol to the vendor computing device;

receiving, by the at least one processor, an indication that the handshake protocol was successful;

receiving, by the at least one processor and from one of the vendor computing device and the user computing device, authentication response data;

generating, by the at least one processor, an encrypted hash of the authentication response data;

comparing, by the at least one processor, the encrypted hash of the authentication response data to an encrypted hash of the segregated encrypted authentication data for the first payment device;

when it is determined that the encrypted hash of the authentication response data matches the encrypted hash of the segregated encrypted authentication data for the first payment device, processing, by the at least one processor, the transaction; and

when it is determined that the encrypted hash of the authentication response data does not match the encrypted hash of the segregated encrypted authentication data for the first payment device, denying, by the at least one processor, the transaction.

9. The method of claim 8 , wherein the vendor computing device is a point-of-sale system.

10. The method of claim 8 , wherein the computing platform is associated with a first entity, the vendor computing device is associated with a second entity different from the first entity and the first payment device is associated with a third entity different from the first entity and the second entity.

11. The method of claim 8 , wherein the raw user data includes user identifying information and account information for an account associated with each payment device.

12. The method of claim 8 , wherein the authentication response data is received from the user computing device and is transmitted to the computing platform via the vendor computing device.

13. The method of claim 8 , wherein the user information includes the registration data.

14. The method of claim 8 , further including:

generate an account ledger update instruction; and

transmit the account ledger update instruction to the respective entity associated with the first payment device.

15. One or more non-transitory computer-readable media storing instructions that, when executed by a computing platform comprising at least one processor, memory, and a communication interface, cause the computing platform to:

receive registration data, the registration data including data associated with a plurality of payment devices associated with a user, each payment device of the plurality of payment devices being associated with a respective entity;

receive, via a vendor computing device, a request to initiate a transaction, the request to initiate the transaction including a customer identifier;

retrieve, based on the customer identifier, user information associated with the user;

transmit, via a secure application programming interface (API) call method, a request for user profile data to each respective entity associated with each payment device of the plurality of payment devices;

receive, from each respective entity associated with each payment device of the plurality of payment devices, user profile data, the user profile data including encrypted authentication data associated with each respective payment device and raw user data;

segregate the encrypted authentication data from the raw user data for each user profile received;

generate, for each user profile received, an encrypted hash of the segregated encrypted authentication data;

store, for each user profile received, the encrypted hash of the segregated encrypted authentication data;

dynamically generate a rendering including each payment device of the plurality of payment devices;

transmit the rendering to the vendor computing device;

receive, from the vendor computing device, selection of a first payment device of the plurality of payment devices;

generate a request for user authentication data and instruction to initiate a handshake protocol between the vendor computing device and a user computing device;

transmit the request for user authentication data and instruction to initiate the handshake protocol to the vendor computing device;

receive an indication that the handshake protocol was successful;

receive, from one of the vendor computing device and the user computing device, authentication response data;

generate an encrypted hash of the authentication response data;

compare the encrypted hash of the authentication response data to an encrypted hash of the segregated encrypted authentication data for the first payment device;

responsive to determining that the encrypted hash of the authentication response data matches the encrypted hash of the segregated encrypted authentication data for the first payment device, process the transaction; and

responsive to determining that the encrypted hash of the authentication response data does not match the encrypted hash of the segregated encrypted authentication data for the first payment device, deny the transaction.

16. The one or more non-transitory computer-readable media of claim 15 , wherein the vendor computing device is a point-of-sale system.

17. The one or more non-transitory computer-readable media of claim 15 , wherein the computing platform is associated with a first entity, the vendor computing device is associated with a second entity different from the first entity and the first payment device is associated with a third entity different from the first entity and the second entity.

18. The one or more non-transitory computer-readable media of claim 15 , wherein the raw user data includes user identifying information and account information for an account associated with each payment device.

19. The one or more non-transitory computer-readable media of claim 15 , wherein the authentication response data is received from the user computing device and is transmitted to the computing platform via the vendor computing device.

20. The one or more non-transitory computer-readable media of claim 15 , wherein the user information includes the registration data.

21. The one or more non-transitory computer-readable media of claim 15 , further including instructions that, when executed, cause the computing platform to:

generate an account ledger update instruction; and

transmit the account ledger update instruction to the respective entity associated with the first payment device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2024
From: RATNAKARAM, UDAYA KUMAR RAJU; SREEPALLI, SRILAXMI; MALLIDI, BHAGYA LAKSHMI SUDHA LAVANYA
To: BANK OF AMERICA CORPORATION
Reel/Frame 066524/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2022
From: RATNAKARAM, UDAYA KUMAR RAJU; SREEPALLI, SRILAXMI; BHAGYA LAKSHMI SUDHA LAVANYA, MALLIDI
To: BANK OF AMERICA CORPORATION
Reel/Frame 058907/0713 →
Continuity (1)
Related Publication 20230254152A1 · Aug 10, 2023