The Proof of Concept
Proposal 7: Payment Instruction Message Directly Originated from Chain Code
Proposal 7: Payment Instruction Message Directly Originated from Chain Code
Most participants of a Payment Infrastructure network have to safely exchange message standards each others.
The European Payment Council (EPC) adopted UNIFI (ISO 20022) XML message standards - also called Payment Instruction File - for exchanging payment information between banks in the Single Euro Payments Area (SEPA).
SWIFT uses MT and MX message standards (ISO 20022 and ISO 15022) for exchanging payment information throught the financial institutions network worldwide.
Our solution wants to provide a generic integration of theses message standards system like SEPA or SWIFT using an Hyperledger Blockchain.
In the lines below, we will explaine the Proof of Concept for the SEPA Payment use-case.
When some payments are initiated between several Originators (payor) and Beneficiaries, Originator's Bank (Red Bank) and Beneficiary's Bank (Blue Bank) are instructed of the credit transfers and they have to to exchange Payment Instruction Files through Clearing and Settlement Mechanism.
All participants need to know the status of payment instructions process in a secure, confidential and efficiently way. That's why this Proof of Concept propose to use blockchain technology to manage and share Payment Instructions File Status to concerned parties.
The use case context includes :
For now, the use case excludes :
Express
d3.js
bootstrap
jquery
Font-awesome
web browser
NodeJS runtime
Hyperledger v0.6
npm tool version
Docker
Slack
Trello
Bitbucket
Google Drive
While this could ultimately be the case (see Bitcoin), the current state of the Bank industry cannot handle as big of a change in a short period of time. The accounts and payments logic is a complex system handled differently by multiple stakeholders. For these reasons, we chose to use the Hyperledger Blockchain as a "payments state manager". There are many schemas and pages on this site explaining our solution.
The Hyperledger fabric is not meant to store files. Other Blockchain implementations are specialized in this task and are probably are a better fit for that, this is why our solution only stores "references" (checksums) to the real files hosted on an other platform.
It is also worth noting that we should not let the smart contracts handle plain (as in not crypted) files, as other peers could see their potentially confidential content. For this reason, the blockchain itself (using smart contracts) cannot validate the payment files format.
Smart contracts must be deterministic to avoid consensus issues. This is a major problematic while designing a Blockchain system because it prevents the Blockchain from interacting with the "external" world directly.
While Interledger was a solid tool that we could have used to design our solution, the blockchain do not carry the "true" payment informations (accounts, currencies..) for the reason cited above. As a result, Interledger cannot be used in the scope of our solution.
© Copright 2017 Blockbusters-Hackathon - All Rights Reserved -- Blockbusters is a registered team in the IBM-Capgemini Blockchain Hackathon