Stripe
@capacitor-community/stripe
Capacitor community plugin for native Stripe.
Since 4.2.0, require compileSdkVersion "33" at Android
Since version 4.2.0, this plugin requires compileSdkVersion "33". (Capacitor 4's default compileSdkVersion is "32").
| Plugin version | compileSdkVersion |
|---|---|
| 4.1.2 | 32 |
| 4.2.0 | 33 |
- Updated Google Pay button to match new brand guidelines.
- [CHANGED]5679 Fix oversized verification_frames payloads leading to failed scans.
See more info: https://github.com/stripe/stripe-android/releases
Most of the time it will be fine, but it may conflict with other plugins. If this, you should use released version. We can't support conflict with other plugins.
Maintainers
| Maintainer | GitHub | Social | Sponsoring Company |
|---|---|---|---|
| Hidetaka Okamoto | hideokamoto | @hide__dev | |
| Ibby Hadeed | ihadeed | ||
| Masahiko Sakakibara | rdlabo | @rdlabo | RELATION DESIGN LABO, GENERAL INC. ASSOCIATION |
Contributors ✨
Made with contributors-img.
How to use
Learn at the official @capacitor-community/stripe documentation.
日本語版をご利用の際は ja.stripe.capacitorjs.jp をご確認ください。
Demo
- Demo code is here. Please check these code before ask at issues.
- Demo of Web is hosting here.
Screenshots
| Android | iOS | Web | |
|---|---|---|---|
| PaymentSheet | ![]() |
![]() |
![]() |
| PaymentFlow | ![]() |
![]() |
![]() |
| ApplePay | Not supported | ![]() |
beta. |
| GooglePay | ![]() |
Not supported | ![]() |
| Identity | ![]() |
![]() |
Not supported |
API
isApplePayAvailable()createApplePay(...)presentApplePay()addListener(ApplePayEventsEnum.Loaded, ...)addListener(ApplePayEventsEnum.FailedToLoad, ...)addListener(ApplePayEventsEnum.Completed, ...)addListener(ApplePayEventsEnum.Canceled, ...)addListener(ApplePayEventsEnum.Failed, ...)addListener(ApplePayEventsEnum.DidSelectShippingContact, ...)addListener(ApplePayEventsEnum.DidCreatePaymentMethod, ...)isGooglePayAvailable()createGooglePay(...)presentGooglePay()addListener(GooglePayEventsEnum.Loaded, ...)addListener(GooglePayEventsEnum.FailedToLoad, ...)addListener(GooglePayEventsEnum.Completed, ...)addListener(GooglePayEventsEnum.Canceled, ...)addListener(GooglePayEventsEnum.Failed, ...)createIdentityVerificationSheet(...)presentIdentityVerificationSheet()addListener(IdentityVerificationSheetEventsEnum.Loaded, ...)addListener(IdentityVerificationSheetEventsEnum.FailedToLoad, ...)addListener(IdentityVerificationSheetEventsEnum.Completed, ...)addListener(IdentityVerificationSheetEventsEnum.Canceled, ...)addListener(IdentityVerificationSheetEventsEnum.Failed, ...)createPaymentFlow(...)presentPaymentFlow()confirmPaymentFlow()addListener(PaymentFlowEventsEnum.Loaded, ...)addListener(PaymentFlowEventsEnum.FailedToLoad, ...)addListener(PaymentFlowEventsEnum.Opened, ...)addListener(PaymentFlowEventsEnum.Completed, ...)addListener(PaymentFlowEventsEnum.Canceled, ...)addListener(PaymentFlowEventsEnum.Failed, ...)addListener(PaymentFlowEventsEnum.Created, ...)createPaymentSheet(...)presentPaymentSheet()addListener(PaymentSheetEventsEnum.Loaded, ...)addListener(PaymentSheetEventsEnum.FailedToLoad, ...)addListener(PaymentSheetEventsEnum.Completed, ...)addListener(PaymentSheetEventsEnum.Canceled, ...)addListener(PaymentSheetEventsEnum.Failed, ...)initialize(...)handleURLCallback(...)- Interfaces
- Type Aliases
- Enums
This is for @capacitor/docgen only. Not use in product.
isApplePayAvailable()
isApplePayAvailable() => Promise<void>createApplePay(...)
createApplePay(options: CreateApplePayOption) => Promise<void>| Param | Type |
|---|---|
options |
CreateApplePayOption |
presentApplePay()
presentApplePay() => Promise<{ paymentResult: ApplePayResultInterface; }>Returns: Promise<{ paymentResult: ApplePayResultInterface; }>
addListener(ApplePayEventsEnum.Loaded, ...)
addListener(eventName: ApplePayEventsEnum.Loaded, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.Loaded |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(ApplePayEventsEnum.FailedToLoad, ...)
addListener(eventName: ApplePayEventsEnum.FailedToLoad, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.FailedToLoad |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(ApplePayEventsEnum.Completed, ...)
addListener(eventName: ApplePayEventsEnum.Completed, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.Completed |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(ApplePayEventsEnum.Canceled, ...)
addListener(eventName: ApplePayEventsEnum.Canceled, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.Canceled |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(ApplePayEventsEnum.Failed, ...)
addListener(eventName: ApplePayEventsEnum.Failed, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.Failed |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(ApplePayEventsEnum.DidSelectShippingContact, ...)
addListener(eventName: ApplePayEventsEnum.DidSelectShippingContact, listenerFunc: (data: DidSelectShippingContact) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.DidSelectShippingContact |
listenerFunc |
(data: DidSelectShippingContact) => void |
Returns: PluginListenerHandle
addListener(ApplePayEventsEnum.DidCreatePaymentMethod, ...)
addListener(eventName: ApplePayEventsEnum.DidCreatePaymentMethod, listenerFunc: (data: DidSelectShippingContact) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
ApplePayEventsEnum.DidCreatePaymentMethod |
listenerFunc |
(data: DidSelectShippingContact) => void |
Returns: PluginListenerHandle
isGooglePayAvailable()
isGooglePayAvailable() => Promise<void>createGooglePay(...)
createGooglePay(options: CreateGooglePayOption) => Promise<void>| Param | Type |
|---|---|
options |
CreateGooglePayOption |
presentGooglePay()
presentGooglePay() => Promise<{ paymentResult: GooglePayResultInterface; }>Returns: Promise<{ paymentResult: GooglePayResultInterface; }>
addListener(GooglePayEventsEnum.Loaded, ...)
addListener(eventName: GooglePayEventsEnum.Loaded, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
GooglePayEventsEnum.Loaded |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(GooglePayEventsEnum.FailedToLoad, ...)
addListener(eventName: GooglePayEventsEnum.FailedToLoad, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
GooglePayEventsEnum.FailedToLoad |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(GooglePayEventsEnum.Completed, ...)
addListener(eventName: GooglePayEventsEnum.Completed, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
GooglePayEventsEnum.Completed |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(GooglePayEventsEnum.Canceled, ...)
addListener(eventName: GooglePayEventsEnum.Canceled, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
GooglePayEventsEnum.Canceled |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(GooglePayEventsEnum.Failed, ...)
addListener(eventName: GooglePayEventsEnum.Failed, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
GooglePayEventsEnum.Failed |
listenerFunc |
() => void |
Returns: PluginListenerHandle
createIdentityVerificationSheet(...)
createIdentityVerificationSheet(options: CreateIdentityVerificationSheetOption) => Promise<void>| Param | Type |
|---|---|
options |
CreateIdentityVerificationSheetOption |
presentIdentityVerificationSheet()
presentIdentityVerificationSheet() => Promise<{ identityVerificationResult: IdentityVerificationSheetResultInterface; }>Returns: Promise<{ identityVerificationResult: IdentityVerificationSheetResultInterface; }>
addListener(IdentityVerificationSheetEventsEnum.Loaded, ...)
addListener(eventName: IdentityVerificationSheetEventsEnum.Loaded, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
IdentityVerificationSheetEventsEnum.Loaded |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(IdentityVerificationSheetEventsEnum.FailedToLoad, ...)
addListener(eventName: IdentityVerificationSheetEventsEnum.FailedToLoad, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
IdentityVerificationSheetEventsEnum.FailedToLoad |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(IdentityVerificationSheetEventsEnum.Completed, ...)
addListener(eventName: IdentityVerificationSheetEventsEnum.Completed, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
IdentityVerificationSheetEventsEnum.Completed |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(IdentityVerificationSheetEventsEnum.Canceled, ...)
addListener(eventName: IdentityVerificationSheetEventsEnum.Canceled, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
IdentityVerificationSheetEventsEnum.Canceled |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(IdentityVerificationSheetEventsEnum.Failed, ...)
addListener(eventName: IdentityVerificationSheetEventsEnum.Failed, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
IdentityVerificationSheetEventsEnum.Failed |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
createPaymentFlow(...)
createPaymentFlow(options: CreatePaymentFlowOption) => Promise<void>| Param | Type |
|---|---|
options |
CreatePaymentFlowOption |
presentPaymentFlow()
presentPaymentFlow() => Promise<{ cardNumber: string; }>Returns: Promise<{ cardNumber: string; }>
confirmPaymentFlow()
confirmPaymentFlow() => Promise<{ paymentResult: PaymentFlowResultInterface; }>Returns: Promise<{ paymentResult: PaymentFlowResultInterface; }>
addListener(PaymentFlowEventsEnum.Loaded, ...)
addListener(eventName: PaymentFlowEventsEnum.Loaded, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.Loaded |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentFlowEventsEnum.FailedToLoad, ...)
addListener(eventName: PaymentFlowEventsEnum.FailedToLoad, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.FailedToLoad |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(PaymentFlowEventsEnum.Opened, ...)
addListener(eventName: PaymentFlowEventsEnum.Opened, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.Opened |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentFlowEventsEnum.Completed, ...)
addListener(eventName: PaymentFlowEventsEnum.Completed, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.Completed |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentFlowEventsEnum.Canceled, ...)
addListener(eventName: PaymentFlowEventsEnum.Canceled, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.Canceled |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentFlowEventsEnum.Failed, ...)
addListener(eventName: PaymentFlowEventsEnum.Failed, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.Failed |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(PaymentFlowEventsEnum.Created, ...)
addListener(eventName: PaymentFlowEventsEnum.Created, listenerFunc: (info: { cardNumber: string; }) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentFlowEventsEnum.Created |
listenerFunc |
(info: { cardNumber: string; }) => void |
Returns: PluginListenerHandle
createPaymentSheet(...)
createPaymentSheet(options: CreatePaymentSheetOption) => Promise<void>| Param | Type |
|---|---|
options |
CreatePaymentSheetOption |
presentPaymentSheet()
presentPaymentSheet() => Promise<{ paymentResult: PaymentSheetResultInterface; }>Returns: Promise<{ paymentResult: PaymentSheetResultInterface; }>
addListener(PaymentSheetEventsEnum.Loaded, ...)
addListener(eventName: PaymentSheetEventsEnum.Loaded, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentSheetEventsEnum.Loaded |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentSheetEventsEnum.FailedToLoad, ...)
addListener(eventName: PaymentSheetEventsEnum.FailedToLoad, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentSheetEventsEnum.FailedToLoad |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
addListener(PaymentSheetEventsEnum.Completed, ...)
addListener(eventName: PaymentSheetEventsEnum.Completed, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentSheetEventsEnum.Completed |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentSheetEventsEnum.Canceled, ...)
addListener(eventName: PaymentSheetEventsEnum.Canceled, listenerFunc: () => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentSheetEventsEnum.Canceled |
listenerFunc |
() => void |
Returns: PluginListenerHandle
addListener(PaymentSheetEventsEnum.Failed, ...)
addListener(eventName: PaymentSheetEventsEnum.Failed, listenerFunc: (error: string) => void) => PluginListenerHandle| Param | Type |
|---|---|
eventName |
PaymentSheetEventsEnum.Failed |
listenerFunc |
(error: string) => void |
Returns: PluginListenerHandle
initialize(...)
initialize(opts: StripeInitializationOptions) => Promise<void>| Param | Type |
|---|---|
opts |
StripeInitializationOptions |
handleURLCallback(...)
handleURLCallback(opts: StripeURLHandlingOptions) => Promise<void>iOS Only
| Param | Type |
|---|---|
opts |
StripeURLHandlingOptions |
Interfaces
CreateApplePayOption
| Prop | Type |
|---|---|
paymentIntentClientSecret |
string |
paymentSummaryItems |
{ label: string; amount: number; }[] |
merchantIdentifier |
string |
countryCode |
string |
currency |
string |
requiredShippingContactFields |
('postalAddress' | 'phoneNumber' | 'emailAddress' | 'name')[] |
PluginListenerHandle
| Prop | Type |
|---|---|
remove |
() => Promise<void> |
DidSelectShippingContact
| Prop | Type |
|---|---|
contact |
ShippingContact |
ShippingContact
| Prop | Type | Description |
|---|---|---|
givenName |
string |
Apple Pay only |
familyName |
string |
Apple Pay only |
middleName |
string |
Apple Pay only |
namePrefix |
string |
Apple Pay only |
nameSuffix |
string |
Apple Pay only |
nameFormatted |
string |
Apple Pay only |
phoneNumber |
string |
Apple Pay only |
nickname |
string |
Apple Pay only |
street |
string |
Apple Pay only |
city |
string |
Apple Pay only |
state |
string |
Apple Pay only |
postalCode |
string |
Apple Pay only |
country |
string |
Apple Pay only |
isoCountryCode |
string |
Apple Pay only |
subAdministrativeArea |
string |
Apple Pay only |
subLocality |
string |
Apple Pay only |
CreateGooglePayOption
| Prop | Type | Description |
|---|---|---|
paymentIntentClientSecret |
string |
|
paymentSummaryItems |
{ label: string; amount: number; }[] |
Web only need @stripe-elements/stripe-elements > 1.1.0 |
merchantIdentifier |
string |
Web only need @stripe-elements/stripe-elements > 1.1.0 |
countryCode |
string |
Web only need @stripe-elements/stripe-elements > 1.1.0 |
currency |
string |
Web only need @stripe-elements/stripe-elements > 1.1.0 |
CreateIdentityVerificationSheetOption
| Prop | Type |
|---|---|
verificationId |
string |
ephemeralKeySecret |
string |
CreatePaymentFlowOption
| Prop | Type | Description | Default |
|---|---|---|---|
paymentIntentClientSecret |
string |
Any documentation call 'paymentIntent' Set paymentIntentClientSecret or setupIntentClientSecret | |
setupIntentClientSecret |
string |
Any documentation call 'paymentIntent' Set paymentIntentClientSecret or setupIntentClientSecret | |
customerEphemeralKeySecret |
string |
Any documentation call 'ephemeralKey' | |
customerId |
string |
Any documentation call 'customer' | |
enableApplePay |
boolean |
If you set payment method ApplePay, this set true | false |
applePayMerchantId |
string |
If set enableApplePay false, Plugin ignore here. | |
enableGooglePay |
boolean |
If you set payment method GooglePay, this set true | false |
GooglePayIsTesting |
boolean |
false, |
|
countryCode |
string |
use ApplePay and GooglePay. If set enableApplePay and enableGooglePay false, Plugin ignore here. | "US" |
merchantDisplayName |
string |
"App Name" |
|
returnURL |
string |
"" |
|
style |
'alwaysLight' | 'alwaysDark' |
iOS Only | undefined |
withZipCode |
boolean |
Platform: Web only Show ZIP code field. | true |
CreatePaymentSheetOption
| Prop | Type | Description | Default |
|---|---|---|---|
paymentIntentClientSecret |
string |
Any documentation call 'paymentIntent' Set paymentIntentClientSecret or setupIntentClientSecret | |
setupIntentClientSecret |
string |
Any documentation call 'paymentIntent' Set paymentIntentClientSecret or setupIntentClientSecret | |
customerEphemeralKeySecret |
string |
Any documentation call 'ephemeralKey' | |
customerId |
string |
Any documentation call 'customer' | |
enableApplePay |
boolean |
If you set payment method ApplePay, this set true | false |
applePayMerchantId |
string |
If set enableApplePay false, Plugin ignore here. | |
enableGooglePay |
boolean |
If you set payment method GooglePay, this set true | false |
GooglePayIsTesting |
boolean |
false, |
|
countryCode |
string |
use ApplePay and GooglePay. If set enableApplePay and enableGooglePay false, Plugin ignore here. | "US" |
merchantDisplayName |
string |
"App Name" |
|
returnURL |
string |
"" |
|
style |
'alwaysLight' | 'alwaysDark' |
iOS Only | undefined |
withZipCode |
boolean |
Platform: Web only Show ZIP code field. | true |
StripeInitializationOptions
| Prop | Type | Description |
|---|---|---|
publishableKey |
string |
|
stripeAccount |
string |
Optional. Making API calls for connected accounts |
StripeURLHandlingOptions
| Prop | Type |
|---|---|
url |
string |
StripePlugin
| Method | Signature | Description |
|---|---|---|
| initialize | (opts: StripeInitializationOptions) => Promise<void> | |
| handleURLCallback | (opts: StripeURLHandlingOptions) => Promise<void> | iOS Only |
CapacitorStripeContext
| Prop | Type |
|---|---|
stripe |
StripePlugin |
isApplePayAvailable |
boolean |
isGooglePayAvailable |
boolean |
Type Aliases
ApplePayResultInterface
ApplePayEventsEnum.Completed | ApplePayEventsEnum.Canceled | ApplePayEventsEnum.Failed | ApplePayEventsEnum.DidSelectShippingContact | ApplePayEventsEnum.DidCreatePaymentMethod
GooglePayResultInterface
GooglePayEventsEnum.Completed | GooglePayEventsEnum.Canceled | GooglePayEventsEnum.Failed
IdentityVerificationSheetResultInterface
IdentityVerificationSheetEventsEnum.Completed | IdentityVerificationSheetEventsEnum.Canceled | IdentityVerificationSheetEventsEnum.Failed
PaymentFlowResultInterface
PaymentFlowEventsEnum.Completed | PaymentFlowEventsEnum.Canceled | PaymentFlowEventsEnum.Failed
PaymentSheetResultInterface
PaymentSheetEventsEnum.Completed | PaymentSheetEventsEnum.Canceled | PaymentSheetEventsEnum.Failed
Enums
ApplePayEventsEnum
| Members | Value |
|---|---|
Loaded |
"applePayLoaded" |
FailedToLoad |
"applePayFailedToLoad" |
Completed |
"applePayCompleted" |
Canceled |
"applePayCanceled" |
Failed |
"applePayFailed" |
DidSelectShippingContact |
"applePayDidSelectShippingContact" |
DidCreatePaymentMethod |
"applePayDidCreatePaymentMethod" |
GooglePayEventsEnum
| Members | Value |
|---|---|
Loaded |
"googlePayLoaded" |
FailedToLoad |
"googlePayFailedToLoad" |
Completed |
"googlePayCompleted" |
Canceled |
"googlePayCanceled" |
Failed |
"googlePayFailed" |
IdentityVerificationSheetEventsEnum
| Members | Value |
|---|---|
Loaded |
"identityVerificationSheetLoaded" |
FailedToLoad |
"identityVerificationSheetFailedToLoad" |
Completed |
"identityVerificationSheetCompleted" |
Canceled |
"identityVerificationSheetCanceled" |
Failed |
"identityVerificationSheetFailed" |
PaymentFlowEventsEnum
| Members | Value |
|---|---|
Loaded |
"paymentFlowLoaded" |
FailedToLoad |
"paymentFlowFailedToLoad" |
Opened |
"paymentFlowOpened" |
Created |
"paymentFlowCreated" |
Completed |
"paymentFlowCompleted" |
Canceled |
"paymentFlowCanceled" |
Failed |
"paymentFlowFailed" |
PaymentSheetEventsEnum
| Members | Value |
|---|---|
Loaded |
"paymentSheetLoaded" |
FailedToLoad |
"paymentSheetFailedToLoad" |
Completed |
"paymentSheetCompleted" |
Canceled |
"paymentSheetCanceled" |
Failed |
"paymentSheetFailed" |
License
@capacitor-community/stripe is MIT licensed.












