TWI696970B - Interbank transaction failure noticing system based on blockchain and method thereof - Google Patents

Interbank transaction failure noticing system based on blockchain and method thereof Download PDF

Info

Publication number
TWI696970B
TWI696970B TW108109313A TW108109313A TWI696970B TW I696970 B TWI696970 B TW I696970B TW 108109313 A TW108109313 A TW 108109313A TW 108109313 A TW108109313 A TW 108109313A TW I696970 B TWI696970 B TW I696970B
Authority
TW
Taiwan
Prior art keywords
transaction
host
bank
message
fxml
Prior art date
Application number
TW108109313A
Other languages
Chinese (zh)
Other versions
TW202036439A (en
Inventor
陳嘉惠
Original Assignee
彰化商業銀行股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 彰化商業銀行股份有限公司 filed Critical 彰化商業銀行股份有限公司
Priority to TW108109313A priority Critical patent/TWI696970B/en
Application granted granted Critical
Publication of TWI696970B publication Critical patent/TWI696970B/en
Publication of TW202036439A publication Critical patent/TW202036439A/en

Links

Images

Abstract

An interbank transaction failure noticing system based on blockchain and method thereof is disclosed. By providing a financial host, a payment bank host and a receiving bank host as nodes of a blockchain network, so as to generate a smart contract according to a financial extensible markup language (FXML) message and deploy the smart contract into the blockchain network as well as triggers an event when interbank transaction is not completed, and then checking a contact information of a remitter and a payee to notify the remitter and the payee at the same time when the payment bank host and the receiving bank host detects the event is triggered. The mechanism is help to improve the transparency of interbank transaction.

Description

基於區塊鏈的跨行交易失敗通知系統及其方法Blockchain-based cross-bank transaction failure notification system and method

本發明涉及一種通知系統及其方法,特別是基於區塊鏈的跨行交易失敗通知系統及其方法。 The invention relates to a notification system and method thereof, in particular to a blockchain-based notification system and method for cross-bank transaction failure.

近年來,隨著金融科技的普及與蓬勃發展,各種電子化交易便如雨後春筍般出現,其中,最常見的應用之一便是透過網路進行跨行交易。 In recent years, with the popularity and vigorous development of financial technology, various electronic transactions have sprung up. One of the most common applications is cross-bank transactions through the Internet.

一般而言,傳統的跨行交易是指跨越不同銀行單位的金融交易,必要時仍須使用紙本傳真確認交易結果。然而,使用紙本傳真確認交易結果的方式,將造成三方覆核時間過長,導致無法即時提供客戶交易結果,進而使得交易效率不佳。 Generally speaking, traditional cross-bank transactions refer to financial transactions that span different banking units. When necessary, paper faxes must still be used to confirm the transaction results. However, using paper fax to confirm the transaction results will cause the tripartite review time to be too long, resulting in the inability to provide customers with transaction results in real time, which will make the transaction inefficient.

有鑑於此,便有廠商提出完全藉由網路來確認跨行交易的結果的技術,以便客戶能夠即時得知交易結果。如此一來,即可大幅提升交易效率。但是,此方式僅能提供跨行交易的付款人得知交易結果,而跨行交易的收款人則無從得知交易結果,導致收款人容易因資訊不對等而遭受蒙蔽或詐騙的情況。故具有跨行交易的透明性不佳之問題。 In view of this, some manufacturers have proposed techniques for confirming the results of cross-bank transactions entirely through the Internet, so that customers can be informed of the results of transactions in real time. In this way, transaction efficiency can be greatly improved. However, this method can only provide the payer of the inter-bank transaction to know the transaction result, and the payee of the inter-bank transaction has no way of knowing the transaction result, resulting in the situation that the payee is easily deceived or defrauded due to unequal information. Therefore, it has the problem of poor transparency in cross-bank transactions.

綜上所述,可知先前技術中長期以來一直存在跨行交易的透明性不佳之問題,因此實有必要提出改進的技術手段,來解決此一問題。 In summary, it can be seen that the prior art has long had the problem of poor transparency in cross-bank transactions, so it is necessary to propose improved technical means to solve this problem.

本發明揭露一種基於區塊鏈的跨行交易失敗通知系統及其方法。 The invention discloses a notification system and method for inter-bank transaction failure based on blockchain.

首先,本發明揭露一種基於區塊鏈的跨行交易失敗通知系統,應用在執行智能合約的區塊鏈網路,此系統包含:財金端主機、付款銀行端主機及收款銀行端主機。其中,財金端主機包含:初始模組、傳輸模組、發布模組及執行模組。所述初始模組用以於初始時,預先發布第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含轉入帳號、轉出帳號及合約地址;傳輸模組連接初始模組,用以接收及轉送金融可延伸標記式語言(Financial Extensible Markup Language,FXML)交易資料,其中,FXML交易資料包含轉入帳號及轉出帳號;發布模組連接傳輸模組,用以在偵測到FXML交易資料為未完成交易時,根據FXML交易資料的內容生成對應的第二智能合約,並且執行區塊鏈交易以發布此第二智能合約及獲得對應的合約地址;以及執行模組連接發布模組,用以執行第一智能合約的儲存函式,將第二智能合約對應的合約地址、FXML交易資料包含的轉入帳號及轉出帳號一併儲存至第一智能合約作為交易未完成訊息其中之一,以及在儲存完成時觸發回報事件。 First, the present invention discloses a blockchain-based cross-bank transaction failure notification system, which is applied to a blockchain network that executes smart contracts. This system includes: a financial-end host, a payment bank-end host, and a collection bank-end host. Among them, the financial terminal host includes: initial module, transmission module, release module and execution module. The initial module is used to pre-release the first smart contract for storing multiple transaction incomplete messages in advance, each transaction incomplete message includes the transfer-in account, the transfer-out account and the contract address; the transmission module is connected The initial module is used to receive and transfer Financial Extensible Markup Language (FXML) transaction data, where the FXML transaction data includes the transfer-in account and transfer-out account; the release module connects to the transfer module for When it is detected that the FXML transaction data is an incomplete transaction, a corresponding second smart contract is generated based on the content of the FXML transaction data, and a blockchain transaction is executed to publish the second smart contract and obtain the corresponding contract address; and execute the model Group connection release module, used to execute the storage function of the first smart contract, and store the contract address corresponding to the second smart contract, the transfer account and the transfer account included in the FXML transaction data to the first smart contract as a transaction One of the unfinished messages, and the report event is triggered when the storage is completed.

接著,所述付款銀行端主機為區塊鏈網路的節點之一,用以在進行跨行交易時,傳送FXML交易資料至財金端主機,以及在偵測到回報事件被觸發後,自第一智能合約中載入新增的交易未完成訊息,並且根據載入的交易未 完成訊息中的轉出帳號查詢付款人聯繫訊息,再根據付款人聯繫訊息傳送通知訊息以通知付款人。 Then, the payment bank host is one of the nodes of the blockchain network, used to send FXML transaction data to the financial terminal host when conducting cross-bank transactions, and after detecting the return event is triggered, A newly added transaction incomplete message is loaded in a smart contract, and according to the loaded transaction Complete the transfer out of the account in the message to check the contact information of the payer, and then send a notification message to notify the payer according to the contact information of the payer.

至於所述收款銀行端主機為區塊鏈網路的節點之一,用以在偵測到回報事件被觸發後,自第一智能合約中載入新增的交易未完成訊息,並且根據載入的交易未完成訊息中的轉入帳號查詢收款人聯繫訊息,再根據收款人聯繫訊息傳送通知訊息以通知收款人。 As for the host of the receiving bank is one of the nodes of the blockchain network, it is used to load the newly added transaction incomplete message from the first smart contract after detecting the return event is triggered, and according to the load Transfer the account to the payee's contact information in the incomplete message of the entered transaction, and then send a notification message to notify the payee according to the payee's contact information.

另外,本發明揭露一種基於區塊鏈的跨行交易失敗通知方法,應用在執行智能合約的區塊鏈網路,其步驟包括:提供財金端主機、付款銀行端主機及收款銀行端主機作為區塊鏈網路的節點,其中,財金端主機預先發布第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含轉入帳號、轉出帳號及合約地址;當進行跨行交易時,付款銀行端主機傳送FXML交易資料至財金端主機,由財金端主機將FXML交易資料轉送至收款銀行端主機,其中,FXML交易資料包含轉入帳號及轉出帳號;當財金端主機偵測到FXML交易資料為未完成交易時,根據此FXML交易資料的內容生成對應的第二智能合約,並且執行區塊鏈交易以發布此第二智能合約及獲得對應的合約地址;財金端主機執行第一智能合約的儲存函式,用以將第二智能合約對應的合約地址、FXML交易資料包含的轉入帳號及轉出帳號一併儲存至第一智能合約作為交易未完成訊息其中之一,以及在儲存完成時觸發回報事件;以及付款銀行端主機及收款銀行端主機偵測到回報事件被觸發後,自第一智能合約中載入新增的交易未完成訊息,其中,付款銀行端主機根據載入的交易未完成訊息中的轉出帳號查詢付款人聯繫訊息,並且根據此付款人聯繫訊息傳送通知訊息以通知付款 人,收款銀行端主機根據載入的交易未完成訊息中的轉入帳號查詢收款人聯繫訊息,並且根據此收款人聯繫訊息傳送通知訊息以通知收款人。 In addition, the present invention discloses a blockchain-based cross-bank transaction failure notification method, which is applied to a blockchain network that executes smart contracts. The steps include: providing a financial terminal host, a payment bank terminal host, and a collection bank terminal host as The node of the blockchain network, where the financial terminal host pre-releases the first smart contract for storing multiple transaction incomplete messages, and each transaction incomplete message includes the transfer-in account, transfer-out account, and contract address; When conducting cross-bank transactions, the payment bank host sends FXML transaction data to the financial bank host, and the financial bank host transfers the FXML transaction data to the receiving bank host, where the FXML transaction data includes the transfer-in account and the transfer-out account; When the financial terminal host detects that the FXML transaction data is an incomplete transaction, it generates a corresponding second smart contract according to the content of the FXML transaction data, and executes a blockchain transaction to publish the second smart contract and obtain the corresponding contract Address; the financial terminal host executes the storage function of the first smart contract to store the contract address corresponding to the second smart contract, the transfer account and the transfer account included in the FXML transaction data to the first smart contract as a transaction One of the incomplete messages, and trigger the return event when the storage is completed; and after the payment bank host and the receiving bank host detect that the return event is triggered, loading the newly added transaction from the first smart contract is not completed Message, where the host of the payment bank queries the payer's contact information based on the transfer-out account in the loaded transaction incomplete message, and sends a notification message to notify the payment according to the payer's contact message The host of the beneficiary bank queries the beneficiary contact information according to the transferred account in the loaded transaction incomplete message, and sends a notification message to notify the beneficiary according to the beneficiary contact information.

本發明所揭露之系統與方法如上,與先前技術的差異在於本發明是透過提供財金端主機、付款銀行端主機及收款銀行端主機作為區塊鏈網路的節點,以便在跨行交易未完成時,根據FXML交易訊息生成相應的智能合約,並且將智能合約發布在區塊鏈網路以觸發事件,當付款銀行端主機及收款銀行端主機偵測到事件被觸發後,查詢付款人及收款人的聯繫訊息以同時通知付款人及收款人。 The system and method disclosed by the present invention are as above, and the difference from the previous technology is that the present invention is to provide a financial-side host, a payment bank-side host, and a collection bank-side host as nodes of the blockchain network, so as to prevent cross-bank transactions. Upon completion, the corresponding smart contract is generated based on the FXML transaction message, and the smart contract is published on the blockchain network to trigger the event. When the payment bank host and the receiving bank host detect that the event is triggered, query the payer And the contact information of the payee to notify the payer and the payee at the same time.

透過上述的技術手段,本發明可以達成提高跨行交易的透明性之技術功效。 Through the above technical means, the present invention can achieve the technical effect of improving the transparency of cross-bank transactions.

10:區塊鏈網路 10: Blockchain network

110:財金端主機 110: financial terminal host

111:初始模組 111: Initial module

112:傳輸模組 112: Transmission module

113:發布模組 113: Release module

114:執行模組 114: execution module

120:付款銀行端主機 120: payment bank host

130:收款銀行端主機 130: Receiving bank host

400:轉帳視窗 400: Transfer window

411:輸入區塊 411: input block

412:轉帳元件 412: Transfer element

420、430:即時通訊程式 420, 430: instant messaging programs

421、431:即時通訊信息 421, 431: instant messaging information

步驟210:提供一財金端主機、一付款銀行端主機及一收款銀行端主機作為區塊鏈網路的節點,其中,該財金端主機預先發布一第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含一轉入帳號、一轉出帳號及一合約地址 Step 210: Provide a financial terminal host, a payment bank terminal host and a collection bank terminal host as the nodes of the blockchain network, wherein the financial terminal host pre-releases a first smart contract for storing multiple transactions Transaction incomplete message, each transaction incomplete message includes a transfer-in account, a transfer-out account and a contract address

步驟220:當進行跨行交易時,該付款銀行端主機傳送一FXML交易資料至該財金端主機,由該財金端主機將該FXML交易資料轉送至該收款銀行端主機,其中,該FXML交易資料包含該轉入帳號及該轉出帳號 Step 220: When conducting a cross-bank transaction, the payment bank host sends an FXML transaction data to the financial end host, and the financial end host transfers the FXML transaction data to the receiving bank end host, where the FXML The transaction information includes the transfer-in account and the transfer-out account

步驟230:當該財金端主機偵測到該FXML交易資料為未完成交易時,根據該FXML交易資料的內容生成對應的一第二智能合約,並且執行區塊鏈交易以發布該第二智能合約及獲得對應的該合約地址 Step 230: When the financial terminal host detects that the FXML transaction data is an incomplete transaction, it generates a corresponding second smart contract according to the content of the FXML transaction data, and executes a blockchain transaction to release the second smart contract Contract and get the corresponding contract address

步驟240:該財金端主機執行該第一智能合約的一儲存函式,用以將該第二智能合約對應的該合約地址、該FXML交易資料包含的該轉入帳號及該轉出帳號一併儲存至該第一智能合約作為所述交易未完成訊息其中之一,以及在儲存完成時觸發一回報事件 Step 240: The financial terminal host executes a storage function of the first smart contract to use the contract address corresponding to the second smart contract, the transfer-in account and the transfer-out account included in the FXML transaction data And store it in the first smart contract as one of the transaction incomplete messages, and trigger a return event when the storage is completed

步驟250:該付款銀行端主機及該收款銀行端主機偵測到該回報事件被觸發後,自該第一智能合約中載入新增的所述交易未完成訊息,其中,該付款銀行端主機根據載入的所述交易未完成訊息中的該轉出帳號查詢一付款人聯繫訊息,並且根據該付款人聯繫訊息傳送一通知訊息以通知付款人,該收款銀行端主機根據載入的所述交易未完成訊息中的該轉入帳號查詢一收款人聯繫訊息,並且根據該收款人聯繫訊息傳送該通知訊息以通知收款人 Step 250: After the payment bank host and the collection bank host detect that the return event is triggered, the newly added transaction incomplete message is loaded from the first smart contract, where the payment bank The host inquires a payer contact message according to the transferred account in the transaction incomplete message loaded, and sends a notification message to notify the payer according to the payer contact message. The transfer account in the transaction incomplete message queries a payee contact message, and sends the notification message to notify the payee according to the payee contact message

步驟251:該付款銀行端主機根據該轉出帳號篩選載入的所述交易未完成訊息,並且根據篩選出的所述交易未完成訊息中的所述合約地址,自相應的該第二智能合約載入該FXML交易資料以重新生成一FXML再次交易資料,並且將該FXML再次交易資料傳送至該財金端主機以進行跨行交易 Step 251: The payment bank terminal host screens the transaction incomplete message loaded according to the transfer-out account, and from the corresponding second smart contract according to the contract address in the filtered transaction incomplete message Load the FXML transaction data to regenerate a FXML re-transaction data, and send the FXML re-transaction data to the financial terminal host for cross-bank transactions

第1圖為本發明基於區塊鏈的跨行交易失敗通知系統之系統方塊圖。 Fig. 1 is a system block diagram of a blockchain-based cross-bank transaction failure notification system of the present invention.

第2A圖及第2B圖為本發明基於區塊鏈的跨行交易失敗通知方法之方法流程圖。 FIG. 2A and FIG. 2B are flowcharts of a method for notification of a failure of a cross-bank transaction based on a blockchain of the present invention.

第3圖為本發明基於區塊鏈的跨行交易失敗通知方法之循序圖。 Figure 3 is a sequence diagram of the method for notification of cross-bank transaction failure based on the blockchain of the present invention.

第4圖為應用本發明以即時通訊信息通知交易雙方之示意圖。 FIG. 4 is a schematic diagram of notifying both parties of a transaction with instant messaging information using the present invention.

以下將配合圖式及實施例來詳細說明本發明之實施方式,藉此對本發明如何應用技術手段來解決技術問題並達成技術功效的實現過程能充分理解並據以實施。 The embodiments of the present invention will be described in detail below in conjunction with the drawings and examples, so as to fully understand and implement the implementation process of how the present invention uses technical means to solve technical problems and achieve technical effects.

在說明本發明所揭露之基於區塊鏈的跨行交易失敗通知系統及其方法之前,先對本發明所應用的環境作說明,本發明是應用在執行智能合約的區塊鏈網路中,在區塊鏈網路中的計算機設備皆可視為區塊鏈節點(或簡稱為節點),所述區塊鏈節點透過點對點(Peer to Peer,P2P)方式連接,並且用以處理區塊鏈交易(Blockchain Transactions)。在實際實施上,計算機設備可為伺服器、電腦主機、筆記型電腦、平板電腦、智慧型手機等等,用以執行電腦程式指令,例如:區塊鏈程式「Ethereum」。另外,文中所述的「第一智能合約」及「第二智能合約」等等皆是指智能合約(Smart Contract),所述智能合約是指依據既定的條件及傳輸的資訊來驅動執行指令的電腦程式,在實際實施上,所述智能合約係透過程式語言,例如:Solidity、Serpent、LLL、EtherScript、Sidechain等等來撰寫,其可包含各種不同的函式(Function)、事件(Event)、參數狀態等等,以區塊鏈程式「Ethereum」為例,其智能合約是經編譯後得到二進位編碼及應用二進位介面(Application Binary Interface,ABI),以便將智能合約廣播至區塊鏈網路,等候礦工(Miner)將智能合約放上區塊鏈並得到相應的地址,至此即透過區塊鏈交易完成智能合約的發布。之後,各節點便可根據此地址執行相應的智能合約,並且藉由不同的指令來改變智能合約在區塊鏈上的狀態以及偵測事件是否被觸發。在實際實施上,執行(或稱為呼叫)函式可以同時帶入通用唯一識別碼(Universally Unique Identifier,UUID)及合約地址,並且將合約地址儲存在以UUID指定的陣列位置。 Before describing the blockchain-based cross-bank transaction failure notification system and method disclosed by the present invention, the environment to which the present invention is applied will be described first. The present invention is applied to a blockchain network that executes smart contracts. The computer equipment in the blockchain network can be regarded as blockchain nodes (or nodes for short). The blockchain nodes are connected by Peer to Peer (P2P) and used to process blockchain transactions (Blockchain Transactions). In actual implementation, the computer equipment may be a server, a computer host, a notebook computer, a tablet computer, a smart phone, etc., to execute computer program instructions, for example, the blockchain program "Ethereum". In addition, the "first smart contract" and "second smart contract" mentioned in the article all refer to the smart contract (Smart Contract), which refers to driving the execution of instructions based on the established conditions and transmitted information Computer program, in actual implementation, the smart contract is written in programming languages, such as: Solidity, Serpent, LLL, EtherScript, Sidechain, etc., which can contain various functions, events, Parameter status, etc. Taking the blockchain program "Ethereum" as an example, its smart contract is compiled to obtain a binary code and an application binary interface (Application Binary Interface, ABI) to broadcast the smart contract to the blockchain network Road, waiting for the miner to put the smart contract on the blockchain and get the corresponding address, so that the smart contract is released through the blockchain transaction. After that, each node can execute the corresponding smart contract according to this address, and use different instructions to change the state of the smart contract on the blockchain and detect whether the event is triggered. In actual implementation, the execution (or call) function can simultaneously bring in a Universally Unique Identifier (UUID) and a contract address, and store the contract address in the array location specified by the UUID.

以下配合圖式對本發明基於區塊鏈的跨行交易失敗通知系統及其方法做進一步說明,請先參閱「第1圖」,「第1圖」為本發明基於區塊鏈的跨行交易失敗通知系統之系統方塊圖,應用在執行智能合約的區塊鏈網路10,此系統包含:財金端主機110、付款銀行端主機120及收款銀行端主機130。在實際實施上,所述財金端主機110、付款銀行端主機120及收款銀行端主機130皆為區塊鏈網路10中的節點(Node),同時也是計算機設備,並且彼此之間以P2P方式相互連接。具體而言,財金端主機110是位於財金單位的計算機設備、付款銀行端主機120是位於付款銀行的計算機設備、收款銀行端主機則是位於收款銀行的計算機設備,這些計算機設備除了能夠處理FXML交易資料之外,還基於區塊鏈網路10組成聯盟鏈(Consortium Blockchain),僅允許獲得授權的機構,即:財金單位、收款銀行及付款銀行,在區塊鏈上讀寫及發布智能合約。 The following further describes the system and method of the blockchain-based cross-bank transaction failure notification according to the present invention with reference to the drawings. Please refer to "Figure 1", which is the blockchain-based inter-bank transaction failure notification system of the invention The block diagram of the system is applied to the blockchain network 10 that executes smart contracts. The system includes: a financial terminal host 110, a payment bank terminal host 120, and a payment bank terminal host 130. In actual implementation, the financial-end host 110, the payment-bank end host 120, and the collection-bank end host 130 are all nodes in the blockchain network 10, which are also computer devices, and The P2P methods are connected to each other. Specifically, the financial host 110 is a computer device located in a financial unit, the payment bank host 120 is a computer device located in a payment bank, and the receiving bank host is a computer device located in a receiving bank. In addition to being able to process FXML transaction data, it also forms a Consortium Blockchain based on the blockchain network 10, allowing only authorized institutions, namely: financial units, receiving banks and payment banks, to read on the blockchain Write and publish smart contracts.

所述財金端主機110包含:初始模組111、傳輸模組112、發布模組113及執行模組114。其中,所述初始模組111用以於初始時,預先在區塊鏈網路10發布第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含轉入帳號、轉出帳號及合約地址。所述轉入帳號及轉出帳號是指未完成的跨行交易之交易雙方的銀行帳號,所述合約地址則是根據未完成交易所生成的第二智能合約的合約地址。換句話說,後續所發生的跨行交易在未完成時,會將交易雙方的銀行帳號及生成的第二智能合約的合約地址記載在第一智能合約。 The financial-end host 110 includes an initial module 111, a transmission module 112, a release module 113, and an execution module 114. Among them, the initial module 111 is used to pre-release the first smart contract on the blockchain network 10 for storing multiple transaction incomplete messages in advance, and each transaction incomplete message includes transfer to account and transfer Account number and contract address. The transfer-in account and transfer-out account refer to the bank accounts of both parties to the transaction of the unfinished cross-bank transaction, and the contract address is the contract address of the second smart contract generated according to the unfinished transaction. In other words, when the subsequent inter-bank transaction is not completed, the bank accounts of both parties to the transaction and the generated contract address of the second smart contract will be recorded in the first smart contract.

所述傳輸模組112連接初始模組111,用以接收及轉送FXML交易資料,其中,FXML交易資料包含轉入帳號及轉出帳號。所述FXML交易資料是指金融XML,也就是應用在金融交易的可延伸標記式語言(Extensible Markup Language,XML),提供跨銀行的收付款轉帳的資金調撥。在實際實施上,所述財金端主機110、付款銀行端主機120及收款銀行端主機130均能夠處理及傳輸FXML交易資料,以便實現跨行交易。 The transmission module 112 is connected to the initial module 111 for receiving and transferring FXML transaction data, wherein the FXML transaction data includes a transfer-in account and a transfer-out account. The FXML transaction data refers to financial XML, that is, Extensible Markup Language (Extensible Markup Language) used in financial transactions Language, XML), providing fund transfer for cross-bank payment transfer. In actual implementation, the financial-end host 110, the payment bank-end host 120, and the collection bank-end host 130 are all capable of processing and transmitting FXML transaction data in order to realize cross-bank transactions.

所述發布模組113連接傳輸模組112,用以在偵測到FXML交易資料為未完成交易時,根據FXML交易資料的內容生成對應的第二智能合約,並且執行區塊鏈交易以發布此第二智能合約及獲得對應的合約地址。換句話說,發布模組113是將未完成交易的FXML交易資料轉換為能夠儲存在區塊鏈上的智能合約,並且透過區塊鏈交易的方式發布在區塊鏈網路10。在實際實施上,為了維持交易資料的隱私性,發布模組113可先對FXML交易資料的內容進行加密後,再生成相應的第二智能合約,當付款銀行端主機120及收款銀行端主機130根據合約地址查詢到相應的第二智能合約時,需要先傳送至財金端主機110以進行解密,再由財金端主機110將解密結果以傳輸層安全性協定傳輸至付款銀行端主機120及收款銀行端主機130。如此一來,可避免以明碼的方式在區塊鏈上儲存交易資料。 The issue module 113 is connected to the transmission module 112 to generate a corresponding second smart contract according to the content of the FXML transaction data when the FXML transaction data is detected as an incomplete transaction, and execute a blockchain transaction to issue this The second smart contract and obtain the corresponding contract address. In other words, the publishing module 113 is to convert the uncompleted FXML transaction data into a smart contract that can be stored on the blockchain, and publish it on the blockchain network 10 through the blockchain transaction. In actual implementation, in order to maintain the privacy of the transaction data, the publishing module 113 can first encrypt the content of the FXML transaction data before generating the corresponding second smart contract. When the payment bank host 120 and the receiving bank host 130 When the corresponding second smart contract is queried according to the contract address, it needs to be sent to the financial terminal host 110 for decryption first, and then the financial terminal host 110 transmits the decryption result to the payment bank terminal host 120 using the transport layer security agreement And the receiving bank host 130. In this way, it is possible to avoid storing transaction data on the blockchain in clear code.

所述執行模組114連接發布模組113,用以執行第一智能合約的儲存函式,將第二智能合約對應的合約地址、FXML交易資料包含的轉入帳號及轉出帳號一併儲存至第一智能合約作為其中一個交易未完成訊息,以及在儲存完成時觸發回報事件。在實際實施上,所述儲存函式及回報事件皆為第一智能合約中的功能函式及事件,當執行功能函式時,會改變智能合約在區塊鏈上的狀態,並且在執行完成後,將觸發事件以使區塊鏈網路10中的所有節點皆能得知狀態的改變。要補充說明的是,由於在跨行交易未完成時,會執行第一智能合約的儲存函式,將相關資料(如:第二智能合約對應的合約地址、FXML交易資 料中所包含的轉入帳號及轉出帳號)一併儲存在第一智能合約作為交易未完成訊息。這個儲存函式在儲存完成時會觸發回報事件,以便區塊鏈網路中的各節點,在偵測到這個回報事件被觸發後,即時得知當前有一筆跨行交易未完成。換句話說,這個回報事件就是用來告訴各節點當前有一筆跨行交易未完成。 The execution module 114 is connected to the release module 113 for executing the storage function of the first smart contract, and storing the contract address corresponding to the second smart contract, the transfer account and the transfer account included in the FXML transaction data to The first smart contract serves as one of the transaction incomplete messages and triggers a return event when the storage is completed. In actual implementation, the storage function and the return event are the function functions and events in the first smart contract. When the function function is executed, the state of the smart contract on the blockchain will be changed, and the execution is completed. After that, an event will be triggered so that all nodes in the blockchain network 10 can be informed of the state change. It should be added that, because the inter-bank transaction is not completed, the first smart contract storage function will be executed, and the relevant data (such as: the contract address corresponding to the second smart contract, FXML transaction data The transfer account and transfer account included in the material) are stored in the first smart contract as a transaction incomplete message. This storage function will trigger a report event when the storage is completed, so that each node in the blockchain network, after detecting this report event is triggered, immediately knows that there is currently an inter-bank transaction that has not been completed. In other words, this return event is used to tell each node that there is currently an incomplete cross-bank transaction.

另外,所述付款銀行端主機120為區塊鏈網路10的節點之一,用以在進行跨行交易時,傳送FXML交易資料至財金端主機110,以及在偵測到回報事件被觸發後,自第一智能合約中載入新增的交易未完成訊息,並且根據載入的交易未完成訊息中的轉出帳號查詢付款人聯繫訊息,再根據付款人聯繫訊息傳送通知訊息以通知付款人。在實際實施上,付款銀行端主機120可根據轉出帳號篩選載入的交易未完成訊息,舉例來說,可透過轉出帳號中的銀行代碼排除掉包含其它銀行的轉出帳號之交易未完成訊息。接著,根據篩選出的交易未完成訊息中的合約地址,自相應的第二智能合約載入FXML交易資料以重新生成一個FXML再次交易資料,並且將生成的FXML再次交易資料傳送至財金端主機110以進行跨行交易。 In addition, the payment bank host 120 is one of the nodes of the blockchain network 10, and is used to send FXML transaction data to the financial terminal host 110 when conducting cross-bank transactions, and after detecting the return event is triggered , Load the newly added transaction incomplete message from the first smart contract, and query the payer contact information according to the transferred account in the loaded transaction incomplete message, and then send a notification message to notify the payer according to the payer contact message . In actual implementation, the payment bank host 120 can filter the loaded transaction incomplete messages according to the transfer-out account. For example, the bank code in the transfer-out account can be used to exclude the transaction incomplete including the transfer-out account of other banks message. Then, according to the contract address in the screened transaction incomplete message, load FXML transaction data from the corresponding second smart contract to regenerate an FXML retransaction data, and send the generated FXML retransaction data to the financial terminal host 110 to conduct cross-bank transactions.

至於所述收款銀行端主機130同樣為區塊鏈網路10的節點之一,用以在偵測到回報事件被觸發後,自第一智能合約中載入新增的交易未完成訊息,並且根據載入的交易未完成訊息中的轉入帳號查詢收款人聯繫訊息,再根據收款人聯繫訊息傳送通知訊息以通知收款人。在實際實施上,付款銀行端主機120及收款銀行端主機130皆可包含客戶資料庫,所述客戶資料庫儲存多筆客戶資料,每一筆客戶資料包含轉出帳號及付款人聯繫訊息,或包含轉入帳號及收款人聯繫訊息,以供付款銀行端主機120查詢對應轉出帳號的付款人聯繫訊息,或供收款銀行端主機130查詢對應轉入帳號的收款人聯繫訊息。至於所述付 款人聯繫訊息及收款人聯繫訊息皆可包含連結參數值,用以在傳送通知訊息前,先載入連結參數值以與即時通訊程式的應用程式介面(Application Programming Interface,API)建立連結,再將通知訊息傳送至即時通訊程式以作為即時通訊信息,其中,所述連結參數值包含應用程式介面的統一資源標識符(Uniform Resource Identifier,URI)及授權權杖(Token)。特別要說明的是,當載入新增的交易未完成訊息時,所述付款銀行端主機120及收款銀行端主機130皆可根據其中的合約地址自相應的第二智能合約載入FXML交易資料,並且將此FXML交易資料當中記載的轉出帳號、轉入帳號、金額、交易訊息等等一併作為通知訊息的內容。 As for the receiving bank host 130, which is also one of the nodes of the blockchain network 10, it is used to load the newly added transaction incomplete message from the first smart contract after detecting the return event is triggered, And check the payee contact information according to the transferred account in the loaded transaction incomplete message, and then send a notification message according to the payee contact message to notify the payee. In practical implementation, both the paying bank host 120 and the receiving bank host 130 may include a customer database, and the customer database stores multiple pieces of customer data, and each piece of customer data includes the transfer-out account number and payer contact information, or Contains the transfer account number and the payee contact information for the payment bank host 120 to query the payer contact information corresponding to the transfer account, or for the payment bank host 130 to query the payee contact information corresponding to the transfer account. As for the payment Both the sender contact information and the payee contact information can include link parameter values, which are used to load the link parameter values to establish a connection with the application programming interface (API) of the instant messaging program before sending the notification message. The notification message is sent to the instant messaging program as instant messaging information, wherein the connection parameter value includes a Uniform Resource Identifier (URI) and an authorization token (Token) of the application program interface. In particular, when the newly added transaction incomplete message is loaded, both the paying bank host 120 and the receiving bank host 130 can load the FXML transaction from the corresponding second smart contract according to the contract address therein Data, and the transfer account, transfer account, amount, transaction information, etc. recorded in the FXML transaction data are used as the content of the notification message.

特別要說明的是,在實際實施上,本發明所述的各模組皆可利用各種方式來實現,包含軟體、硬體或其任意組合,例如,在某些實施方式中,各模組可利用軟體及硬體或其中之一來實現,除此之外,本發明亦可部分地或完全地基於硬體來實現,例如,系統中的一個或多個模組可以透過積體電路晶片、系統單晶片(System on Chip,SoC)、複雜可程式邏輯裝置(Complex Programmable Logic Device,CPLD)、現場可程式邏輯閘陣列(Field Programmable Gate Array,FPGA)等來實現。本發明可以是系統及/或電腦程式。電腦程式可以包括電腦可讀儲存媒體,其上載有用於使處理器實現本發明的各個方面的電腦可讀程式指令,電腦可讀儲存媒體可以是可以保持和儲存由指令執行設備使用的指令的有形設備。電腦可讀儲存媒體可以是但不限於電儲存設備、磁儲存設備、光儲存設備、電磁儲存設備、半導體儲存設備或上述的任意合適的組合。電腦可讀儲存媒體的更具體的例子(非窮舉的列表)包括:硬碟、隨機存取記憶體、唯讀記憶體、快閃記憶體、光碟、軟碟以及上述的任意合適的組合。此 處所使用的電腦可讀儲存媒體不被解釋為瞬時信號本身,諸如無線電波或者其它自由傳播的電磁波、通過波導或其它傳輸媒介傳播的電磁波(例如,通過光纖電纜的光信號)、或者通過電線傳輸的電信號。另外,此處所描述的電腦可讀程式指令可以從電腦可讀儲存媒體下載到各個計算/處理設備,或者通過網路,例如:網際網路、區域網路、廣域網路及/或無線網路下載到外部電腦設備或外部儲存設備。網路可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火牆、交換器、集線器及/或閘道器。每一個計算/處理設備中的網路卡或者網路介面從網路接收電腦可讀程式指令,並轉發此電腦可讀程式指令,以供儲存在各個計算/處理設備中的電腦可讀儲存媒體中。執行本發明操作的電腦程式指令可以是組合語言指令、指令集架構指令、機器指令、機器相關指令、微指令、韌體指令、或者以一種或多種程式語言的任意組合編寫的原始碼或目的碼(Object Code),所述程式語言包括物件導向的程式語言,如:Common Lisp、Python、C++、Objective-C、Smalltalk、Delphi、Java、Swift、C#、Perl、Ruby與PHP等,以及常規的程序式(Procedural)程式語言,如:C語言或類似的程式語言。計算機可讀程式指令可以完全地在電腦(或稱為主機)上執行、部分地在電腦上執行、作為一個獨立的軟體執行、部分在客戶端電腦上部分在遠端電腦上執行、或者完全在遠端電腦或伺服器上執行。 In particular, in actual implementation, each module described in the present invention can be implemented in various ways, including software, hardware, or any combination thereof. For example, in some embodiments, each module may Using software and hardware or one of them, in addition to this, the present invention can also be implemented partially or completely based on hardware, for example, one or more modules in the system can be through integrated circuit chips, It is realized by System on Chip (SoC), Complex Programmable Logic Device (CPLD), Field Programmable Gate Array (FPGA), etc. The invention may be a system and/or computer program. The computer program may include a computer-readable storage medium loaded with computer-readable program instructions for causing the processor to implement various aspects of the present invention. The computer-readable storage medium may be a tangible form that can hold and store instructions used by the instruction execution device equipment. The computer-readable storage medium may be, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (non-exhaustive list) include hard disks, random access memory, read only memory, flash memory, optical disks, floppy disks, and any suitable combination of the foregoing. this Computer-readable storage media used in the premises are not to be interpreted as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (eg, optical signals through fiber optic cables), or transmission through wires Electrical signal. In addition, the computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing/processing devices, or via a network, such as the Internet, regional networks, wide area networks, and/or wireless networks To external computer equipment or external storage devices. The network may include copper transmission cables, optical fiber transmission, wireless transmission, routers, firewalls, switches, hubs, and/or gateways. The network card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for computer-readable storage media stored in each computing/processing device in. The computer program instructions to perform the operations of the present invention may be combined language instructions, instruction set architecture instructions, machine instructions, machine-related instructions, microinstructions, firmware instructions, or source code or object code written in any combination of one or more programming languages (Object Code), the programming language includes object-oriented programming languages, such as: Common Lisp, Python, C++, Objective-C, Smalltalk, Delphi, Java, Swift, C#, Perl, Ruby, PHP, etc., as well as conventional programs Procedural programming language, such as C language or similar programming language. Computer readable program instructions can be executed entirely on the computer (or host), partly on the computer, as a standalone software, partly on the client computer, partly on the remote computer, or completely on Run on a remote computer or server.

請參閱「第2A圖」及「第2B圖」,「第2A圖」及「第2B圖」為本發明基於區塊鏈的跨行交易失敗通知方法之方法流程圖,應用在執行智能合約的區塊鏈網路10,其步驟包括:提供財金端主機110、付款銀行端主機120及收款銀行端主機130作為區塊鏈網路10的節點,其中,財金端主機110預先發布第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含轉 入帳號、轉出帳號及合約地址(步驟210);當進行跨行交易時,付款銀行端主機120傳送FXML交易資料至財金端主機110,由財金端主機110將FXML交易資料轉送至收款銀行端主機130,其中,FXML交易資料包含轉入帳號及轉出帳號(步驟220);當財金端主機110偵測到FXML交易資料為未完成交易時,根據此FXML交易資料的內容生成對應的第二智能合約,並且執行區塊鏈交易以發布此第二智能合約及獲得對應的合約地址(步驟230);財金端主機110執行第一智能合約的儲存函式,用以將第二智能合約對應的合約地址、FXML交易資料包含的轉入帳號及轉出帳號一併儲存至第一智能合約作為交易未完成訊息其中之一,以及在儲存完成時觸發回報事件(步驟240);付款銀行端主機120及收款銀行端主機130偵測到回報事件被觸發後,自第一智能合約中載入新增的交易未完成訊息,其中,付款銀行端主機120根據載入的交易未完成訊息中的轉出帳號查詢付款人聯繫訊息,並且根據此付款人聯繫訊息傳送通知訊息以通知付款人,收款銀行端主機130根據載入的交易未完成訊息中的轉入帳號查詢收款人聯繫訊息,並且根據此收款人聯繫訊息傳送通知訊息以通知收款人(步驟250)。透過上述步驟,即可透過提供財金端主機110、付款銀行端主機120及收款銀行端主機130作為區塊鏈網路10的節點,以便在跨行交易未完成時,根據FXML交易訊息生成相應的智能合約,並且將智能合約發布在區塊鏈網路10以觸發事件,當付款銀行端主機120及收款銀行端主機130偵測到事件被觸發後,查詢付款人及收款人的聯繫訊息以同時通知付款人及收款人。 Please refer to "Picture 2A" and "Picture 2B", "Picture 2A" and "Picture 2B" are flow charts of the method for notification of the failure of cross-bank transactions based on the blockchain of the present invention, which is applied in the area where smart contracts are executed The block chain network 10 includes the steps of providing a financial terminal host 110, a payment bank terminal host 120, and a receiving bank terminal host 130 as nodes of the blockchain network 10, wherein the financial terminal host 110 pre-releases the first Smart contract for storing multiple transaction incomplete messages, each transaction incomplete message includes transfer Into account, out of account and contract address (step 210); when conducting inter-bank transactions, the payment bank host 120 sends FXML transaction data to the financial terminal host 110, and the financial terminal host 110 transfers the FXML transaction data to the collection The bank-side host 130, wherein the FXML transaction data includes the transfer-in account and the transfer-out account (step 220); when the financial-end host 110 detects that the FXML transaction data is an incomplete transaction, it generates a correspondence according to the content of the FXML transaction data The second smart contract, and execute the blockchain transaction to issue this second smart contract and obtain the corresponding contract address (step 230); the financial terminal host 110 executes the storage function of the first smart contract to transfer the second The contract address corresponding to the smart contract, the transfer account and transfer account included in the FXML transaction data are stored in the first smart contract as one of the transaction incomplete messages, and a return event is triggered when the storage is completed (step 240); payment After the bank host 120 and the receiving bank host 130 detect that the return event is triggered, the newly added transaction incomplete message is loaded from the first smart contract, wherein the payment bank host 120 is incomplete according to the loaded transaction The transfer-out account in the message queries the payer's contact information, and sends a notification message to notify the payer according to the payer's contact message, and the receiving bank host 130 queries the payee based on the transfer-in account in the loaded transaction incomplete message The contact message, and send a notification message to notify the payee based on the payee contact message (step 250). Through the above steps, you can provide the financial terminal host 110, the payment bank terminal host 120 and the collection bank terminal host 130 as the nodes of the blockchain network 10, so that when the cross-bank transaction is not completed, the corresponding generated according to the FXML transaction message Smart contract and publish the smart contract on the blockchain network 10 to trigger the event. When the payment bank host 120 and the receiving bank host 130 detect that the event is triggered, check the contact between the payer and the payee The message informs the payer and the payee at the same time.

另外,如「第2B圖」所示意,在步驟250之後,付款銀行端主機120可根據轉出帳號篩選載入的交易未完成訊息,並且根據篩選出的交易未完成訊息中的合約地址,自相應的第二智能合約載入FXML交易資料以重新生成 FXML再次交易資料,並且將此FXML再次交易資料傳送至財金端主機110以進行跨行交易(步驟251)。要補充說明的是,步驟240及步驟250中提及的回報事件是區塊鏈智能合約的技術,如前所述,事件和函式都是智能合約的一部分,只不過在文中將儲存函式所觸發的事件定義為「回報事件」。 In addition, as shown in "Figure 2B", after step 250, the payment bank host 120 may filter the loaded transaction incomplete message according to the transferred account, and according to the contract address in the filtered transaction incomplete message, from The corresponding second smart contract is loaded with FXML transaction data to be regenerated FXML re-transaction data, and send the FXML re-transaction data to the financial terminal host 110 for inter-bank transactions (step 251). It should be added that the return event mentioned in step 240 and step 250 is the technology of blockchain smart contract. As mentioned above, the event and function are both part of the smart contract, but the function will be stored in the text. The triggered event is defined as "reward event".

以下配合「第3圖」及「第4圖」以實施例的方式進行如下說明,請先參閱「第3圖」,「第3圖」為本發明基於區塊鏈的跨行交易失敗通知方法之循序圖。初始時,財金端主機110、付款銀行端主機120及收款銀行端主機130基於區塊鏈技術組成聯盟鏈(即:區塊鏈網路10的一種),接著,財金端主機110會先發布第一智能合約,以便透過此第一智能合約記錄後續跨行交易失敗時所產生的第二智能合約的合約地址、轉出帳號及轉入帳號等等。當付款人欲透過付款銀行支付金額給收款人的收款銀行以進行跨行交易時,付款銀行端主機120會傳送相應的FXML交易資料至財金端主機110,再由財金端主機110將此FXML交易資料傳送至收款銀行端主機130。假設未完成交易,財金端主機110將接收到來自收款銀行端主機130所回應的FXML交易資料,接著再轉送至付款銀行端主機120,此FXML交易資料中會記載「未完成交易」。除此之外,財金端主機110還會根據這個記載為未完成交易的FXML交易資料來生成相應的第二智能合約,以及執行第一智能合約中的儲存函式將第二智能合約的合約地址、FXML交易資料中的轉出帳號及轉入帳號一併儲存至第一智能合約,進而觸發回報事件。此時,付款銀行端主機120會偵測到回報事件被觸發,故自第一智能合約中載入新增的交易未完成訊息,接著,根據載入的交易未完成訊息中的轉出帳號查詢付款人聯繫訊息,並且根據此付款人聯繫訊息傳送通知訊息以通知付款人。另一方面,收款銀行端主機130同樣也會偵測到回報事件被觸發,並且自 第一智能合約中載入新增的交易未完成訊息,以及根據載入的交易未完成訊息中的轉入帳號查詢款人聯繫訊息,並且根據此收款人聯繫訊息傳送通知訊息以通知收款人。至此,雖然跨行交易未完成,但是無論是付款人或收款人皆能得到通知,避免以往收款人無法得知交易結果而被蒙蔽或詐騙的情況,進而有效提升跨行交易的透明性。 The following description will be made in conjunction with "Picture 3" and "Picture 4" by way of example, please refer to "Picture 3" first, "Picture 3" is the method for notification of the failure of cross-bank transactions based on blockchain of the present invention Step by step diagram. Initially, the financial terminal host 110, the payment bank terminal host 120, and the receiving bank terminal host 130 form a consortium chain (ie: a type of blockchain network 10) based on blockchain technology. Then, the financial terminal host 110 will First publish the first smart contract to record the contract address, transfer-out account, transfer-in account, etc. of the second smart contract generated when the subsequent cross-bank transaction fails through this first smart contract. When the payer wants to pay the amount to the payee's receiving bank through the payment bank for inter-bank transactions, the payment bank host 120 will send the corresponding FXML transaction data to the financial terminal host 110, and then the financial terminal host 110 will The FXML transaction data is sent to the host 130 of the receiving bank. Assuming that the transaction is not completed, the financial host 110 will receive the FXML transaction data from the receiving bank host 130, and then forward it to the payment bank host 120. The FXML transaction data will record "unfinished transaction". In addition, the financial terminal host 110 will also generate a corresponding second smart contract based on the FXML transaction data recorded as an unfinished transaction, and execute the stored function in the first smart contract to convert the contract of the second smart contract The transfer-out account and transfer-in account in the address and FXML transaction data are stored in the first smart contract, which in turn triggers a return event. At this time, the payment bank host 120 will detect that the return event is triggered, so the newly added transaction incomplete message is loaded from the first smart contract, and then, based on the transferred account query in the loaded transaction incomplete message Payer contact information, and send a notification message based on this payer contact information to notify the payer. On the other hand, the receiving bank host 130 will also detect that the return event is triggered, and The newly added transaction incomplete message is loaded in the first smart contract, and the payer contact information is queried according to the transferred account in the loaded transaction incomplete message, and a notification message is sent according to this payee contact message to notify the payment people. At this point, although the inter-bank transaction is not completed, both the payer and the payee can be notified, to avoid the situation where the payee cannot be hoodwinked or defrauded in the past, and to effectively improve the transparency of the inter-bank transaction.

如「第4圖」所示意,「第4圖」為應用本發明以即時通訊信息通知交易雙方之示意圖。假設付款人聯繫訊息及收款人聯繫訊息皆包含連結參數值,那麼在傳送通知訊息前,可先載入連結參數值與即時通訊程式的API建立連結,再將通知訊息傳送至即時通訊程式以作為即時通訊信息。舉例來說,假設付款人在轉帳視窗400的輸入區塊411鍵入轉入帳號及金額,並且點選轉帳元件412進行跨行交易,當反饋的交易結果為交易未完成時,付款銀行端主機120會載入付款人聯繫訊息的連結參數以與付款人的即時通訊程式420的API建立連結,再將通知訊息透過API傳送至即時通訊程式420以作為即時通訊信息421,即時提供付款人瀏覽。同時,收款銀行端主機130也會載入收款人聯繫訊息的連結參數以與收款人的即時通訊程式430的API建立連結,再將通知訊息透過API傳送至即時通訊程式430以作為即時通訊信息431,即時提供收款人瀏覽。至此,付款人及收款人皆能即時獲得通知訊息。 As shown in "Figure 4", "Figure 4" is a schematic diagram of notifying both parties of a transaction with instant messaging information using the present invention. Assuming that both the payer's contact information and the payee's contact information contain link parameter values, before sending the notification message, you can first load the link parameter value and establish a link with the API of the instant messaging program, and then send the notification message to the instant messaging program to As an instant messaging message. For example, suppose that the payer enters the transfer account number and amount in the input block 411 of the transfer window 400, and clicks the transfer element 412 to perform an inter-bank transaction. When the transaction result returned is that the transaction is not completed, the payment bank host 120 will The link parameters of the payer's contact information are loaded to establish a link with the API of the payer's instant messaging program 420, and then the notification message is sent to the instant messaging program 420 through the API as instant messaging information 421, which provides the payer's browsing in real time. At the same time, the receiving bank host 130 will also load the link parameters of the payee's contact message to establish a link with the API of the payee's instant messaging program 430, and then send the notification message to the instant messaging program 430 through the API as real-time The communication information 431 provides the payee to browse instantly. At this point, both the payer and the payee can get the notification message in real time.

綜上所述,可知本發明與先前技術之間的差異在於透過提供財金端主機、付款銀行端主機及收款銀行端主機作為區塊鏈網路的節點,以便在跨行交易未完成時,根據FXML交易訊息生成相應的智能合約,並且將智能合約發布在區塊鏈網路以觸發事件,當付款銀行端主機及收款銀行端主機偵測到事件被觸發後,查詢付款人及收款人的聯繫訊息以同時通知付款人及收款人,藉由 此一技術手段可以解決先前技術所存在的問題,進而達成提高跨行交易的透明性之技術功效。 In summary, it can be seen that the difference between the present invention and the prior art lies in providing a financial-side host, a payment bank-side host, and a collection bank-side host as the nodes of the blockchain network, so that when the cross-bank transaction is not completed, Generate the corresponding smart contract according to the FXML transaction message, and publish the smart contract on the blockchain network to trigger the event. When the payment bank host and the receiving bank host detect that the event is triggered, query the payer and the payment The contact information of the person to notify the payer and the payee at the same time, by This technical method can solve the problems of the previous technology, and then achieve the technical effect of improving the transparency of cross-bank transactions.

雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。 Although the present invention is disclosed as the foregoing embodiments, it is not intended to limit the present invention. Any person who is familiar with similar arts can make some changes and modifications without departing from the spirit and scope of the present invention. The scope of patent protection shall be subject to the definition of the scope of patent application attached to this specification.

10:區塊鏈網路 10: Blockchain network

110:財金端主機 110: financial terminal host

111:初始模組 111: Initial module

112:傳輸模組 112: Transmission module

113:發布模組 113: Release module

114:執行模組 114: execution module

120:付款銀行端主機 120: payment bank host

130:收款銀行端主機 130: Receiving bank host

Claims (10)

一種基於區塊鏈的跨行交易失敗通知系統,應用在執行智能合約的一區塊鏈網路,該系統包含:一財金端主機,該財金端主機為該區塊鏈網路的節點之一,該財金端主機包含:一初始模組,用以於初始時,預先發布一第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含一轉入帳號、一轉出帳號及一合約地址;一傳輸模組,連接該初始模組,用以接收及轉送一金融可延伸標記式語言(Financial Extensible Markup Language,FXML)交易資料,其中,該FXML交易資料包含該轉入帳號及該轉出帳號;一發布模組,連接該傳輸模組,用以在偵測到該FXML交易資料為未完成交易時,根據該FXML交易資料的內容生成對應的一第二智能合約,並且執行區塊鏈交易以發布該第二智能合約及獲得對應的該合約地址;以及一執行模組,連接該發布模組,用以執行該第一智能合約的一儲存函式,將該第二智能合約對應的該合約地址、該FXML交易資料包含的該轉入帳號及該轉出帳號一併儲存至該第一智能合約作為所述交易未完成訊息其中之一,以及在儲存完成時觸發一回報事件; 一付款銀行端主機,該付款銀行端主機為該區塊鏈網路的節點之一,用以在進行跨行交易時,傳送該FXML交易資料至該財金端主機,以及在偵測到該回報事件被觸發後,自該第一智能合約中載入新增的所述交易未完成訊息,並且根據載入的所述交易未完成訊息中的該轉出帳號查詢一付款人聯繫訊息,再根據該付款人聯繫訊息傳送一通知訊息以通知付款人;以及一收款銀行端主機,該收款銀行端主機為該區塊鏈網路的節點之一,用以在偵測到該回報事件被觸發後,自該第一智能合約中載入新增的所述交易未完成訊息,並且根據載入的所述交易未完成訊息中的該轉入帳號查詢一收款人聯繫訊息,再根據該收款人聯繫訊息傳送該通知訊息以通知收款人。 A blockchain-based cross-bank transaction failure notification system applied to a blockchain network that executes smart contracts. The system includes: a financial terminal host, which is a node of the blockchain network First, the financial terminal host includes: an initial module for initial release of a first smart contract for storing multiple transaction incomplete messages, each transaction incomplete message includes a transfer account, A transfer-out account and a contract address; a transmission module, connected to the initial module, for receiving and transferring a Financial Extensible Markup Language (FXML) transaction data, where the FXML transaction data includes The transfer-in account and the transfer-out account; a publishing module, connected to the transmission module, for generating a corresponding second according to the content of the FXML transaction data when the FXML transaction data is detected as an incomplete transaction Smart contract, and execute blockchain transactions to release the second smart contract and obtain the corresponding contract address; and an execution module connected to the release module to execute a stored function of the first smart contract, The contract address corresponding to the second smart contract, the transfer-in account and the transfer-out account included in the FXML transaction data are stored in the first smart contract as one of the transaction incomplete messages, and in the storage Trigger a return event upon completion; A payment bank host, which is one of the nodes of the blockchain network, is used to send the FXML transaction data to the financial terminal host when conducting cross-bank transactions, and to detect the return After the event is triggered, load the newly added transaction incomplete message from the first smart contract, and query a payer contact information based on the transferred account in the loaded transaction incomplete message, and then The contact information of the payer sends a notification message to notify the payer; and a host of the receiving bank, which is one of the nodes of the blockchain network, is used to detect the return event After triggering, load the newly added transaction incomplete message from the first smart contract, and query a payee contact information according to the transferred account in the loaded transaction incomplete message, and then according to the The payee contact message sends the notification message to notify the payee. 根據申請專利範圍第1項之基於區塊鏈的跨行交易失敗通知系統,其中該付款銀行端主機根據該轉出帳號篩選載入的所述交易未完成訊息,並且根據篩選出的所述交易未完成訊息中的所述合約地址,自相應的該第二智能合約載入該FXML交易資料以重新生成一FXML再次交易資料,並且將該FXML再次交易資料傳送至該財金端主機以進行跨行交易。 According to the patent application scope item 1, the blockchain-based cross-bank transaction failure notification system, wherein the payment bank terminal host screens the transaction incomplete message loaded according to the transfer-out account, and according to the filtered transaction Complete the contract address in the message, load the FXML transaction data from the corresponding second smart contract to regenerate a FXML re-transaction data, and send the FXML re-transaction data to the financial terminal host for cross-bank transactions . 根據申請專利範圍第1項之基於區塊鏈的跨行交易失敗通知系統,其中該付款銀行端主機及該收款銀行端主機皆包含一客戶資料庫,所述客戶資料庫儲存多筆客戶資料,每一筆客戶資料包含該轉出帳號及該付款人聯繫訊息,或包含該轉入帳號及該收款人聯繫訊息,以供該付款銀行端主機查詢對應該轉出帳號的該付款 人聯繫訊息,或供該收款銀行端主機查詢對應該轉入帳號的該收款人聯繫訊息。 According to the first patent application-based blockchain-based cross-bank transaction failure notification system, the payment bank host and the receiving bank host both contain a customer database, and the customer database stores multiple customer data, Each customer data contains the transfer-out account and the payer contact information, or contains the transfer-in account and the payee contact information for the payment bank host to query the payment corresponding to the transfer-out account Person’s contact information, or for the receiving bank’s host to inquire about the recipient’s contact information that should be transferred to the account. 根據申請專利範圍第1項之基於區塊鏈的跨行交易失敗通知系統,其中該發布模組先對該FXML交易資料的內容進行加密後,再生成相應的該第二智能合約,當該付款銀行端主機及該收款銀行端主機根據該合約地址查詢到相應的該第二智能合約時,先傳送至該財金端主機以進行解密,再由該財金端主機將解密結果以傳輸層安全性協定傳輸至該付款銀行端主機及該收款銀行端主機。 According to the first patent application-based blockchain-based cross-bank transaction failure notification system, the release module first encrypts the content of the FXML transaction data, and then generates the corresponding second smart contract when the payment bank When the end host and the receiving bank end host query the corresponding second smart contract according to the contract address, they first send it to the financial end host for decryption, and then the financial end host will decrypt the decrypted result to the transport layer security The sex agreement is transmitted to the payment bank host and the collection bank host. 根據申請專利範圍第1項之基於區塊鏈的跨行交易失敗通知系統,其中該付款人聯繫訊息及該收款人聯繫訊息皆包含至少一連結參數值,用以在傳送該通知訊息前,先載入所述連結參數值以與一即時通訊程式的一應用程式介面建立連結,再將該通知訊息傳送至該即時通訊程式以作為一即時通訊信息,其中,所述連結參數值包含該應用程式介面的統一資源標識符(Uniform Resource Identifier,URI)及授權權杖(Token)。 According to the first patent application-based blockchain-based cross-bank transaction failure notification system, the payer contact message and the payee contact message both contain at least one link parameter value, which is used to send the notification message before Loading the link parameter value to establish a link with an application interface of an instant messaging program, and then sending the notification message to the instant messaging program as an instant messaging message, wherein the link parameter value includes the application Uniform Resource Identifier (URI) and authorization token (Token) of the interface. 一種基於區塊鏈的跨行交易失敗通知方法,應用在執行智能合約的一區塊鏈網路,其步驟包括:提供一財金端主機、一付款銀行端主機及一收款銀行端主機作為該區塊鏈網路的節點,其中,該財金端主機預先發布一第一智能合約以供儲存多筆交易未完成訊息,每一筆交易未完成訊息皆包含一轉入帳號、一轉出帳號及一合約地址; 當進行跨行交易時,該付款銀行端主機傳送一金融可延伸標記式語言(Financial Extensible Markup Language,FXML)交易資料至該財金端主機,由該財金端主機將該FXML交易資料轉送至該收款銀行端主機,其中,該FXML交易資料包含該轉入帳號及該轉出帳號;當該財金端主機偵測到該FXML交易資料為未完成交易時,根據該FXML交易資料的內容生成對應的一第二智能合約,並且執行區塊鏈交易以發布該第二智能合約及獲得對應的該合約地址;該財金端主機執行該第一智能合約的一儲存函式,用以將該第二智能合約對應的該合約地址、該FXML交易資料包含的該轉入帳號及該轉出帳號一併儲存至該第一智能合約作為所述交易未完成訊息其中之一,以及在儲存完成時觸發一回報事件;以及該付款銀行端主機及該收款銀行端主機偵測到該回報事件被觸發後,自該第一智能合約中載入新增的所述交易未完成訊息,其中,該付款銀行端主機根據載入的所述交易未完成訊息中的該轉出帳號查詢一付款人聯繫訊息,並且根據該付款人聯繫訊息傳送一通知訊息以通知付款人,該收款銀行端主機根據載入的所述交易未完成訊息中的該轉入帳號查詢一收款人聯繫訊息,並且根據該收款人聯繫訊息傳送該通知訊息以通知收款人。 A blockchain-based cross-bank transaction failure notification method, applied to a blockchain network that executes smart contracts, the steps include: providing a financial terminal host, a payment bank terminal host and a collection bank terminal host as the The node of the blockchain network, where the financial terminal host pre-releases a first smart contract for storing multiple transaction incomplete messages. Each transaction incomplete message includes a transfer-in account, a transfer-out account and A contract address; When conducting inter-bank transactions, the payment bank host sends a Financial Extensible Markup Language (FXML) transaction data to the financial terminal host, and the financial terminal host transfers the FXML transaction data to the financial terminal host The host of the receiving bank, where the FXML transaction data includes the transfer-in account and the transfer-out account; when the financial-end host detects that the FXML transaction data is an incomplete transaction, it is generated according to the content of the FXML transaction data Corresponding to a second smart contract, and execute a blockchain transaction to publish the second smart contract and obtain the corresponding contract address; the financial terminal host executes a storage function of the first smart contract to use The contract address corresponding to the second smart contract, the transfer-in account and the transfer-out account included in the FXML transaction data are stored in the first smart contract as one of the transaction incomplete messages, and when the storage is completed Triggering a return event; and after the payment bank host and the receiving bank host detect that the return event is triggered, load the newly added transaction incomplete message from the first smart contract, wherein, the The payer bank host queries a payer contact message based on the transfer-out account in the transaction unfinished message loaded, and sends a notification message to notify the payer according to the payer contact message. The transferred account in the loaded transaction incomplete message queries a payee contact message, and sends the notification message to notify the payee according to the payee contact message. 根據申請專利範圍第6項之基於區塊鏈的跨行交易失敗通知方法,其中該方法更包含該付款銀行端主機根據該轉出帳號篩選載 入的所述交易未完成訊息,並且根據篩選出的所述交易未完成訊息中的所述合約地址,自相應的該第二智能合約載入該FXML交易資料以重新生成一FXML再次交易資料,並且將該FXML再次交易資料傳送至該財金端主機以進行跨行交易的步驟。 According to the sixth patent application-based blockchain-based cross-bank transaction failure notification method, wherein the method further includes the payment bank-side host screening and loading based on the transferred account Enter the transaction incomplete message, and load the FXML transaction data from the corresponding second smart contract according to the contract address in the filtered transaction incomplete message to regenerate a FXML retransaction data, And the step of sending the FXML re-transaction data to the financial terminal host for inter-bank transactions. 根據申請專利範圍第6項之基於區塊鏈的跨行交易失敗通知方法,其中該付款銀行端主機及該收款銀行端主機皆包含一客戶資料庫,所述客戶資料庫儲存多筆客戶資料,每一筆客戶資料包含該轉出帳號及該付款人聯繫訊息,或包含該轉入帳號及該收款人聯繫訊息,以供該付款銀行端主機查詢對應該轉出帳號的該付款人聯繫訊息,或供該收款銀行端主機查詢對應該轉入帳號的該收款人聯繫訊息。 According to the 6th patent application-based blockchain-based cross-bank transaction failure notification method, the payment bank host and the receiving bank host both include a customer database, and the customer database stores multiple customer data, Each piece of customer information includes the transfer-out account and the payer's contact information, or contains the transfer-in account and the payee's contact information for the payment bank host to query the payer's contact information corresponding to the transfer-out account, Or for the receiving bank host to query the contact information of the payee corresponding to the account. 根據申請專利範圍第6項之基於區塊鏈的跨行交易失敗通知方法,其中該財金端主機對該FXML交易資料的內容進行加密後,再生成相應的該第二智能合約,當該付款銀行端主機及該收款銀行端主機根據該合約地址查詢到相應的該第二智能合約時,先傳送至該財金端主機以進行解密,再由該財金端主機將解密結果以傳輸層安全性協定傳輸至該付款銀行端主機及該收款銀行端主機。 According to the 6th patent application-based blockchain-based cross-bank transaction failure notification method, in which the financial end host encrypts the content of the FXML transaction data, and then generates the corresponding second smart contract, when the payment bank When the end host and the receiving bank end host query the corresponding second smart contract according to the contract address, they first send it to the financial end host for decryption, and then the financial end host will decrypt the decrypted result to the transport layer security The sex agreement is transmitted to the payment bank host and the collection bank host. 根據申請專利範圍第6項之基於區塊鏈的跨行交易失敗通知方法,其中該付款人聯繫訊息及該收款人聯繫訊息皆包含至少一連結參數值,用以在傳送該通知訊息前,先載入所述連結參數值以與一即時通訊程式的一應用程式介面建立連結,再將該通知訊息 傳送至該即時通訊程式以作為一即時通訊信息,其中,所述連結參數值包含該應用程式介面的統一資源標識符(Uniform Resource Identifier,URI)及授權權杖(Token)。 According to the sixth patent application-based blockchain-based cross-bank transaction failure notification method, wherein the payer contact message and the payee contact message both contain at least one link parameter value, which is used to send the notification message before Load the link parameter value to establish a link with an application interface of an instant messaging program, and then send the notification message It is sent to the instant messaging program as an instant messaging message, wherein the connection parameter value includes a Uniform Resource Identifier (URI) and an authorization token (Token) of the application program interface.
TW108109313A 2019-03-19 2019-03-19 Interbank transaction failure noticing system based on blockchain and method thereof TWI696970B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108109313A TWI696970B (en) 2019-03-19 2019-03-19 Interbank transaction failure noticing system based on blockchain and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108109313A TWI696970B (en) 2019-03-19 2019-03-19 Interbank transaction failure noticing system based on blockchain and method thereof

Publications (2)

Publication Number Publication Date
TWI696970B true TWI696970B (en) 2020-06-21
TW202036439A TW202036439A (en) 2020-10-01

Family

ID=72176477

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108109313A TWI696970B (en) 2019-03-19 2019-03-19 Interbank transaction failure noticing system based on blockchain and method thereof

Country Status (1)

Country Link
TW (1) TWI696970B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112883687B (en) * 2021-02-05 2022-03-15 北京科技大学 Law contract interactive labeling method based on contract text markup language

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107369008A (en) * 2017-07-17 2017-11-21 北京京东金融科技控股有限公司 For improving management method, the apparatus and system of bill business security
CN107705113A (en) * 2017-09-06 2018-02-16 浙江大学 A kind of cross-border inter-bank method of payment of block chain based on Baas frameworks and system
US20180075453A1 (en) * 2016-09-15 2018-03-15 American Express Travel Related Services Company, Inc. Systems and methods for blockchain based payment networks
CN107862600A (en) * 2017-10-24 2018-03-30 深圳四方精创资讯股份有限公司 Bank transfer method and its system based on block chain
US20180137465A1 (en) * 2016-11-11 2018-05-17 International Business Machines Corporation Smart contract admission check and fault tolerance in a blockchain
TWM572512U (en) * 2018-09-28 2019-01-01 彰化商業銀行股份有限公司 Interbank account transaction inquiry system using blockchain technology
TWM582171U (en) * 2019-03-19 2019-08-11 彰化商業銀行股份有限公司 Cross-bank transaction failure notification system based on blockchain

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180075453A1 (en) * 2016-09-15 2018-03-15 American Express Travel Related Services Company, Inc. Systems and methods for blockchain based payment networks
US20180137465A1 (en) * 2016-11-11 2018-05-17 International Business Machines Corporation Smart contract admission check and fault tolerance in a blockchain
CN107369008A (en) * 2017-07-17 2017-11-21 北京京东金融科技控股有限公司 For improving management method, the apparatus and system of bill business security
CN107705113A (en) * 2017-09-06 2018-02-16 浙江大学 A kind of cross-border inter-bank method of payment of block chain based on Baas frameworks and system
CN107862600A (en) * 2017-10-24 2018-03-30 深圳四方精创资讯股份有限公司 Bank transfer method and its system based on block chain
TWM572512U (en) * 2018-09-28 2019-01-01 彰化商業銀行股份有限公司 Interbank account transaction inquiry system using blockchain technology
TWM582171U (en) * 2019-03-19 2019-08-11 彰化商業銀行股份有限公司 Cross-bank transaction failure notification system based on blockchain

Also Published As

Publication number Publication date
TW202036439A (en) 2020-10-01

Similar Documents

Publication Publication Date Title
US11410136B2 (en) Procurement system using blockchain
AU2014238282B2 (en) Systems and methods for cryptographic security as a service
TWI772654B (en) Escrowing system for cross-blockchain third-party settlement and method thereof
US20140279542A1 (en) Mobile currency messaging systems
US11715104B2 (en) Systems and methods for executing real-time electronic transactions using API calls
US20220300917A1 (en) Systems and methods for executing real-time electronic transactions using a routing decision model
US20170300873A1 (en) System and method for secure automated clearinghouse transactions
TWI646487B (en) Smart contract executing system with permission rating and avoid duplication and method thereof
TWI696970B (en) Interbank transaction failure noticing system based on blockchain and method thereof
TWM582171U (en) Cross-bank transaction failure notification system based on blockchain
KR20210068039A (en) Context-based filtering within a subset of network nodes implementing the trading system
US11720894B2 (en) Systems and methods for executing real-time reconciliation and notification of electronic transactions
TW202125374A (en) Electronic receipt/invoice confirming and escrow system based on blockchain and method thereof
WO2022166557A1 (en) Warehouse receipt processing method based on blockchain, and warehouse receipt processing system
US11314710B2 (en) System and method for database sharding using dynamic IDs
TWI693573B (en) Digital currency issuing system with regulatory and total controllable and method thereof
US11816240B1 (en) Self-modifying data containers for improved data security
US20240007309A1 (en) Systems and methods for facilitating blockchain operations involving on chain and off chain interactions
Parameswarappa et al. Twitter Sentimental Analysis for Businesses Using Python Web Services in Salesforce Cloud
TW202228057A (en) Online loan guarantee immediately system and method thereof
CN117795541A (en) System and method for processing batch payments in a real-time payment network