GoodDollar / GoodDAPP

GoodDollar.org Wallet is the simplest access point to Claim your daily G$. It Is based on web3 and React native web.
good-dapp.vercel.app
MIT License
102 stars 53 forks source link

[Feature] Send to Address #4127

Closed patpedrosa closed 8 months ago

patpedrosa commented 10 months ago

Allow users to send G$ directly to a specific wallet address.

Acceptance criteria:

_

Design request: https://www.notion.so/gooddollar/9a11ade7a2e247d3aeee137d7cf07cb8?v=70705f2ad78f4e689d57852b0fef740d&p=7c2dac78d95c44028501ef4154b77658&pm=s

Figma: https://www.figma.com/file/ihw1PxBvLxacTHnN2aj4lC/3.-Product-%F0%9F%92%B5?type=design&node-id=8982-53206&mode=design&t=LznEqIxpFzdK6pU3-0#605924839

patpedrosa commented 10 months ago

@sirpy We have a draft design ready for the send flow:

Payment link keeps the same flow: Private Zenhub Image

For send to address, after user selects send to address, the input field shows and the flow is the same per video shared by Alex on slack here: Private Zenhub Image

However, there seems to be a problem to implement this flow in the GoodWallet as raised by @johnsmith-gooddollar in our last sprint call. Alex, please share what you mentioned in the call in this ticket.

patpedrosa commented 10 months ago

New flow here @johnsmith-gooddollar @L03TJ3 please review: https://www.figma.com/file/ihw1PxBvLxacTHnN2aj4lC/3.-Product-%F0%9F%92%B5?type=design&node-id=9511-62778&mode=design&t=qAGWlk2eqzzMS0fa-0

johnsmith-gooddollar commented 10 months ago

@patpedrosa there should be an option to scan QR code with the wallet address. it could be an small icon button on the right side of the address input or a third one button "scan QR code" which opens QR scanner in next screen then goes back after scan and displays the same input with address

johnsmith-gooddollar commented 10 months ago

in other everything looks fine I think @L03TJ3 could start

patpedrosa commented 10 months ago
Screen Shot 2023-11-16 at 11 35 19

Is the one on the top right corner not enough/not placed correctly?

johnsmith-gooddollar commented 10 months ago
Screen Shot 2023-11-16 at 11 35 19

Is the one on the top right corner not enough/not placed correctly?

yes this one. but it's very old and really does not matches the new flow you've just designed. because the main idea if the flow (as I understood) - is to give a user some choice - want it send to address or share payment link. The QR scanner would be (as my opinion) a third one logical option to propose

so we need to think how to move it there

sirpy commented 9 months ago

@L03TJ3 @johnsmith-gooddollar @patpedrosa we already have a screen/step to enter the wallet address, why do we need a new design to enter the wallet address in a text that is revealed when pressing the send via address?

johnsmith-gooddollar commented 9 months ago

@sirpy this is an idea of the new flow - firstly enter amount then select purpose and finally to decide how you wanna send - by link or by address

send native flow will be the same just without purpose screen and with 'by address' option at the end

sirpy commented 9 months ago

@johnsmith-gooddollar My question is WHY. we already have the screens, why create more work? user press send via address -> goes to the existing screen we have for wallet address send native should be exactly the same. I don't see any reason to remove the purpose screen.

SanaJamm commented 9 months ago

@johnsmith-gooddollar I added the scan QR code icon

johnsmith-gooddollar commented 9 months ago

@johnsmith-gooddollar My question is WHY. we already have the screens, why create more work? user press send via address -> goes to the existing screen we have for wallet address send native should be exactly the same. I don't see any reason to remove the purpose screen.

@sirpy Due to the UX issues / weirdness the current flow has:

image

image

L03TJ3 commented 9 months ago

image

patpedrosa commented 9 months ago

@drptiago Can you please give Lewis the nomemclature for the parameter type considering that now users can:

drptiago commented 9 months ago

In the event SEND_DONEcurrently we have the property type with the options:

address ( when using QR code) link ( when a link is generated) bridge ( when the send_done is triggered in the bridge flow)

My suggestion is:

qrcode ( when using QR code ) address ( when enter the address, so the new flow will have the parameter type = address) link ( when a link is generated ) bridge ( when the send_done is triggered in the bridge flow )

L03TJ3 commented 9 months ago

@patpedrosa @SanaJamm What is needed (from us, you, or both) to make the decision on how to handle the scan-qr code flow does it need to change at all?

patpedrosa commented 9 months ago

No info needed from you at this point. If/when we review QR, it will be a new issue. This ticket (Send to Address) should go from TR > QA > Waiting for Deployment > Verify on Prod > Close.

L03TJ3 commented 9 months ago

Ok updated the main issue description with the only remaining point, which is the update to events @drptiago requested

L03TJ3 commented 9 months ago

@drptiago I added the events here:https://github.com/GoodDollar/GoodDAPP/commit/2be0086ef081af223e405f38d282ac58c0c6ced4

I don't know if its case-sensitve, but its now actually: address before it was Address. just fyi so its catched properly

patpedrosa commented 9 months ago

@drptiago Please QA this issue.

drptiago commented 9 months ago

Everything seems right ( in the Lewis code) but I can't test it in https://qa.gooddollar.org/

vldkhh commented 9 months ago

@drptiago could you verify it on prod, please?

drptiago commented 9 months ago

In prod, version 2.29.0 is not working properly. Same behavior in qa V2.29.1-0

@vldkhh @L03TJ3

When I sent a payment using QR code I am reciving "address": { "chainId": 42220, "type": "address", "token": "4f2b83cfbd3457fb6933c3f3c186540b" }

But I want to receive "qrcode"

{ "chainId": 42220, "type": "qrcode", "token": "4f2b83cfbd3457fb6933c3f3c186540b" }

L03TJ3 commented 9 months ago

i'll have a look

L03TJ3 commented 9 months ago

fixed here: https://github.com/GoodDollar/GoodDAPP/commit/d8dca47d8e1bbb31956a6d7261bf7840f7c73b23

L03TJ3 commented 9 months ago

qa is being deployed now, could you verify this whenever after 30 mins after this message @drptiago

drptiago commented 8 months ago

Working properly on DEV.

I am reciving in GA and AMPLITUDE the event SEND_DONE with the properties: qrcode ( when using QR code ) address ( when enter the address ) link ( when a link is generated ) bridge ( when the send_done is triggered in the bridge flow )