Detection method and device for SWIFT reconciliation bill and medium
By identifying and processing the paging labels and transaction labels in SWIFT statement files, generating transaction identifiers and comparing them with the main database, the problem of repeated analysis and confusing data association when the transaction details are large, and the accurate entry of transaction details and data consistency management is achieved.
Patent Information
- Application Number
- CN202510485314.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-17
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2045-04-17
AI Technical Summary
In the prior art, when the transaction details data of the SWIFT statement file is large, it is easy to lead to repeated transaction analysis, missing data integrity and confusion in data association caused by paging.
By identifying the paging labels and transaction labels in the SWIFT statement file, pre-processing, extracting the paging information and feature information in the transaction labels, generating transaction identifiers, and comparing them with the historical transaction identifiers in the main database, updating the main database, establishing a paging index table, and achieving accurate database entry and traceability of transaction details.
It improves the accuracy of transaction details storage, reduces the risk of duplicate bookkeeping, enhances traceability, ensures data consistency of financial and tax systems, supports pagination completion and abnormal self-healing, prevents format errors, and forms a SWIFT message processing solution covering the complete life cycle.
Smart Images

Figure CN120407581A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of bill management, and particularly to a detection method, device and medium for SWIFT statements. Background Art
[0002] SWIFT (Society for Worldwide Interbank Financial Telecommunications) transmits bank statement information through messages, only responsible for transmitting information on fund changes, and solves the "information flow" of international payment settlement. Among them, the files of the daily report and end-of-day report for transmitting transaction details are respectively called MT942 and MT940 statement files. Banks generally push the transaction details records of the current day and the next day to customers through SFTP (Secure File Transfer Protocol) to meet the customer's bookkeeping needs. The transaction details are carried by the TAG 61 field. The bank pushes the statement file to the customer's financial system through SFTP, and the system needs to parse the file and ensure that the transaction details are accurately stored in the database.
[0003] However, when the transaction data of the same account and date is scattered into multiple files due to paging, the traditional method relies on the "five elements of transactions" (sender bank identification, account, debit / credit mark, amount, date) to generate a unique identifier (DMID), but the paging information is not included in the uniqueness judgment, resulting in the risk of duplicate storage.
[0004] In the prior art, banks may repeatedly push files or the paged file names are different but the contents overlap, and the financial system cannot effectively identify the paging relevance, resulting in the same transaction being parsed multiple times due to paging. There is a lack of association records between paging tags and file names, making it difficult to trace the source, with low efficiency and high error rate in manual verification.
[0005] Through the above analysis, the problems and defects of the prior art are as follows:
[0006] When the amount of transaction detail data in the prior art is large, it is easy to cause repeated parsing of transactions due to paging, loss of data integrity, and confusion of data association. Summary of the Invention
[0007] The embodiments of this application provide a detection method, device and medium for SWIFT statements, which can solve the problems of repeated parsing of transactions due to paging, loss of data integrity, and confusion of data association when the amount of transaction detail data in the prior art is large.
[0008] In a first aspect, an embodiment of the present application provides a method for detecting SWIFT statements. The method includes: identifying pagination tags and transaction tags in a SWIFT statement file; preprocessing the pagination tags and transaction tags, and extracting pagination information in the transaction tags through regular expressions, where the pagination information includes statement numbers and pagination sequence numbers; extracting element information of the transaction tags, where the element information includes account identifiers, transaction amounts, and transaction dates; splicing the pagination information and the element information to generate transaction identifiers, and recording the transaction identifiers and the file names of the corresponding SWIFT statement files in a temporary database; comparing the transaction identifiers with historical transaction identifiers stored in a main database, and updating the results to the main database.
[0009] In an implementation manner of the present application, comparing the transaction identifiers with the transaction identifiers stored in the database and updating the results to the main database specifically includes: if the current transaction identifier does not exist in the main database, associating and storing the transaction identifier and the file name in the main database; if there is a difference in either the pagination sequence number or the file name, generating a sub-identifier of the transaction identifier and associating and adding new pagination information; if the pagination information is different but the transaction content is the same, merging the pagination information and updating the pagination chain in the main database.
[0010] In an implementation manner of the present application, the method further includes: if the pagination sequence numbers and the file names are both the same, calculating the difference between duplicate transaction amounts; if there is a difference in the duplicate transaction amounts, marking them as abnormal transactions and triggering an alarm; if there is no difference in the duplicate transaction amounts, discarding the duplicate data.
[0011] In an implementation manner of the present application, after comparing the transaction identifiers with the identifiers stored in the database and updating the results to the main database, the method further includes: establishing a pagination index table according to the pagination sequence numbers, and detecting whether the pagination sequence numbers are continuous; when it is detected that the pagination sequence numbers are not continuous, automatically initiating a request to complete the specified pagination based on the index table; after the specified pagination arrives, automatically triggering incremental parsing and updating the main database.
[0012] In an implementation manner of the present application, preprocessing the pagination tags and transaction tags specifically includes: verifying whether the transaction amounts conform to the numerical format and the validity of the currency code; performing time zone calibration on the transaction dates, verifying the logical consistency between the transaction dates and the value dates, and automatically filling in the value dates if the transaction dates are missing; normalizing the transaction amounts, deleting the currency symbols, and converting them into the base currency unit.
[0013] In one implementation of the present application, before identifying the paging tags and transaction tags in the SWIFT statement file, the method further includes: listening in real time to the transmission channel of the statement file, predicting the missing pages through the sequence numbers of the paging tags when the file is not completely received, and generating a paging integrity probability matrix; when the confidence level of the probability matrix is greater than a preset threshold, starting the transaction parsing engine in advance and performing pre-verification of data in the paging completion mode.
[0014] In one implementation of the present application, after comparing the transaction identifier with the historical transaction identifiers stored in the main database and updating the result to the main database, the method further includes: converting the transaction details in the main database into a standard accounting format according to accounting standards; synchronizing the data to the ERP, CRM, and tax systems through the API interface.
[0015] In one implementation of the present application, the method further includes: when generating the transaction identifier, introducing a hash function to encrypt the element information and paging information; for high-frequency transaction scenarios with a frequency higher than the frequency threshold, embedding the timestamp of the transaction occurrence in the transaction identifier, and the timestamp is accurate to milliseconds.
[0016] In a second aspect, the embodiments of the present application further provide a detection device for SWIFT statements. The device includes at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to: identify the paging tags and transaction tags in the SWIFT statement file; preprocess the paging tags and transaction tags, and extract the paging information in the transaction tags through regular expressions, where the paging information includes the statement number and the paging sequence number; extract the element information of the transaction tags, where the element information includes the account identifier, the transaction amount, and the transaction date; splice the paging information and the element information to generate a transaction identifier, and record the transaction identifier and the file name of the corresponding SWIFT statement file to the temporary database; compare the transaction identifier with the historical transaction identifiers stored in the main database and update the result to the main database.
[0017] In a third aspect, an embodiment of the present application also provides a non-volatile computer storage medium for detecting SWIFT statements, storing computer-executable instructions, which are set as follows: identifying paging tags and transaction tags in a SWIFT statement file; preprocessing the paging tags and transaction tags, and extracting paging information in the transaction tags through regular expressions, where the paging information includes a statement number and a paging sequence number; extracting element information of the transaction tags, where the element information includes an account identifier, a transaction amount, and a transaction date; splicing the paging information and the element information to generate a transaction identifier, and recording the transaction identifier and the file name of the corresponding SWIFT statement file to a temporary database; comparing the transaction identifier with historical transaction identifiers stored in a main database, and updating the result to the main database.
[0018] A method, device, and medium for detecting SWIFT statements provided by an embodiment of the present application expand a unique identifier through paging information, solve the problem of repeated parsing caused by paging, and can solve the problem that even if the bank repeatedly pushes statement files, or the financial system repeatedly parses statement files, and the file names pushed by the bank are different, but the detailed records included in the statement file have actually been stored in the database, avoid the problem of repeated storage of detailed records, and achieve improving the accuracy of transaction details storage in the database and reducing the risk of duplicate accounting of details. Further, enhance the traceability ability, establish a full-link association of file name - DMID - paging information, support paging completion, multi-format adaptation, and anomaly self-healing, ensure data consistency in multiple systems such as finance and taxation, and avoid reconciliation differences; adopt a defensive programming strategy, intercept format errors in the preprocessing stage, reduce the exception rate of core business logic, and form a SWIFT message processing solution covering the entire life cycle. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The drawings described herein are used to provide a further understanding of the present application, and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application, and do not constitute an improper limitation to the present application. In the drawings:
[0020] Figure 1 is a flowchart of a method for detecting SWIFT statements provided by an embodiment of the present application;
[0021] Figure 2 is a flowchart of statement parsing and processing for a method for detecting SWIFT statements provided by an embodiment of the present application;
[0022] Figure 3 is a flowchart of processing for paging information for a method for detecting SWIFT statements provided by an embodiment of the present application;
[0023] Figure 4A schematic diagram of the internal structure of a detection device for SWIFT statements provided in an embodiment of the present application. DETAILED DESCRIPTION
[0024] To make the purpose, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the specific embodiments of this application and the corresponding drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0025] The embodiments of the present application provide a detection method, device and medium for SWIFT statements, which solve the problems in the prior art of repeated transaction parsing, loss of data integrity and confusion of data associations caused by paging when the amount of transaction details data is large.
[0026] The technical solutions proposed in the embodiments of the present application are described in detail below with reference to the accompanying drawings.
[0027] Figure 1 A flow chart of a detection method for SWIFT statements provided in an embodiment of the present application. Figure 1 As shown, the embodiment of the present application provides a detection method for SWIFT statements, which specifically includes the following steps:
[0028] Step 10: Identify the pagination tabs and transaction tabs in the SWIFT statement file.
[0029] refer to Figure 2 and Figure 3 First of all, it can be understood that if a customer's transaction is completed through SWIFT message exchange, the transaction details used by the financial system for accounting are generally that the bank pushes the MT940 / MT942 statement file to the server via SFTP. The customer downloads the file from the SFTP server to the local computer, parses the file according to the SWIFT message standard through a computer application, and finally obtains the detailed records.
[0030] Before parsing the contents of MT940 / MT942 statement files, you need to identify the tags contained in the statement files. For example, tags such as 25, 28C, 60F / 60M, 61, 86, and 62F / 62M represent account identification codes, paging information, opening balances, transaction details, closing balances, and their corresponding tag contents.
[0031] However, if there are paged transaction details for the same subject account, transaction currency, and transaction date, the originating bank may push information with paging details (TAG 28C) in two different reconciliation files or in the same reconciliation file. At this time, the transaction unique identifier DMID (Data Markings Identification) is not unique, resulting in incomplete processing of details. By adding elements of paging information, it is possible to identify the details of the same bank account, transaction currency, transaction date, and paging information (including statement number / paging sequence number) as non-duplicate transaction records, thus solving the problems of integrity and accuracy in detail parsing.
[0032] Table 1 Format Description of Tag 61 Field
[0033]
[0034] Based on the SWIFT definitions of MT940 and MT942 standards, a data model is established, and through the above-described process and the established data model, a rule-based matching process is implemented to extract transaction information from MT940 and MT942.
[0035] Step 20: Preprocess the paging tag and the transaction tag, and extract the paging information in the transaction tag through regular expressions. The paging information includes the statement number and the paging sequence number.
[0036] As an optional embodiment, preprocessing the paging tag and the transaction tag may specifically include: Step 201: Verify whether the transaction amount conforms to the numerical format and the validity of the currency code; Step 202: Perform time zone calibration on the transaction date, verify the logical consistency between the transaction date and the value date, and automatically fill in the value date if the transaction date is missing; Step 203: Normalize the transaction amount, delete the currency symbol, and convert it to the base currency unit.
[0037] In this step, the reconciliation detail information in MT940 / MT942 can also be recorded according to the granularity of the accounting voucher date, the syntax of the content of TAG 61 (transaction tag) is verified, illegal characters are filtered, and the five transaction elements are standardized. The five transaction elements are defined as: the sending bank identifier (BID), the sending entity account in TAG 25 field (AID, Account Identification), the debit / credit identifier (DCM, Debit / Credit Mark), the transaction amount (Amount), and the transaction date; Tag61 will return the value date, but may not return the accounting voucher date (transaction date). In this case, the accounting voucher date needs to be processed into the value date; the statement number (Statement Number) and the pagination sequence number (Sequence Number), in the format of "SN / SS". If the format is incorrect, the manual review process will be triggered.
[0038] Step 30: Extract the element information of the transaction tag. The element information includes the account identifier, the transaction amount, and the transaction date.
[0039] Step 40: Concatenate the pagination information and the element information to generate a transaction identifier, and record the transaction identifier and the file name of the corresponding SWIFT statement file to the temporary database.
[0040] In this step, the pagination information (SN / SS) is combined with the five transaction elements to generate an extended DMID, which can be in the format of "BID-AID-DCM-Amount-Date-SN / SS". Record the current file name and the DMID list to the temporary database, and mark the parsing timestamp.
[0041] Step 50: Compare the transaction identifier with the historical transaction identifiers stored in the main database, and update the result to the main database.
[0042] In this step, when parsing the detailed records included in the statement file, the DMID information of the transaction is recorded for each detail, as well as the name of the MT940 / MT942 statement file corresponding to this detail. After traversing and parsing the statement file list, it is necessary to check whether there are duplicates between the current parsed detailed list and the detailed list that has been stored in the database.
[0043] As an optional embodiment, comparing the transaction identifier with the transaction identifiers stored in the database and updating the result to the main database may specifically include: Step 501: If the current transaction identifier does not exist in the main database, associate and store the transaction identifier and the file name in the main database; Step 502: If either the pagination information or the file name is different, generate a sub-identifier of the transaction identifier and associate and add the pagination information.
[0044] For example, if the DMID information with the same current details already exists in the ERP system, but the content of 28C (paging label) of this detail is different from that of the 28C label of the existing DMID information, and the corresponding MT940 / MT942 statement file names are also different, then identify this transaction as a new transaction that needs to be recorded, and record the paging information and the reconciliation file name when the details are warehoused; if the DMID exists, further verify the paging serial number and the file name: if the paging serial number or the file name is different, generate a sub-identifier "DMID:SS", and associate the newly added paging information; otherwise, consider that this detail is actually a detail record that has been warehoused with a unique identifier resolution, and there is no need to warehouse this detail again.
[0045] Through this identification method, it is possible to solve the problem of duplicate warehousing of detail records even when the bank repeatedly pushes statement files, or when the financial system repeatedly parses statement files for fear of incomplete file parsing, and when the file names pushed by the bank are different, but the detail records included in the statement files have actually been warehoused, so as to improve the accuracy of transaction detail warehousing and reduce the risk of duplicate bookkeeping of details.
[0046] As an optional embodiment, the method may further include: Step 504: If the paging serial number and the file name are both the same, calculate the difference of the repeated transaction amounts; Step 505: If there is a difference in the repeated transaction amounts, mark it as an abnormal transaction and trigger an alarm; Step 506: If there is no difference in the repeated transaction amounts, discard the repeated data.
[0047] As an optional embodiment, after comparing the transaction identifier with the identifiers stored in the database and updating the result to the main database, the method may further include: Step 60: Establish a paging index table according to the paging serial number, and detect whether the paging serial numbers are continuous; when it is detected that the paging serial numbers are not continuous, automatically initiate a request for completing the specified paging based on the index table; after the specified paging arrives, automatically trigger incremental parsing and update the main database.
[0048] Furthermore, since the file name of the statement file and the DMID information are recorded, if the financial personnel find that the detail parsing is missing or repeated during the detail reconciliation, they can find the corresponding physical statement file through the file name recorded in the database, and then manually check the detail record information actually included in the physical file to achieve problem traceability and tracking.
[0049] As an alternative embodiment, before identifying the pagination tags and transaction tags in the SWIFT statement file, the method may further include: listening to the transmission channel of the statement file in real time, predicting the missing pagination through the sequence numbers of the pagination tags when the file is not completely received, and generating a pagination integrity probability matrix; when the confidence level of the probability matrix is greater than a preset threshold, the transaction parsing engine is started in advance to perform pre-verification of data in the pagination completion mode.
[0050] In this step, the time for the user to wait for the complete reception and processing of the file is reduced, and by performing pre-verification of data in advance, the possibility for the user to encounter errors and problems during use is reduced.
[0051] As an alternative embodiment, after comparing the transaction identifier with the historical transaction identifiers stored in the main database and updating the result to the main database, the method may further include: converting the transaction details in the main database into a standard accounting format according to accounting standards; synchronizing the data to the ERP, CRM, and tax systems through the API interface.
[0052] As an alternative embodiment, the method may further include: when generating the transaction identifier, introducing a hash function to encrypt the element information and pagination information; for high-frequency transaction scenarios where the frequency is higher than the frequency threshold, embedding the timestamp of the transaction occurrence in the transaction identifier, and the timestamp is accurate to milliseconds.
[0053] That is to say, the final effect achieved by the present invention may be that, assuming that the list of n detail DMIDs parsed from one of the reconciliation files is A, A-2,..., A-n, if a new detail DMID is identified, the new DMIDs are A:28C / 1, A:28C / 2,..., A:28C / m.
[0054] The above is the method embodiment proposed in this application. Based on the same inventive concept, the embodiments of this application also provide a detection device for SWIFT statements, and its structure is as Figure 4 shown.
[0055] Figure 4 FIG. is a schematic internal structure diagram of a detection device for SWIFT statements provided by an embodiment of this application. As Figure 4 shown, the device includes:
[0056] At least one processor 401;
[0057] And a memory 402 communicatively connected to at least one processor;
[0058] Among them, the memory 402 stores instructions executable by at least one processor. The instructions are executed by at least one processor 401 to enable at least one processor 401 to: identify paging tags and transaction tags in the SWIFT statement file; preprocess the paging tags and transaction tags, and extract paging information in the transaction tags through regular expressions, where the paging information includes statement numbers and paging sequence numbers; extract element information of the transaction tags, where the element information includes account identifiers, transaction amounts, and transaction dates; splice the paging information and the element information to generate transaction identifiers, and record the transaction identifiers and the file names of the corresponding SWIFT statement files in a temporary database; compare the transaction identifiers with the historical transaction identifiers stored in the main database, and update the results to the main database.
[0059] Some embodiments of the present application provide a non-volatile computer storage medium corresponding to Figure 1 for the detection of SWIFT statements, storing computer-executable instructions, where the computer-executable instructions are configured to: identify paging tags and transaction tags in the SWIFT statement file; preprocess the paging tags and transaction tags, and extract paging information in the transaction tags through regular expressions, where the paging information includes statement numbers and paging sequence numbers; extract element information of the transaction tags, where the element information includes account identifiers, transaction amounts, and transaction dates; splice the paging information and the element information to generate transaction identifiers, and record the transaction identifiers and the file names of the corresponding SWIFT statement files in a temporary database; compare the transaction identifiers with the historical transaction identifiers stored in the main database, and update the results to the main database.
[0060] The embodiments in the present application are all described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the embodiments of the Internet of Things devices and media, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can refer to the partial description of the method embodiments.
[0061] The systems and media provided by the embodiments of the present application correspond one-to-one with the methods. Therefore, the systems and media also have beneficial technical effects similar to those of the corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the systems and media will not be elaborated here.
[0062] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0063] The present application is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowchart and / or block diagram, and the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate means for implementing the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.
[0064] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including instruction means, and the instruction means implement the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.
[0065] These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.
[0066] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and a memory.
[0067] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM), and / or non-volatile memory in the form of, for example, read-only memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
[0068] A computer-readable medium includes both permanent and non-permanent, removable and non-removable media and can implement information storage by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette tapes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer-readable medium does not include transitory computer-readable media, such as modulated data signals and carrier waves.
[0069] It should also be noted that the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, commodity or device comprising a series of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, commodity or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, commodity or device comprising the element.
[0070] The above description is only for the embodiments of the present application and is not intended to limit the present application. For those skilled in the art, various changes and modifications can be made to the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included within the scope of the claims of the present application.
Claims
1. A detection method for SWIFT statements, characterized in that, The method comprises: Identify pagination tags and transaction tags in SWIFT statement files; Preprocess the paging tags and transaction tags, and extract paging information from the transaction tags using regular expressions, wherein the paging information includes the statement number and the paging sequence number; Extracting element information of the transaction tag, the element information including account identification, transaction amount and transaction date; The paging information and element information are spliced to generate a transaction identifier, and the transaction identifier and the file name of the corresponding SWIFT statement file are recorded in a temporary database; The transaction identifier is compared with the historical transaction identifiers stored in the main database, and the result is updated in the main database.
2. The detection method for SWIFT statements according to claim 1, wherein Comparing the transaction identifier with the transaction identifiers stored in the database and updating the result to the master database specifically includes: If the current transaction identifier does not exist in the main database, the transaction identifier and the file name are associated and stored in the main database; If one of the paging information or the file name is different, a sub-identifier of the transaction identifier is generated and associated with the newly added paging information.
3. The detection method for SWIFT statements according to claim 2, wherein The method further comprises: If the paging sequence number and file name are the same, the difference between the duplicate transaction amounts is calculated; If there is a difference in the repeated transaction amounts, it will be marked as an abnormal transaction and trigger an alarm; If there is no difference in the repeated transaction amounts, the duplicate data will be discarded.
4. The detection method for SWIFT statements according to claim 3, characterized in that, After comparing the transaction identifier with identifiers stored in the database and updating the result to the master database, the method further includes: Establishing a paging index table according to the paging sequence numbers, and detecting whether the paging sequence numbers are continuous; When it is detected that the paging sequence number is discontinuous, a completion request for the specified paging is automatically initiated based on the index table; After the specified page is reached, incremental parsing is automatically triggered and the main database is updated.
5. The detection method for SWIFT statements according to claim 1, characterized in that, Preprocessing the paging tags and transaction tags specifically includes: Verify that the transaction amount complies with the numerical format and currency code validity; Perform time zone calibration on the transaction date, verify the logical consistency between the transaction date and the value date, and automatically fill in the value date if the transaction date is missing; The transaction amount is normalized, the currency symbol is removed, and the amount is converted into the base currency unit.
6. The detection method for SWIFT statements according to claim 1, wherein Prior to identifying the paging tags and transaction tags in the SWIFT statement file, the method further comprises: Monitoring the transmission channel of the statement file in real time; When the file is not completely received, missing pages are predicted using the serial numbers of the paging tags to generate a paging completeness probability matrix; When the confidence level of the probability matrix is greater than the preset threshold, the transaction parsing engine is started in advance to perform data pre-verification in the paging completion mode.
7. The detection method for SWIFT statements according to claim 1, wherein After comparing the transaction identifier with historical transaction identifiers stored in the master database and updating the result to the master database, the method further includes: Converting the transaction details in the master database into a standard accounting format according to accounting standards; Synchronize data to ERP, CRM and tax systems through API interfaces.
8. A method for detecting SWIFT statements according to claim 1, characterized in that, The method further comprises: When generating the transaction identifier, a hash function is introduced to encrypt the element information and paging information; For high-frequency transaction scenarios where the frequency is higher than the frequency threshold, a timestamp of the transaction occurrence is embedded in the transaction identifier, and the timestamp is accurate to milliseconds.
9. A detection device for SWIFT statements, characterized in that, The device includes: At least one processor; And a memory communicatively connected to the at least one processor; Wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to: Identify paging tags and transaction tags in the SWIFT statement file; Preprocess the paging tags and transaction tags, and extract the paging information in the transaction tags through regular expressions, where the paging information includes a statement number and a paging sequence number; Extract the element information of the transaction tags, where the element information includes an account identifier, a transaction amount, and a transaction date; Concatenate the paging information and the element information to generate a transaction identifier, and record the transaction identifier and the file name of the corresponding SWIFT statement file in a temporary database; Compare the transaction identifier with the identifiers already stored in the main database, and update the result to the main database.
10. A non-volatile computer storage medium for detecting SWIFT statements, storing computer-executable instructions, characterized in that, The computer-executable instructions are set to: Identify paging tags and transaction tags in the SWIFT statement file; Preprocess the paging tags and transaction tags, and extract the paging information in the transaction tags through regular expressions, where the paging information includes a statement number and a paging sequence number; Extract the element information of the transaction tags, where the element information includes an account identifier, a transaction amount, and a transaction date; Concatenate the paging information and the element information to generate a transaction identifier, and record the transaction identifier and the file name of the corresponding SWIFT statement file in a temporary database; Compare the transaction identifier with the identifiers already stored in the main database, and update the result to the main database.
Citation Information
Patent Citations
Batch transaction processing method, computing device and storage medium
CN112988775A
Transaction information checking method and device based on SWIFT message, equipment and medium
CN118261599A
System and Method for Reconciling One or More Financial Transactions
US20080103949A1
Payment redirection system
US20190130371A1