Overview
We put credit card payments on-chain!!!
PEW PEW PEW PEW (As @M0nkeyFl0wer would say)
See how the viaPrize.org team built that for our platform here - https://youtu.be/19LFDAIDsB0
We are a full-time team of 5 with our only funding as of now by Gitcoin donations from >2,000 people and a couple thousand dollars in revenue (See our gratitude post and story here - Gitcoin Appreciations Thread)
So once we built this, we asked how we could build this for the Gitcoin community and you can see this thread as we request a grant for this: https://gov.gitcoin.co/t/10-000-donated-to-gitcoin-zuzalu-round-with-credit-card-pilot-project-proposal/18827
Demo
So yeah, we built fiat donations to Gitcoin projects! See the demo here - https://x.com/viaprize/status/1825566773820723566
How it works
- User sends funds to viaPrize
- We send equivalent USDC (in future perhaps USDGLO) from our crypto reserve to a wallet associated with that user
- Then from the wallet associated with that user to the Gitcoin project.
Before the round, we send a round operator a URL where people can donate with fiat such as: https://viaprize.org/qf/opencivics/explore
At the end of the round, we give the round operator a list of wallets to whitelist to receive matching.
@umarkhaneth built this out for us and this is all possible thanks to his beautiful magical wizardry
Proof of Personhood
In this round, we used PayPal for proof of personhood because we can see a confirmed address associated with someone’s credit card, we can see whether an account is verified based on if they have a bank account linked to it (only one bank account can be linked to one PayPal account), PayPal often puts payments “on hold” if someone recently changed their name or it’s a new account and they haven’t completed CIP/KYC with a gov ID.
For a future proof of personhood, we’re asking @azeem for help with a connection to Visa and MasterCard to receive their Payment Account Validation API access so we can check if someone is using their real legal name when making a payment. If anyone else has connections there, please let us know with a DM to @viaprize on Twitter.
OpenCivics PayPal Round Review
To start out, our first partner was the OpenCivics community. We received interest from several other round operators, but didn’t have the funds for it so we ended up only onboarding CollabTech partway through.
Here is the data for PayPal donations to the OpenCivics round (emails and some other data removed, and payments from Noah and from Patricia were mostly for testing):
Looking at this info, the round operators can now decide what they want to receive matching:
- All accounts get matching
- Exclude unverified accounts (no bank account attached)
- Exclude pending transactions (often happens if it’s brand new account that hasn’t done KYC or if it just changed its name)
- Exclude both pending and unverified
CollabTech has responded they are picking 4, which excluded 2/9 donors due to being unverified accounts (no bank account attached.) OpenCivics is deciding.
Then they just mark which wallet addresses out of these to white-list and those will receive matching.
If a round operator prefers, we can also just take care of it for them and send them the final CSV to upload that determines matching.
Financial Sustainability (Hint: It’s not yet!)
Feedback we received from various people including @rohit , Henry, and Umar of Gitcoin and @omniharmonic and 6 other OpenCivics community members is that they find it fair to build this then charge a fee and continue applying for various grants. So that’s what we’re pursuing, shoutout to @Clinamenic and Ben West for helping us search for these.
We received $400.70 through PayPal (about $100 of that was us testing), took a 5% cut (which is taken out of the post-PayPal fee balance. PayPal fees = min $0.35 per tx and 4.5% usually to 9.5% with currency conversions) so in the end made about $13ish in revenue. If anyone knows grant programs to support this, please let us know
NEXT STEPS
GG22, perhaps apply as a community round supporting kids’ shelters and at-risk kids projects. (I support a kids’ shelter in Ecuador and my evil plan is in particular fund that one: https://x.com/noahchonlee/status/1793862664961286413)
Potentially have 3 options for proof of personhood ready in time:
- Model based detection and donate with crypto on that chain (the usual as of now)
- Donate with card and we get your real legal name with Visa and MasterCard API for that, PayPal is OK but kinda meh
- Multi-chain
Some sorta KYC that gives us a donor’s legal name (maybe with Visa API) and then you can donate with whatever including BTC, Sol, etc and then we send some equivalent USDGLO from our own crypto reserve through a wallet associated with that user to the Gitcoin project
IF ANYONE HAS A CONTACT AT VISA AND/OR MASTERCARD TO GIVE US PAYMENT ACCOUNT VALIDATION API ACCESS PLEASE LET US KNOW. This is the most important thing we could use help with. @kyle would you have any contacts there?
Feel free to contact us viaPrize on socials and let us know of best options to fund this initiative!