Giveth / giveth-next

Giveth 2.0 implementation in NextJS
https://next.giveth.io
GNU General Public License v3.0
20 stars 13 forks source link

Transak front-end integration #308

Closed mateodaza closed 2 years ago

mateodaza commented 3 years ago

Following this docs https://www.notion.so/Integrate-Transak-f43cbb5dc7fa4d068a044ef9589879bf

It needs this PR to be approved on the backend https://github.com/Giveth/impact-graph/pull/162

mohammadranjbarz commented 3 years ago

@MoeNick @divine-comedian The Transak donation is ready to test on staging. First you go to donate page and click on Credit Card

Screen Shot 1400-08-05 at 08 41 36

For payment you have two steps

Screen Shot 1400-08-05 at 08 22 42 Screen Shot 1400-08-05 at 08 26 46
divine-comedian commented 3 years ago

sorry I'll have to say no I'm not willing to test this issue for security reasons.

MoeNick commented 3 years ago

@GriffGreen do u have any idea? Can we provide test payment cards or so?

mohammadranjbarz commented 3 years ago

@GriffGreen do u have any idea? Can we provide test payment cards or so?

We have 2 test payment cards, I have written them in above comment, it doesn't need any real data in test environments

divine-comedian commented 3 years ago

I got as far as putting in the KYC ... I tried to use the test SSN and it threw this error

image

okay I cleared cache tried again.. I found that the test SSN format was wrong, successfully proceeded with 1203040

I filled out the whole process, address, CC info and got to the final button only to be told my state isn't supported - used NY(New York) for test purposes. this is pretty frustrating that they don't warn or tell you which states are supported anywhere until you get to the last page.

image

I click the back arrow <- to change my info and it takes me right to the first page of the transak modal

image

Another issue, in the fine print is where it asks you to check a box confirming that you have control over the receiving wallet address... which will be very confusing for users since the whole point is to send funds to someone else's wallet -

image

divine-comedian commented 3 years ago

Finally I swapped out the address for one from Florida, I successfully am taken to the payment status modal page, it seems to load indefinitely. I refresh and retry, I'm taken to a modal page to resolve my pending transaction.. and then finally it is successful!

image

divine-comedian commented 3 years ago

I have no way however to see this transaction on the blockchain, since my wallet address isn't provided. when I click view transaction details I'm taken to an etherscan page that says No matching entries and also doesn't show up when I click view your donations.

CarlosQ96 commented 3 years ago

@divine-comedian since they are test transactions I don't think they should show up in etherscan.

divine-comedian commented 3 years ago

@divine-comedian since they are test transactions I don't think they should show up in etherscan.

okay so the issue is there's no way to test how/if fiat transactions will appear to the user so that donors can have confirmations via the giveth UI that their donation actually happened.

Looking up the project I donated to it seems that the donation was made anonymous... but according to the new onboard js flow we should be forced to sign in if we have an affiliated identity. Also the donations seem to show up twice on the UI.

image

mohammadranjbarz commented 3 years ago

@divine-comedian since they are test transactions I don't think they should show up in etherscan.

okay so the issue is there's no way to test how/if fiat transactions will appear to the user so that donors can have confirmations via the giveth UI that their donation actually happened.

Looking up the project I donated to it seems that the donation was made anonymous... but according to the new onboard js flow we should be forced to sign in if we have an affiliated identity. Also the donations seem to show up twice on the UI.

image

Actually, you have donated twice

{
        "id": "314",
        "amount": 22.45,
        "fromWalletAddress": "0x085ee67132ec4297b85ed5d1b4c65424d36fda7d",
        "toWalletAddress": "0x5d28fe1e9f895464aab52287d85ebff32b351674",
        "currency": "DAI",
        "transactionId": "a7a95813-c893-4a0c-8614-46d633830e23",
        "transactionNetworkId": 1,
        "status": "pending",
        "transakStatus": "COMPLETED"
      }

https://kovan.etherscan.io/tx/0x3f3e9b8123347761c32bee9bc3eecd0fc10cce2f86c8426e342e177f529150f4

 {
        "id": "316",
        "amount": 22.45,
        "fromWalletAddress": "0x085ee67132ec4297b85ed5d1b4c65424d36fda7d",
        "toWalletAddress": "0x5d28fe1e9f895464aab52287d85ebff32b351674",
        "currency": "DAI",
        "transactionId": "2ea0ccba-93fa-4b7a-ae23-19ceede631e6",
        "transactionNetworkId": 1,
        "status": "pending",
        "transakStatus": "COMPLETED"
      }

https://kovan.etherscan.io/tx/0x6c3ff3377e43f1e9d3626a7a952e135ed345c588db1485595d1f6c6f1dc45149

mohammadranjbarz commented 3 years ago

@divine-comedian since they are test transactions I don't think they should show up in etherscan.

I understood when transaction become COMPLETE transak give us the transaction link as https://kovan.etherscan.io/tx/0x6c3ff3377e43f1e9d3626a7a952e135ed345c588db1485595d1f6c6f1dc45149 so I would create a PR to persist it in DB

CarlosQ96 commented 3 years ago

Ok got it. Will be testing this new attribute to see if it's sent in the webhook. It's not documented in Transak docs.

CarlosQ96 commented 3 years ago

Tested Mohammad's Branch, indeed transak only sends the transaction link when it's completed. We will be merging the changes.

mohammadranjbarz commented 3 years ago

@MoeNick The transak stage environment is not stable enough I could donate till few days ago but now I get error when donating

Screen Shot 1400-08-10 at 17 55 17

MoeNick commented 3 years ago

image I just send them a msg on Telegram. waiting for their response. You can do so on @Amandoshi

CarlosQ96 commented 3 years ago

I remember a week and a half ago I had the same issue, remember we spoke in the meetings that Transak was down. Seems related to this, they couldn't really pinpoint the issue.

divine-comedian commented 2 years ago

@CarlosQ96 @MoeNick is there any update to test this issue?

MoeNick commented 2 years ago

@mateodaza supposed to talk with them. I couldnt, they didn't answer me. @DonnaOftadeh appreciate if you can test and update us here

mateodaza commented 2 years ago

This is ready for testing on staging using this info

image

Make sure your KYC fits with the card you'll use

DonnaOftadeh commented 2 years ago

I am testing it,

  1. The loading is really slow, it seems nothing is happening while loading, we need a loading icon: image.png

  2. it set a default amount (300 euro in my case) which as a donor I don't like : image.png

  3. the ui needs to be worked on: the pop-up can become bigger so no scrolling needed image.png

  4. The UI is not user friendly for the payment page (add your card have to be mandatory field) - when I don't add any card and tick the two check boxes and click confirm nothing happens, it should be mandatory and communicate as mandatory to the user: image.png

  5. I cannot add multiple cards : I added the first card, then added the second card info in the following section, but it is not added: image.png

  6. I am getting this error: image.png I also tried again it gives me the same error: image.png

MoeNick commented 2 years ago

@DonnaOftadeh Jan Seems all of them are ux problems, did you have any functional problems as well?

DonnaOftadeh commented 2 years ago

@MoeNick @mateodaza both number 4 and 5 are functional issues, I cannot add another card to my account although the option is there and it seems working fine but it does not, at the last step it is not added, also on number 5 I got the KYC error that I didn't pass one of the steps (I did all of the steps as said )

DonnaOftadeh commented 2 years ago

@MoeNick @mateodaza guys I want to test this but it gives me an error, can you please help to figure out where is the KYC problem, I did all of the steps as stated, but it seems there is something wrong, please help ASAP as we want to issue our next version and transak is a important feature, Thanks

mateodaza commented 2 years ago

@DonnaOftadeh is the same error that you showed previously? I got luck doing a KYC from the UK instead of USA

DonnaOftadeh commented 2 years ago

@mateodaza oh, man!:( I am using vpn! what is the possible solution then?

mateodaza commented 2 years ago

@DonnaOftadeh nonono you can lie with your info! - I'm not using VPN and I'm in Colombia. Just look up some address in UK and use it. Also make sure to use the right card for it

DonnaOftadeh commented 2 years ago

@mateodaza ok sure :)

DonnaOftadeh commented 2 years ago

@mateodaza @MoeNick @divine-comedian I tried to pass the KYC couple of times but haven't been able to successfully pass. I do exactly as stated in this issue but for some reason I don't get the sms verification section (?), I searched a US number in the internet and paste it but no SMS verification step was appeared after entering the number, now says I have just passed one step of verification.

mateodaza commented 2 years ago

I think I skipped that verification using only email. Please do the KYC with UK instead of US. That's what worked for me @DonnaOftadeh

divine-comedian commented 2 years ago

testing on next.giveth.io

using the card details for the UK I set an appropriate KYC - from manchester - and I successfully make a donation in DAI using transak - the DAI donation shows up on both my donations and the project's page

image

divine-comedian commented 2 years ago

anything else for this issue?