Capacitor community plugin for native Stripe.
package name | description | path |
---|---|---|
@capacitor-community/stripe | Support for non-personal payments using Stripe | /packages/payment |
@capacitor-community/stripe-identity | Supports identity verification using Stripe | /packages/identity |
@capacitor-community/stripe-terminal | Support for in-person payments using Stripe | /packages/terminal |
Unable to get provider androidx.startup.InitializationProvider: androidx.startup.StartupException: androidx.startup.StartupException: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/lifecycle/ReportFragment$ActivityInitializationListener;
If you got this error message at Android Studio, you should add next block to android/app/build.gradle
like https://github.com/capacitor-community/stripe/blob/main/demo/angular/android/app/build.gradle#L61-L74
+ buildscript {
+ ext.kotlin_version = '2.0.+'
+ repositories {
+ google()
+ mavenCentral()
+ }
+ dependencies {
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
+ }
+ }
+ apply plugin: 'kotlin-android'
Users of Capacitor v5 should use version v5 of the Plugin.
% npm install @capacitor-community/stripe@5
% npm install @capacitor-community/stripe-identity@5
% npm install @capacitor-community/stripe-terminal@5
Capacitor Android 6's default settings is here:
minSdkVersion = 22
compileSdkVersion = 34
targetSdkVersion = 34
To use the latest Stripe Android, you need to version these up. To use the latest features, follow these steps.
- Open
android/variables.gradle
and change sdkVersion version, if need. - Add
stripeAndroidVersion
,identityVersion
orstripeterminalCoreVersion
and set required version. Release information is here:
- https://github.com/stripe/stripe-android/releases
- https://github.com/stripe/stripe-terminal-android/releases
ext {
- minSdkVersion = 22
+ minSdkVersion = 26
compileSdkVersion = 34
targetSdkVersion = 33
androidxActivityVersion = '1.7.0'
androidxAppCompatVersion = '1.6.1'
androidxCoordinatorLayoutVersion = '1.2.0'
androidxCoreVersion = '1.10.0'
androidxFragmentVersion = '1.5.6'
coreSplashScreenVersion = '1.0.0'
androidxWebkitVersion = '1.6.1'
junitVersion = '4.13.2'
androidxJunitVersion = '1.1.5'
androidxEspressoCoreVersion = '3.5.1'
cordovaAndroidVersion = '10.1.1'
// If you use @capacitor-community/stripe:
+ stripeAndroidVersion = '20.39.+'
// If you use @capacitor-community/stripe-identity:
+ identityVersion = '20.39.+'
// If you use @capacitor-community/stripe-terminal:
+ stripeterminalCoreVersion = '4.0.0'
+ stripeterminalTapToPayVersion = '4.0.0'
}
Note: @capacitor-community/stripe-terminal
does not work with the default sdkVersion, so these updates are mandatory. See /packages/terminal for more information.
[!] CocoaPods could not find compatible versions for pod "StripePaymentSheet":
In snapshot (Podfile.lock):
..
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* changed the constraints of dependency `StripePaymentSheet` inside your development pod `CapacitorCommunityStripe`.
You should run `pod update StripePaymentSheet` to apply changes you've made.
You will see this error often when using Capacitor iOS. The solution is simple: do the following:
% cd ios/App && pod install --repo-update
or
% cd ios/App && pod update
Maintainer | GitHub | Social |
---|---|---|
Hidetaka Okamoto | hideokamoto | @hide__dev |
Masahiko Sakakibara | rdlabo | @rdlabo |
Made with contributors-img.
- Demo code is here. Please check these code before ask at issues.
- Demo of Web is hosting here.
Android | iOS | Web | |
---|---|---|---|
PaymentSheet | |||
PaymentFlow | |||
ApplePay | Not supported | beta. | |
GooglePay | Not supported |
Android | iOS | Web | |
---|---|---|---|
Identity |
% git clone [email protected]:capacitor-community/stripe.git
% cd stripe && npm install && npm run build
% cd demo && npm install && npm run cap && npx cap update