# US 12,223,500 B2 · Transaction account data maintenance using blockchain

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,223,500 B2
- Document ID: US12223500B2
- Status: Granted
- Kind: B2
- Application number: 17/667,806
- Filed: 2022-02-09
- Published: 2022-08-25
- Granted: 2025-02-11
- Earliest claimed: 2018-12-14
- Assignees: American Express Travel Related Services Company, Inc.
- Applicants: American Express Travel Related Services Company, Inc.
- Inventors: Faraz Babar; Aimee Cardwell; Andras L. Ferenczi; Dallas Gale; Nilesh Yashavant Jadhav; Ashish Kumar; Harish R. Naik; Lavanya Venkatanarayanan
- Web page: https://patentgrep.com/patent/US12223500B2

## CPC

- G06Q 20/3827: {Use of message hashing}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- G06Q 20/02: involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
- G06Q 20/401: {Transaction verification}
- G06Q 20/405: {Establishing or using transaction specific rules}
- H04L 9/0637: {Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- G06Q 2220/00: Business processing using cryptography
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems and methods for the maintenance of merchant-stored transaction account data are disclosed. The system may include various merchant systems and issuer systems in communication via a blockchain network. The system provides a process for collaboration between various issuer systems and merchant systems to update and maintain merchant stored transaction account data in response to changes, cancellations, updates, or the like in various stored transaction account.

## Claims

### Claim 1

A method, comprising:
receiving, by at least one computing device, an account registration request from a client device associated with a user, the account registration request comprising transaction account data of a transaction account of the user and an issuer identifier associated with an issuer system, and the transaction account being provided by the issuer system;
requesting, by the at least one computing device, a credential from a credential issuing authority;
obtaining, by the at least one computing device, the credential from the credential issuing authority in response to the credential issuing authority verifying an entity associated with the at least one computing device;
generating, by the at least one computing device, a registration account hash based at least in part on the transaction account data;
generating, by the at least one computing device, an account record by invoking a maintenance smart contract, the maintenance smart contract being invoked by passing the registration account hash, one or more transaction account data, the issuer identifier, and the credential in a call to the maintenance smart contract;
writing, by the at least one computing device and via the maintenance smart contract, the account record to a distributed ledger, an identity of the entity associated with the at least one computing device being concealed based at least in part on the credential;
notifying, by the at least one computing device and via the maintenance smart contract, the issuer system associated with the transaction account that the account record has been written to the distributed ledger, the issuer system being configured to update the account record and associate the account record with an updated account hash in response to an update to the transaction account by the issuer system;
generating, by the at least one computing device, a transaction request account hash based at least in part on stored transaction account data in response to receiving a transaction request;
updating, by the at least one computing device, the stored transaction account data based at least in part on updated transaction account data received from the issuer system in response to the transaction request account hash matching a past account hash and failing to match a primary account hash; and
authorizing, by the at least one computing device, the transaction request based at least in part on the updated transaction account data included in the account record.

### Claim 2 (depends on 1)

The method of claim 1, further comprising invoking the maintenance smart contract by passing the registration account hash and at least one data element from the transaction account data to the maintenance smart contract.

### Claim 3 (depends on 1)

The method of claim 1, further comprising determining, by the at least one computing device and via the maintenance smart contract, that the registration account hash fails to be included on the distributed ledger.

### Claim 4 (depends on 1)

The method of claim 1, wherein the registration account hash is further generated based at least in part on the issuer identifier associated with the issuer system.

### Claim 5 (depends on 1)

The method of claim 1, wherein the transaction account data comprises at least one of a user first name, a user last name, a transaction account number, a transaction account address, a transaction account security code, or a transaction account expiration date.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
receiving, by the at least one computing device, the transaction request comprising transaction data.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
receiving, by the at least one computing device, the stored transaction account data stored in a repository in response to receiving the transaction request;
determining, by the at least one computing device, that the distributed ledger comprises the primary account hash and the past account hash; and
determining, by the at least one computing device that the transaction request account hash matches the past account hash.

### Claim 8

A system, comprising:
a computing device comprising a processor and a memory; and
machine-readable instructions stored in the memory, that when executed by the processor, cause the computing device to at least:
receive an account registration request from a client device associated with a user, the account registration request comprising transaction account data of a transaction account of the user and an issuer identifier associated with an issuer system, and the transaction account being provided by the issuer system;
request a credential from a credential issuing authority;
obtain the credential from the credential issuing authority in response to the credential issuing authority verifying an entity associated with the at least one computing device;
generate a registration account hash based at least in part on the transaction account data;
generate an account record by invoking a maintenance smart contract, the maintenance smart contract being invoked by passing the registration account hash, one or more transaction account data, the issuer identifier, and the credential in a call to the maintenance smart contract;
write, via the maintenance smart contract, the account record to a distributed ledger, an identity of the entity associated with the computing device being concealed based at least in part on the credential;
notify, via the maintenance smart contract, the issuer system associated with the transaction account that the account record has been written to the distributed ledger, the issuer system being configured to update the account record and associate the account record with an updated account hash in response to an update to the transaction account by the issuer system;
generate a transaction request account hash based at least in part on stored transaction account data in response to receiving a transaction request;
update the stored transaction account data based at least in part on updated transaction account data received from the issuer system in response to the transaction request account hash matching a past account hash and failing to match a primary account hash; and
authorize the transaction request based at least in part on the updated transaction account data included in the account record.

### Claim 9 (depends on 8)

The system of claim 8, wherein, when executed, the machine-readable instructions cause the computing device to at least invoke the maintenance smart contract by passing the registration account hash and at least one data element from the transaction account data to the maintenance smart contract.

### Claim 10 (depends on 8)

The system of claim 8, wherein, when executed, the machine-readable instructions cause the computing device to at least determine, via the maintenance smart contract, that the registration account hash fails to be included on the distributed ledger.

### Claim 11 (depends on 8)

The system of claim 8, wherein the registration account hash is further generated based at least in part on the issuer identifier associated with the issuer system.

### Claim 12 (depends on 8)

The system of claim 8, wherein the transaction account data comprises at least one of a user first name, a user last name, a transaction account number, a transaction account address, a transaction account security code, or a transaction account expiration date.

### Claim 13 (depends on 8)

The system of claim 8, wherein, when executed, the machine-readable instructions cause the computing device to at least:
receive a transaction request comprising transaction data.

### Claim 14 (depends on 8)

The system of claim 8, wherein, when executed, the machine-readable instructions cause the computing device to at least:
receive the stored transaction account data stored in a repository in response to receiving the transaction request;
determine that the distributed ledger comprises the primary account hash and the past account hash; and
determine that the transaction request account hash matches the past account hash.

### Claim 15

A non-transitory computer-readable medium, comprising machine-readable instructions that, when executed by a processor of a computing device, cause the computing device to at least:
receive an account registration request from a client device associated with a user, the account registration request comprising transaction account data of a transaction account of the user and an issuer identifier associated with an issuer system, and the transaction account being provided by the issuer system;
request a credential from a credential issuing authority;
obtain the credential from the credential issuing authority in response to the credential issuing authority verifying an entity associated with the at least one computing device;
generate a registration account hash based at least in part on the transaction account data;
generate an account record by invoking a maintenance smart contract, the maintenance smart contract being invoked by passing the registration account hash, one or more transaction account data, the issuer identifier, and the credential in a call to the maintenance smart contract;
write, via the maintenance smart contract, the account record to a distributed ledger, an identity of the entity associated with the computing device being concealed based at least in part on the credential;
notify, via the maintenance smart contract, the issuer system associated with the transaction account that the account record has been written to the distributed ledger, the issuer system being configured to update the account record and associate the account record with an updated account hash in response to an update to the transaction account by the issuer system;
generate a transaction request account hash based at least in part on stored transaction account data in response to receiving a transaction request;
update the stored transaction account data based at least in part on updated transaction account data received from the issuer system in response to the transaction request account hash matching a past account hash and failing to match a primary account hash; and
authorize the transaction request based at least in part on the updated transaction account data included in the account record.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein, when executed, the machine-readable instructions further cause the computing device to at least invoke the maintenance smart contract by passing the registration account hash and at least one data element from the transaction account data to the maintenance smart contract.

### Claim 17 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein, when executed, the machine-readable instructions further cause the computing device to at least determine via the maintenance smart contract that the registration account hash fails to be included on the distributed ledger.

### Claim 18 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the transaction account data comprises at least one of a user first name, a user last name, a transaction account number, a transaction account address, a transaction account security code, or a transaction account expiration date.

### Claim 19 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein, when executed, the machine-readable instructions further cause the computing device to at least:
receive the transaction request comprising transaction data.

### Claim 20 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein, when executed, the machine-readable instructions further cause the computing device to at least:
receive the stored transaction account data stored in a repository in response to receiving the transaction request;
determine that the distributed ledger comprises the primary account hash and the past account hash; and
determine that the transaction request account hash matches the past account hash.
