Inter-bank payment message error correction method, device, equipment, medium and program product

By generating account identifiers and building a mapping database, the problem of low accuracy caused by inconsistent account name rules in interbank payments has been solved, achieving accurate matching and efficient updating of bank information, and improving the reliability and efficiency of interbank payments.

CN121836705APending Publication Date: 2026-04-10INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
INDUSTRIAL AND COMMERCIAL BANK OF CHINA
Filing Date
2025-12-22
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

In existing interbank payments, the inconsistent naming rules of different banks' account names result in a lack of a unified structured bank identifier mapping mechanism for fuzzy matching algorithms based on the recipient's account name. This makes it difficult to meet the accuracy and efficiency requirements of interbank payments, and poses risks of transaction failure and process delays.

Method used

By generating account identifiers (account number + account name) and building a mapping database between account identifiers and bank information, accurate bank information is obtained by querying the database and replacing the original bank information, thus achieving accurate matching of cross-bank payment messages.

Benefits of technology

It improves the accuracy and reliability of interbank payments, reduces transaction failures and process delays, simplifies bank information verification processes, and enhances user experience and processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121836705A_ABST
    Figure CN121836705A_ABST
Patent Text Reader

Abstract

The invention provides an inter-bank payment message error correction method, device and equipment, a medium and a program product, and relates to the field of financial science and technology or the field of big data. Querying a database according to the account identifier in the to-be-processed message; the to-be-processed message comprises an inter-bank payment message, the account identifier is generated according to an account number and a user name, and the database comprises a mapping relation between the account identifier and bank information, obtaining target bank information matched with the account identifier from the database, and sending the target bank information to the to-be-processed message. Replacing the original bank information in the message to be processed with the target bank information to obtain a target message; according to the method, the mapping database is queried through the account identifier generated based on the account number and the account name, the target bank information corresponding to the inter-bank payment message is obtained, the original bank information is replaced, and accurate matching of the inter-bank payment message bank information is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of financial technology or big data, in particular to a cross-bank payment message correction method, device, equipment, medium and program product. BACKGROUND

[0002] Cross-bank payment is a process in which an enterprise or individual user transfers funds to an account of another bank through a bank system. In this process, the sender needs to fill in the payee's account name, account number, receiving bank name and bank number (12-digit People's Bank of China bank number) in the payment message. The bank system sends the message to the central bank payment system, which transfers the funds to the target account according to the receiving bank number. In cross-bank payment, the receiving bank number may be missing or abnormal (such as format error, omission, etc.).

[0003] In the prior art, when the receiving bank number is missing or abnormal, some banks use a fuzzy matching algorithm based on the payee's account name to compare the receiving bank information corresponding to the same or similar account name in historical successful transaction data, and intelligently infer the most likely correct 12-digit People's Bank of China bank number to assist in completing the fund transfer process.

[0004] However, the existing fuzzy matching algorithm based on the payee's account name lacks a unified structured bank identification mapping mechanism. The account name naming rules and bank information input standards of different banks are inconsistent, making it difficult to meet the actual business needs in terms of cross-bank payment accuracy. SUMMARY

[0005] The present application provides a cross-bank payment message correction method, device, equipment, medium and program product to solve the technical problem of low cross-bank payment accuracy.

[0006] In a first aspect, the present application provides a cross-bank payment message correction method, which includes:

[0007] querying a database according to an account identifier in a to-be-processed message; the to-be-processed message includes a cross-bank payment message, the account identifier is generated according to an account number and a name, and the database is a database containing a mapping relationship between an account identifier and bank information;

[0008] obtaining target bank information matched with the account identifier from the database;

[0009] replacing original bank information in the to-be-processed message with the target bank information to obtain a target message.

[0010] In a second aspect, the present application provides a cross-bank payment message correction device, which includes:

[0011] The query module is configured to query a database according to an account identifier in the to-be-processed message; the to-be-processed message comprises a cross-bank payment message, the account identifier is generated according to an account number and a name, and the database is a database containing a mapping relationship between the account identifier and bank information.

[0012] The acquisition module is configured to acquire target bank information matched with the account identifier from the database.

[0013] The replacement module is configured to replace original bank information in the to-be-processed message with the target bank information to obtain a target message.

[0014] In a third aspect, an embodiment of the present application provides a cross-bank payment message correction device, comprising a memory and a processor.

[0015] The memory stores computer execution instructions.

[0016] The processor executes the computer execution instructions stored in the memory, so that the processor executes the first aspect and / or various possible implementation manners of the first aspect.

[0017] In a fourth aspect, an embodiment of the present application provides a computer readable storage medium, wherein the computer readable storage medium stores computer execution instructions, and the computer execution instructions are executed by a processor to implement the first aspect and / or various possible implementation manners of the first aspect.

[0018] In a fifth aspect, an embodiment of the present application provides a computer program product, comprising a computer program, and the computer program is executed by a processor to implement the first aspect and / or various possible implementation manners of the first aspect.

[0019] The cross-bank payment message correction method provided by the present application can effectively avoid the ambiguity problem caused by the separate matching of the account number or the name, improve the accuracy and reliability of the bank information matching in the cross-bank payment scenario, reduce the transaction failure, ticket refund and other problems caused by the bank information error and reduce the transaction risk, simplify the bank information checking process, and improve the processing efficiency and user experience of the cross-bank payment business. BRIEF DESCRIPTION OF DRAWINGS

[0020] The accompanying drawings, which are incorporated into and form part of the specification, illustrate embodiments consistent with the present application and, together with the specification, serve to explain the principles of the present application.

[0021] Figure 1 Flowchart of the cross-bank payment message correction method provided by the present application Figure 1;

[0022] Figure 2 Flowchart of the cross-bank payment message correction method provided for the present application Figure 2 ;

[0023] Figure 3 Flowchart of the cross-bank payment message correction method provided for the present application Figure 3 ;

[0024] Figure 4 Structure diagram of the cross-bank payment message correction device provided for the present application

[0025] Figure 5 Structure diagram of the cross-bank payment message correction device provided for the present application

[0026] Through the above drawings, the specific embodiments of the present application have been shown, and will be described in more detail hereinafter. These drawings and the written description are not intended to restrict the scope of the present application concept in any way, but to illustrate the present application concept to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION

[0027] The exemplary embodiments will be described in detail herein with reference to the attached drawings. In the following description, the same numbers refer to the same or similar elements unless otherwise represented. The embodiments described in the following exemplary embodiments do not represent all the embodiments consistent with the present application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the present application as detailed in the appended claims.

[0028] It should be noted that the cross-bank payment message correction method, device, equipment, medium and program product provided by the present application can be used in the field of financial technology or big data, and can also be used in any field other than the field of financial technology or big data. The application of the cross-bank payment message correction method, device, equipment, medium and program product is not limited by the present application.

[0029] Cross-bank payment refers to a financial business that an enterprise or individual user initiates fund transfer through the system of the bank where the user opens an account to the account opened by other banks. The normal handling of this business requires the sender to accurately fill in the key information such as the account name, account number, receiving bank name and 12-digit People's Bank of China number in the payment message. After receiving the complete message, the bank system will submit it to the central bank payment system, and the central bank will complete the cross-institution fund clearing and target account transfer according to the receiving bank number. In actual business scenarios, the receiving bank number is often missing or abnormal (such as format error, input omission, etc.), which becomes a key problem affecting the smoothness of the cross-bank payment process.

[0030] For the problem of missing or abnormal payee bank number in cross-bank payment, some banks have formed corresponding technical solutions. When processing payment messages with row number problems, these banks will use fuzzy matching algorithms based on the payee account name. The core logic is to rely on the bank's accumulated historical successful transaction data, extract the valid payee bank information corresponding to the same or similar payee account name, and intelligently infer the most likely correct 12-digit bank number through algorithm comparison and analysis, and then assist in completing the subsequent fund transfer process to reduce the transaction failure rate caused by row number problems.

[0031] The existing fuzzy matching algorithm based on the payee account name lacks a unified structured bank identification mapping mechanism. Due to differences in account name naming rules of different banks and non-uniform bank information input standards of each bank, the algorithm lacks adaptability in cross-bank scenarios. This non-uniform problem makes it difficult for the algorithm to accurately establish the association mapping between account names and corresponding bank numbers, ultimately leading to the accuracy of cross-bank payment failing to meet the actual business demand for transaction security and efficiency, still risking fund transfer errors or process delays.

[0032] To solve the above problems, the cross-bank payment message correction method provided by the present application generates a unique account identifier using the unique features of the account number and the account name, constructs a mapping database of account identifiers and bank information, and for the to-be-processed message containing the cross-bank payment message, queries the mapping database through the corresponding account identifier to obtain the target bank information matched accurately, and then replaces the original bank information in the to-be-processed message to obtain the target message, finally achieving accurate matching of the bank information of the cross-bank payment message.

[0033] The technical solutions of the present application and how the technical solutions of the present application solve the above technical problems will be described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of the present application will be described below with reference to the accompanying drawings.

[0034] Figure 1 Flowchart of the cross-bank payment message correction method provided by the present application Figure 1 The execution subject of the present embodiment is, for example, a cross-bank payment message correction system. As shown in Figure 1 The method comprises:

[0035] S101: Query the database according to the account identifier in the to-be-processed message; the to-be-processed message includes a cross-bank payment message, the account identifier is generated according to the account number and the account name, and the database is a database containing the mapping relationship between the account identifier and the bank information.

[0036] The to-be-processed message refers to a cross-bank payment related data carrier submitted by a user and requiring bank information verification and correction, and contains core transaction fields such as an account number, a name, and original bank information (name+row number).

[0037] The account identifier is a unique identifier generated according to the combination rule of “account number+name”, and is used to establish accurate association between the account and corresponding bank information.

[0038] The database is a structured data storage system specially used for storing the mapping relationship between the account identifier and the bank information (bank name, bank row number), supports efficient query, matching and dynamic update operation, and ensures the accuracy and timeliness of the mapping relationship.

[0039] Specifically, first, the system parses the data stream of the to-be-processed message, separates the account number and name information from the message through a preset field extraction rule (such as key field positioning based on message protocol format), and then generates a unique account identifier according to the fixed splicing rule of “account number-name”; finally, the account identifier is used as a query primary key to call the efficient query interface (such as SQL query statement) of the database, trigger the primary key index matching mechanism inside the database, and quickly retrieve the bank information mapping record corresponding to the account identifier.

[0040] The field format verification (such as account number length verification and name special character filtering) ensures the integrity of the extracted account number and name information, and avoids query failure caused by missing fields; at the same time, the database query adopts a synchronous response mechanism to ensure that the query result is returned within the time threshold of the payment process, and does not affect the transaction processing efficiency.

[0041] For example, in the to-be-processed message submitted by the user, the account number is “654321” and the name is “Li Si”, and the system generates the account identifier “654321-Li Si” according to the rule; the to-be-processed message is a cross-bank payment request file initiated by the user, which contains the account identifier “654321-Li Si” and the original bank information manually filled by the user; the system takes “654321-Li Si” as the query primary key, and initiates a query to the database storing the mapping relationship between “account identifier-bank information”; the database quickly retrieves the corresponding mapping record through the primary key index.

[0042] S102: Obtain target bank information matched with the account identifier from the database.

[0043] The target bank information refers to the standardized bank information containing the bank name (official complete name of the opening institution) and the standard bank row number (unique institution code uniformly allocated by the financial institution) returned after the account identifier in the to-be-processed message is accurately matched with the primary key in the database, and is the core data to ensure accurate cross-bank payment transfer.

[0044] Specifically, the account identifier to be queried is compared with all the account identifiers stored in the database one by one; if a completely consistent account identifier is detected, the association data extraction logic is triggered, and the complete target bank information (including the standard bank name and the unique bank row number) is extracted from the mapping record corresponding to the account identifier; if no matching account identifier is found, a prompt information of "no matching record" is returned, and a subsequent manual verification process or a return message processing can be triggered.

[0045] The same account identifier in the database corresponds to only one bank information record, avoiding matching ambiguity caused by one-to-many mapping; at the same time, the security of the target bank information in the extraction and transmission process is ensured through the data encryption transmission protocol.

[0046] For example, the mapping record corresponding to the account identifier "654321-Li Si" stored in the database is "XX Bank Beijing Chaoyang Branch (100000000001)". The system finds that the account identifier to be queried is completely consistent with the record through primary key matching, and then extracts the standard bank name "XX Bank Beijing Chaoyang Branch" and the bank row number "100000000001" in the record as the target bank information matched with the account identifier.

[0047] S103: Replace the original bank information in the to-be-processed message with the target bank information to obtain a target message.

[0048] The original bank information refers to the bank information (including the bank name and the bank row number) that may contain errors, which is manually filled or pre-filled by the system by the user when submitting the to-be-processed message.

[0049] Specifically, first, the storage field of the original bank information in the to-be-processed message is located (according to the field position or key field identifier agreed by the message protocol), and the specific storage positions of the original bank name and the original bank row number are determined; then, the target bank information (standard bank name, standard bank row number) is replaced with the corresponding original field content one by one according to the message field format requirements; after the replacement is completed, the integrity of the target message is checked (such as field length, format compliance check), to ensure that the replaced message meets the transmission standard of cross-bank payment; after the check is passed, the final target message is generated.

[0050] The replacement operation adopts a "full field coverage" mechanism to ensure that all errors of the original bank information (including row name error, row number error, or both) are corrected; at the same time, the system records the replacement log (including the original information, the target information, the replacement time, and the account identifier).

[0051] For example, the original bank information in the to-be-processed message is "XX Bank Beijing Chaoyang Branch (100000000001)", in which the bank name is filled in a hierarchical manner and the branch number is incorrect. After the system locates the storage fields of the original bank name and the branch number in the message, the target bank information "XX Bank Beijing Chaoyang Branch (100000000001)" is replaced in the corresponding original fields, respectively, and the target message generated after the replacement contains accurate bank information.

[0052] The cross-bank payment message correction method provided in this embodiment queries the database according to the account identifier in the to-be-processed message. The to-be-processed message includes a cross-bank payment message, the account identifier is generated according to the account number and the name, and the database is a database containing the mapping relationship between the account identifier and the bank information. The target bank information matched with the account identifier is obtained from the database, the original bank information in the to-be-processed message is replaced with the target bank information, and the target message is obtained. This method queries the mapping database based on the account identifier generated according to the account number and the name, obtains the target bank information corresponding to the cross-bank payment message and replaces the original bank information, thereby realizing accurate matching of the bank information of the cross-bank payment message.

[0053] Figure 2 The flowchart of the cross-bank payment message correction method provided in this application Figure 2 As shown in Figure 2 , this embodiment is based on Figure 1 the embodiment, and the cross-bank payment message correction method is described in detail. The method includes:

[0054] S201: Extract the association relationship between the account identifier and the bank information from the historical successful transaction data, and store the association relationship in the database.

[0055] The historical successful transaction data refers to a set of transaction records in the bank system that have completed cross-bank payment clearing and have not occurred abnormal situations such as refund and return, and contains complete transaction fields such as account number, name, accurate bank name, bank branch number, transaction time, and amount.

[0056] Specifically, through the bank core business system interface, all historical successful transaction data in a historical period (such as the past 3 years) is extracted in batches to form an original data set; at the same time, the original data is preprocessed to filter out invalid records with missing fields (such as missing account number, account name or bank number), format errors (such as bank number not being 12 digits) to ensure data source quality. For the preprocessed valid historical successful transaction data, the account number and account name fields in each record are extracted through a field parsing algorithm, and the account identifier is generated according to the fixed separator combination rule of "account number-account name" (such as account number "654321", account name "Li Si", generating identifier "654321-Li Si"); at the same time, the corresponding record is extracted to extract the accurate bank name (such as "XX Bank Beijing Chaoyang Branch") and bank number (such as "100000000001"). The generated account identifier and extracted bank information establish a one-to-one correspondence association, forming a mapping record; the mapping record is processed through a deduplication algorithm, and if there is an abnormal situation that the same account identifier corresponds to multiple bank information (such as historical transaction bank information change), the latest transaction time corresponding bank information is retained. Through the database write interface, the deduplicated association mapping record is stored in the database in batches; at the same time, a primary key index is established for the account identifier field to improve the subsequent query efficiency; after storage is completed, a data write log is generated to record the number of storage, success / failure status.

[0057] For example, the historical successful transaction data extracted by the bank system contains an effective record: account number "654321", account name "Beijing XX Technology Co., Ltd.", bank name "XX Bank Beijing Chaoyang Branch", bank number "100000000001", transaction time "2024-05-20 14:30:00". First, extract the account number "654321" and the account name "Beijing XX Technology Co., Ltd.", and generate the account identifier "654321-Beijing XX Technology Co., Ltd." according to the rules; then extract the corresponding bank information "XX Bank Beijing Chaoyang Branch (100000000001)", and construct the association between the two; after deduplication confirmation, the association record is written to the database, and a new "account identifier-bank information" mapping record is added to the database.

[0058] S202: Analyzing historical successful transaction data based on a machine learning model, generating a mapping relationship between candidate account identifiers and bank information, and storing the mapping relationship in a database.

[0059] Among them, the machine learning model refers to an algorithm model used to mine potential association rules in historical successful transaction data, such as clustering analysis model, classification model, etc., which learns the known successful transaction mapping relationship to infer the corresponding relationship between unknown or missing account identifiers and bank information.

[0060] The candidate account identifier refers to an account identifier that exists in the historical successful transaction data but does not have clear corresponding bank information, or the bank information is incomplete or suspicious, and the corresponding bank information needs to be inferred by a machine learning model.

[0061] Specifically, taking the confirmed valid "account identifier-bank information" mapping record as a training sample, the feature variables (such as the region where the account belongs, the transaction amount interval, the transaction frequency, the bank information of the associated payee, etc.) in the sample are extracted and input into a preset machine learning model (such as a clustering model based on region and transaction amount) for training. The model parameters are optimized to enable the model to accurately infer the potential mapping relationship. From the historical successful transaction data, account identifiers that do not have an effective mapping relationship (such as accounts that have never been traded or accounts that have missing bank information in historical transactions) are selected as candidate account identifiers. At the same time, the transaction features of these candidate account identifiers (such as the transaction region being "Chaoyang District, Beijing", the average transaction amount being more than 500,000 yuan, and the transaction object being mostly technology enterprises, etc.) are extracted. The transaction features of the candidate account identifiers are input into the trained machine learning model, and the model outputs the bank information that the candidate account identifier may correspond to (such as a large amount of technology enterprise account in the "Chaoyang District, Beijing" region, which is likely to correspond to "XX Bank Chaoyang Branch, Beijing") based on feature matching and rule inference, forming a candidate mapping relationship. The generated candidate mapping relationship is verified twice, the first time is machine verification (comparing the validity of the bank information corresponding to the account number and the matching degree with the candidate account transaction features), and the second time is manual review (confirming the reasonableness of the inference by the operation and maintenance personnel). The candidate mapping relationship that passes the verification is stored as an effective record in the database. The one that does not pass the verification is marked as "to be further confirmed" and retained for reanalysis after the subsequent supplementary data.

[0062] For example, there are a batch of candidate account identifiers in the historical successful transaction data, one of which is "654321-Wang Wu", and its transaction features are: all transactions occur in the Chaoyang District of Beijing, the transaction object is mostly technology enterprises in the Nanshan District of Shenzhen, and the average transaction amount is 800,000 yuan. Taking the existing "large amount of technology enterprise account in the Chaoyang District of Beijing corresponding to the local branch" as a training sample, the clustering model analyzes the transaction features of the candidate account identifier and infers that the corresponding bank information is "XX Bank Chaoyang Branch, Beijing (100000000001)", generating a candidate mapping relationship. After machine verification confirms that the account number is valid and the region matching degree is 100%, and manual review confirms that it is reasonable, the mapping relationship of "654321-Wang Wu-XX Bank Chaoyang Branch, Beijing (100000000001)" is supplemented and stored in the database.

[0063] Optionally, the machine learning model is used to identify potential account and bank association based on the transaction behavior of the account in the historical successful transaction data.

[0064] Specifically, the machine learning model mines the transaction behavior characteristics of the account in the historical successful transaction data (such as the transaction region being concentrated in Nanshan, Shenzhen, the transaction object being mostly local technology enterprises, and the average transaction amount being stable at 800,000 yuan, etc.), combines the verified account and bank information mapping rule, constructs a feature and bank association model, and then identifies the potential precise association relationship between the candidate account (such as “654322-Wang Wu”) and the corresponding target bank (such as XX Bank Beijing Chaoyang Branch), fills in the blank of the account information that is not explicitly mapped, and supplements the reliable candidate mapping record for the database.

[0065] S203: Query the database according to the account identifier in the to-be-processed message; the to-be-processed message includes a cross-bank payment message, the account identifier is generated according to the account number and the account name, and the database is a database containing the mapping relationship between the account identifier and the bank information.

[0066] Specifically, after receiving the to-be-processed message submitted by the user, the message parsing module parses the message structure according to the cross-bank payment message protocol, locates and extracts the account number and account name fields in the message; at the same time, the extracted fields are format-verified, such as checking whether the account number length conforms to the corresponding bank's rules and whether the account name contains illegal characters, and if the verification fails, returning a “field format error” prompt.

[0067] For the verified account number and account name, generate an account identifier according to the “account number-account name” combination rule to ensure the uniformity of the identifier generation rule and avoid query mismatch due to rule differences.

[0068] The generated account identifier is used as a query primary key to initiate a query request to the database storing the mapping relationship; to improve query efficiency, the primary key index established for the account identifier in the database is queried first, if the index hits, the corresponding mapping record is quickly located, if it does not hit, a full table query is performed (only used when index query fails to avoid affecting efficiency); the query time and result status are recorded during the query process for system performance optimization.

[0069] For example, a user submits a cross-bank payment to-be-processed message, and the information extracted after message parsing is: account number “654322”, account name “Wang Wu”, original bank information “XX Bank Beijing Haidian Branch (100000000002)” (with errors), transaction amount “200,000 yuan”.

[0070] The system first verifies that the account number “654322” length conforms to the rules of Minsheng Bank savings cards, and the account name has no illegal characters, and the verification is passed; then the account identifier “654322-Wang Wu” is generated according to the rules; the identifier is used as a query primary key to initiate a query request to the database, and the database quickly retrieves the mapping record corresponding to the identifier through the primary key index.

[0071] Optionally, in the database, the mapping relationship between the high-frequency query account identifier and the bank information is cached in the local memory database, and the mapping relationship between the low-frequency query account identifier and the bank information is stored in the distributed memory database.

[0072] Specifically, in the database storing the mapping relationship between the account identifier and the bank information, a hierarchical storage strategy is adopted for the mapping data with different query frequencies: for the high-frequency query mapping relationship frequently accessed in the enterprise concentrated remittance scene (such as the association record of “654322-Wang Wu” and “XX Bank Haidian Branch, Beijing (100000000002)”), it is cached to the local memory database to ensure millisecond-level response to query requests; and for the low-frequency query mapping relationship (such as the association record of “654322-Wang Wu” and “XX Bank Haidian Branch, Beijing (100000000002)”) in the personal sporadic transfer, it is stored in the distributed memory database, which, while ensuring the data storage scalability, meets the low-frequency access demand through the distributed query mechanism, and realizes the optimized configuration of query efficiency and storage resources.

[0073] Optionally, the account identifier includes at least one of the following: a combination of an account number and a name, a hash value of an account number and a name, and an encrypted string of an account number and a name.

[0074] Specifically, the account identifier can realize the precise association of the account and the bank information in multiple forms, including at least one of the following: 1) direct combination of an account number and a name, such as “654321-Li Si” and “654322-Wang Wu”, which ensures the uniqueness of the identifier through intuitive field splicing; 2) hash value of an account number and a name, such as the hash value obtained by calculating “654322-Wang Wu” through a hash algorithm; and 3) encrypted string of an account number and a name, such as the encrypted string obtained by encrypting “654321-Li Si” through an AES encryption algorithm, which is suitable for high-privacy protection scenarios and ensures the security of account information through encryption. The three forms can all realize the precise mapping with the bank information in the database and adapt to the use demand in different scenarios.

[0075] S204: Obtain target bank information matching the account identifier from the database.

[0076] Specifically, after receiving the query request, the database accurately compares the query primary key (account identifier of the to-be-processed message) with all the account identifiers stored in the database; if there is an exactly identical account identifier, it is determined as “matching success”, triggering the associated data extraction process; if no identical account identifier is found, it is determined as “matching failure”, returning the result of “no matching record”.

[0077] After the matching is successful, the system extracts the complete target bank information from the corresponding mapping record in the database, including the accurate bank name (such as “XX Bank Beijing Chaoyang Branch”) and the correct bank number (such as “100000000001”). During the extraction process, the integrity of the information is checked to ensure that there is no field missing.

[0078] The extracted target bank information is fed back to the message processing module through the data transmission interface, and the matching result (success / failure), target bank information content, extraction time, and other log information are recorded to facilitate subsequent business tracing and problem troubleshooting.

[0079] For example, after the database receives the query request of “654322-Wang Wu”, it finds through accurate matching that there is a mapping record corresponding to the account identifier in the database, and the record content is “account identifier: 654322-Wang Wu; bank name: XX Bank Beijing Haidian Branch; bank number: 100000000003”.

[0080] The system determines that the matching is successful, extracts the target bank information “XX Bank Beijing Haidian Branch (100000000002)” from the record, and uses it for subsequent message correction.

[0081] S205: Replace the original bank information in the to-be-processed message with the target bank information to obtain a target message.

[0082] Specifically, after receiving the target bank information, the to-be-processed message is parsed again, the storage location of the original bank information in the message is located according to the cross-bank payment message protocol, and the field identifiers corresponding to the original bank name and original bank number are determined. According to the message field format requirement, the bank name and bank number in the target bank information are replaced with the original information in the corresponding fields in the message; the replacement process uses a “full field coverage” mechanism to ensure that the original error information is completely replaced without any residual. After the replacement is completed, the target message is generated, and integrity and compliance checks are performed, including checking whether the format of the replaced bank information is correct, whether other core fields (such as account number, account name, and transaction amount) are complete and not modified by mistake, and whether the overall format of the message meets the transmission standard. If the check fails, “replacement failed” is returned, and the replacement process is re-executed. If the check passes, the target message is confirmed to be valid. The target message that passes the check is transmitted to the cross-bank payment clearing system to start the subsequent fund transfer process; at the same time, a replacement log is generated to record the original bank information, target bank information, replacement time, message number, and other information.

[0083] For example, the original bank information in the to-be-processed message is "XX Bank Beijing Haidian Branch (100000000002)", and after the system locates the field identifier of the information in the message, the bank name and the branch number in the target bank information "XX Bank Beijing Haidian Branch (100000000002)" are replaced with the original field content, respectively.

[0084] After the replacement is completed, the target message is generated, the system verifies and confirms that the bank information of the target message is correct in format and other core fields are complete, and the verification is passed; then the target message is transmitted to the central bank cross-bank payment system, and the replacement log is recorded: the original information "XX Bank Beijing Haidian Branch (100000000002)", the target information "XX Bank Beijing Haidian Branch (100000000002)", the replacement time "2024-06-01 10:15:30", and the message number "CNAPS20240600000123", and the whole message correction process is completed.

[0085] The cross-bank payment message correction method provided in the embodiment first extracts the association relationship between the account identifier and the bank information from the historical successful transaction data, and analyzes the historical successful transaction data by means of the machine learning model to generate the mapping relationship between the candidate account identifier and the bank information, and stores the above association relationship and mapping relationship in the database containing the mapping relationship between the account identifier and the bank information; when processing the to-be-processed message including the cross-bank payment message, the account identifier is generated according to the account number and the name of the to-be-processed message, and then the database is queried through the account identifier to obtain the target bank information matched therewith, and finally the original bank information in the to-be-processed message is replaced with the target bank information to obtain the target message, so as to finally realize the accurate matching and efficient updating of the bank information of the cross-bank payment message.

[0086] Figure 3 Flowchart of the cross-bank payment message correction method provided in the present application Figure 3 As shown in Figure 2 , the embodiment is based on Figure 2 the embodiment, and the bank information of the account identifier related to the change is updated according to the change notification, and the method comprises the following steps:

[0087] S301: receiving a bank institution change notification based on a preset interface; the bank institution change notification includes bank institution merger, split and / or branch number change.

[0088] The preset interface is a standardized data transmission interface developed and deployed by the bank system in advance, which is used to receive the institution change information issued by the central bank payment system or the bank internal management platform, supports encrypted transmission, and guarantees data security and integrity.

[0089] Bank institution change notification refers to the official data file recording the adjustment of bank institution information, the core content of which includes change type (merger, split, line number change, etc.), old institution information (name, line number), new institution information (name, line number), change effective time, etc., which is the core basis for triggering account information update.

[0090] Bank institution merger / split refers to the integration and adjustment of internal institutions of a bank, merger refers to the merger of multiple institutions into one, and split refers to the split of one institution into multiple institutions.

[0091] Line number change refers to the adjustment of the unique 12-digit identification code assigned by the central bank to the bank institution.

[0092] Specifically, the data flow of the preset interface is continuously detected, and a "timed polling + real-time push" dual mode is adopted to ensure that the change notification is not missed; after receiving the change notification, the sender's identity is verified through interface key and digital signature (such as verifying whether it is the central bank payment system) to avoid false notification attacks; for the notification that passes the verification, the core fields are extracted through the analysis module, classified and marked according to the change type (merger / split / line number change), and the field integrity is verified (such as whether it contains the old line number, new line number, and effective time); the parsed change notification is stored together with the verification log and analysis result.

[0093] For example, the change notification is issued through the preset interface: the change type is "institution merger", the old institution information is "XX Bank Beijing Chaoyang Branch (100000000001)" and "XX Bank Beijing Haidian Branch (100000000002)", the new institution information is "XX Bank Beijing Chaoyang Haidian Branch (100000000003)", and the effective time is "2024-07-01 00:00:00". After the system receives the notification through the preset interface, it verifies the sender's digital signature, extracts the key information and marks it as "merger type change", and after archiving, it triggers the subsequent update process.

[0094] S302: Update the bank information of the account identifier related to the change according to the change notification.

[0095] Specifically, the old institution number in the change notification is taken as a retrieval condition to query all account identifiers in the database that are bound to the old institution number, to generate a list of associated accounts; if it is a merging / splitting scenario, the accounts corresponding to all involved old institutions need to be retrieved respectively; the current bank information of the account identifiers in the list is checked against the old institution information to exclude accounts that have been updated in advance and avoid repeated operations; at the effective time point of the change, the bank name and institution number corresponding to the account identifiers in the list are replaced with the new institution information through a database batch update interface; at the same time, the cache data in the local in-memory database and the distributed in-memory database are synchronously updated; after the update is completed, a part of the accounts are randomly selected for checking the update result, to generate an update report; the information before and after the update, the update time, the operator, etc. of each account are recorded as logs.

[0096] For example, the old institution numbers "100000000001" and "100000000002" are taken as retrieval conditions to query the database, to obtain a list of associated account identifiers, including "654321-Li Si" (originally bound to the Chaoyang Branch) and "654322-Wang Wu" (originally bound to the Haidian Branch). At the effective time point of 2024-07-01 00:00:00, the system updates the bank information of these accounts in batches to "XX Bank Beijing Chaoyang Haidian Branch (100000000003)", synchronously updates the in-memory cache, and records the logs: "Account identifier 654321-Li Si, old information: XX Bank Beijing Chaoyang Branch (100000000001), new information: XX Bank Beijing Chaoyang Haidian Branch (100000000003), update successful".

[0097] Optionally, the bank information of the account identifiers related to the change is updated according to the change notification, and the specific implementation manner includes:

[0098] The records of the accounts associated with the old institution number in the database are retrieved according to the old institution number;

[0099] The old institution number is replaced with the new institution number in the records, and the bank name field is updated;

[0100] The method further includes:

[0101] Logs of the update are recorded, and the logs include logs generated by the update of the bank information of the account identifiers related to the change.

[0102] The old institution number refers to a unique 12-digit identification code assigned by the central bank to the corresponding bank institution before the change of the bank institution, and is a core matching field of the associated account records in the original database.

[0103] The new line number refers to the unique 12-digit identification code assigned or adjusted by the central bank after the change of the banking institution. The bank name field is a field in the database record used to store the name of the banking institution, corresponding one-to-one with the line number. The update log is a data file that records the key information of the entire process of updating the bank information of account identification, used to trace the update behavior and verify the update results.

[0104] Specifically, first, the old line number before the change stated in the bank institution change notification is used as the retrieval keyword to call the precise query interface of the database, combined with the pre-set associated query logic, to retrieve all associated account records in the database that bind to the old line number, forming a list of accounts to be updated, and at the same time, the list is de-duplicated and integrity-verified to exclude invalid or duplicate records. Second, for the list of accounts to be updated that pass the verification, through the database batch update instruction, the old line number in each record is replaced with the new line number in the change notification, and the standard bank name corresponding to the new line number is matched and updated to the bank name field of each record to ensure the consistency of the line number and the bank name. Finally, during the update operation execution process, the update log is generated in real time, and the log needs to record the key information of the account identification to be updated, the old bank information (old line number, old bank name), the new bank information (new line number, new bank name), the update time, the update operator / system module, and the update result (success / failure), etc. After the update is completed, the log is archived to the log storage system.

[0105] For example, the old line number is "100000000001" (corresponding to the old bank name "XX Bank Beijing Chaoyang Branch"), and the new line number is "100000000003" (corresponding to the new bank name "XX Bank Beijing Chaoyang Haidian Branch"). First, the old line number "100000000002" is used as the retrieval keyword to query the database, and a list of associated account records is retrieved, including records corresponding to account identifications such as "654321-Li Si" and "654323-Zhang Liu"; then, through the batch update instruction, the line number field in these records is replaced from "100000000001" to "100000000003", and the bank name field is updated from "XX Bank Beijing Chaoyang Branch" to "XX Bank Beijing Chaoyang Haidian Branch"; during the update process, the corresponding update log is generated, one of which is: "Account identification: 654321-Li Si; Old bank information: XX Bank Beijing Chaoyang Branch (100000000001); New bank information: XX Bank Beijing Chaoyang Haidian Branch (100000000003); Update time: 2024-07-01 00:00:00; Update module: Bank institution change automatic update system; Update result: success", and the log is archived to the log storage system after generation.

[0106] Figure 4A structure diagram of the cross-bank payment message correction device provided in the present application is shown in Figure 4 The cross-bank payment message correction device 400 provided in the present embodiment includes:

[0107] The query module 401 is configured to query a database according to an account identifier in a to-be-processed message; the to-be-processed message includes a cross-bank payment message, the account identifier is generated according to an account number and a name, and the database is a database containing a mapping relationship between the account identifier and bank information;

[0108] The acquisition module 402 is configured to acquire target bank information matched with the account identifier from the database;

[0109] The replacement module 403 is configured to replace original bank information in the to-be-processed message with the target bank information to obtain a target message.

[0110] In a possible implementation, the cross-bank payment message correction device 400 further includes a storage module 404.

[0111] The storage module 404 is configured to extract an association relationship between the account identifier and the bank information from historical successful transaction data, and store the association relationship in the database.

[0112] The storage module 404 is further configured to analyze the historical successful transaction data based on a machine learning model, generate a mapping relationship between a candidate account identifier and bank information, and store the mapping relationship in the database.

[0113] In a possible implementation, the cross-bank payment message correction device 400 further includes a determination module 405.

[0114] The determination module 405 is configured to use the machine learning model to identify a potential account and bank association relationship based on account transaction behaviors in the historical successful transaction data.

[0115] In a possible implementation, the cross-bank payment message correction device 400 further includes a receiving module 406 and a change module 407.

[0116] The receiving module 406 is configured to receive a bank institution change notification based on a preset interface; the bank institution change notification includes bank institution merger, split and / or line number change.

[0117] The change module 407 is configured to update bank information of an account identifier related to the change according to the change notification.

[0118] In a possible implementation, the cross-bank payment message correction device 400 further includes a retrieval module 408, an update module 409 and a recording module 410.

[0119] The searching module 408 is configured to search, according to the old row number before the change, a record of the account associated with the old row number in the database.

[0120] The updating module 409 is configured to replace the old row number with the new row number in the record and update the bank name field.

[0121] The recording module 410 is further configured to record an update log, the update log including a log generated by updating the bank information associated with the account identification related to the change.

[0122] In a possible implementation, the determining module 405 is configured to cache, in a local memory database, a mapping relationship between the account identification and the bank information for high-frequency queries in the database, and store, in a distributed memory database, a mapping relationship between the account identification and the bank information for low-frequency queries.

[0123] In a possible implementation, the determining module 405 is configured to determine that the account identification includes at least one of the following: a combination of the account number and the account name, a hash value of the account number and the account name, and an encrypted string of the account number and the account name.

[0124] The cross-bank payment message correction device provided in this embodiment can execute the method provided in the method embodiments, and has similar implementation principles and technical effects, which will not be described here.

[0125] Figure 5 A structural schematic diagram of the cross-bank payment message correction device provided in this application is shown in FIG. 1. Figure 5 As shown in FIG. 1, the electronic device can include at least one processor 501 and a memory 502 in communication with the at least one processor. The memory 502 stores instructions executable by the at least one processor 501, and the instructions are executed by the at least one processor 501 to cause the electronic device to perform the method of any of the above embodiments.

[0126] Optionally, the memory 502 can be independent or integrated with the processor 501. When the memory 502 is independent, the device further includes a bus for connecting the memory 502 and the processor 501.

[0127] The implementation principles and technical effects of the electronic device provided in this embodiment can be referred to the foregoing embodiments, which will not be described here.

[0128] The computer readable storage medium provided in the embodiments of this application stores computer execution instructions, and when the computer execution instructions are executed by the processor, the method provided in any of the foregoing embodiments can be implemented.

[0129] The embodiment of the present application further provides a computer program product comprising a computer program which, when executed by a processor, implements the method provided by any of the foregoing embodiments.

[0130] It should be noted that, for the foregoing method embodiments, in order to simply describe, they are all described as a combination of a series of actions, but those skilled in the art should know that the present application is not limited to the order of the actions described, because according to the present application, certain steps can be performed in other order or simultaneously. Secondly, those skilled in the art should know that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the present application.

[0131] It should be further noted that, although each step in the flowchart is displayed in sequence according to the arrow, these steps are not necessarily executed in sequence according to the arrow. Unless otherwise specified in this document, the execution of these steps has no strict order limitation, and these steps can be executed in other order. Moreover, at least part of the steps in the flowchart can include multiple sub-steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution order of these sub-steps or stages is not necessarily sequential, but can be executed in rotation or alternation with other steps or sub-steps or stages of other steps.

[0132] It should be understood that the above-mentioned device embodiments are only schematic, and the device of the present application can also be realized by other manners. For example, the division of units / modules in the above-mentioned embodiments is only a logical function division, and another division manner can be used in actual implementation. For example, multiple units, modules or components can be combined, or can be integrated into another system, or some features can be ignored or not executed.

[0133] In addition, unless otherwise specified, each functional unit / module in each embodiment of the present application can be integrated in one unit / module, or each unit / module can exist physically, or two or more units / modules can be integrated together. The integrated unit / module can be realized in the form of hardware or in the form of software program module.

[0134] Unless otherwise specified, the processor can be any appropriate hardware processor, such as a CPU, a GPU, an FPGA, a DSP, an ASIC, and the like. Unless otherwise specified, the storage unit can be any appropriate magnetic storage medium or magneto-optical storage medium, such as a resistive random access memory (RRAM), a dynamic random access memory (DRAM), a static random access memory (SRAM), an enhanced dynamic random access memory (EDRAM), a high-bandwidth memory (HBM), a hybrid memory cube (HMC), and the like.

[0135] If the integrated units / modules are implemented in the form of software program modules and sold or used as independent products, they can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application, essentially or the part that contributes to the prior art, or all or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods in the various embodiments of the present application. The aforementioned storage medium includes: a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store program codes.

[0136] In the above embodiments, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the relevant description of other embodiments. The technical features of the above embodiments can be combined arbitrarily, and in order to make the description concise, not all possible combinations of the technical features in the above embodiments are described, however, as long as the combination of these technical features does not exist contradictory, it should be considered as the scope of the present application.

[0137] Other embodiments of the application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the application being indicated by the following claims.

[0138] It is to be understood that the application is not limited to the precise construction herein disclosed and shown in the drawings, and that various changes in shape, size and arrangements of parts can be made without departing from the scope of the application. The scope of the application is limited only by the claims that follow.

Claims

1. A method for correcting interbank payment messages, characterized in that, The method includes: The database is queried based on the account identifier in the message to be processed; the message to be processed includes interbank payment messages, the account identifier is generated based on the account number and account name, and the database is a database containing the mapping relationship between account identifiers and bank information; Retrieve target bank information that matches the account identifier from the database; The target bank information is used to replace the original bank information in the message to be processed to obtain the target message.

2. The method according to claim 1, characterized in that, The method further includes: Extract the association between account identifiers and bank information from historical successful transaction data, and store the association in a database; and / or Based on the analysis of the historical successful transaction data using a machine learning model, a mapping relationship between candidate account identifiers and bank information is generated, and the mapping relationship is stored in the database.

3. The method according to claim 2, characterized in that, The machine learning model is used to identify potential account-bank associations based on account transaction behavior in the historical successful transaction data.

4. The method according to any one of claims 1-3, characterized in that, The method further includes: Receive bank institution change notifications based on a preset interface; the bank institution change notifications include bank institution mergers, splits, and / or changes in bank code; Update the bank information of the account identifier related to the change according to the change notification.

5. The method according to claim 4, characterized in that, The step of updating the bank information related to the account identifier according to the change notification includes: Based on the old line number before the change, retrieve the records of the accounts associated with the old line number in the database; Replace the old line number with the new line number in the record and update the bank name field; The method further includes: Record update logs, which include logs generated from updating bank information related to the account identifiers associated with the changes.

6. The method according to any one of claims 1-3, characterized in that, In the database, the mapping relationship between frequently queried account identifiers and bank information is cached in a local memory database, while the mapping relationship between frequently queried account identifiers and bank information is stored in a distributed memory database.

7. The method according to any one of claims 1-3, characterized in that, The account identifier includes at least one of the following: a combination of account number and account name, a hash value of account number and account name, or an encrypted string of account number and account name.

8. A cross-bank payment message correction device, characterized in that, include: The query module is used to query the database based on the account identifier in the message to be processed; the message to be processed includes interbank payment messages, the account identifier is generated based on the account number and account name, and the database is a database containing the mapping relationship between account identifiers and bank information; The acquisition module is used to obtain target bank information that matches the account identifier from the database; The replacement module is used to replace the original bank information in the message to be processed with the target bank information to obtain the target message.

9. An electronic device, characterized in that, include: Memory, processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory, causing the processor to perform the method as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1-7.

11. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method described in any one of claims 1-7.