Adyen / adyen-react-native

Adyen React Native
https://docs.adyen.com/checkout
MIT License
42 stars 32 forks source link

[ANDROID] browserInfo doesn't return from DropIn #385

Closed ahmetgsu closed 2 months ago

ahmetgsu commented 4 months ago

Describe the bug After upgrading the library from v1.2.0 to v2.0.0 BETA2, Android version is not working properly. Previously, the data parameter of the onSubmit function had browserInfo and the data.amount.value was an integer. Now, there is no browserInfo data, and data.amount.value comes as string. DropIn is dismissed after the first step.

To Reproduce Steps to reproduce the behavior:

  1. on Android, fill the credit card details on DropIn
  2. Click on "Confirm preautorization" button (amount.value = 0)
  3. See the DropIn is dismissed

Expected behavior The 3DS auth screen should appear on the screen after completing the credit card details

Smartphone (please complete the following information):

Should we populate browserInfo prop manually on Android?

descorp commented 2 months ago

Hey @ahmetgsu

no browserInfo data

This is known misalignment on iOS and Android. We are looking to remove browserInfo on iOS.

Context: browserInfo were essential for web-based 3DS1 flow. However 3DS1 is discontinued and we are encouraging usage of 3DS2 Native flow on mobile instead. To enable native 3DS2 - make sure to send authenticationData and paymentMethod.threeDS2SdkVersion See Native 3DS2 Drop-in integration docs.

  "paymentMethod": {
    ...,
    "threeDS2SdkVersion": "XXXX"
  },
  "authenticationData": {
    "threeDSRequestData": {
      "nativeThreeDS": "preferred"
    }
  }

data.amount.value comes as string

Hm.. This is indeed bug on our side! Thanks for reporting it @ahmetgsu 💚 PR #425

descorp commented 2 months ago

Fix for data.amount.value released on 2.0.0-rc.1

descorp commented 2 months ago

I am going to close this ticket, since remaining part is a duplicate of https://github.com/Adyen/adyen-react-native/issues/164