capacitor-community / stripe

Stripe Mobile SDK wrapper for Capacitor
https://capacitor-community-stripe.netlify.app/
MIT License
197 stars 77 forks source link
capacitor capacitor-plugin stripe


Stripe

Capacitor community plugin for native Stripe.

packages

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

Hint

Versions

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

How to use Stripe Android currently package

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.

  1. Open android/variables.gradle and change sdkVersion version, if need.
  2. Add stripeAndroidVersion, identityVersion or stripeterminalCoreVersion and set required version. Release information is here:
  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 = '3.5.0'
+   stripeterminalLocalmobileVersion = '3.5.0'
  }

Note: @capacitor-community/stripe-terminal does not work with the default sdkVersion, so these updates are mandatory. See /packages/terminal for more information.

Error when running cap update ios

[!] 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

Maintainers

Maintainer GitHub Social
Hidetaka Okamoto hideokamoto @hide__dev
Masahiko Sakakibara rdlabo @rdlabo

Contributors ✨

Made with contributors-img.

Demo

Screenshots

@capacitor-community/stripe

Android iOS Web
PaymentSheet
PaymentFlow
ApplePay Not supported beta.
GooglePay Not supported

@capacitor-community/stripe-identity

Android iOS Web
Identity

How to use Demo

% git clone git@github.com:capacitor-community/stripe.git
% cd stripe && npm install && npm run build
% cd demo && npm install && npm run cap && npx cap update