stripe_android 9.0.0+1 stripe_android: ^9.0.0+1 copied to clipboard
Stripe platform implementation for Android
9.0.0+1 #
- Fix Android compilation issue (thanks to @asaarnak)
9.0.0 #
This release is based on version 0.25.0 of Stripe React Native:
Breaking Changes
- Renamed the
paymentSummaryItems
field ininitPaymentSheet()
'sapplePay
params tocartItems
.
Features
- Added the
supportsTapToPay
option tocanAddCardToWallet
. reference - Added the
setOrderTracking
property to thePlatformPayButton
component and theinitPaymentSheet
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 toinitPaymentSheet()
'sapplePay
params. Use this to set the text displayed by the call to action button in the Apple Pay sheet.reference - Added the
request
field toinitPaymentSheet()
's,confirmPlatformPayPayment()
's, andconfirmPlatformPaySetupIntent
'sapplePay
params. Use this to support different types of payment requests, likeRecurringPaymentRequest
,AutomaticReloadPaymentRequest
, andMultiMerchantRequest
.reference - Added an
options
argument topresentPaymentSheet
which includes atimeout
property. reference - Added the
hasPairedAppleWatch
option tocanAddCardToWallet
. 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 adetails.status
ofUNSUPPORTED_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 theuseApplePay
hook without using theApplePayButton
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 thedetails.token
object. ref - Fixed an issue with
confirmPlatformPaySetupIntent
on iOS. ref - Fixed types so that Klarna accepts the
shippingDetails
property. ref - Both
PaymentIntent.Result
andSetupIntent.Result
types now include apaymentMethod
field. This replaces thepaymentMethodId
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
withtype={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 theisPending
field instead of atype
field (which previously was never correct). This reflects the inputs accepted. ref - Fixed the
ShippingMethod
type to contain thestartDate
andendDate
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 returnfalse
with adetails.status
ofMISSING_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 returnfalse
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 returnfalse
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.
8.0.0+1 #
Breaking Changes
- This library now supports the new Stripe platform pay methods. See: migration guide for more details.
Fixes
- Fix for #955 and #1081, enable automatic webview closing.
- Fix #1083 use correct method channel for dangerouslyupdateCard.
- Several fixes by the Stripe sdk v.0.21.0 , v.0.22.0 and v.0.23.0.
- FIX: #1083 use correct method channel for dangerouslyupdateCard (#1094).
- FEAT: scroll to keep card field visible (#1061).
7.0.0 #
Breaking Changes
- This library now supports iOS 13 and up, due to stripe-ios increasing the deployment target
Features
-
Added Link support in Payment Sheet.
-
Added the resetPaymentSheetCustomer method to clear persisted authentication state in the PaymentSheet.
-
Added preferredNetwork and availableNetworks fields to the CardResult payment method.
-
Added support for custom fonts to CardForm and CardView on Android.
-
Added support for customizing the call to action button label in Payment Sheet by providing the primaryButtonLabel property to initPaymentSheet().
-
Fixes
-
Several fixes by the Stripe sdk v.0.20.0.
6.0.0 #
Breaking Changes
- Move
PaymentMethodOptions
out ofPaymentMethodparams
so interface is similar with Stripe sdk.
Before
await Stripe.instance.confirmPayment(
paymentIntentClientSecret: clientSecret,
data: PaymentMethodParams.card(
paymentMethodData: PaymentMethodData(
billingDetails: billingDetails,
),
options: PaymentMethodOptions(
setupFutureUsage: PaymentIntentsFutureUsage.OffSession : null,
),
),
);
Now
await Stripe.instance.confirmPayment(
paymentIntentClientSecret: clientSecret,
data: PaymentMethodParams.card(
paymentMethodData: PaymentMethodData(
billingDetails: billingDetails,
),
),
options: PaymentMethodOptions(
setupFutureUsage: PaymentIntentsFutureUsage.OffSession : null,
),
);
- Deprecate support for Flutter 2 in order to use the new expensive Androidviews. This improves the overall experience on Android.
5.1.0 #
- Several fixes by the Stripe sdk v.0.19.0.
- Fix for #462, added
handleURLCallback
method for iOS to handlereturnUrl
when iDeal payment is successful. This will close the in-app webview of Safari.
5.0.1 #
- Fix for #462, added
handleURLCallback
method for iOS to handlereturnUrl
when iDeal payment is successful. This will close the in-app webview of Safari
5.0.0 #
Breaking changes
- Your compileSdkVersion (in android/build.gradle) now must be at least 32. Changing your compileSdkVersion does not change runtime behavior.
Features
- Added support for pay_dark and standard_dark to the GooglePayButton component. This allows you to display the dark Google Pay button.
- Added support for borderColor, borderRadius, and cursorColor to CardForm's cardStyle prop on iOS (already exists on Android).
- Added the collectBankAccountToken & collectFinancialConnectionsAccounts functions.
- confirmPayment can now be called with just a client secret (e.g. await confirmPayment("payment-intent-id")), in other words the payment method can be excluded. If the payment method is excluded, it is assumed by the SDK that you have attached the payment method on the server-side during payment intent creation.
- Payment Sheet now supports Link on iOS. #1086.
Other changes
4.0.0 #
** Breaking changes **
- Added support for iOS 15 paymentSummaryItems: PKDeferredPaymentSummaryItem and PKRecurringPaymentSummaryItem. Adding a summary item before was:
ApplePayCartSummaryItem(
label: 'Product Test',
amount: '0.01',
);
Becomes
ApplePayCartSummaryItem.immediate(
label: 'Product Test',
amount: '0.01',
);
-
Changed paymentsheet parameters to make it more clear which settings are used for Google Pay and Apple Pay. Changes:
merchantCountryCode
is now moved into bothPaymentSheetApplePay
andPaymentSheetGooglePay
,currencyCode
andtestEnv
is now part of thePaymentSheetGooglePay
object. -
Added possibility to add
ApplePayCartSummaryItem
to the paymensheet.
Other changes
- Support for affirm payment method.
- Several fixes by the Stripe sdk v.0.15.0.
3.2.0 #
- Added possibility to create a PII token.
- Support country code in Cardfield.
- Added default values to CardformField.
- Several fixes by the Stripe sdk v.0.13.0.
3.1.1 #
- Fix #771
3.1.0 #
- Added styling parameters for the payment sheet.
- Better error logging for Google Pay.
- Fix #462 Not returning back when using in app browser.
- Fix bug that threw not implemented exception in the nextCardAction method when using 3d Secure.
- Make Flutter Stripe backwards compatible with Flutter v2.
- Fix #731 Styling for the Cardform field.
- Several fixes by the Stripe sdk v.0.10.0, v.0.11.0 and v.0.12.0 .
3.0.2 #
- fix internal dependency version to stripe_platform_interface
3.0.1 #
** Breaking change **
- handleCardAction is now called handleNextAction
3.0.0 #
** Breaking changes **
- Support for Flutter 3 and support Dart sdk 2.16 and higher.
- Only supports application running on Freezed v2.0.0 and higher
- Changed parameter structure for
createPaymentMethod
,confirmPayment
,confirmSetupIntent
in line with latest changes of the Stripe SDK. For example
Stripe.instance.confirmPayment(
clientSecret,
PaymentMethodParams.ideal(
bankName: 'revolut',
),
);
Becomes
Stripe.instance.confirmPayment(
clientSecret,
PaymentMethodParams.ideal(
paymentMethodData:
PaymentMethodDataIdeal( 'revolut'),
),
);
- Change styling parameter structure for Cardformfield in order to support more styling options.
Other changes
2.5.0 #
- BREAKING CHANGE: Mostly fixes and changes to types, but some method's now accept slightly different parameters:
- Removed setUrlSchemeOnAndroid in favor of setReturnUrlSchemeOnAndroid. setReturnUrlSchemeOnAndroid functions exactly the same, this is just a rename.
- Removed handleCardAction in favor of handleNextAction. handleNextAction functions exactly the same, this is just a rename.
- BREAKING: This library now supports iOS 12 and up, due to
stripe-ios
increasing the deployment target.- To upgrade your iOS deployment target to 12.0, you can either do so in Xcode under your Build Settings, or by modifying IPHONEOS_DEPLOYMENT_TARGET in your project.pbxproj directly. You will also need to update your Podfile to target :ios, '12.0'.
- Feat: add card ID and bankAccount ID to token response
- Feat: Add support for ACHv2
- Feat: Add support for setting a card's currency when creating a Token
- Feat: Added support for placeholderColor, textErrorColor , borderColor, borderRadius, and borderWidth for AuBECSDebitForm on iOS
- Several fixes by the Stripe sdk v0.7.0
- Updated freezed dependency to allow 2.x
2.4.0 #
2.3.0 #
- add isGooglePaySupported method
- reenable support for legacy bank account token creation
- Several fixes by the Stripe sdk v0.3.0
2.2.0 #
2.1.1 #
2.1.0 #
** Enabled web support (Beta) **
Other changes
- Integrated native form to collect Aubecs payment data
- Add Button Border-Radius for Apple Pay Button #448
- Update dependencies to comply to new Flutter and dart release
- Add billing name for future payments #441
2.0.2 #
- New params
primaryButtonColor
,billingDetails
andallowsDelayedPaymentMethods
forinitPaymentSheet
- Fixed iOS focus issues #408
2.0.1 #
- FIX: focus issue on CardFormField on Android. #397
- DOCS: correct AppCompat mention in README.md. #392
2.0.0 #
1.3.0 #
** BREAKING CHANGES **
- Deprecate redundant parameters for payment sheet.
Other changes
- Add new multiline card form.
- Add Stripe Google pay integration.
- Add WeChat payment method.
- Improved example app.
1.2.0 #
** Breaking changes **
- Rename
confirmPaymentMethod
toconfirmPayment
accordingly with the change in the native SDK
Other changes
- Sync with latest Stripe sdk.
- Add
StripeException
that encapsulates finer grained and localized error messaging coming from the Stripe SDK. - Add
CardEditController
to handle theclear
,focus
,blur
methods from the cardfield. - Implement
FontFamily
on iOS. - Add
dangerouslyUpdateCardDetails
to allow custom UIs. (Please be sure to understand the severe implications of this approach here).
1.1.0 #
** Breaking changes **
- Make
paymentIntentClientSecret
nullable for SetupPaymentSheetParameters and add setupIntentClientSecret. - Rename
ThreeDSecureSubmitButtonThemeData
toThreeDSecureButtonThemeData
in order to facilitate for a generic class to customise 3D secure buttons.
Other changes
- Sync with latest Stripe sdk.
- Fix #147 add
urlscheme to initialise method
. Thanks to @dariuspo. - Improved focus behavior on Cardfield.
- Add
dangerouslyGetFullCardDetails
andFontFamily
to cardfield. - Better debug logging in case something goes wrong.
1.0.2 #
1.0.1+3 #
- Fix: CardField textColor and enablePostalCode params
1.0.1 #
- Include Payment Sheet
1.0.0 #
- Initial beta release