Skip to content

9.0.0

Compare
Choose a tag to compare
@remonh87 remonh87 released this 14 Aug 19:36
· 150 commits to main since this release

9.0.0

This release is based on version 0.25.0 of Stripe React Native:

Breaking Changes

  • Renamed the paymentSummaryItems field in initPaymentSheet()'s applePay params to cartItems.

Features

  • Added the supportsTapToPay option to canAddCardToWallet. reference
  • Added the setOrderTracking property to the PlatformPayButton component and the initPaymentSheet method. Use this callback for setting the order details to give users the ability to track and manage their purchases in Wallet. To learn more about order tracking, see Apple’s Wallet Orders documentation. reference
  • Added the buttonType field to initPaymentSheet()'s applePay params. Use this to set the text displayed by the call to action button in the Apple Pay sheet.reference
  • Added the request field to initPaymentSheet()'s, confirmPlatformPayPayment()'s, and confirmPlatformPaySetupIntent's applePay params. Use this to support different types of payment requests, like RecurringPaymentRequest, AutomaticReloadPaymentRequest, and MultiMerchantRequest.reference
  • Added an options argument to presentPaymentSheet which includes a timeout property. reference
  • Added the hasPairedAppleWatch option to canAddCardToWallet. reference
  • Added new functions and a new component to streamline integrating with Apple and Google Pay and add more feature support. See the Migrating to Platform Pay guide for more details. The old Apple and Google Pay APIs are marked as deprecated and will be removed in a future release, but are still supported in this version.

Fixes

  • Fixed an issue on iOS where canAddCardToWallet would always return a details.status of UNSUPPORTED_DEVICE on iPads. reference
  • Fixed an issue on iOS where canAddCardToWallet would always return a {canAddCard: false} if the card in question had been provsioned on the current device, but had not yet been provisioned on a paired Watch. ref
  • Fixed an issue on iOS where the deprecated onDidSetShippingMethod & onDidSetShippingContact events wouldn't be triggered if you were using the useApplePay hook without using the ApplePayButton component. ref
  • Fixed an issue on Android where canAddCardToWallet could result in a null pointer exception on devices without NFC compatibility. ref
  • Fixes a build failure on Android when using stripe-android v20.19.2. ref
  • Fixed a bug on Android where canAddCardToWallet wouldn't correctly return the details.token object. ref
  • Fixed an issue with confirmPlatformPaySetupIntent on iOS. ref
  • Fixed types so that Klarna accepts the shippingDetails property. ref
  • Both PaymentIntent.Result and SetupIntent.Result types now include a paymentMethod field. This replaces the paymentMethodId field, which will be removed in a later release. ref
  • Fixed an issue with createPlatformPayPaymentMethod on iOS where a "Canceled" error could be returned in production. ref
  • Fixed an issue where the PlatformPayButton with type={PlatformPay.ButtonType.GooglePayMark} would be unclickable. ref
  • Fixed an issue on Android where CardField would render without the necessary padding. 48debb2
  • Fixed an issue on iOS where providing a null value to certain method parameters would result in a crash. ref
  • Fixed the ShippingMethod type to contain the isPending field instead of a type field (which previously was never correct). This reflects the inputs accepted. ref
  • Fixed the ShippingMethod type to contain the startDate and endDate keys, if applicable. ref
  • Fixed instances of the "duplicate registered views" error. ref
  • Fixed extra margin that was being added to <CardForm /> on Android. ref
  • Fixed an issue where builds would error with the message 'const' enums are not supported. see commit
  • Fixed an issue where the canAddCardToWallet method would sometimes wrongly return false with a details.status of MISSING_CONFIGURATION in production builds. ref
  • Fixed an issue on Android where, for certain countries, the postal code would not be enabled but would still be required. ref
  • Fixed an issue on iOS where canAddCardToWallet would return false if the card had already been provisioned on a paired device like an Apple Watch, but had not yet been provisioned on the current device, and would also return false if the card had been provisioned on the current device, but not on a paired Apple Watch. ref

Note
This version pulls in a new version of stripe-android that now requires v1.8.0 of the Kotlin Gradle plugin. Refer to this issue for a limited workaround.