Story 1

When somebody in Germany sends 500 EUR to Belarus, the recipient gets only 495 EUR even if the sending company covers the transfer expense. A bank in Belarus bank cuts 1% and the sending party has no way to officially know beforehand what a transfer cost would be. For smart contract what are waiting for exactly 500 EUR to arrive this is horrible. The bank can give the official letter that they've took 5 EUR from the transaction, so that the German company could cover it and unblock the contract. But the letter costs another 2.5 EUR, and the bank can not include the cost of 2.5 EUR and the previous charge 5 EUR into the single letter. I could only ask for another letter which would also cost 2.5 EUR. The process would lead my into endless recursion depleting me of any funds.

I needed tests for such banks, and results of them should be public.

Story 2

Months later I discovered that my bank changed fees for the servicing of my account. They claimed that changing PDF on their web site was the appropriate method of notification.

I wanted statistics about how much do banks actually charge me.

Story 3

My friend who works in humanitarian department of a big corporation, spends a lot of time testing fees and ways to send money to recipients. The fees and ways can change daily. They depend on sender and receiver country, bank and payment method.

People could be very frustrated when they donate $5, and $5 is the minimum fee than donation platform, or payment system, or the receiving bank could take. People should see how much they've would donate, and how much the receiving side would get. At the very least. At the most, they should know how the money were routed, where the cut was made, by whom, and why. They should be able to find the most effective route between peers at a glance.

What it does

  1. It plugs into donation system, such as Liberapay, or directly into bank API (using PSD2 protocol in EU) to compare the money that were sent, with money that were received.
  2. It collects anonymous data about type of transaction (country, bank, legal status, amount sent/received) for both sender and recipient, and builds a dashboard with sorting and filters to let people select the most effective way for their combination.
  3. It provides API to select the most effective way to send the money based on the collected stats.

How I built it

It is not ready yet. Need more time and energy for R&D.

Challenges I ran into

PSD2 OpenBanking API is too far from beautiful and intuitive API you've used to. Making an alternative API with subset of functions for PSD2 would be a fair goal. It would be extremely helpful for countries that did not adopt any standard yet.

Accomplishments that I'm proud of

Helped bootstrap initiative for banking OpenAPI in Belarus.

What I learned

People who develop banking and governmental standards are not open, they lack understanding of culture (including open source culture), and are not developers. The processes are closed, people miscommunicate, when officials change, the new ones are not proactive, they often need to be educated from scratch. Banking environment is very discouraging. Access to funding is hard, even impossible for individual developers.

What's next for Money Router

Got a place for referencing the problem. An MVP/prototype. Get a few iterations to compile a full list of the problems that need to be solved on many levels.

Built With

  • liberapay
  • openapi
  • psd2
  • python
  • sepa
Share this project: