Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ISO20022 PoC #1940

Merged
merged 22 commits into from
Sep 12, 2023
Merged

ISO20022 PoC #1940

merged 22 commits into from
Sep 12, 2023

Conversation

OpenSmartContract
Copy link
Contributor

@OpenSmartContract OpenSmartContract commented Aug 29, 2023

Project Abstract

Response to RFP 20022

Project name: ISO20022 PoC

Cross border payment example as proof of concepts,leveraging the unique Off-Chain Features of Substrate that show the advantages of using ISO20022 together with Substrate.

Grant level

  • Level 1: Up to $10,000, 2 approvals
  • Level 2: Up to $30,000, 3 approvals
  • Level 3: Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

  • The application template has been copied and aptly renamed (project_name.md).
  • [X ] I have read the application guidelines.
  • [ X] Payment details have been provided (bank details via email or BTC, Ethereum (USDC/DAI) or Polkadot/Kusama (USDT) address in the application).
  • [ X] The software delivered for this grant will be released under an open-source license specified in the application.
  • [X ] The initial PR contains only one commit (squash and force-push if needed).
  • [X ] The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
  • I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

@github-actions
Copy link
Contributor

CLA Assistant Lite bot: Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution. Please submit the following text as a separate comment:


I have read and hereby sign the Contributor License Agreement.


OpenSmartContract seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You can retrigger this bot by commenting recheck in this Pull Request

@OpenSmartContract
Copy link
Contributor Author

recheck

@OpenSmartContract
Copy link
Contributor Author

I have read and hereby sign the Contributor License Agreement.

Copy link
Collaborator

@Noc2 Noc2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for the application. In general, it looks good to me. Could you remove some of the none-bold template text from the application before I share it with everyone? It's currently hard to read.

@Noc2 Noc2 added the changes requested The team needs to clarify a few things first. label Aug 29, 2023
@OpenSmartContract
Copy link
Contributor Author

Thanks a lot for the application. In general, it looks good to me. Could you remove some of the none-bold template text from the application before I share it with everyone? It's currently hard to read.

@Noc2 Thanks for review and suggestion. Cleaned up the application text, revised the scope to make the PoC more holistic. Please take another look and advise. Thanks!

Copy link
Collaborator

@Noc2 Noc2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the update. However, even if you want to be paid in BTC, the grant still needs to be denominated in USD. At the time of payment, we would convert the dollar amount to BTC. Also, why did the price and your daily rate suddenly significantly increase? see 7ab3fcb

@OpenSmartContract
Copy link
Contributor Author

OpenSmartContract commented Aug 30, 2023

Thanks for taking another look @Noc2 and the explanation. Good learning experience as this is our very first time application. The cost was revised due to: 1) much expanded scope; 2) more resources and time needed; 3) developers availability and rate increase; 4) We found that XML <> XCM mapping is more complicated than just XSD data format transformations as XCVM and instruction set translation need, which is data to program mapping on the mapping side; 5) On the messaging side, need to use XCMP, UMP and DMP for just cross-chain relay on Dotsama chains, not to mention if going outside of Dotsama chains where XCM are not supported. There's more factors contributing to the revised costs given much increased complexity, additional development work and time, and a variety of niche skillsets combo needed: ISO20022, X-border payments, Polkadot, ink! smart contract, Substrate, Off-Chain Worker, XCM, XCVM, XCMP/UMP/DMP, Rust, etc. Thanks for understandings!

applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Show resolved Hide resolved
applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Show resolved Hide resolved
@OpenSmartContract
Copy link
Contributor Author

Thanks @semuelle for the review and suggestions. Resolved requested changes. Pleaser take another look. Thanks.

Copy link
Collaborator

@Noc2 Noc2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates. Given that the exact workload is difficult to estimate, your first milestone needs to be completed before you can estimate the second milestone. My recommendation would be, in this case, just to apply for milestone one initially.

@OpenSmartContract
Copy link
Contributor Author

Thanks for the updates. Given that the exact workload is difficult to estimate, your first milestone needs to be completed before you can estimate the second milestone. My recommendation would be, in this case, just to apply for milestone one initially.

Great recommendation. Revised accordingly. Appended "Future milestones implementing the use case with workload estimation with insights from this initial milestone" to future plans.

Copy link
Collaborator

@takahser takahser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since the total cost is currently $25k, level 2 is more appropriate here.
Apart from that, I'll have a closer look at the rest of the proposal and will be back with some comments soon.

applications/ISO20022.md Outdated Show resolved Hide resolved
@OpenSmartContract
Copy link
Contributor Author

Thanks @Noc2 for the suggestion! Just added Medium article deliverable. Excited to get blessings and get started on proposed work!

@Noc2 Noc2 added ready for review The project is ready to be reviewed by the committee members. and removed changes requested The team needs to clarify a few things first. labels Sep 12, 2023
Noc2
Noc2 previously approved these changes Sep 12, 2023
Copy link
Collaborator

@takahser takahser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@OpenSmartContract thanks for the update, it looks much better now.

To clarify, the initial application had 2 milestones, with the first one on use case, gap analysis and requirements, the 2nd on implementations. It was recommended to focus on milestone1 at this stage. So this milestone has no implementations.

Sorry about that, I should have taken the earlier conversation into account here. Since this first proposal is only about coming up with a spec rather than already writing an implementation, you can safely ignore my earlier comments in this regard.

One thing I noticed is that there's not a lot of code in your team repos:

I'm quite impressed by your CV, however, I think it would be good, if you could provide us with some more code to demonstrate your capabilities further. Especially since the price for the proposal seems to be quite high.

@OpenSmartContract
Copy link
Contributor Author

OpenSmartContract commented Sep 12, 2023

thanks for the update, it looks much better now.

Awesome and thanks @takahser for help making it happen!

Sorry about that, I should have taken the earlier conversation into account here. Since this first proposal is only about coming up with a spec rather than already writing an implementation, you can safely ignore my earlier comments in this regard.

No worries, it is buried in the long review history.

One thing I noticed is that there's not a lot of code in your team repos:

The implementation likely will be in future milestones by developers specialized in pallets / payments / ISO20022. There's no formal coding tasks in this milestone. That being said, for your reference here's recent code repo that goes along with this Medium article. Thanks for advocating for code quality!

takahser
takahser previously approved these changes Sep 12, 2023
Copy link
Collaborator

@takahser takahser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@OpenSmartContract thanks for linking the repo. I'm ready to give it a shot as well!

applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Outdated Show resolved Hide resolved
applications/ISO20022.md Outdated Show resolved Hide resolved
@keeganquigley
Copy link
Contributor

Thanks for the application @OpenSmartContract looks great, I just left a couple minor formatting/grammar fixes.

@OpenSmartContract
Copy link
Contributor Author

OpenSmartContract commented Sep 12, 2023

Good catch @keeganquigley! Sorry for the typo. Should've run a spell checked next time. Appreciated 👍

Copy link
Contributor

@keeganquigley keeganquigley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No worries @OpenSmartContract just want to avoid any parsing issues. Thanks, I am happy to approve as well. We've had a few attempts with ISO8583 but none for the new standard yet, so I'm excited to see this implemented in substrate. Looking forward to the results.

@OpenSmartContract
Copy link
Contributor Author

We've had a few attempts with ISO8583 but none for the new standard yet, so I'm excited to see this implemented in substrate. Looking forward to the results.

Indeed ISO8583 is more on card based financial transactions (centralized), vs financial industry gravitating towards ISO20022 as it covers all/most transaction types. Honored to start working on such an important initiative to enable global villagers to better connect via fast, affordable and decentralized payments. Proud to partner on this journey with W3F support 👍

Copy link
Member

@semuelle semuelle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Standing in for @takahser. I just want to note that deliverables 1-9 do not specify a medium in which you plan to publish them. We don't require that, but in any case it should be accessible and discoverable, like Markdown docs in a git repo. No PDFs please. :)

@semuelle semuelle merged commit 376e6e4 into w3f:master Sep 12, 2023
5 of 7 checks passed
@github-actions
Copy link
Contributor

Congratulations and welcome to the Web3 Foundation Grants Program! Please refer to our Milestone Delivery repository for instructions on how to submit milestones and invoices, our FAQ for frequently asked questions and the support section of our README for more ways to find answers to your questions.

Before you start, take a moment to read through our announcement guidelines for all communications related to the grant or make them known to the right person in your organisation. In particular, please don't announce the grant publicly before at least the first milestone of your project has been approved. At that point or shortly before, you can get in touch with us at [email protected] and we'll be happy to collaborate on an announcement about the work you’re doing.

Lastly, please remember to let us know in case you run into any delays or deviate from the deliverables in your application. You can either leave a comment here or directly request to amend your application via PR. We wish you luck with your project! 🚀

@OpenSmartContract
Copy link
Contributor Author

OpenSmartContract commented Sep 12, 2023

Thanks @semuelle for standing in and approval! I agree that it's an important step to document the work and share with the community for feedback. This recent commit added the Medium article as deliverable number 10. Cheers 👍

@OpenSmartContract
Copy link
Contributor Author

Congratulations and welcome to the Web3 Foundation Grants Program!

So excited it's approved! Thank you all, @Noc2 @takahser @keeganquigley @semuelle, for great collaborations making it happen with amazing developer experiences 💯 We're off to start this journey together, towards our shared vision to increase financial freedom for the world! The team is inspired to deliver quality milestones soon. Cheers 🥇

@OpenSmartContract
Copy link
Contributor Author

OpenSmartContract commented Oct 12, 2023

@Noc2 @takahser @keeganquigley @semuelle

Hi Folks, so excited to share that we are getting really close to delivering the ISO20022 PoC milestones!

Would be great to take a look at this draft, and comment right in the doc. Just want to make sure the project is on the right track before official submission.

Your feedback welcome!

@takahser
Copy link
Collaborator

@OpenSmartContract thanks, I had a quick look and it's a bit difficult to navigate since there is no list of contents in the beginning. But one thing I observed was that there seems to be no corresponding XCM messages to the ISO20022 messages in the appendix. It might be good to add these, especially since one of your deliverables is about mapping the two message types: 3. Map ISO20022 <> XCM messages

Also, please make sure to use our template when delivering and point out where to find each deliverable (in your case, the page number and chapter within your doc would probably be useful).

@OpenSmartContract
Copy link
Contributor Author

Great suggestion @takahser ! Added table of contents at the very beginning, and deliverables template table in the end with links for convenience, with more XCM contents added. Regarding the mapping, please refer to this section for more context. Cheers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready for review The project is ready to be reviewed by the committee members.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants