stripe-react-native icon indicating copy to clipboard operation
stripe-react-native copied to clipboard

ConfirmIntentSetup decrepencies between IOS and Android

Open nigeldbrown opened this issue 1 year ago • 1 comments

Describe the bug When calling the following code snippet

const {error, setupIntent} = await confirmSetupIntent(result.data.setupIntent, usBankParams);

on android simulator

The setupIntent is returned as

{"clientSecret": "seti_1OgQ1SDHRdq1zdOe5EjD960v_secret_PVQtWhRSE4tYbYlRq2391FnMgMlxlS8", "created": "1707131254000", "description": null, "id": "seti_1OgQ1SDHRdq1zdOe5EjD960v", "livemode": false, "nextAction": null, "paymentMethod": {"AuBecsDebit": {"bsbNumber": null, "fingerprint": null, "last4": null}, "BacsDebit": {"fingerprint": null, "last4": null, "sortCode": null}, "Card": {"availableNetworks": null, "brand": "Unknown", "country": null, "fingerprint": null, "funding": null, "last4": null, "preferredNetwork": null, "threeDSecureUsage": [Object]}, "Fpx": {"accountHolderType": null, "bank": null}, "Ideal": {"bankIdentifierCode": null, "bankName": null}, "SepaDebit": {"bankCode": null, "country": null, "fingerprint": null, "last4": null}, "Sofort": {"country": null}, "USBankAccount": {"accountHolderType": "Individual", "accountType": "Checking", "bankName": "STRIPE TEST BANK", "fingerprint": "DyI7YI97ZGYhIL6E", "last4": "4321", "linkedAccount": null, "preferredNetworks": "ach", "routingNumber": "110000000", "supportedNetworks": null}, "Upi": {"vpa": null}, "billingDetails": {"address": [Object], "email": "[email protected]", "name": "Nigel", "phone": null}, "customerId": "cus_PVBi9IlDZiBML2", "id": "pm_1OgQ29DHRdq1zdOenPr1oxaR", "livemode": false, "paymentMethodType": "USBankAccount"}, "paymentMethodId": "pm_1OgQ29DHRdq1zdOenPr1oxaR", "paymentMethodTypes": ["USBankAccount"], "status": "Succeeded", "usage": "OffSession"}

On ios Simulator (15) it returns as this

{"clientSecret": "seti_1OgQ0EDHRdq1zdOeGBmVmZnf_secret_PVQr3qu9ck3h4dBIYOdNtUyqFVU9SvH", "created": "1707131178000", "description": null, "id": "seti_1OgQ0EDHRdq1zdOeGBmVmZnf", "lastSetupError": null, "livemode": false, "nextAction": null, "paymentMethod": null, "paymentMethodId": "pm_1OgQ0WDHRdq1zdOe5kI9Stop", "paymentMethodTypes": ["USBankAccount"], "status": "Succeeded", "usage": "OffSession"}

paymentMethod is null. and billing info is null on IOS vs android this is creating side effects when building cross platform. Any idea if im just missing something is this expected behavior of your sdk?

To Reproduce Steps to reproduce the behavior:

Expected behavior The expected behavior is that on IOS simulator the setupIntent includes the paymentMethod and billingDetails in the same way it includes in when testing on android simulator

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: IOS Simulator 15, Android Google Pixal Emulator
  • OS: [e.g. iOS8.1]
  • Browser Safari vs Chrome
  • Version [e.g. 22]

Additional context Add any other context about the problem here.

nigeldbrown avatar Feb 05 '24 11:02 nigeldbrown

Hey man, I had the same issue, just update to 0.37.0.

hussein-khamis avatar Feb 23 '24 15:02 hussein-khamis