Getting some initial feedback on ∂pay - wallet and mobile app that allows you to pay offline!

I’ve finally built a PoC for something I’ve wanted on ICP for a long time:

Payments that still work when the person paying has no Internet.

The idea behind ∂pay is pretty simple: your phone is your wallet, and paying should feel like paying with TWINT, Google Pay, Samsung Pay or Apple Pay. Crypto wallets and apps generally suck to be honest. Super clunky and scary. No wonder people don’t use them on a daily basis.

Tap your phone on the merchant’s phone, check the amount, approve. Done.

It works as well if you’re offline. The payment is (cryptographically) signed on your phone and the merchant’s phone sends it on your behalf. There’s also a QR flow if NFC isn’t available. It’s somewhat more clunky but always works.

There is also a web wallet, to get the general vibe without installing the app. It shares most of the code with the real app, aside from the NFC payments which can’t work in a browser.

∂pay is self-custodial, the key stays on your device, and payments have no fee. If we ever get the critical mass of users, we can start charging merchants a tiny percentage for the goodies they would appreciate, such as OAUTH2, multiple employees under a single wallet, etc. The cost of running it today is next to nothing, so I won’t start charging fees any time soon. And regular users will never have fees anyway aside from the currency conversion maybe because I also have to pay a fee for it.

This is still very much a Proof of Concept, so I’m less interested in “nice project!” and more in whether the idea and UX actually make sense to other people.

I’d really appreciate feedback on any of it: the concept, the landing page, the payment flow, things that are confusing, things you think are missing, etc.

https://dpay.kalaj.org/

I’d also like to place the app in Google Play and other app stores (Apple/Samsung/other) but a) I’d like to get some feedback and ideally community around this first, b) improve the app to make it actually smooth and joy to use, c) I need a company or investor to back this up because that’s the rules of the game with Google Play and likely other app stores.

At a quick glance on a monitor the page maybe to bright for me (not necessarily missing dark mode, maybe just darker shade?), navigation works fine as does the demo and the permission pop up. Over all easy to use vibes. Will have to try it on phone for that flow to make sense.

On mobile the transactions button overflows the user screen to the right side after opening the “web wallet.”

Because “pay now” is selected by default, When opening the web wallet it immediately asks for permission to use the camera which might scare a new user.

Looks great.

I just added dark mode, can you please take a look again @ZackDS ? If you have dark mode system wide, the app/website should automatically pick it up.

IIUC, you don’t like having to allow permissions? Is it better now that you have to click on the button and only then permissions pop up?

Did you have a chance to give this a shot? Any feedback?

Can you check now please @WebTreeSoftwareSolut if this is still an issue?

Highly useful feedback, thanks! I changed this flow a bit, can you check if this is more acceptable now? And would you reorganize layout somehow? Make some other page default?

Yes it’s much better now.

+10 points for darkmode theme :slight_smile:

I’d personally have a hard time downloading an apk and loading it into my phone without knowing the build source or the source code.. unless I missed the source code somewhere.

Concept is great though, NFC payments that work offline if you know you could trust it.

Me too! The idea originally was to offer the app through google play, so the app is reviewed through google play. I didn’t get there yet - sorry.
But I can PROMISE that I don’t do anything fishy :smiley:
I’m now thinking of publishing the source code as well, since I don’t think that private source code is helping me in some ways - WDYT?

Glad you liked it!

And let me know if you actually tried it and liked / didn’t like it, or if you hit a snag. I want the community to LOVE IT! Not just be like… yeah whatever..

What would make you a strong supporter @brady ? Source code (give 1-10 how important this is)? Anything else?

I might be the wrong person to ask, but I’ve gone too far down the security rabbit hole, the majority of the apps on my phone are from F-Droid so I am biased and an advocate for open source.

I think the hardest thing about this is getting vendors to actually sell using nfc devices that accept crypto. I would love to pay that way at the grocery store or at a farm stand, but adoption has been difficult with the IC, it still needs a breakthrough.

Well to be completely frank with you, installing random apks from F-Droid is unacceptable for a random Joe as well. It’s just hard and risky. I do it as well as you, but a random Joe won’t. So Play Store + other official stores are pretty much unavoidable if we want to get any traction with any apps.

So you would be a strong supporter if vendors adopt it? :laughing:
Joking aside, I was hoping to add some on-ramp provider(s) and make onboarding as easy as entering credit card data (directly or via stripe/google pay/else) so people can buy crypto with minimal effort. It could be any crypto that we can later convert. Onramping is time critical - must be quick.
Off-ramping is critical for vendors, so must work smoothly as well and be rock solid, but I don’t think it’s time critical in general.
I’m wondering about the NFC though. Why do consider it particularly hard to adopt?

Right, I wouldn’t argue with that, a lot of F-droid apps have F-droid verifiable builds but also publish to the Play Store.

But yes, unfortunately buyers can’t adopt anything if their go-to vendors don’t accept it. Over time, hopefully businesses will start to evolve when they see the benefits.

Here are some updates. I’ve been busy.

I added support for OpenCryptoPay and https://dfx.swiss/ - this is pretty cool because it gives dpay more interoperability. It basically means that dpay can be used to pay any OCP/DFX QR code.

It also means that dpay can now be used to pay in most Spar shops! :tada:
Here is a map of the Swiss shops that support such payments: https://www.google.com/maps/d/viewer?mid=1DzX6z5tnUqn1zlzFnL6G58xREItorRM&femb=1&ll=46.87187020501099%2C7.998413550000002&z=8

This is NOT the end goal. I want dpay to be used as a simple and secure terminal that receives payments, as well as make payments.

Also, I am introducing the concept of a “main” currency in dpay, which is basically a stable currency. For now, I have support for CHF (=VCHF), USD (=USDC), EUR (=VEUR).
We could also introduce more stable currencies in the future, and of course gold.

What are the next steps? Conversions between currencies, to make payments seamless even across currencies. Which is particularly tricky because a) ICP has terrible DEX ecosystem, b) we need to be compliant with legislations which is difficult because they (the banks) already prohibited as much as they could and they would gladly prohibit everything.

What’s apparently legal and still very sensible is that the app itself coordinates the currency swaps. So dpay relay doesn’t have to hold or own funds at any point. That’s clean and still useful.

@DoxaFoundation @kizzafredrichkibalam get in touch if you’d like to be one of the first dpay users or to affect the dpay development.
Africa would be the PERFECT market for it and I’d be happy to make changes that make dpay more useful for the people in Africa.

Thanks for sharing progess @sat, this is awesome!

Will this be addressed at all by multi/dex?

Bid to have in DoxaUsd soon coming…guess we would all benefit