Skip to content

Releases: stripe/stripe-react-native

0.16.0 - 2022-07-22

22 Jul 17:34
Compare
Choose a tag to compare

Breaking changes

  • The <GooglePayButton /> component no longer overrides the type to use the dark mode version when the device is in Dark Mode. If you set the type value, it will always be respected. If you don't set the type value, it will match the system's theme (standard_shadow when in Light Mode, and standard_dark when in Dark Mode). #1051

New features

  • Added support for pay_dark and standard_dark to the <GooglePayButton /> component's type prop. This allows you to display the dark Google Pay button. #1051
  • Added support for borderColor, borderRadius, and cursorColor to CardForm's cardStyle prop on iOS (already exists on Android). #1048

Fixes

  • Reduced the size of the @stripe/stripe-react-native by preventing unnecessary files from being published. #1043

Please see the changelog for additional details.

0.15.0

14 Jul 17:06
Compare
Choose a tag to compare

Breaking changes

  • #1020 Changed some of fields for the params object that is supplied to initPaymentSheet(params):
    • Changed the applePay field. Previously this field accepted a boolean, now it accepts an object of type ApplePayParams, which includes the merchantCountryCode field, and a new paymentSummaryItems field (see "New features" below).
    • Changed the googlePay field. Previously this field accepted a boolean, now it accepts an object of type GooglePayParams, which includes the merchantCountryCode, currencyCode, and testEnv fields.
    • Since the merchantCountryCode field now lives under the applePay and googlePay objects, it has been removed from the base params object.
    • Similarly, since the currencyCode and testEnv fields now live under the googlePay object, they have been removed from the base params object .
  • #1020 In ApplePay.CartSummaryItem:
    • Renamed type to isPending- (if you had type: 'pending', replace it with isPending: true. if type: 'final', either remove it or set isPending: false).
      • The same change was made to ApplePay.ShippingMethod: renamed type to isPending.
    • Added a new paymentType field. This field is required, and in all pre-existing cases where you created a CartSummaryItem, should be set to paymentType: 'Immediate' (support for types Deferred and Recurring wasn't available until this release).

New features

  • Added support for iOS 15 paymentSummaryItems: PKDeferredPaymentSummaryItem and PKRecurringPaymentSummaryItem.
  • You can now specify Apple Pay line items to be displayed when paying with Apple Pay in PaymentSheet by providing applePay.paymentSummaryItems to the initPaymentSheet method. #1020
  • Added support for Affirm (previously, Affirm was only available in the Payment Sheet). 1036

Fixes

  • Fixed behavior of CardField and CardForm on Android to match that on iOS; postal code input no longer accepts characters that are never present in postal codes (anything besides 0-9, a-z, A-Z, hyphens, and whitespace). #1027.
  • Fixed an issue on older version of React Native where calling collectBankAccountForSetup or collectBankAccountForPayment and getting a Canceled result could cause a crash. #1037
  • Fixed an issue where some Android builds would fail on the lintVitalRelease step. #1038

0.14.0

30 Jun 19:50
Compare
Choose a tag to compare

Breaking changes

New features

  • Added the canAddCardToWallet method. #986.

Fixes

  • Fix build errors on Xcode 14 beta 1 by upgrading stripe-ios to ~>22.5.1. #1011
  • Fixed an issue on Android where the brand field in CardField's onCardChange callback wouldn't be set unless the card details were fully complete. #1012
  • Fixed an issue where Payment Sheet would cause crashes on Android if merchantDisplayName wasn't provided. #1015
  • Fixed a bug on Android where a crash could occur if the PaymentSheet was canceled and opened again. #1014
  • Fixed an instance on iOS where CardField's expiry date would remain marked as valid, even when it's invalid. #1018

0.13.1

16 Jun 15:14
Compare
Choose a tag to compare

Breaking changes

New features

Fixes

  • Never show postal code input in CardField if postalCodeEnabled=false (regardless of countryCode). #996

Please see the changelog for additional details.

0.13.0

15 Jun 19:18
Compare
Choose a tag to compare

Breaking changes

New features

  • Added a defaultValues prop to the CardForm component. Currently only accepts countryCode, and is Android-only. #974
  • Added the countryCode prop to the CardField component. #989
  • Added option to create a PII token (represents the details of personally identifiable information) to the createToken method. #976

Fixes

  • Resolve with an Error (of type Canceled) if no payment option is selected in the Payment Sheet custom flow (i.e., the x button is clicked to close the Payment Sheet). #975
  • Fixed an issue on Android where the complete field in the onCardChange callback would incorrectly be set to true even if the postal code wasn't filled out. #989
  • Make SetupIntent.lastSetupError and PaymentIntent.lastPaymentError object shape consistent on iOS and Android.#990

Please see the changelog for additional details.

0.12.0

02 Jun 15:08
Compare
Choose a tag to compare

Breaking changes

  • Renamed appearance.shapes.shadow.borderRadius to appearance.shapes.shadow.blurRadius, and appearance.primaryButton.shapes.shadow.borderRadius to appearance.primaryButton.shapes.shadow.blurRadius. #962

New features

Fixes

  • Fixed cases where Android apps would crash with the error: Unable to instantiate fragment com.reactnativestripesdk.PaymentLauncherFragment. #965
  • Fixed appearance.shapes.shadow.offset and appearance.primaryButton.shapes.shadow.offset not applying the y-coordinate in the correct direction. #962
  • Fixed a bug where handleNextAction wouldn't resolve on Android when using 3DS2. #966
  • Fixed a bug where the wrong CVC icon was show in the CardForm component on Android. #966
  • The card brand tint color is now correctly set in the CardField component on Android via the cardStyle.textColor prop. #851

Please see the changelog for additional details.

0.11.0

24 May 18:28
Compare
Choose a tag to compare

Breaking changes

  • Removed support for primaryButtonColor field on initPaymentSheet(). Please use the new appearance.primaryButton.colors.background field instead. #940

New features

  • You can now customize the appearance of your Payment Sheet via the appearance field on initPaymentSheet(). #940
  • Added Affirm and AU BECS Direct Debit support to Payment Sheet. #940

Fixes

  • Improved error messages on Android for failed confirmPayment and confirmSetupIntent calls, and any Google Pay related methods. #957
  • Made Android card validation state consistent with iOS in the CardField onCardChange callback. #958

Please see the changelog for additional details.

0.10.0

19 May 19:44
Compare
Choose a tag to compare

Breaking changes

New features

  • Card scanning is available in payment sheet on Android. #944
    • To enable this, you will need to add implementation 'com.stripe:stripecardscan:20.3.+' to your dependencies {} block in android/app/build.gradle.
  • us_bank_account payment method is now available in the payment sheet on Android. #944

Fixes

Please see the changelog for additional details.

0.6.1

19 May 15:29
7538dba
Compare
Choose a tag to compare

Breaking changes

New features

Fixes

  • fix: correctly overwrite package.json import via babel. #924
  • fix: upgrade expo config plugins. #936

Please see the changelog for additional details: https://github.com/stripe/stripe-react-native/blob/master/CHANGELOG.md

v0.9.0

10 May 18:24
Compare
Choose a tag to compare

Breaking changes

  • (#913) breaking: Changed props for the <AddToWalletButton /> component. Instead of passing cardHolderName, cardLastFour, cardDescription, and cardBrand directly as props, you will instead pass a cardDetails prop, which is an object containing the following fields:
    • primaryAccountIdentifier: The wallet.primary_account_identifier value from the issued card.
    • name: The card holder name (previously cardHolderName).
    • description: A user-facing description of the card (previously cardDescription).
    • lastFour: Last 4 digits of the card, optional (previously cardLastFour).
    • brand: The card brand, optional (previously cardBrand).

New features

  • feat: add PayPal support for payment intents (#929)
  • feat: expose 'cvc' when dangerouslyGetCardDetails is set to true (#928)
  • feat: add token & paymentMethodId handling to confirmPayment for Cards (#931)
  • feat: add ACHv2 to payment sheet on iOS (#925)

Fixes

  • fix: wrap instances of framentManager.commit (or use commitAllowingStateLoss) (#933)
  • fix: upgrade expo config plugins (#936)
  • fix: manually forward activity results to paymentLauncherFragment (#932)
  • fix: correctly overwrite package.json import via babel (#924)
  • fix: Providing zip code straight from CardField component on Android (#912)
  • fix: add fingerprint to Card result on android (#914)

Changed

Please see the changelog for additional details: https://github.com/stripe/stripe-react-native/blob/master/CHANGELOG.md