Git Product home page Git Product logo

offline-pay-with-crypto's People

Contributors

adebayoileri avatar mlg29 avatar uchibeke avatar

Stargazers

 avatar

Watchers

 avatar  avatar

offline-pay-with-crypto's Issues

Integrate open-source/free email service for notifying agents of Offline Payment requests

We want to enable users to Send Celo, cUSD, and other Crypto Payments without needing to have Crypto or know what crypto is.

We also want to enable people to use this Widget to start Offline p2p Businesses

Some use cases:

  • A Chinese firm can accept crypto from a Farmer in Kenya by sending a Payment request to a Kenyan agent that the former recommends. Agent processes the Crypto payment which goes directly to the Chinese and the Farmer pays the agent with Mobile Money. This simplifies the manual back and forth as the link includes address, amount, and other metadata that the Chinese can use to track payment
  • A Nigerian student can resell Crypto to their classmate, the classmate confirms how much they will pay in fiat from a payment link preview and then gives the p2p student agent cash and gets Celo in return

How this is enabled

To share a Payment request link with an Agent

  • Create request as normal
  • Payment page, enter Agent name and your name
  • Click send and the Agent receives an email with payment details

Styling issues

Could you fix all styling and responsiveness issues? Highly recommend using a framework like material UI that gives you a base style.

Currently, there are lots of issues with responsively, positioning, layout etc.

Please, also test across multiple screens before opening a PR.

See some quick issues below:

Screen Shot 2021-11-05 at 9 55 17 PM

Screen Shot 2021-11-05 at 9 55 35 PM

Screen Shot 2021-11-05 at 9 55 45 PM

Screen Shot 2021-11-05 at 9 56 17 PM

Again, use a framework or base style instead of trying to style this frame scratch

Form field validation and responsiveness

  • Wallet address form should be valid and responsive
  • Also, if params are passed in the URL, fill the form with params and redirect to checkout
  • Confirm that you can scan the generated QR code with the Valora app or any app that supports celo
  • You could alternatively download the QR code and use https://celowallet.app/

Implement screen for offline agent-based payment

With this Screen, users are able to initiate a payment and then have another person, an Agent, fulfill it.

Useful for situations where someone wants to pay with crypto or send crypto but does not have Crypto but then gives fiat to another person to fulfill said payment based on an offline rate

Also, could serve as an opportunity for anyone to start a non-custodial fully-decentralized crypto trading business without any 3rd party.

Pay through agent

Implement screen for sending payments

The Screen component should accept options/ptops for the following:

  • Currency | Address array [{currency, address}]
  • Amount to pay
  • App/Company name

Pay with Crypto

Docs structure and update

The current structure of the docs is repetitive and a bit confusing. Could we adopt a structure similar to the one below, please?

  • Getting Started
    • Quick Start
    • What you can do with this (explain the different persona from the closed docs issue)
  • Usage Guide
    • Merchant No-code Setup (this should include what they do at https://offline-pay-with-crypto.onrender.com/)
    • Web Developer Setup (Web devs can use Widget or React or other Lib)
    • Mobile Developer Setup (Mobile devs likely will use the popup widget)

Milestones and due date

Milestone Description Target date
UX: user research and interviews > low fi > high fi > clickable prototype September 13, 2021
Backend to accept, verify, confirm cUSD payment with endpoints like /cusd-pay etc November 13, 2021
Create a payment modal that:- A site can embed to accept cUSD payment- Users presented with the modal can send payment to- Payment from users will be verified in the backend and modal merchant will be notified- Modal will be published as an npm package after the grant Jan 13, 2022

Create embeddable modal

Implement a screen that can be embedded into any Website either by adding a <script> tag or importing the library

For this task, the modal will be empty.

Documentation: Devs, Merchants and Users

Please, update the documentation to reflect the new changes to enable users to be able to integrate or use the project.

You might need to open issues as you run through them when testing out the project as the following users

Docs for User Personas

Developers

Devs want to integrate the app with their projects. Ideally, they should be able to generate the payment URL from the code.

Please, describe the required params and how they work so that any new dev can easily integrate

Merchants looking to Accept Celo

Merchants looking to accept Celo, cUSD or other supported currencies will need to be able to go to the payment request generation page.

Please, document the process of getting to that page potentially with screenshots

Users looking to send payments

When a user gets receives a payment link, please describe how they can pay from the various supported wallet

I have tested with https://celowallet.app/ and cUSD and Celo payments work. I have not tested with https://valoraapp.com/ app.

Payments should work with:

Appropriate error messages should be returned.

Please, ask uchi for some test tokens as these are live payments. ideally, send payments between 2 wallets that you own

Better currency converer

  • Improve currency conversion by exploring a backend service.
  • Fallback to allowing users to enter the rates manually for each supported token. I already enabled the input field so users are able to change the amounts even when we help them convert

Reduce Widget App Bundle Size

Description

base64-cryptocurrency-icons package contributes significantly to the application bundle size. the result is a large build size and slow to render app.

Steps to reproduce

  • Run
yarn build

and

yarn analyze

Screenshot 2021-11-24 at 22 47 11

Suggestion

  • To reduce app bundle size, source an alternative Crypto Icon Provider

Filter out wallets

Currently Celo's use-contractkit enables all wallets. We want to be able to show only the wallets that work: Valora, Celo Web Wallet, Metamask and disable the others that we have not tested.

Extend payment link generator

Extend the payment link generator to do:

  • Data validation
  • Include suggest exchange rates so that if someone first picks Celo, and then decides to add cUSD or another currency, we recommend the cUSD valud of the first Celo value

Think of the payment link generator as the merchant-facing experience but completely open-source and decentralized.

Also, if possible, validate the address or at least tell them to confirm it

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.