From ae6b98a3d4f5280d042ff923a39181ad5565485f Mon Sep 17 00:00:00 2001 From: Dan Jackson Date: Thu, 9 Nov 2017 10:36:52 -0800 Subject: [PATCH 1/4] Changes for v11.5.0 * Update README: * We support building with either Xcode 8 or 9 * Use example backend app at the tip of master, instead of linking to a specific tag. * Update CHANGELOG * Update `STPSDKVersion` * Update versions in `Info.plist` * Update `VERSION` * Update `Stripe.podspec` --- CHANGELOG.md | 7 +++++++ README.md | 4 ++-- Stripe.podspec | 2 +- Stripe/Info.plist | 4 ++-- Stripe/PublicHeaders/STPAPIClient.h | 2 +- VERSION | 2 +- 6 files changed, 14 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b10af6fa91c..4bf2ec007f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## 11.5.0 2017-11-09 +* Adds a new helper method to `STPSourceParams` for creating reusable Alipay sources. [#811](https://github.com/stripe/stripe-ios/pull/811) +* Silences spurious availability warnings when using Xcode9 [#823](https://github.com/stripe/stripe-ios/pull/823) +* Auto capitalizes currency code when using `paymentRequestWithMerchantIdentifier ` to improve compatibility with iOS 11 `PKPaymentAuthorizationViewController` [#829](https://github.com/stripe/stripe-ios/pull/829) +* Fixes a bug in `STPRedirectContext` which caused `SFSafariViewController`-based redirects to incorrectly dismiss when switching apps. [#833](https://github.com/stripe/stripe-ios/pull/833) +* Fixes a bug that incorrectly offered users the option to "Use Billing Address" on the shipping address screen when there was no existing billing address to fill in. [#834](https://github.com/stripe/stripe-ios/pull/834) + ## 11.4.0 2017-10-20 * Restores `[STPCard brandFromString:]` method which was marked as deprecated in a recent version [#801](https://github.com/stripe/stripe-ios/pull/801) * Adds `[STPBankAccount metadata]` and `[STPCard metadata]` read-only accessors and improves annotation for `[STPSource metadata]` [#808](https://github.com/stripe/stripe-ios/pull/808) diff --git a/README.md b/README.md index d3d00993c95..b5b601a9e3f 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ If you're reading this on GitHub.com, please make sure you are looking at the [t ## Requirements -The Stripe iOS SDK is compatible with apps supporting iOS 8 and above and requires Xcode 8 to build from source. +The Stripe iOS SDK is compatible with apps supporting iOS 8 and above and requires Xcode 8 or Xcode 9 to build from source. ## Getting Started @@ -49,7 +49,7 @@ To try out any of these examples, clone this repository, open `Stripe.xcworkspac 1. Execute `./setup.sh` from the root of the repository to build the necessary dependencies. 2. If you haven't already, sign up for a [Stripe account](https://dashboard.stripe.com/register) (it takes seconds). Then go to https://dashboard.stripe.com/account/apikeys. 3. Replace the `stripePublishableKey` constant in CheckoutViewController.swift (for the Standard Integration app) or Constants.m (for the Custom Integration app) with your Test Publishable Key. -4. Head to https://github.com/stripe/example-ios-backend/tree/v11.0.0 and click "Deploy to Heroku" (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under 'Env'. Click "Deploy for Free". +4. Head to https://github.com/stripe/example-ios-backend and click "Deploy to Heroku" (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under 'Env'. Click "Deploy for Free". 5. Replace the `backendBaseURL` variable in the example iOS app with the app URL Heroku provides you with (e.g. "https://my-example-app.herokuapp.com") After this is done, you can make test payments through the app and see them in your Stripe dashboard. Head to https://stripe.com/docs/testing#cards for a list of test card numbers. diff --git a/Stripe.podspec b/Stripe.podspec index c126ee95e21..c7779775291 100644 --- a/Stripe.podspec +++ b/Stripe.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'Stripe' - s.version = '11.4.0' + s.version = '11.5.0' s.summary = 'Stripe is a web-based API for accepting payments online.' s.license = { :type => 'MIT', :file => 'LICENSE' } s.homepage = 'https://stripe.com/docs/mobile/ios' diff --git a/Stripe/Info.plist b/Stripe/Info.plist index 683f58d43dc..fd94d14ab91 100644 --- a/Stripe/Info.plist +++ b/Stripe/Info.plist @@ -13,11 +13,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 11.4.0 + 11.5.0 CFBundleSignature ???? CFBundleVersion - 11.4.0 + 11.5.0 NSPrincipalClass diff --git a/Stripe/PublicHeaders/STPAPIClient.h b/Stripe/PublicHeaders/STPAPIClient.h index ae52a0f1605..5ac4996dcbd 100644 --- a/Stripe/PublicHeaders/STPAPIClient.h +++ b/Stripe/PublicHeaders/STPAPIClient.h @@ -20,7 +20,7 @@ FAUXPAS_IGNORED_IN_FILE(APIAvailability) /** The current version of this library. */ -static NSString *const STPSDKVersion = @"11.4.0"; +static NSString *const STPSDKVersion = @"11.5.0"; @class STPBankAccount, STPBankAccountParams, STPCard, STPCardParams, STPSourceParams, STPToken, STPPaymentConfiguration; diff --git a/VERSION b/VERSION index 72773deb895..7ef698131ae 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -11.4.0 +11.5.0 From ee987a05ab1ab8dc31a41623b1f5dcd5bc6bf97f Mon Sep 17 00:00:00 2001 From: Dan Jackson Date: Thu, 9 Nov 2017 12:40:10 -0800 Subject: [PATCH 2/4] Updated documentation via `./ci_scripts/build_documentation.sh` --- docs/docs/Categories.html | 8 +- docs/docs/Categories/NSError(Stripe).html | 6 +- .../UINavigationBar(Stripe_Theme).html | 8 +- docs/docs/Classes.html | 78 +++++----- docs/docs/Classes/STPAPIClient.html | 36 ++--- .../Classes/STPAddCardViewController.html | 16 +- docs/docs/Classes/STPAddress.html | 141 +++++++++++++++--- docs/docs/Classes/STPBankAccount.html | 28 ++-- docs/docs/Classes/STPBankAccountParams.html | 18 +-- docs/docs/Classes/STPCard.html | 52 +++---- docs/docs/Classes/STPCardParams.html | 32 ++-- docs/docs/Classes/STPCardValidator.html | 28 ++-- docs/docs/Classes/STPCoreViewController.html | 12 +- docs/docs/Classes/STPCustomer.html | 14 +- docs/docs/Classes/STPCustomerContext.html | 8 +- .../docs/Classes/STPCustomerDeserializer.html | 12 +- docs/docs/Classes/STPFile.html | 16 +- docs/docs/Classes/STPImageLibrary.html | 28 ++-- .../STPPaymentActivityIndicatorView.html | 10 +- .../docs/Classes/STPPaymentCardTextField.html | 78 +++++----- .../docs/Classes/STPPaymentConfiguration.html | 24 +-- docs/docs/Classes/STPPaymentContext.html | 62 ++++---- .../STPPaymentMethodsViewController.html | 20 +-- docs/docs/Classes/STPPaymentResult.html | 8 +- docs/docs/Classes/STPRedirectContext.html | 18 +-- .../STPShippingAddressViewController.html | 14 +- docs/docs/Classes/STPSource.html | 40 ++--- docs/docs/Classes/STPSourceCardDetails.html | 22 +-- docs/docs/Classes/STPSourceOwner.html | 22 +-- docs/docs/Classes/STPSourceParams.html | 122 ++++++++++++--- docs/docs/Classes/STPSourceReceiver.html | 14 +- docs/docs/Classes/STPSourceRedirect.html | 12 +- .../Classes/STPSourceSEPADebitDetails.html | 18 +-- docs/docs/Classes/STPSourceVerification.html | 10 +- docs/docs/Classes/STPTheme.html | 36 ++--- docs/docs/Classes/STPToken.html | 16 +- docs/docs/Classes/STPUserInformation.html | 8 +- docs/docs/Classes/Stripe.html | 18 +-- docs/docs/Constants.html | 38 ++--- docs/docs/Enums.html | 44 +++--- docs/docs/Enums/STPBankAccountHolderType.html | 8 +- docs/docs/Enums/STPBankAccountStatus.html | 14 +- docs/docs/Enums/STPBillingAddressFields.html | 10 +- docs/docs/Enums/STPCardBrand.html | 18 +-- docs/docs/Enums/STPCardFundingType.html | 12 +- docs/docs/Enums/STPCardValidationState.html | 10 +- docs/docs/Enums/STPErrorCode.html | 16 +- docs/docs/Enums/STPFilePurpose.html | 10 +- docs/docs/Enums/STPPaymentMethodType.html | 10 +- docs/docs/Enums/STPPaymentStatus.html | 10 +- docs/docs/Enums/STPRedirectContextState.html | 12 +- docs/docs/Enums/STPShippingStatus.html | 8 +- docs/docs/Enums/STPShippingType.html | 8 +- .../Enums/STPSourceCard3DSecureStatus.html | 12 +- docs/docs/Enums/STPSourceFlow.html | 14 +- docs/docs/Enums/STPSourceRedirectStatus.html | 12 +- docs/docs/Enums/STPSourceStatus.html | 16 +- docs/docs/Enums/STPSourceType.html | 26 ++-- docs/docs/Enums/STPSourceUsage.html | 10 +- .../Enums/STPSourceVerificationStatus.html | 12 +- docs/docs/Functions.html | 10 +- docs/docs/Protocols.html | 26 ++-- .../Protocols/STPAPIResponseDecodable.html | 10 +- .../STPAddCardViewControllerDelegate.html | 8 +- docs/docs/Protocols/STPBackendAPIAdapter.html | 14 +- .../Protocols/STPEphemeralKeyProvider.html | 6 +- docs/docs/Protocols/STPFormEncodable.html | 10 +- .../STPPaymentCardTextFieldDelegate.html | 26 ++-- .../Protocols/STPPaymentContextDelegate.html | 14 +- docs/docs/Protocols/STPPaymentMethod.html | 10 +- ...PPaymentMethodsViewControllerDelegate.html | 12 +- ...ShippingAddressViewControllerDelegate.html | 10 +- docs/docs/Protocols/STPSourceProtocol.html | 6 +- docs/docs/Type Definitions.html | 26 ++-- .../Resources/Documents/Categories.html | 8 +- .../Documents/Categories/NSError(Stripe).html | 6 +- .../UINavigationBar(Stripe_Theme).html | 8 +- .../Contents/Resources/Documents/Classes.html | 78 +++++----- .../Documents/Classes/STPAPIClient.html | 36 ++--- .../Classes/STPAddCardViewController.html | 16 +- .../Documents/Classes/STPAddress.html | 141 +++++++++++++++--- .../Documents/Classes/STPBankAccount.html | 28 ++-- .../Classes/STPBankAccountParams.html | 18 +-- .../Resources/Documents/Classes/STPCard.html | 52 +++---- .../Documents/Classes/STPCardParams.html | 32 ++-- .../Documents/Classes/STPCardValidator.html | 28 ++-- .../Classes/STPCoreViewController.html | 12 +- .../Documents/Classes/STPCustomer.html | 14 +- .../Documents/Classes/STPCustomerContext.html | 8 +- .../Classes/STPCustomerDeserializer.html | 12 +- .../Resources/Documents/Classes/STPFile.html | 16 +- .../Documents/Classes/STPImageLibrary.html | 28 ++-- .../STPPaymentActivityIndicatorView.html | 10 +- .../Classes/STPPaymentCardTextField.html | 78 +++++----- .../Classes/STPPaymentConfiguration.html | 24 +-- .../Documents/Classes/STPPaymentContext.html | 62 ++++---- .../STPPaymentMethodsViewController.html | 20 +-- .../Documents/Classes/STPPaymentResult.html | 8 +- .../Documents/Classes/STPRedirectContext.html | 18 +-- .../STPShippingAddressViewController.html | 14 +- .../Documents/Classes/STPSource.html | 40 ++--- .../Classes/STPSourceCardDetails.html | 22 +-- .../Documents/Classes/STPSourceOwner.html | 22 +-- .../Documents/Classes/STPSourceParams.html | 122 ++++++++++++--- .../Documents/Classes/STPSourceReceiver.html | 14 +- .../Documents/Classes/STPSourceRedirect.html | 12 +- .../Classes/STPSourceSEPADebitDetails.html | 18 +-- .../Classes/STPSourceVerification.html | 10 +- .../Resources/Documents/Classes/STPTheme.html | 36 ++--- .../Resources/Documents/Classes/STPToken.html | 16 +- .../Documents/Classes/STPUserInformation.html | 8 +- .../Resources/Documents/Classes/Stripe.html | 18 +-- .../Resources/Documents/Constants.html | 38 ++--- .../Contents/Resources/Documents/Enums.html | 44 +++--- .../Enums/STPBankAccountHolderType.html | 8 +- .../Documents/Enums/STPBankAccountStatus.html | 14 +- .../Enums/STPBillingAddressFields.html | 10 +- .../Documents/Enums/STPCardBrand.html | 18 +-- .../Documents/Enums/STPCardFundingType.html | 12 +- .../Enums/STPCardValidationState.html | 10 +- .../Documents/Enums/STPErrorCode.html | 16 +- .../Documents/Enums/STPFilePurpose.html | 10 +- .../Documents/Enums/STPPaymentMethodType.html | 10 +- .../Documents/Enums/STPPaymentStatus.html | 10 +- .../Enums/STPRedirectContextState.html | 12 +- .../Documents/Enums/STPShippingStatus.html | 8 +- .../Documents/Enums/STPShippingType.html | 8 +- .../Enums/STPSourceCard3DSecureStatus.html | 12 +- .../Documents/Enums/STPSourceFlow.html | 14 +- .../Enums/STPSourceRedirectStatus.html | 12 +- .../Documents/Enums/STPSourceStatus.html | 16 +- .../Documents/Enums/STPSourceType.html | 26 ++-- .../Documents/Enums/STPSourceUsage.html | 10 +- .../Enums/STPSourceVerificationStatus.html | 12 +- .../Resources/Documents/Functions.html | 10 +- .../Resources/Documents/Protocols.html | 26 ++-- .../Protocols/STPAPIResponseDecodable.html | 10 +- .../STPAddCardViewControllerDelegate.html | 8 +- .../Protocols/STPBackendAPIAdapter.html | 14 +- .../Protocols/STPEphemeralKeyProvider.html | 6 +- .../Documents/Protocols/STPFormEncodable.html | 10 +- .../STPPaymentCardTextFieldDelegate.html | 26 ++-- .../Protocols/STPPaymentContextDelegate.html | 14 +- .../Documents/Protocols/STPPaymentMethod.html | 10 +- ...PPaymentMethodsViewControllerDelegate.html | 12 +- ...ShippingAddressViewControllerDelegate.html | 10 +- .../Protocols/STPSourceProtocol.html | 6 +- .../Resources/Documents/Type Definitions.html | 26 ++-- .../Contents/Resources/Documents/index.html | 8 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 155648 -> 151552 bytes docs/docs/docsets/Stripe.tgz | Bin 312533 -> 313264 bytes docs/docs/index.html | 8 +- docs/docs/search.json | 2 +- 154 files changed, 1820 insertions(+), 1462 deletions(-) diff --git a/docs/docs/Categories.html b/docs/docs/Categories.html index 49c8a0bb495..6d3fb8a29ec 100644 --- a/docs/docs/Categories.html +++ b/docs/docs/Categories.html @@ -433,7 +433,7 @@

Declaration

@@ -470,7 +470,7 @@

Declaration

@@ -483,8 +483,8 @@

Declaration

diff --git a/docs/docs/Categories/NSError(Stripe).html b/docs/docs/Categories/NSError(Stripe).html index 66619acd956..e1802285782 100644 --- a/docs/docs/Categories/NSError(Stripe).html +++ b/docs/docs/Categories/NSError(Stripe).html @@ -462,7 +462,7 @@

Return Value

or nil if there was no error information included in the JSON dictionary.

@@ -475,8 +475,8 @@

Return Value

diff --git a/docs/docs/Categories/UINavigationBar(Stripe_Theme).html b/docs/docs/Categories/UINavigationBar(Stripe_Theme).html index 1e34cef5364..648bc39b54f 100644 --- a/docs/docs/Categories/UINavigationBar(Stripe_Theme).html +++ b/docs/docs/Categories/UINavigationBar(Stripe_Theme).html @@ -461,7 +461,7 @@

Parameters

@@ -502,7 +502,7 @@

Declaration

@@ -515,8 +515,8 @@

Declaration

diff --git a/docs/docs/Classes.html b/docs/docs/Classes.html index b7bceb89ab9..2997357fcd4 100644 --- a/docs/docs/Classes.html +++ b/docs/docs/Classes.html @@ -431,7 +431,7 @@

Declaration

@@ -467,7 +467,7 @@

Declaration

@@ -507,7 +507,7 @@

Declaration

@@ -547,7 +547,7 @@

Declaration

@@ -591,7 +591,7 @@

Declaration

@@ -638,7 +638,7 @@

Declaration

@@ -685,7 +685,7 @@

Declaration

@@ -732,7 +732,7 @@

Declaration

@@ -779,7 +779,7 @@

Declaration

@@ -821,7 +821,7 @@

Declaration

@@ -861,7 +861,7 @@

Declaration

@@ -904,7 +904,7 @@

Declaration

@@ -948,7 +948,7 @@

Declaration

@@ -990,7 +990,7 @@

Declaration

@@ -1026,7 +1026,7 @@

Declaration

@@ -1071,7 +1071,7 @@

Declaration

@@ -1116,7 +1116,7 @@

Declaration

@@ -1156,7 +1156,7 @@

Declaration

@@ -1196,7 +1196,7 @@

Declaration

@@ -1240,7 +1240,7 @@

Declaration

@@ -1286,7 +1286,7 @@

Declaration

@@ -1330,7 +1330,7 @@

Declaration

@@ -1379,7 +1379,7 @@

Declaration

@@ -1419,7 +1419,7 @@

Declaration

@@ -1484,7 +1484,7 @@

Declaration

@@ -1524,7 +1524,7 @@

Declaration

@@ -1564,7 +1564,7 @@

Declaration

@@ -1605,7 +1605,7 @@

Declaration

@@ -1645,7 +1645,7 @@

Declaration

@@ -1690,7 +1690,7 @@

Declaration

@@ -1730,7 +1730,7 @@

Declaration

@@ -1770,7 +1770,7 @@

Declaration

@@ -1811,7 +1811,7 @@

Declaration

@@ -1851,7 +1851,7 @@

Declaration

@@ -1891,7 +1891,7 @@

Declaration

@@ -1931,7 +1931,7 @@

Declaration

@@ -1974,7 +1974,7 @@

Declaration

@@ -1987,8 +1987,8 @@

Declaration

diff --git a/docs/docs/Classes/STPAPIClient.html b/docs/docs/Classes/STPAPIClient.html index 323101ee27e..821b40643ce 100644 --- a/docs/docs/Classes/STPAPIClient.html +++ b/docs/docs/Classes/STPAPIClient.html @@ -437,7 +437,7 @@

Declaration

@@ -497,7 +497,7 @@

Return Value

An instance of STPAPIClient.

@@ -556,7 +556,7 @@

Return Value

An instance of STPAPIClient.

@@ -591,7 +591,7 @@

Declaration

@@ -627,7 +627,7 @@

Declaration

@@ -669,7 +669,7 @@

Declaration

@@ -747,7 +747,7 @@

Parameters

@@ -814,7 +814,7 @@

Parameters

@@ -893,7 +893,7 @@

Parameters

@@ -972,7 +972,7 @@

Parameters

@@ -1074,7 +1074,7 @@

Parameters

@@ -1152,7 +1152,7 @@

Parameters

@@ -1237,7 +1237,7 @@

Parameters

@@ -1317,7 +1317,7 @@

Parameters

@@ -1419,7 +1419,7 @@

Parameters

@@ -1474,7 +1474,7 @@

Parameters

@@ -1487,8 +1487,8 @@

Parameters

diff --git a/docs/docs/Classes/STPAddCardViewController.html b/docs/docs/Classes/STPAddCardViewController.html index 046fc261567..410a1211aa4 100644 --- a/docs/docs/Classes/STPAddCardViewController.html +++ b/docs/docs/Classes/STPAddCardViewController.html @@ -437,7 +437,7 @@

Declaration

@@ -505,7 +505,7 @@

Parameters

@@ -541,7 +541,7 @@

Declaration

@@ -577,7 +577,7 @@

Declaration

@@ -613,7 +613,7 @@

Declaration

@@ -652,7 +652,7 @@

Declaration

@@ -665,8 +665,8 @@

Declaration

diff --git a/docs/docs/Classes/STPAddress.html b/docs/docs/Classes/STPAddress.html index f55ea781bb9..c62cd58f3b4 100644 --- a/docs/docs/Classes/STPAddress.html +++ b/docs/docs/Classes/STPAddress.html @@ -437,7 +437,7 @@

Declaration

@@ -472,7 +472,7 @@

Declaration

@@ -507,7 +507,7 @@

Declaration

@@ -542,7 +542,7 @@

Declaration

@@ -577,7 +577,7 @@

Declaration

@@ -612,7 +612,7 @@

Declaration

@@ -647,7 +647,7 @@

Declaration

@@ -682,7 +682,7 @@

Declaration

@@ -717,7 +717,7 @@

Declaration

@@ -794,7 +794,7 @@

Parameters

@@ -852,7 +852,7 @@

Return Value

A new STPAddress instance with data copied from the passed in record.

@@ -892,7 +892,7 @@

Return Value

STPAddress instance.

@@ -950,7 +950,7 @@

Return Value

A new STPAddress instance with data copied from the passed in contact.

@@ -989,7 +989,7 @@

Return Value

A new PassKit contact with data copied from this STPAddress instance.

@@ -1047,7 +1047,7 @@

Return Value

A new STPAddress instance with data copied from the passed in contact.

@@ -1108,7 +1108,59 @@

Return Value

NO otherwise.

+ + + +
  • +
    + + + + -containsContentForBillingAddressFields: + +
    +
    +
    +
    +
    +
    +

    Checks if this STPAddress has any content (possibly invalid) in any of the +desired billing address fields.

    + +

    Where containsRequiredFields: validates that this STPAddress contains valid data in +all of the required fields, this method checks for the existence of any data.

    + +

    For example, if desiredFields is STPBillingAddressFieldsZip, this will check +if the postalCode is empty.

    + +

    Note: When desiredFields == STPBillingAddressFieldsNone, this method always returns +NO.

    + +

    @parameter desiredFields The billing address information the caller is interested in.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (BOOL)containsContentForBillingAddressFields:
    +    (STPBillingAddressFields)desiredFields;
    + +
    +
    +

    Swift

    +
    func containsContent(for desiredFields: STPBillingAddressFields) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    YES if there is any data in this STPAddress that’s relevant for those fields.

    +
    +
    @@ -1168,7 +1220,56 @@

    Return Value

    NO otherwise.

    + + +
  • +
  • +
    + + + + -containsContentForShippingAddressFields: + +
    +
    +
    +
    +
    +
    +

    Checks if this STPAddress has any content (possibly invalid) in any of the +desired shipping address fields.

    + +

    Where containsRequiredShippingAddressFields: validates that this STPAddress +contains valid data in all of the required fields, this method checks for the +existence of any data.

    + +

    Note: When desiredFields == PKAddressFieldNone, this method always returns +NO.

    + +

    @parameter desiredFields The shipping address information the caller is interested in.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (BOOL)containsContentForShippingAddressFields:(PKAddressField)desiredFields;
    + +
    +
    +

    Swift

    +
    func containsContent(forShippingAddressFields desiredFields: PKAddressField) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    YES if there is any data in this STPAddress that’s relevant for those fields.

    +
    +
    @@ -1229,7 +1330,7 @@

    Return Value

    a PKAddressField value.

    @@ -1242,8 +1343,8 @@

    Return Value

    diff --git a/docs/docs/Classes/STPBankAccount.html b/docs/docs/Classes/STPBankAccount.html index 9d9c399d3a3..bd103ef9de7 100644 --- a/docs/docs/Classes/STPBankAccount.html +++ b/docs/docs/Classes/STPBankAccount.html @@ -440,7 +440,7 @@

    Declaration

    @@ -476,7 +476,7 @@

    Declaration

    @@ -511,7 +511,7 @@

    Declaration

    @@ -546,7 +546,7 @@

    Declaration

    @@ -581,7 +581,7 @@

    Declaration

    @@ -616,7 +616,7 @@

    Declaration

    @@ -651,7 +651,7 @@

    Declaration

    @@ -686,7 +686,7 @@

    Declaration

    @@ -722,7 +722,7 @@

    Declaration

    @@ -763,7 +763,7 @@

    Declaration

    @@ -798,7 +798,7 @@

    Declaration

    @@ -844,7 +844,7 @@

    Declaration

    @@ -857,8 +857,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPBankAccountParams.html b/docs/docs/Classes/STPBankAccountParams.html index 37614eccd49..a1673887665 100644 --- a/docs/docs/Classes/STPBankAccountParams.html +++ b/docs/docs/Classes/STPBankAccountParams.html @@ -444,7 +444,7 @@

    Declaration

    @@ -480,7 +480,7 @@

    Declaration

    @@ -516,7 +516,7 @@

    Declaration

    @@ -551,7 +551,7 @@

    Declaration

    @@ -586,7 +586,7 @@

    Declaration

    @@ -621,7 +621,7 @@

    Declaration

    @@ -659,7 +659,7 @@

    Declaration

    @@ -672,8 +672,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPCard.html b/docs/docs/Classes/STPCard.html index 8be1e0eb820..5c030d090ea 100644 --- a/docs/docs/Classes/STPCard.html +++ b/docs/docs/Classes/STPCard.html @@ -440,7 +440,7 @@

    Declaration

    @@ -475,7 +475,7 @@

    Declaration

    @@ -512,7 +512,7 @@

    Declaration

    @@ -547,7 +547,7 @@

    Declaration

    @@ -582,7 +582,7 @@

    Declaration

    @@ -617,7 +617,7 @@

    Declaration

    @@ -652,7 +652,7 @@

    Declaration

    @@ -687,7 +687,7 @@

    Declaration

    @@ -722,7 +722,7 @@

    Declaration

    @@ -757,7 +757,7 @@

    Declaration

    @@ -792,7 +792,7 @@

    Declaration

    @@ -829,7 +829,7 @@

    Declaration

    @@ -870,7 +870,7 @@

    Declaration

    @@ -929,7 +929,7 @@

    Return Value

    A string representing the brand, suitable for displaying to a user.

    @@ -999,7 +999,7 @@

    Return Value

    returns STPCardBrandUnknown.

    @@ -1045,7 +1045,7 @@

    Declaration

    @@ -1080,7 +1080,7 @@

    Declaration

    @@ -1115,7 +1115,7 @@

    Declaration

    @@ -1150,7 +1150,7 @@

    Declaration

    @@ -1185,7 +1185,7 @@

    Declaration

    @@ -1220,7 +1220,7 @@

    Declaration

    @@ -1255,7 +1255,7 @@

    Declaration

    @@ -1380,7 +1380,7 @@

    Return Value

    an STPCard instance populated with the provided values.

    @@ -1442,7 +1442,7 @@

    Return Value

    returns STPCardFundingTypeOther.

    @@ -1455,8 +1455,8 @@

    Return Value

    diff --git a/docs/docs/Classes/STPCardParams.html b/docs/docs/Classes/STPCardParams.html index 48481d95b33..c50facdab0c 100644 --- a/docs/docs/Classes/STPCardParams.html +++ b/docs/docs/Classes/STPCardParams.html @@ -444,7 +444,7 @@

    Declaration

    @@ -479,7 +479,7 @@

    Declaration

    @@ -514,7 +514,7 @@

    Declaration

    @@ -549,7 +549,7 @@

    Declaration

    @@ -584,7 +584,7 @@

    Declaration

    @@ -625,7 +625,7 @@

    Declaration

    @@ -666,7 +666,7 @@

    Declaration

    @@ -704,7 +704,7 @@

    Declaration

    @@ -750,7 +750,7 @@

    Declaration

    @@ -785,7 +785,7 @@

    Declaration

    @@ -820,7 +820,7 @@

    Declaration

    @@ -855,7 +855,7 @@

    Declaration

    @@ -890,7 +890,7 @@

    Declaration

    @@ -925,7 +925,7 @@

    Declaration

    @@ -938,8 +938,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPCardValidator.html b/docs/docs/Classes/STPCardValidator.html index ca763adddeb..d30c35fc0b9 100644 --- a/docs/docs/Classes/STPCardValidator.html +++ b/docs/docs/Classes/STPCardValidator.html @@ -440,7 +440,7 @@

    Declaration

    @@ -475,7 +475,7 @@

    Declaration

    @@ -560,7 +560,7 @@

    Return Value

    card (e.g. @4242).

    @@ -621,7 +621,7 @@

    Return Value

    STPCardBrandUnknown, respectively.

    @@ -681,7 +681,7 @@

    Return Value

    The set of possible lengths cards associated with that brand can be.

    @@ -743,7 +743,7 @@

    Return Value

    The maximum length card numbers associated with that brand could be.

    @@ -805,7 +805,7 @@

    Return Value

    The final fragment length card numbers associated with that brand use.

    @@ -871,7 +871,7 @@

    Return Value

    month (e.g. @0 or @1).

    @@ -960,7 +960,7 @@

    Return Value

    year (e.g. @1 or @2).

    @@ -1019,7 +1019,7 @@

    Return Value

    The maximum length of CVC numbers for cards associated with that brand.

    @@ -1095,7 +1095,7 @@

    Return Value

    STPCardBrandVisa, and STPCardValidationStateInvalid for @12345 and any brand.

    @@ -1155,7 +1155,7 @@

    Return Value

    STPCardValidationStateIncomplete if all fields are either incomplete or valid.

    @@ -1168,8 +1168,8 @@

    Return Value

    diff --git a/docs/docs/Classes/STPCoreViewController.html b/docs/docs/Classes/STPCoreViewController.html index 3f0a0c383a3..bed50145230 100644 --- a/docs/docs/Classes/STPCoreViewController.html +++ b/docs/docs/Classes/STPCoreViewController.html @@ -441,7 +441,7 @@

    Declaration

    @@ -495,7 +495,7 @@

    Parameters

    @@ -532,7 +532,7 @@

    Declaration

    @@ -568,7 +568,7 @@

    Declaration

    @@ -581,8 +581,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPCustomer.html b/docs/docs/Classes/STPCustomer.html index 255c4e938e8..a8bb5810639 100644 --- a/docs/docs/Classes/STPCustomer.html +++ b/docs/docs/Classes/STPCustomer.html @@ -489,7 +489,7 @@

    Return Value

    an instance of STPCustomer

    @@ -524,7 +524,7 @@

    Declaration

    @@ -559,7 +559,7 @@

    Declaration

    @@ -594,7 +594,7 @@

    Declaration

    @@ -629,7 +629,7 @@

    Declaration

    @@ -642,8 +642,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPCustomerContext.html b/docs/docs/Classes/STPCustomerContext.html index 5faeb62f643..ace7049efcc 100644 --- a/docs/docs/Classes/STPCustomerContext.html +++ b/docs/docs/Classes/STPCustomerContext.html @@ -465,7 +465,7 @@

    Return Value

    the newly-instantiated customer context.

    @@ -504,7 +504,7 @@

    Declaration

    @@ -517,8 +517,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPCustomerDeserializer.html b/docs/docs/Classes/STPCustomerDeserializer.html index e2b4fb0d36f..df0cb307040 100644 --- a/docs/docs/Classes/STPCustomerDeserializer.html +++ b/docs/docs/Classes/STPCustomerDeserializer.html @@ -487,7 +487,7 @@

    Parameters

    @@ -544,7 +544,7 @@

    Parameters

    @@ -579,7 +579,7 @@

    Declaration

    @@ -614,7 +614,7 @@

    Declaration

    @@ -627,8 +627,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPFile.html b/docs/docs/Classes/STPFile.html index 6c07c35b796..2f3beea5ea0 100644 --- a/docs/docs/Classes/STPFile.html +++ b/docs/docs/Classes/STPFile.html @@ -442,7 +442,7 @@

    Declaration

    @@ -477,7 +477,7 @@

    Declaration

    @@ -517,7 +517,7 @@

    Declaration

    @@ -552,7 +552,7 @@

    Declaration

    @@ -587,7 +587,7 @@

    Declaration

    @@ -622,7 +622,7 @@

    Declaration

    @@ -635,8 +635,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPImageLibrary.html b/docs/docs/Classes/STPImageLibrary.html index 8034270c222..dc9dc9af74a 100644 --- a/docs/docs/Classes/STPImageLibrary.html +++ b/docs/docs/Classes/STPImageLibrary.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -612,7 +612,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -682,7 +682,7 @@

    Declaration

    @@ -717,7 +717,7 @@

    Declaration

    @@ -753,7 +753,7 @@

    Declaration

    @@ -788,7 +788,7 @@

    Declaration

    @@ -823,7 +823,7 @@

    Declaration

    @@ -836,8 +836,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPPaymentActivityIndicatorView.html b/docs/docs/Classes/STPPaymentActivityIndicatorView.html index c8e9cf69495..f87573e57d0 100644 --- a/docs/docs/Classes/STPPaymentActivityIndicatorView.html +++ b/docs/docs/Classes/STPPaymentActivityIndicatorView.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -520,8 +520,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPPaymentCardTextField.html b/docs/docs/Classes/STPPaymentCardTextField.html index b388c32208c..29e00bd458d 100644 --- a/docs/docs/Classes/STPPaymentCardTextField.html +++ b/docs/docs/Classes/STPPaymentCardTextField.html @@ -446,7 +446,7 @@

    Declaration

    @@ -483,7 +483,7 @@

    Declaration

    @@ -520,7 +520,7 @@

    Declaration

    @@ -558,7 +558,7 @@

    Declaration

    @@ -598,7 +598,7 @@

    Declaration

    @@ -638,7 +638,7 @@

    Declaration

    @@ -673,7 +673,7 @@

    Declaration

    @@ -708,7 +708,7 @@

    Declaration

    @@ -744,7 +744,7 @@

    Declaration

    @@ -782,7 +782,7 @@

    Declaration

    @@ -821,7 +821,7 @@

    Declaration

    @@ -858,7 +858,7 @@

    Declaration

    @@ -895,7 +895,7 @@

    Declaration

    @@ -932,7 +932,7 @@

    Declaration

    @@ -967,7 +967,7 @@

    Declaration

    @@ -1002,7 +1002,7 @@

    Declaration

    @@ -1037,7 +1037,7 @@

    Declaration

    @@ -1078,7 +1078,7 @@

    Declaration

    @@ -1113,7 +1113,7 @@

    Declaration

    @@ -1151,7 +1151,7 @@

    Declaration

    @@ -1189,7 +1189,7 @@

    Declaration

    @@ -1227,7 +1227,7 @@

    Declaration

    @@ -1266,7 +1266,7 @@

    Declaration

    @@ -1304,7 +1304,7 @@

    Declaration

    @@ -1342,7 +1342,7 @@

    Declaration

    @@ -1377,7 +1377,7 @@

    Declaration

    @@ -1418,7 +1418,7 @@

    Declaration

    @@ -1461,7 +1461,7 @@

    Declaration

    @@ -1499,7 +1499,7 @@

    Declaration

    @@ -1543,7 +1543,7 @@

    Return Value

    Whether or not the text field successfully began editing.

    @@ -1587,7 +1587,7 @@

    Return Value

    Whether or not the field successfully stopped editing.

    @@ -1622,7 +1622,7 @@

    Declaration

    @@ -1681,7 +1681,7 @@

    Return Value

    The cvc image used for a card brand.

    @@ -1740,7 +1740,7 @@

    Return Value

    The brand image used for a card brand.

    @@ -1799,7 +1799,7 @@

    Return Value

    The error image used for a card brand.

    @@ -1857,7 +1857,7 @@

    Return Value

    the rectangle in which the receiver draws its brand image.

    @@ -1915,7 +1915,7 @@

    Return Value

    The rectangle in which the receiver draws the text fields.

    @@ -1928,8 +1928,8 @@

    Return Value

    diff --git a/docs/docs/Classes/STPPaymentConfiguration.html b/docs/docs/Classes/STPPaymentConfiguration.html index 1092f1f07c3..b547c66833d 100644 --- a/docs/docs/Classes/STPPaymentConfiguration.html +++ b/docs/docs/Classes/STPPaymentConfiguration.html @@ -444,7 +444,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Declaration

    @@ -522,7 +522,7 @@

    Declaration

    @@ -565,7 +565,7 @@

    Declaration

    @@ -602,7 +602,7 @@

    Declaration

    @@ -639,7 +639,7 @@

    Declaration

    @@ -678,7 +678,7 @@

    Declaration

    @@ -718,7 +718,7 @@

    Declaration

    @@ -756,7 +756,7 @@

    Declaration

    @@ -801,7 +801,7 @@

    Declaration

    @@ -814,8 +814,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPPaymentContext.html b/docs/docs/Classes/STPPaymentContext.html index 7fdf618b681..5cf4fbaf693 100644 --- a/docs/docs/Classes/STPPaymentContext.html +++ b/docs/docs/Classes/STPPaymentContext.html @@ -469,7 +469,7 @@

    Return Value

    the newly-instantiated payment context

    @@ -564,7 +564,7 @@

    Return Value

    the newly-instantiated payment context

    @@ -605,7 +605,7 @@

    Declaration

    @@ -705,7 +705,7 @@

    Return Value

    the newly-instantiated payment context

    @@ -750,7 +750,7 @@

    Declaration

    @@ -785,7 +785,7 @@

    Declaration

    @@ -820,7 +820,7 @@

    Declaration

    @@ -856,7 +856,7 @@

    Declaration

    @@ -891,7 +891,7 @@

    Declaration

    @@ -927,7 +927,7 @@

    Declaration

    @@ -962,7 +962,7 @@

    Declaration

    @@ -998,7 +998,7 @@

    Declaration

    @@ -1034,7 +1034,7 @@

    Declaration

    @@ -1070,7 +1070,7 @@

    Declaration

    @@ -1106,7 +1106,7 @@

    Declaration

    @@ -1160,7 +1160,7 @@

    Declaration

    @@ -1209,7 +1209,7 @@

    Declaration

    @@ -1251,7 +1251,7 @@

    Declaration

    @@ -1298,7 +1298,7 @@

    Declaration

    @@ -1349,7 +1349,7 @@

    Declaration

    @@ -1388,7 +1388,7 @@

    Declaration

    @@ -1429,7 +1429,7 @@

    Declaration

    @@ -1469,7 +1469,7 @@

    Declaration

    @@ -1507,7 +1507,7 @@

    Declaration

    @@ -1550,7 +1550,7 @@

    Declaration

    @@ -1593,7 +1593,7 @@

    Declaration

    @@ -1637,7 +1637,7 @@

    Declaration

    @@ -1681,7 +1681,7 @@

    Declaration

    @@ -1729,7 +1729,7 @@

    Declaration

    @@ -1742,8 +1742,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPPaymentMethodsViewController.html b/docs/docs/Classes/STPPaymentMethodsViewController.html index 974f6494677..0d513e06e0c 100644 --- a/docs/docs/Classes/STPPaymentMethodsViewController.html +++ b/docs/docs/Classes/STPPaymentMethodsViewController.html @@ -452,7 +452,7 @@

    Declaration

    @@ -513,7 +513,7 @@

    Return Value

    an initialized view controller.

    @@ -616,7 +616,7 @@

    Return Value

    an initialized view controller.

    @@ -719,7 +719,7 @@

    Parameters

    @@ -757,7 +757,7 @@

    Declaration

    @@ -798,7 +798,7 @@

    Declaration

    @@ -839,7 +839,7 @@

    Declaration

    @@ -897,7 +897,7 @@

    Parameters

    @@ -910,8 +910,8 @@

    Parameters

    diff --git a/docs/docs/Classes/STPPaymentResult.html b/docs/docs/Classes/STPPaymentResult.html index 202da489411..90237b1631e 100644 --- a/docs/docs/Classes/STPPaymentResult.html +++ b/docs/docs/Classes/STPPaymentResult.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -485,8 +485,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPRedirectContext.html b/docs/docs/Classes/STPRedirectContext.html index 6847ee78ed6..bd1545c5ded 100644 --- a/docs/docs/Classes/STPRedirectContext.html +++ b/docs/docs/Classes/STPRedirectContext.html @@ -462,7 +462,7 @@

    Declaration

    @@ -550,7 +550,7 @@

    Return Value

    a new context object.

    @@ -580,7 +580,7 @@

    Declaration

    @@ -663,7 +663,7 @@

    Parameters

    @@ -735,7 +735,7 @@

    Parameters

    @@ -780,7 +780,7 @@

    Declaration

    @@ -816,7 +816,7 @@

    Declaration

    @@ -829,8 +829,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPShippingAddressViewController.html b/docs/docs/Classes/STPShippingAddressViewController.html index 86db5b5d5ec..a58284db18c 100644 --- a/docs/docs/Classes/STPShippingAddressViewController.html +++ b/docs/docs/Classes/STPShippingAddressViewController.html @@ -437,7 +437,7 @@

    Declaration

    @@ -492,7 +492,7 @@

    Parameters

    @@ -612,7 +612,7 @@

    Parameters

    @@ -648,7 +648,7 @@

    Declaration

    @@ -702,7 +702,7 @@

    Parameters

    @@ -715,8 +715,8 @@

    Parameters

    diff --git a/docs/docs/Classes/STPSource.html b/docs/docs/Classes/STPSource.html index 8d9541ccc1c..86452ed85df 100644 --- a/docs/docs/Classes/STPSource.html +++ b/docs/docs/Classes/STPSource.html @@ -433,7 +433,7 @@

    Declaration

    @@ -468,7 +468,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -539,7 +539,7 @@

    Declaration

    @@ -574,7 +574,7 @@

    Declaration

    @@ -609,7 +609,7 @@

    Declaration

    @@ -644,7 +644,7 @@

    Declaration

    @@ -685,7 +685,7 @@

    Declaration

    @@ -720,7 +720,7 @@

    Declaration

    @@ -756,7 +756,7 @@

    Declaration

    @@ -792,7 +792,7 @@

    Declaration

    @@ -827,7 +827,7 @@

    Declaration

    @@ -862,7 +862,7 @@

    Declaration

    @@ -897,7 +897,7 @@

    Declaration

    @@ -933,7 +933,7 @@

    Declaration

    @@ -968,7 +968,7 @@

    Declaration

    @@ -1004,7 +1004,7 @@

    Declaration

    @@ -1041,7 +1041,7 @@

    Declaration

    @@ -1054,8 +1054,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPSourceCardDetails.html b/docs/docs/Classes/STPSourceCardDetails.html index e00c96648fa..69289ab7628 100644 --- a/docs/docs/Classes/STPSourceCardDetails.html +++ b/docs/docs/Classes/STPSourceCardDetails.html @@ -434,7 +434,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -539,7 +539,7 @@

    Declaration

    @@ -574,7 +574,7 @@

    Declaration

    @@ -609,7 +609,7 @@

    Declaration

    @@ -644,7 +644,7 @@

    Declaration

    @@ -679,7 +679,7 @@

    Declaration

    @@ -714,7 +714,7 @@

    Declaration

    @@ -727,8 +727,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPSourceOwner.html b/docs/docs/Classes/STPSourceOwner.html index 469cf745767..e5a30aad859 100644 --- a/docs/docs/Classes/STPSourceOwner.html +++ b/docs/docs/Classes/STPSourceOwner.html @@ -433,7 +433,7 @@

    Declaration

    @@ -468,7 +468,7 @@

    Declaration

    @@ -503,7 +503,7 @@

    Declaration

    @@ -538,7 +538,7 @@

    Declaration

    @@ -573,7 +573,7 @@

    Declaration

    @@ -608,7 +608,7 @@

    Declaration

    @@ -643,7 +643,7 @@

    Declaration

    @@ -678,7 +678,7 @@

    Declaration

    @@ -713,7 +713,7 @@

    Declaration

    @@ -726,8 +726,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPSourceParams.html b/docs/docs/Classes/STPSourceParams.html index 34aafcbf461..a544709a6f8 100644 --- a/docs/docs/Classes/STPSourceParams.html +++ b/docs/docs/Classes/STPSourceParams.html @@ -442,7 +442,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Declaration

    @@ -521,7 +521,7 @@

    Declaration

    @@ -557,7 +557,7 @@

    Declaration

    @@ -594,7 +594,7 @@

    Declaration

    @@ -629,7 +629,7 @@

    Declaration

    @@ -665,7 +665,7 @@

    Declaration

    @@ -701,7 +701,7 @@

    Declaration

    @@ -737,7 +737,7 @@

    Declaration

    @@ -774,7 +774,7 @@

    Declaration

    @@ -885,7 +885,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -975,7 +975,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1038,7 +1038,7 @@

    Return Value

    an STPSourceParams object populated with the provided card details.

    @@ -1149,7 +1149,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1273,7 +1273,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1409,7 +1409,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1520,7 +1520,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1624,7 +1624,7 @@

    Return Value

    an STPSourceParams object populated with the provided card details.

    @@ -1715,7 +1715,85 @@

    Return Value

    An STPSourceParams object populated with the provided values

    + + +
  • +
  • +
    + + + + +alipayReusableParamsWithCurrency:returnURL: + +
    +
    +
    +
    +
    +
    +

    Creates params for a reusable Alipay source

    + + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    + (nonnull STPSourceParams *)
    +alipayReusableParamsWithCurrency:(nonnull NSString *)currency
    +                       returnURL:(nonnull NSString *)returnURL;
    + +
    +
    +

    Swift

    +
    class func alipayReusableParams(withCurrency currency: String, returnURL: String) -> STPSourceParams
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + currency + + +
    +

    The currency the payment is being created in.

    +
    +
    + + returnURL + + +
    +

    The URL the customer should be redirected to after they have +successfully verified the payment.

    +
    +
    +
    +
    +

    Return Value

    +

    An STPSourceParams object populated with the provided values

    +
    +
    @@ -1831,7 +1909,7 @@

    Return Value

    An STPSourceParams object populated with the provided values.

    @@ -1844,8 +1922,8 @@

    Return Value

    diff --git a/docs/docs/Classes/STPSourceReceiver.html b/docs/docs/Classes/STPSourceReceiver.html index 78db3c9aecb..75a921d2857 100644 --- a/docs/docs/Classes/STPSourceReceiver.html +++ b/docs/docs/Classes/STPSourceReceiver.html @@ -432,7 +432,7 @@

    Declaration

    @@ -467,7 +467,7 @@

    Declaration

    @@ -502,7 +502,7 @@

    Declaration

    @@ -537,7 +537,7 @@

    Declaration

    @@ -572,7 +572,7 @@

    Declaration

    @@ -585,8 +585,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPSourceRedirect.html b/docs/docs/Classes/STPSourceRedirect.html index 0271c501301..cb8cccdd15d 100644 --- a/docs/docs/Classes/STPSourceRedirect.html +++ b/docs/docs/Classes/STPSourceRedirect.html @@ -433,7 +433,7 @@

    Declaration

    @@ -468,7 +468,7 @@

    Declaration

    @@ -503,7 +503,7 @@

    Declaration

    @@ -538,7 +538,7 @@

    Declaration

    @@ -551,8 +551,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPSourceSEPADebitDetails.html b/docs/docs/Classes/STPSourceSEPADebitDetails.html index 4ebfcf90ec4..8b1bd70b202 100644 --- a/docs/docs/Classes/STPSourceSEPADebitDetails.html +++ b/docs/docs/Classes/STPSourceSEPADebitDetails.html @@ -434,7 +434,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -539,7 +539,7 @@

    Declaration

    @@ -574,7 +574,7 @@

    Declaration

    @@ -609,7 +609,7 @@

    Declaration

    @@ -644,7 +644,7 @@

    Declaration

    @@ -657,8 +657,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPSourceVerification.html b/docs/docs/Classes/STPSourceVerification.html index 92d2d05707c..053fd2a4e9a 100644 --- a/docs/docs/Classes/STPSourceVerification.html +++ b/docs/docs/Classes/STPSourceVerification.html @@ -433,7 +433,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -517,8 +517,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPTheme.html b/docs/docs/Classes/STPTheme.html index bc0559fdf9c..0f610873297 100644 --- a/docs/docs/Classes/STPTheme.html +++ b/docs/docs/Classes/STPTheme.html @@ -437,7 +437,7 @@

    Declaration

    @@ -473,7 +473,7 @@

    Declaration

    @@ -509,7 +509,7 @@

    Declaration

    @@ -544,7 +544,7 @@

    Declaration

    @@ -579,7 +579,7 @@

    Declaration

    @@ -615,7 +615,7 @@

    Declaration

    @@ -651,7 +651,7 @@

    Declaration

    @@ -686,7 +686,7 @@

    Declaration

    @@ -721,7 +721,7 @@

    Declaration

    @@ -756,7 +756,7 @@

    Declaration

    @@ -791,7 +791,7 @@

    Declaration

    @@ -826,7 +826,7 @@

    Declaration

    @@ -863,7 +863,7 @@

    Declaration

    @@ -899,7 +899,7 @@

    Declaration

    @@ -934,7 +934,7 @@

    Declaration

    @@ -969,7 +969,7 @@

    Declaration

    @@ -982,8 +982,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPToken.html b/docs/docs/Classes/STPToken.html index 157dde7b011..7887f6eba54 100644 --- a/docs/docs/Classes/STPToken.html +++ b/docs/docs/Classes/STPToken.html @@ -432,7 +432,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -543,7 +543,7 @@

    Declaration

    @@ -578,7 +578,7 @@

    Declaration

    @@ -613,7 +613,7 @@

    Declaration

    @@ -626,8 +626,8 @@

    Declaration

    diff --git a/docs/docs/Classes/STPUserInformation.html b/docs/docs/Classes/STPUserInformation.html index 6ca42f015c3..9aa51983d41 100644 --- a/docs/docs/Classes/STPUserInformation.html +++ b/docs/docs/Classes/STPUserInformation.html @@ -442,7 +442,7 @@

    Declaration

    @@ -479,7 +479,7 @@

    Declaration

    @@ -492,8 +492,8 @@

    Declaration

    diff --git a/docs/docs/Classes/Stripe.html b/docs/docs/Classes/Stripe.html index 3fbe5d89a3b..1fb897187ad 100644 --- a/docs/docs/Classes/Stripe.html +++ b/docs/docs/Classes/Stripe.html @@ -462,7 +462,7 @@

    Parameters

    @@ -497,7 +497,7 @@

    Declaration

    @@ -570,7 +570,7 @@

    Return Value

    whether or not the user is currently able to pay with Apple Pay.

    @@ -615,7 +615,7 @@

    Return Value

    supported type, or other restrictions prevent payment (such as parental controls).

    @@ -683,7 +683,7 @@

    Return Value

    the appropriate values for your business.

    @@ -775,7 +775,7 @@

    Return Value

    a PKPaymentRequest with proper default values. Returns nil if running on < iOS8.

    @@ -856,7 +856,7 @@

    Return Value

    YES if the URL is expected and will be handled by Stripe. NO otherwise.

    @@ -869,8 +869,8 @@

    Return Value

    diff --git a/docs/docs/Constants.html b/docs/docs/Constants.html index 660426bbab0..ceec85b046d 100644 --- a/docs/docs/Constants.html +++ b/docs/docs/Constants.html @@ -420,7 +420,7 @@

    Constants

    Declaration

    Objective-C

    -
    static NSString *const _Nonnull STPSDKVersion = @"11.4.0"
    +
    static NSString *const _Nonnull STPSDKVersion = @"11.5.0"
    @@ -430,7 +430,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -516,7 +516,7 @@

    Declaration

    @@ -551,7 +551,7 @@

    Declaration

    @@ -587,7 +587,7 @@

    Declaration

    @@ -627,7 +627,7 @@

    Declaration

    @@ -667,7 +667,7 @@

    Declaration

    @@ -713,7 +713,7 @@

    Declaration

    @@ -748,7 +748,7 @@

    Declaration

    @@ -783,7 +783,7 @@

    Declaration

    @@ -818,7 +818,7 @@

    Declaration

    @@ -853,7 +853,7 @@

    Declaration

    @@ -888,7 +888,7 @@

    Declaration

    @@ -923,7 +923,7 @@

    Declaration

    @@ -958,7 +958,7 @@

    Declaration

    @@ -993,7 +993,7 @@

    Declaration

    @@ -1006,8 +1006,8 @@

    Declaration

    diff --git a/docs/docs/Enums.html b/docs/docs/Enums.html index caed91e0c4f..c6e28d54255 100644 --- a/docs/docs/Enums.html +++ b/docs/docs/Enums.html @@ -437,7 +437,7 @@

    Declaration

    @@ -477,7 +477,7 @@

    Declaration

    @@ -517,7 +517,7 @@

    Declaration

    @@ -557,7 +557,7 @@

    Declaration

    @@ -593,7 +593,7 @@

    Declaration

    @@ -629,7 +629,7 @@

    Declaration

    @@ -669,7 +669,7 @@

    Declaration

    @@ -709,7 +709,7 @@

    Declaration

    @@ -750,7 +750,7 @@

    Declaration

    @@ -795,7 +795,7 @@

    Declaration

    @@ -837,7 +837,7 @@

    Declaration

    @@ -877,7 +877,7 @@

    Declaration

    @@ -917,7 +917,7 @@

    Declaration

    @@ -952,7 +952,7 @@

    Declaration

    @@ -983,7 +983,7 @@

    Declaration

    @@ -1014,7 +1014,7 @@

    Declaration

    @@ -1050,7 +1050,7 @@

    Declaration

    @@ -1090,7 +1090,7 @@

    Declaration

    @@ -1130,7 +1130,7 @@

    Declaration

    @@ -1170,7 +1170,7 @@

    Declaration

    @@ -1183,8 +1183,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPBankAccountHolderType.html b/docs/docs/Enums/STPBankAccountHolderType.html index e1c390ad598..571ec40a6ac 100644 --- a/docs/docs/Enums/STPBankAccountHolderType.html +++ b/docs/docs/Enums/STPBankAccountHolderType.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -485,8 +485,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPBankAccountStatus.html b/docs/docs/Enums/STPBankAccountStatus.html index 2ab358a978f..ed89c1ad4f1 100644 --- a/docs/docs/Enums/STPBankAccountStatus.html +++ b/docs/docs/Enums/STPBankAccountStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -590,8 +590,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPBillingAddressFields.html b/docs/docs/Enums/STPBillingAddressFields.html index 23cc0bf3817..cdf80288276 100644 --- a/docs/docs/Enums/STPBillingAddressFields.html +++ b/docs/docs/Enums/STPBillingAddressFields.html @@ -443,7 +443,7 @@

    Declaration

    @@ -478,7 +478,7 @@

    Declaration

    @@ -513,7 +513,7 @@

    Declaration

    @@ -526,8 +526,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPCardBrand.html b/docs/docs/Enums/STPCardBrand.html index 8e6c0c93363..1d448053e2e 100644 --- a/docs/docs/Enums/STPCardBrand.html +++ b/docs/docs/Enums/STPCardBrand.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -612,7 +612,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -660,8 +660,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPCardFundingType.html b/docs/docs/Enums/STPCardFundingType.html index 2578bc24d6f..a5c343a6577 100644 --- a/docs/docs/Enums/STPCardFundingType.html +++ b/docs/docs/Enums/STPCardFundingType.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPCardValidationState.html b/docs/docs/Enums/STPCardValidationState.html index e297ce8458d..08cbe4e97ad 100644 --- a/docs/docs/Enums/STPCardValidationState.html +++ b/docs/docs/Enums/STPCardValidationState.html @@ -442,7 +442,7 @@

    Declaration

    @@ -478,7 +478,7 @@

    Declaration

    @@ -514,7 +514,7 @@

    Declaration

    @@ -527,8 +527,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPErrorCode.html b/docs/docs/Enums/STPErrorCode.html index 606cacd9791..98e821e8034 100644 --- a/docs/docs/Enums/STPErrorCode.html +++ b/docs/docs/Enums/STPErrorCode.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -614,7 +614,7 @@

    Declaration

    @@ -627,8 +627,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPFilePurpose.html b/docs/docs/Enums/STPFilePurpose.html index 626cf658733..7f6495ec7b3 100644 --- a/docs/docs/Enums/STPFilePurpose.html +++ b/docs/docs/Enums/STPFilePurpose.html @@ -442,7 +442,7 @@

    Declaration

    @@ -477,7 +477,7 @@

    Declaration

    @@ -512,7 +512,7 @@

    Declaration

    @@ -525,8 +525,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPPaymentMethodType.html b/docs/docs/Enums/STPPaymentMethodType.html index 86a4e7f17f4..3969c9e0fda 100644 --- a/docs/docs/Enums/STPPaymentMethodType.html +++ b/docs/docs/Enums/STPPaymentMethodType.html @@ -434,7 +434,7 @@

    Declaration

    @@ -470,7 +470,7 @@

    Declaration

    @@ -505,7 +505,7 @@

    Declaration

    @@ -518,8 +518,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPPaymentStatus.html b/docs/docs/Enums/STPPaymentStatus.html index c0831271c4c..23d50de292a 100644 --- a/docs/docs/Enums/STPPaymentStatus.html +++ b/docs/docs/Enums/STPPaymentStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -520,8 +520,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPRedirectContextState.html b/docs/docs/Enums/STPRedirectContextState.html index cb00814120d..599b3bfbedf 100644 --- a/docs/docs/Enums/STPRedirectContextState.html +++ b/docs/docs/Enums/STPRedirectContextState.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPShippingStatus.html b/docs/docs/Enums/STPShippingStatus.html index 1303441323a..7b0bd1e1561 100644 --- a/docs/docs/Enums/STPShippingStatus.html +++ b/docs/docs/Enums/STPShippingStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -485,8 +485,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPShippingType.html b/docs/docs/Enums/STPShippingType.html index 43d4e37fecd..070584ee99a 100644 --- a/docs/docs/Enums/STPShippingType.html +++ b/docs/docs/Enums/STPShippingType.html @@ -438,7 +438,7 @@

    Declaration

    @@ -473,7 +473,7 @@

    Declaration

    @@ -486,8 +486,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceCard3DSecureStatus.html b/docs/docs/Enums/STPSourceCard3DSecureStatus.html index ae11e9c00ee..dd30e1cbdc7 100644 --- a/docs/docs/Enums/STPSourceCard3DSecureStatus.html +++ b/docs/docs/Enums/STPSourceCard3DSecureStatus.html @@ -438,7 +438,7 @@

    Declaration

    @@ -474,7 +474,7 @@

    Declaration

    @@ -509,7 +509,7 @@

    Declaration

    @@ -544,7 +544,7 @@

    Declaration

    @@ -557,8 +557,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceFlow.html b/docs/docs/Enums/STPSourceFlow.html index f19d460b629..9b00c8ccd73 100644 --- a/docs/docs/Enums/STPSourceFlow.html +++ b/docs/docs/Enums/STPSourceFlow.html @@ -432,7 +432,7 @@

    Declaration

    @@ -462,7 +462,7 @@

    Declaration

    @@ -492,7 +492,7 @@

    Declaration

    @@ -522,7 +522,7 @@

    Declaration

    @@ -552,7 +552,7 @@

    Declaration

    @@ -565,8 +565,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceRedirectStatus.html b/docs/docs/Enums/STPSourceRedirectStatus.html index 4111fccd161..9330cef3d0a 100644 --- a/docs/docs/Enums/STPSourceRedirectStatus.html +++ b/docs/docs/Enums/STPSourceRedirectStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceStatus.html b/docs/docs/Enums/STPSourceStatus.html index ddda49c6568..86b7bacb42d 100644 --- a/docs/docs/Enums/STPSourceStatus.html +++ b/docs/docs/Enums/STPSourceStatus.html @@ -432,7 +432,7 @@

    Declaration

    @@ -463,7 +463,7 @@

    Declaration

    @@ -493,7 +493,7 @@

    Declaration

    @@ -524,7 +524,7 @@

    Declaration

    @@ -556,7 +556,7 @@

    Declaration

    @@ -586,7 +586,7 @@

    Declaration

    @@ -599,8 +599,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceType.html b/docs/docs/Enums/STPSourceType.html index 028c41eedf6..506fff5db77 100644 --- a/docs/docs/Enums/STPSourceType.html +++ b/docs/docs/Enums/STPSourceType.html @@ -437,7 +437,7 @@

    Declaration

    @@ -467,7 +467,7 @@

    Declaration

    @@ -497,7 +497,7 @@

    Declaration

    @@ -527,7 +527,7 @@

    Declaration

    @@ -557,7 +557,7 @@

    Declaration

    @@ -587,7 +587,7 @@

    Declaration

    @@ -617,7 +617,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -677,7 +677,7 @@

    Declaration

    @@ -707,7 +707,7 @@

    Declaration

    @@ -737,7 +737,7 @@

    Declaration

    @@ -750,8 +750,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceUsage.html b/docs/docs/Enums/STPSourceUsage.html index 3e6a1bb56c2..2a833572c36 100644 --- a/docs/docs/Enums/STPSourceUsage.html +++ b/docs/docs/Enums/STPSourceUsage.html @@ -432,7 +432,7 @@

    Declaration

    @@ -462,7 +462,7 @@

    Declaration

    @@ -492,7 +492,7 @@

    Declaration

    @@ -505,8 +505,8 @@

    Declaration

    diff --git a/docs/docs/Enums/STPSourceVerificationStatus.html b/docs/docs/Enums/STPSourceVerificationStatus.html index ee198db91d0..ef17246a90e 100644 --- a/docs/docs/Enums/STPSourceVerificationStatus.html +++ b/docs/docs/Enums/STPSourceVerificationStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/Functions.html b/docs/docs/Functions.html index 1715c5551d0..705e10e8da7 100644 --- a/docs/docs/Functions.html +++ b/docs/docs/Functions.html @@ -434,7 +434,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Declaration

    @@ -527,7 +527,7 @@

    Declaration

    @@ -540,8 +540,8 @@

    Declaration

    diff --git a/docs/docs/Protocols.html b/docs/docs/Protocols.html index c7a6ab39441..3fa1a5803f6 100644 --- a/docs/docs/Protocols.html +++ b/docs/docs/Protocols.html @@ -432,7 +432,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -525,7 +525,7 @@

    Declaration

    @@ -567,7 +567,7 @@

    Declaration

    @@ -607,7 +607,7 @@

    Declaration

    @@ -649,7 +649,7 @@

    Declaration

    @@ -689,7 +689,7 @@

    Declaration

    @@ -733,7 +733,7 @@

    Declaration

    @@ -776,7 +776,7 @@

    Declaration

    @@ -816,7 +816,7 @@

    Declaration

    @@ -862,7 +862,7 @@

    Declaration

    @@ -875,8 +875,8 @@

    Declaration

    diff --git a/docs/docs/Protocols/STPAPIResponseDecodable.html b/docs/docs/Protocols/STPAPIResponseDecodable.html index 1f789da5614..ef556817cad 100644 --- a/docs/docs/Protocols/STPAPIResponseDecodable.html +++ b/docs/docs/Protocols/STPAPIResponseDecodable.html @@ -439,7 +439,7 @@

    Declaration

    @@ -500,7 +500,7 @@

    Return Value

    could not be decoded (i.e. if one of its requiredFields is nil).

    @@ -536,7 +536,7 @@

    Declaration

    @@ -549,8 +549,8 @@

    Declaration

    diff --git a/docs/docs/Protocols/STPAddCardViewControllerDelegate.html b/docs/docs/Protocols/STPAddCardViewControllerDelegate.html index d47aa592b07..b0314000a8c 100644 --- a/docs/docs/Protocols/STPAddCardViewControllerDelegate.html +++ b/docs/docs/Protocols/STPAddCardViewControllerDelegate.html @@ -457,7 +457,7 @@

    Parameters

    @@ -538,7 +538,7 @@

    Parameters

    @@ -551,8 +551,8 @@

    Parameters

    diff --git a/docs/docs/Protocols/STPBackendAPIAdapter.html b/docs/docs/Protocols/STPBackendAPIAdapter.html index 2e22a01622b..57b389e5fab 100644 --- a/docs/docs/Protocols/STPBackendAPIAdapter.html +++ b/docs/docs/Protocols/STPBackendAPIAdapter.html @@ -481,7 +481,7 @@

    Parameters

    @@ -557,7 +557,7 @@

    Parameters

    @@ -633,7 +633,7 @@

    Parameters

    @@ -709,7 +709,7 @@

    Parameters

    @@ -789,7 +789,7 @@

    Parameters

    @@ -802,8 +802,8 @@

    Parameters

    diff --git a/docs/docs/Protocols/STPEphemeralKeyProvider.html b/docs/docs/Protocols/STPEphemeralKeyProvider.html index b651bafe867..e1d000a6768 100644 --- a/docs/docs/Protocols/STPEphemeralKeyProvider.html +++ b/docs/docs/Protocols/STPEphemeralKeyProvider.html @@ -484,7 +484,7 @@

    Parameters

    @@ -497,8 +497,8 @@

    Parameters

    diff --git a/docs/docs/Protocols/STPFormEncodable.html b/docs/docs/Protocols/STPFormEncodable.html index 1d62515547d..fe44369d94e 100644 --- a/docs/docs/Protocols/STPFormEncodable.html +++ b/docs/docs/Protocols/STPFormEncodable.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -512,7 +512,7 @@

    Declaration

    @@ -525,8 +525,8 @@

    Declaration

    diff --git a/docs/docs/Protocols/STPPaymentCardTextFieldDelegate.html b/docs/docs/Protocols/STPPaymentCardTextFieldDelegate.html index ddafa3a3d9c..c2b3ab10afb 100644 --- a/docs/docs/Protocols/STPPaymentCardTextFieldDelegate.html +++ b/docs/docs/Protocols/STPPaymentCardTextFieldDelegate.html @@ -467,7 +467,7 @@

    Parameters

    @@ -506,7 +506,7 @@

    Declaration

    @@ -545,7 +545,7 @@

    Declaration

    @@ -581,7 +581,7 @@

    Declaration

    @@ -617,7 +617,7 @@

    Declaration

    @@ -653,7 +653,7 @@

    Declaration

    @@ -689,7 +689,7 @@

    Declaration

    @@ -725,7 +725,7 @@

    Declaration

    @@ -761,7 +761,7 @@

    Declaration

    @@ -797,7 +797,7 @@

    Declaration

    @@ -833,7 +833,7 @@

    Declaration

    @@ -846,8 +846,8 @@

    Declaration

    diff --git a/docs/docs/Protocols/STPPaymentContextDelegate.html b/docs/docs/Protocols/STPPaymentContextDelegate.html index 7d4ed38eac6..65af6dee5e1 100644 --- a/docs/docs/Protocols/STPPaymentContextDelegate.html +++ b/docs/docs/Protocols/STPPaymentContextDelegate.html @@ -476,7 +476,7 @@

    Parameters

    @@ -530,7 +530,7 @@

    Parameters

    @@ -610,7 +610,7 @@

    Parameters

    @@ -690,7 +690,7 @@

    Parameters

    @@ -784,7 +784,7 @@

    Parameters

    @@ -797,8 +797,8 @@

    Parameters

    diff --git a/docs/docs/Protocols/STPPaymentMethod.html b/docs/docs/Protocols/STPPaymentMethod.html index a3658d12ee2..923567666e5 100644 --- a/docs/docs/Protocols/STPPaymentMethod.html +++ b/docs/docs/Protocols/STPPaymentMethod.html @@ -442,7 +442,7 @@

    Declaration

    @@ -478,7 +478,7 @@

    Declaration

    @@ -513,7 +513,7 @@

    Declaration

    @@ -526,8 +526,8 @@

    Declaration

    diff --git a/docs/docs/Protocols/STPPaymentMethodsViewControllerDelegate.html b/docs/docs/Protocols/STPPaymentMethodsViewControllerDelegate.html index 87bba3c0c6b..e722a0d7ad8 100644 --- a/docs/docs/Protocols/STPPaymentMethodsViewControllerDelegate.html +++ b/docs/docs/Protocols/STPPaymentMethodsViewControllerDelegate.html @@ -475,7 +475,7 @@

    Parameters

    @@ -532,7 +532,7 @@

    Parameters

    @@ -588,7 +588,7 @@

    Parameters

    @@ -665,7 +665,7 @@

    Parameters

    @@ -678,8 +678,8 @@

    Parameters

    diff --git a/docs/docs/Protocols/STPShippingAddressViewControllerDelegate.html b/docs/docs/Protocols/STPShippingAddressViewControllerDelegate.html index 281de558c91..dfeae927fea 100644 --- a/docs/docs/Protocols/STPShippingAddressViewControllerDelegate.html +++ b/docs/docs/Protocols/STPShippingAddressViewControllerDelegate.html @@ -457,7 +457,7 @@

    Parameters

    @@ -540,7 +540,7 @@

    Parameters

    @@ -621,7 +621,7 @@

    Parameters

    @@ -634,8 +634,8 @@

    Parameters

    diff --git a/docs/docs/Protocols/STPSourceProtocol.html b/docs/docs/Protocols/STPSourceProtocol.html index d19ae0c2c87..0159f512026 100644 --- a/docs/docs/Protocols/STPSourceProtocol.html +++ b/docs/docs/Protocols/STPSourceProtocol.html @@ -443,7 +443,7 @@

    Declaration

    @@ -456,8 +456,8 @@

    Declaration

    diff --git a/docs/docs/Type Definitions.html b/docs/docs/Type Definitions.html index 93f8f28bd38..9ffe33092e2 100644 --- a/docs/docs/Type Definitions.html +++ b/docs/docs/Type Definitions.html @@ -430,7 +430,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Parameters

    @@ -551,7 +551,7 @@

    Parameters

    @@ -617,7 +617,7 @@

    Parameters

    @@ -684,7 +684,7 @@

    Parameters

    @@ -746,7 +746,7 @@

    Parameters

    @@ -839,7 +839,7 @@

    Parameters

    @@ -905,7 +905,7 @@

    Parameters

    @@ -972,7 +972,7 @@

    Parameters

    @@ -1060,7 +1060,7 @@

    Parameters

    @@ -1108,7 +1108,7 @@

    Declaration

    @@ -1121,8 +1121,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories.html index 49c8a0bb495..6d3fb8a29ec 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories.html @@ -433,7 +433,7 @@

    Declaration

    @@ -470,7 +470,7 @@

    Declaration

    @@ -483,8 +483,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/NSError(Stripe).html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/NSError(Stripe).html index 66619acd956..e1802285782 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/NSError(Stripe).html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/NSError(Stripe).html @@ -462,7 +462,7 @@

    Return Value

    or nil if there was no error information included in the JSON dictionary.

    @@ -475,8 +475,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/UINavigationBar(Stripe_Theme).html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/UINavigationBar(Stripe_Theme).html index 1e34cef5364..648bc39b54f 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/UINavigationBar(Stripe_Theme).html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Categories/UINavigationBar(Stripe_Theme).html @@ -461,7 +461,7 @@

    Parameters

    @@ -502,7 +502,7 @@

    Declaration

    @@ -515,8 +515,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes.html index b7bceb89ab9..2997357fcd4 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes.html @@ -431,7 +431,7 @@

    Declaration

    @@ -467,7 +467,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -547,7 +547,7 @@

    Declaration

    @@ -591,7 +591,7 @@

    Declaration

    @@ -638,7 +638,7 @@

    Declaration

    @@ -685,7 +685,7 @@

    Declaration

    @@ -732,7 +732,7 @@

    Declaration

    @@ -779,7 +779,7 @@

    Declaration

    @@ -821,7 +821,7 @@

    Declaration

    @@ -861,7 +861,7 @@

    Declaration

    @@ -904,7 +904,7 @@

    Declaration

    @@ -948,7 +948,7 @@

    Declaration

    @@ -990,7 +990,7 @@

    Declaration

    @@ -1026,7 +1026,7 @@

    Declaration

    @@ -1071,7 +1071,7 @@

    Declaration

    @@ -1116,7 +1116,7 @@

    Declaration

    @@ -1156,7 +1156,7 @@

    Declaration

    @@ -1196,7 +1196,7 @@

    Declaration

    @@ -1240,7 +1240,7 @@

    Declaration

    @@ -1286,7 +1286,7 @@

    Declaration

    @@ -1330,7 +1330,7 @@

    Declaration

    @@ -1379,7 +1379,7 @@

    Declaration

    @@ -1419,7 +1419,7 @@

    Declaration

    @@ -1484,7 +1484,7 @@

    Declaration

    @@ -1524,7 +1524,7 @@

    Declaration

    @@ -1564,7 +1564,7 @@

    Declaration

    @@ -1605,7 +1605,7 @@

    Declaration

    @@ -1645,7 +1645,7 @@

    Declaration

    @@ -1690,7 +1690,7 @@

    Declaration

    @@ -1730,7 +1730,7 @@

    Declaration

    @@ -1770,7 +1770,7 @@

    Declaration

    @@ -1811,7 +1811,7 @@

    Declaration

    @@ -1851,7 +1851,7 @@

    Declaration

    @@ -1891,7 +1891,7 @@

    Declaration

    @@ -1931,7 +1931,7 @@

    Declaration

    @@ -1974,7 +1974,7 @@

    Declaration

    @@ -1987,8 +1987,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAPIClient.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAPIClient.html index 323101ee27e..821b40643ce 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAPIClient.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAPIClient.html @@ -437,7 +437,7 @@

    Declaration

    @@ -497,7 +497,7 @@

    Return Value

    An instance of STPAPIClient.

    @@ -556,7 +556,7 @@

    Return Value

    An instance of STPAPIClient.

    @@ -591,7 +591,7 @@

    Declaration

    @@ -627,7 +627,7 @@

    Declaration

    @@ -669,7 +669,7 @@

    Declaration

    @@ -747,7 +747,7 @@

    Parameters

    @@ -814,7 +814,7 @@

    Parameters

    @@ -893,7 +893,7 @@

    Parameters

    @@ -972,7 +972,7 @@

    Parameters

    @@ -1074,7 +1074,7 @@

    Parameters

    @@ -1152,7 +1152,7 @@

    Parameters

    @@ -1237,7 +1237,7 @@

    Parameters

    @@ -1317,7 +1317,7 @@

    Parameters

    @@ -1419,7 +1419,7 @@

    Parameters

    @@ -1474,7 +1474,7 @@

    Parameters

    @@ -1487,8 +1487,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddCardViewController.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddCardViewController.html index 046fc261567..410a1211aa4 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddCardViewController.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddCardViewController.html @@ -437,7 +437,7 @@

    Declaration

    @@ -505,7 +505,7 @@

    Parameters

    @@ -541,7 +541,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -613,7 +613,7 @@

    Declaration

    @@ -652,7 +652,7 @@

    Declaration

    @@ -665,8 +665,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddress.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddress.html index f55ea781bb9..c62cd58f3b4 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddress.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPAddress.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -612,7 +612,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -682,7 +682,7 @@

    Declaration

    @@ -717,7 +717,7 @@

    Declaration

    @@ -794,7 +794,7 @@

    Parameters

    @@ -852,7 +852,7 @@

    Return Value

    A new STPAddress instance with data copied from the passed in record.

    @@ -892,7 +892,7 @@

    Return Value

    STPAddress instance.

    @@ -950,7 +950,7 @@

    Return Value

    A new STPAddress instance with data copied from the passed in contact.

    @@ -989,7 +989,7 @@

    Return Value

    A new PassKit contact with data copied from this STPAddress instance.

    @@ -1047,7 +1047,7 @@

    Return Value

    A new STPAddress instance with data copied from the passed in contact.

    @@ -1108,7 +1108,59 @@

    Return Value

    NO otherwise.

    + + +
  • +
  • +
    + + + + -containsContentForBillingAddressFields: + +
    +
    +
    +
    +
    +
    +

    Checks if this STPAddress has any content (possibly invalid) in any of the +desired billing address fields.

    + +

    Where containsRequiredFields: validates that this STPAddress contains valid data in +all of the required fields, this method checks for the existence of any data.

    + +

    For example, if desiredFields is STPBillingAddressFieldsZip, this will check +if the postalCode is empty.

    + +

    Note: When desiredFields == STPBillingAddressFieldsNone, this method always returns +NO.

    + +

    @parameter desiredFields The billing address information the caller is interested in.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (BOOL)containsContentForBillingAddressFields:
    +    (STPBillingAddressFields)desiredFields;
    + +
    +
    +

    Swift

    +
    func containsContent(for desiredFields: STPBillingAddressFields) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    YES if there is any data in this STPAddress that’s relevant for those fields.

    +
    +
    @@ -1168,7 +1220,56 @@

    Return Value

    NO otherwise.

    + + +
  • +
  • +
    + + + + -containsContentForShippingAddressFields: + +
    +
    +
    +
    +
    +
    +

    Checks if this STPAddress has any content (possibly invalid) in any of the +desired shipping address fields.

    + +

    Where containsRequiredShippingAddressFields: validates that this STPAddress +contains valid data in all of the required fields, this method checks for the +existence of any data.

    + +

    Note: When desiredFields == PKAddressFieldNone, this method always returns +NO.

    + +

    @parameter desiredFields The shipping address information the caller is interested in.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (BOOL)containsContentForShippingAddressFields:(PKAddressField)desiredFields;
    + +
    +
    +

    Swift

    +
    func containsContent(forShippingAddressFields desiredFields: PKAddressField) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    YES if there is any data in this STPAddress that’s relevant for those fields.

    +
    +
    @@ -1229,7 +1330,7 @@

    Return Value

    a PKAddressField value.

    @@ -1242,8 +1343,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccount.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccount.html index 9d9c399d3a3..bd103ef9de7 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccount.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccount.html @@ -440,7 +440,7 @@

    Declaration

    @@ -476,7 +476,7 @@

    Declaration

    @@ -511,7 +511,7 @@

    Declaration

    @@ -546,7 +546,7 @@

    Declaration

    @@ -581,7 +581,7 @@

    Declaration

    @@ -616,7 +616,7 @@

    Declaration

    @@ -651,7 +651,7 @@

    Declaration

    @@ -686,7 +686,7 @@

    Declaration

    @@ -722,7 +722,7 @@

    Declaration

    @@ -763,7 +763,7 @@

    Declaration

    @@ -798,7 +798,7 @@

    Declaration

    @@ -844,7 +844,7 @@

    Declaration

    @@ -857,8 +857,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccountParams.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccountParams.html index 37614eccd49..a1673887665 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccountParams.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPBankAccountParams.html @@ -444,7 +444,7 @@

    Declaration

    @@ -480,7 +480,7 @@

    Declaration

    @@ -516,7 +516,7 @@

    Declaration

    @@ -551,7 +551,7 @@

    Declaration

    @@ -586,7 +586,7 @@

    Declaration

    @@ -621,7 +621,7 @@

    Declaration

    @@ -659,7 +659,7 @@

    Declaration

    @@ -672,8 +672,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCard.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCard.html index 8be1e0eb820..5c030d090ea 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCard.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCard.html @@ -440,7 +440,7 @@

    Declaration

    @@ -475,7 +475,7 @@

    Declaration

    @@ -512,7 +512,7 @@

    Declaration

    @@ -547,7 +547,7 @@

    Declaration

    @@ -582,7 +582,7 @@

    Declaration

    @@ -617,7 +617,7 @@

    Declaration

    @@ -652,7 +652,7 @@

    Declaration

    @@ -687,7 +687,7 @@

    Declaration

    @@ -722,7 +722,7 @@

    Declaration

    @@ -757,7 +757,7 @@

    Declaration

    @@ -792,7 +792,7 @@

    Declaration

    @@ -829,7 +829,7 @@

    Declaration

    @@ -870,7 +870,7 @@

    Declaration

    @@ -929,7 +929,7 @@

    Return Value

    A string representing the brand, suitable for displaying to a user.

    @@ -999,7 +999,7 @@

    Return Value

    returns STPCardBrandUnknown.

    @@ -1045,7 +1045,7 @@

    Declaration

    @@ -1080,7 +1080,7 @@

    Declaration

    @@ -1115,7 +1115,7 @@

    Declaration

    @@ -1150,7 +1150,7 @@

    Declaration

    @@ -1185,7 +1185,7 @@

    Declaration

    @@ -1220,7 +1220,7 @@

    Declaration

    @@ -1255,7 +1255,7 @@

    Declaration

    @@ -1380,7 +1380,7 @@

    Return Value

    an STPCard instance populated with the provided values.

    @@ -1442,7 +1442,7 @@

    Return Value

    returns STPCardFundingTypeOther.

    @@ -1455,8 +1455,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardParams.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardParams.html index 48481d95b33..c50facdab0c 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardParams.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardParams.html @@ -444,7 +444,7 @@

    Declaration

    @@ -479,7 +479,7 @@

    Declaration

    @@ -514,7 +514,7 @@

    Declaration

    @@ -549,7 +549,7 @@

    Declaration

    @@ -584,7 +584,7 @@

    Declaration

    @@ -625,7 +625,7 @@

    Declaration

    @@ -666,7 +666,7 @@

    Declaration

    @@ -704,7 +704,7 @@

    Declaration

    @@ -750,7 +750,7 @@

    Declaration

    @@ -785,7 +785,7 @@

    Declaration

    @@ -820,7 +820,7 @@

    Declaration

    @@ -855,7 +855,7 @@

    Declaration

    @@ -890,7 +890,7 @@

    Declaration

    @@ -925,7 +925,7 @@

    Declaration

    @@ -938,8 +938,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardValidator.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardValidator.html index ca763adddeb..d30c35fc0b9 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardValidator.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCardValidator.html @@ -440,7 +440,7 @@

    Declaration

    @@ -475,7 +475,7 @@

    Declaration

    @@ -560,7 +560,7 @@

    Return Value

    card (e.g. @4242).

    @@ -621,7 +621,7 @@

    Return Value

    STPCardBrandUnknown, respectively.

    @@ -681,7 +681,7 @@

    Return Value

    The set of possible lengths cards associated with that brand can be.

    @@ -743,7 +743,7 @@

    Return Value

    The maximum length card numbers associated with that brand could be.

    @@ -805,7 +805,7 @@

    Return Value

    The final fragment length card numbers associated with that brand use.

    @@ -871,7 +871,7 @@

    Return Value

    month (e.g. @0 or @1).

    @@ -960,7 +960,7 @@

    Return Value

    year (e.g. @1 or @2).

    @@ -1019,7 +1019,7 @@

    Return Value

    The maximum length of CVC numbers for cards associated with that brand.

    @@ -1095,7 +1095,7 @@

    Return Value

    STPCardBrandVisa, and STPCardValidationStateInvalid for @12345 and any brand.

    @@ -1155,7 +1155,7 @@

    Return Value

    STPCardValidationStateIncomplete if all fields are either incomplete or valid.

    @@ -1168,8 +1168,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCoreViewController.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCoreViewController.html index 3f0a0c383a3..bed50145230 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCoreViewController.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCoreViewController.html @@ -441,7 +441,7 @@

    Declaration

    @@ -495,7 +495,7 @@

    Parameters

    @@ -532,7 +532,7 @@

    Declaration

    @@ -568,7 +568,7 @@

    Declaration

    @@ -581,8 +581,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomer.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomer.html index 255c4e938e8..a8bb5810639 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomer.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomer.html @@ -489,7 +489,7 @@

    Return Value

    an instance of STPCustomer

    @@ -524,7 +524,7 @@

    Declaration

    @@ -559,7 +559,7 @@

    Declaration

    @@ -594,7 +594,7 @@

    Declaration

    @@ -629,7 +629,7 @@

    Declaration

    @@ -642,8 +642,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerContext.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerContext.html index 5faeb62f643..ace7049efcc 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerContext.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerContext.html @@ -465,7 +465,7 @@

    Return Value

    the newly-instantiated customer context.

    @@ -504,7 +504,7 @@

    Declaration

    @@ -517,8 +517,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerDeserializer.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerDeserializer.html index e2b4fb0d36f..df0cb307040 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerDeserializer.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPCustomerDeserializer.html @@ -487,7 +487,7 @@

    Parameters

    @@ -544,7 +544,7 @@

    Parameters

    @@ -579,7 +579,7 @@

    Declaration

    @@ -614,7 +614,7 @@

    Declaration

    @@ -627,8 +627,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPFile.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPFile.html index 6c07c35b796..2f3beea5ea0 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPFile.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPFile.html @@ -442,7 +442,7 @@

    Declaration

    @@ -477,7 +477,7 @@

    Declaration

    @@ -517,7 +517,7 @@

    Declaration

    @@ -552,7 +552,7 @@

    Declaration

    @@ -587,7 +587,7 @@

    Declaration

    @@ -622,7 +622,7 @@

    Declaration

    @@ -635,8 +635,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPImageLibrary.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPImageLibrary.html index 8034270c222..dc9dc9af74a 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPImageLibrary.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPImageLibrary.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -612,7 +612,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -682,7 +682,7 @@

    Declaration

    @@ -717,7 +717,7 @@

    Declaration

    @@ -753,7 +753,7 @@

    Declaration

    @@ -788,7 +788,7 @@

    Declaration

    @@ -823,7 +823,7 @@

    Declaration

    @@ -836,8 +836,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentActivityIndicatorView.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentActivityIndicatorView.html index c8e9cf69495..f87573e57d0 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentActivityIndicatorView.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentActivityIndicatorView.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -520,8 +520,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentCardTextField.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentCardTextField.html index b388c32208c..29e00bd458d 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentCardTextField.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentCardTextField.html @@ -446,7 +446,7 @@

    Declaration

    @@ -483,7 +483,7 @@

    Declaration

    @@ -520,7 +520,7 @@

    Declaration

    @@ -558,7 +558,7 @@

    Declaration

    @@ -598,7 +598,7 @@

    Declaration

    @@ -638,7 +638,7 @@

    Declaration

    @@ -673,7 +673,7 @@

    Declaration

    @@ -708,7 +708,7 @@

    Declaration

    @@ -744,7 +744,7 @@

    Declaration

    @@ -782,7 +782,7 @@

    Declaration

    @@ -821,7 +821,7 @@

    Declaration

    @@ -858,7 +858,7 @@

    Declaration

    @@ -895,7 +895,7 @@

    Declaration

    @@ -932,7 +932,7 @@

    Declaration

    @@ -967,7 +967,7 @@

    Declaration

    @@ -1002,7 +1002,7 @@

    Declaration

    @@ -1037,7 +1037,7 @@

    Declaration

    @@ -1078,7 +1078,7 @@

    Declaration

    @@ -1113,7 +1113,7 @@

    Declaration

    @@ -1151,7 +1151,7 @@

    Declaration

    @@ -1189,7 +1189,7 @@

    Declaration

    @@ -1227,7 +1227,7 @@

    Declaration

    @@ -1266,7 +1266,7 @@

    Declaration

    @@ -1304,7 +1304,7 @@

    Declaration

    @@ -1342,7 +1342,7 @@

    Declaration

    @@ -1377,7 +1377,7 @@

    Declaration

    @@ -1418,7 +1418,7 @@

    Declaration

    @@ -1461,7 +1461,7 @@

    Declaration

    @@ -1499,7 +1499,7 @@

    Declaration

    @@ -1543,7 +1543,7 @@

    Return Value

    Whether or not the text field successfully began editing.

    @@ -1587,7 +1587,7 @@

    Return Value

    Whether or not the field successfully stopped editing.

    @@ -1622,7 +1622,7 @@

    Declaration

    @@ -1681,7 +1681,7 @@

    Return Value

    The cvc image used for a card brand.

    @@ -1740,7 +1740,7 @@

    Return Value

    The brand image used for a card brand.

    @@ -1799,7 +1799,7 @@

    Return Value

    The error image used for a card brand.

    @@ -1857,7 +1857,7 @@

    Return Value

    the rectangle in which the receiver draws its brand image.

    @@ -1915,7 +1915,7 @@

    Return Value

    The rectangle in which the receiver draws the text fields.

    @@ -1928,8 +1928,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentConfiguration.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentConfiguration.html index 1092f1f07c3..b547c66833d 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentConfiguration.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentConfiguration.html @@ -444,7 +444,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Declaration

    @@ -522,7 +522,7 @@

    Declaration

    @@ -565,7 +565,7 @@

    Declaration

    @@ -602,7 +602,7 @@

    Declaration

    @@ -639,7 +639,7 @@

    Declaration

    @@ -678,7 +678,7 @@

    Declaration

    @@ -718,7 +718,7 @@

    Declaration

    @@ -756,7 +756,7 @@

    Declaration

    @@ -801,7 +801,7 @@

    Declaration

    @@ -814,8 +814,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentContext.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentContext.html index 7fdf618b681..5cf4fbaf693 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentContext.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentContext.html @@ -469,7 +469,7 @@

    Return Value

    the newly-instantiated payment context

    @@ -564,7 +564,7 @@

    Return Value

    the newly-instantiated payment context

    @@ -605,7 +605,7 @@

    Declaration

    @@ -705,7 +705,7 @@

    Return Value

    the newly-instantiated payment context

    @@ -750,7 +750,7 @@

    Declaration

    @@ -785,7 +785,7 @@

    Declaration

    @@ -820,7 +820,7 @@

    Declaration

    @@ -856,7 +856,7 @@

    Declaration

    @@ -891,7 +891,7 @@

    Declaration

    @@ -927,7 +927,7 @@

    Declaration

    @@ -962,7 +962,7 @@

    Declaration

    @@ -998,7 +998,7 @@

    Declaration

    @@ -1034,7 +1034,7 @@

    Declaration

    @@ -1070,7 +1070,7 @@

    Declaration

    @@ -1106,7 +1106,7 @@

    Declaration

    @@ -1160,7 +1160,7 @@

    Declaration

    @@ -1209,7 +1209,7 @@

    Declaration

    @@ -1251,7 +1251,7 @@

    Declaration

    @@ -1298,7 +1298,7 @@

    Declaration

    @@ -1349,7 +1349,7 @@

    Declaration

    @@ -1388,7 +1388,7 @@

    Declaration

    @@ -1429,7 +1429,7 @@

    Declaration

    @@ -1469,7 +1469,7 @@

    Declaration

    @@ -1507,7 +1507,7 @@

    Declaration

    @@ -1550,7 +1550,7 @@

    Declaration

    @@ -1593,7 +1593,7 @@

    Declaration

    @@ -1637,7 +1637,7 @@

    Declaration

    @@ -1681,7 +1681,7 @@

    Declaration

    @@ -1729,7 +1729,7 @@

    Declaration

    @@ -1742,8 +1742,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentMethodsViewController.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentMethodsViewController.html index 974f6494677..0d513e06e0c 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentMethodsViewController.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentMethodsViewController.html @@ -452,7 +452,7 @@

    Declaration

    @@ -513,7 +513,7 @@

    Return Value

    an initialized view controller.

    @@ -616,7 +616,7 @@

    Return Value

    an initialized view controller.

    @@ -719,7 +719,7 @@

    Parameters

    @@ -757,7 +757,7 @@

    Declaration

    @@ -798,7 +798,7 @@

    Declaration

    @@ -839,7 +839,7 @@

    Declaration

    @@ -897,7 +897,7 @@

    Parameters

    @@ -910,8 +910,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentResult.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentResult.html index 202da489411..90237b1631e 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentResult.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPPaymentResult.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -485,8 +485,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPRedirectContext.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPRedirectContext.html index 6847ee78ed6..bd1545c5ded 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPRedirectContext.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPRedirectContext.html @@ -462,7 +462,7 @@

    Declaration

    @@ -550,7 +550,7 @@

    Return Value

    a new context object.

    @@ -580,7 +580,7 @@

    Declaration

    @@ -663,7 +663,7 @@

    Parameters

    @@ -735,7 +735,7 @@

    Parameters

    @@ -780,7 +780,7 @@

    Declaration

    @@ -816,7 +816,7 @@

    Declaration

    @@ -829,8 +829,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPShippingAddressViewController.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPShippingAddressViewController.html index 86db5b5d5ec..a58284db18c 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPShippingAddressViewController.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPShippingAddressViewController.html @@ -437,7 +437,7 @@

    Declaration

    @@ -492,7 +492,7 @@

    Parameters

    @@ -612,7 +612,7 @@

    Parameters

    @@ -648,7 +648,7 @@

    Declaration

    @@ -702,7 +702,7 @@

    Parameters

    @@ -715,8 +715,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSource.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSource.html index 8d9541ccc1c..86452ed85df 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSource.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSource.html @@ -433,7 +433,7 @@

    Declaration

    @@ -468,7 +468,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -539,7 +539,7 @@

    Declaration

    @@ -574,7 +574,7 @@

    Declaration

    @@ -609,7 +609,7 @@

    Declaration

    @@ -644,7 +644,7 @@

    Declaration

    @@ -685,7 +685,7 @@

    Declaration

    @@ -720,7 +720,7 @@

    Declaration

    @@ -756,7 +756,7 @@

    Declaration

    @@ -792,7 +792,7 @@

    Declaration

    @@ -827,7 +827,7 @@

    Declaration

    @@ -862,7 +862,7 @@

    Declaration

    @@ -897,7 +897,7 @@

    Declaration

    @@ -933,7 +933,7 @@

    Declaration

    @@ -968,7 +968,7 @@

    Declaration

    @@ -1004,7 +1004,7 @@

    Declaration

    @@ -1041,7 +1041,7 @@

    Declaration

    @@ -1054,8 +1054,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceCardDetails.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceCardDetails.html index e00c96648fa..69289ab7628 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceCardDetails.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceCardDetails.html @@ -434,7 +434,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -539,7 +539,7 @@

    Declaration

    @@ -574,7 +574,7 @@

    Declaration

    @@ -609,7 +609,7 @@

    Declaration

    @@ -644,7 +644,7 @@

    Declaration

    @@ -679,7 +679,7 @@

    Declaration

    @@ -714,7 +714,7 @@

    Declaration

    @@ -727,8 +727,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceOwner.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceOwner.html index 469cf745767..e5a30aad859 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceOwner.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceOwner.html @@ -433,7 +433,7 @@

    Declaration

    @@ -468,7 +468,7 @@

    Declaration

    @@ -503,7 +503,7 @@

    Declaration

    @@ -538,7 +538,7 @@

    Declaration

    @@ -573,7 +573,7 @@

    Declaration

    @@ -608,7 +608,7 @@

    Declaration

    @@ -643,7 +643,7 @@

    Declaration

    @@ -678,7 +678,7 @@

    Declaration

    @@ -713,7 +713,7 @@

    Declaration

    @@ -726,8 +726,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceParams.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceParams.html index 34aafcbf461..a544709a6f8 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceParams.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceParams.html @@ -442,7 +442,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Declaration

    @@ -521,7 +521,7 @@

    Declaration

    @@ -557,7 +557,7 @@

    Declaration

    @@ -594,7 +594,7 @@

    Declaration

    @@ -629,7 +629,7 @@

    Declaration

    @@ -665,7 +665,7 @@

    Declaration

    @@ -701,7 +701,7 @@

    Declaration

    @@ -737,7 +737,7 @@

    Declaration

    @@ -774,7 +774,7 @@

    Declaration

    @@ -885,7 +885,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -975,7 +975,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1038,7 +1038,7 @@

    Return Value

    an STPSourceParams object populated with the provided card details.

    @@ -1149,7 +1149,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1273,7 +1273,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1409,7 +1409,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1520,7 +1520,7 @@

    Return Value

    an STPSourceParams object populated with the provided values.

    @@ -1624,7 +1624,7 @@

    Return Value

    an STPSourceParams object populated with the provided card details.

    @@ -1715,7 +1715,85 @@

    Return Value

    An STPSourceParams object populated with the provided values

    + + +
  • +
  • +
    + + + + +alipayReusableParamsWithCurrency:returnURL: + +
    +
    +
    +
    +
    +
    +

    Creates params for a reusable Alipay source

    + + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    + (nonnull STPSourceParams *)
    +alipayReusableParamsWithCurrency:(nonnull NSString *)currency
    +                       returnURL:(nonnull NSString *)returnURL;
    + +
    +
    +

    Swift

    +
    class func alipayReusableParams(withCurrency currency: String, returnURL: String) -> STPSourceParams
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + currency + + +
    +

    The currency the payment is being created in.

    +
    +
    + + returnURL + + +
    +

    The URL the customer should be redirected to after they have +successfully verified the payment.

    +
    +
    +
    +
    +

    Return Value

    +

    An STPSourceParams object populated with the provided values

    +
    +
    @@ -1831,7 +1909,7 @@

    Return Value

    An STPSourceParams object populated with the provided values.

    @@ -1844,8 +1922,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceReceiver.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceReceiver.html index 78db3c9aecb..75a921d2857 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceReceiver.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceReceiver.html @@ -432,7 +432,7 @@

    Declaration

    @@ -467,7 +467,7 @@

    Declaration

    @@ -502,7 +502,7 @@

    Declaration

    @@ -537,7 +537,7 @@

    Declaration

    @@ -572,7 +572,7 @@

    Declaration

    @@ -585,8 +585,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceRedirect.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceRedirect.html index 0271c501301..cb8cccdd15d 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceRedirect.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceRedirect.html @@ -433,7 +433,7 @@

    Declaration

    @@ -468,7 +468,7 @@

    Declaration

    @@ -503,7 +503,7 @@

    Declaration

    @@ -538,7 +538,7 @@

    Declaration

    @@ -551,8 +551,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceSEPADebitDetails.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceSEPADebitDetails.html index 4ebfcf90ec4..8b1bd70b202 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceSEPADebitDetails.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceSEPADebitDetails.html @@ -434,7 +434,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -539,7 +539,7 @@

    Declaration

    @@ -574,7 +574,7 @@

    Declaration

    @@ -609,7 +609,7 @@

    Declaration

    @@ -644,7 +644,7 @@

    Declaration

    @@ -657,8 +657,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceVerification.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceVerification.html index 92d2d05707c..053fd2a4e9a 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceVerification.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPSourceVerification.html @@ -433,7 +433,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -504,7 +504,7 @@

    Declaration

    @@ -517,8 +517,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPTheme.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPTheme.html index bc0559fdf9c..0f610873297 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPTheme.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPTheme.html @@ -437,7 +437,7 @@

    Declaration

    @@ -473,7 +473,7 @@

    Declaration

    @@ -509,7 +509,7 @@

    Declaration

    @@ -544,7 +544,7 @@

    Declaration

    @@ -579,7 +579,7 @@

    Declaration

    @@ -615,7 +615,7 @@

    Declaration

    @@ -651,7 +651,7 @@

    Declaration

    @@ -686,7 +686,7 @@

    Declaration

    @@ -721,7 +721,7 @@

    Declaration

    @@ -756,7 +756,7 @@

    Declaration

    @@ -791,7 +791,7 @@

    Declaration

    @@ -826,7 +826,7 @@

    Declaration

    @@ -863,7 +863,7 @@

    Declaration

    @@ -899,7 +899,7 @@

    Declaration

    @@ -934,7 +934,7 @@

    Declaration

    @@ -969,7 +969,7 @@

    Declaration

    @@ -982,8 +982,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPToken.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPToken.html index 157dde7b011..7887f6eba54 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPToken.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPToken.html @@ -432,7 +432,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -543,7 +543,7 @@

    Declaration

    @@ -578,7 +578,7 @@

    Declaration

    @@ -613,7 +613,7 @@

    Declaration

    @@ -626,8 +626,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPUserInformation.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPUserInformation.html index 6ca42f015c3..9aa51983d41 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPUserInformation.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/STPUserInformation.html @@ -442,7 +442,7 @@

    Declaration

    @@ -479,7 +479,7 @@

    Declaration

    @@ -492,8 +492,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/Stripe.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/Stripe.html index 3fbe5d89a3b..1fb897187ad 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/Stripe.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Classes/Stripe.html @@ -462,7 +462,7 @@

    Parameters

    @@ -497,7 +497,7 @@

    Declaration

    @@ -570,7 +570,7 @@

    Return Value

    whether or not the user is currently able to pay with Apple Pay.

    @@ -615,7 +615,7 @@

    Return Value

    supported type, or other restrictions prevent payment (such as parental controls).

    @@ -683,7 +683,7 @@

    Return Value

    the appropriate values for your business.

    @@ -775,7 +775,7 @@

    Return Value

    a PKPaymentRequest with proper default values. Returns nil if running on < iOS8.

    @@ -856,7 +856,7 @@

    Return Value

    YES if the URL is expected and will be handled by Stripe. NO otherwise.

    @@ -869,8 +869,8 @@

    Return Value

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Constants.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Constants.html index 660426bbab0..ceec85b046d 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Constants.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Constants.html @@ -420,7 +420,7 @@

    Constants

    Declaration

    Objective-C

    -
    static NSString *const _Nonnull STPSDKVersion = @"11.4.0"
    +
    static NSString *const _Nonnull STPSDKVersion = @"11.5.0"
    @@ -430,7 +430,7 @@

    Declaration

    @@ -469,7 +469,7 @@

    Declaration

    @@ -516,7 +516,7 @@

    Declaration

    @@ -551,7 +551,7 @@

    Declaration

    @@ -587,7 +587,7 @@

    Declaration

    @@ -627,7 +627,7 @@

    Declaration

    @@ -667,7 +667,7 @@

    Declaration

    @@ -713,7 +713,7 @@

    Declaration

    @@ -748,7 +748,7 @@

    Declaration

    @@ -783,7 +783,7 @@

    Declaration

    @@ -818,7 +818,7 @@

    Declaration

    @@ -853,7 +853,7 @@

    Declaration

    @@ -888,7 +888,7 @@

    Declaration

    @@ -923,7 +923,7 @@

    Declaration

    @@ -958,7 +958,7 @@

    Declaration

    @@ -993,7 +993,7 @@

    Declaration

    @@ -1006,8 +1006,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums.html index caed91e0c4f..c6e28d54255 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums.html @@ -437,7 +437,7 @@

    Declaration

    @@ -477,7 +477,7 @@

    Declaration

    @@ -517,7 +517,7 @@

    Declaration

    @@ -557,7 +557,7 @@

    Declaration

    @@ -593,7 +593,7 @@

    Declaration

    @@ -629,7 +629,7 @@

    Declaration

    @@ -669,7 +669,7 @@

    Declaration

    @@ -709,7 +709,7 @@

    Declaration

    @@ -750,7 +750,7 @@

    Declaration

    @@ -795,7 +795,7 @@

    Declaration

    @@ -837,7 +837,7 @@

    Declaration

    @@ -877,7 +877,7 @@

    Declaration

    @@ -917,7 +917,7 @@

    Declaration

    @@ -952,7 +952,7 @@

    Declaration

    @@ -983,7 +983,7 @@

    Declaration

    @@ -1014,7 +1014,7 @@

    Declaration

    @@ -1050,7 +1050,7 @@

    Declaration

    @@ -1090,7 +1090,7 @@

    Declaration

    @@ -1130,7 +1130,7 @@

    Declaration

    @@ -1170,7 +1170,7 @@

    Declaration

    @@ -1183,8 +1183,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountHolderType.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountHolderType.html index e1c390ad598..571ec40a6ac 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountHolderType.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountHolderType.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -485,8 +485,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountStatus.html index 2ab358a978f..ed89c1ad4f1 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBankAccountStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -590,8 +590,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBillingAddressFields.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBillingAddressFields.html index 23cc0bf3817..cdf80288276 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBillingAddressFields.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPBillingAddressFields.html @@ -443,7 +443,7 @@

    Declaration

    @@ -478,7 +478,7 @@

    Declaration

    @@ -513,7 +513,7 @@

    Declaration

    @@ -526,8 +526,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardBrand.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardBrand.html index 8e6c0c93363..1d448053e2e 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardBrand.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardBrand.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -612,7 +612,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -660,8 +660,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardFundingType.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardFundingType.html index 2578bc24d6f..a5c343a6577 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardFundingType.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardFundingType.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardValidationState.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardValidationState.html index e297ce8458d..08cbe4e97ad 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardValidationState.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPCardValidationState.html @@ -442,7 +442,7 @@

    Declaration

    @@ -478,7 +478,7 @@

    Declaration

    @@ -514,7 +514,7 @@

    Declaration

    @@ -527,8 +527,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPErrorCode.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPErrorCode.html index 606cacd9791..98e821e8034 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPErrorCode.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPErrorCode.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -577,7 +577,7 @@

    Declaration

    @@ -614,7 +614,7 @@

    Declaration

    @@ -627,8 +627,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPFilePurpose.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPFilePurpose.html index 626cf658733..7f6495ec7b3 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPFilePurpose.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPFilePurpose.html @@ -442,7 +442,7 @@

    Declaration

    @@ -477,7 +477,7 @@

    Declaration

    @@ -512,7 +512,7 @@

    Declaration

    @@ -525,8 +525,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentMethodType.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentMethodType.html index 86a4e7f17f4..3969c9e0fda 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentMethodType.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentMethodType.html @@ -434,7 +434,7 @@

    Declaration

    @@ -470,7 +470,7 @@

    Declaration

    @@ -505,7 +505,7 @@

    Declaration

    @@ -518,8 +518,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentStatus.html index c0831271c4c..23d50de292a 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPPaymentStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -520,8 +520,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPRedirectContextState.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPRedirectContextState.html index cb00814120d..599b3bfbedf 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPRedirectContextState.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPRedirectContextState.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingStatus.html index 1303441323a..7b0bd1e1561 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -485,8 +485,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingType.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingType.html index 43d4e37fecd..070584ee99a 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingType.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPShippingType.html @@ -438,7 +438,7 @@

    Declaration

    @@ -473,7 +473,7 @@

    Declaration

    @@ -486,8 +486,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceCard3DSecureStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceCard3DSecureStatus.html index ae11e9c00ee..dd30e1cbdc7 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceCard3DSecureStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceCard3DSecureStatus.html @@ -438,7 +438,7 @@

    Declaration

    @@ -474,7 +474,7 @@

    Declaration

    @@ -509,7 +509,7 @@

    Declaration

    @@ -544,7 +544,7 @@

    Declaration

    @@ -557,8 +557,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceFlow.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceFlow.html index f19d460b629..9b00c8ccd73 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceFlow.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceFlow.html @@ -432,7 +432,7 @@

    Declaration

    @@ -462,7 +462,7 @@

    Declaration

    @@ -492,7 +492,7 @@

    Declaration

    @@ -522,7 +522,7 @@

    Declaration

    @@ -552,7 +552,7 @@

    Declaration

    @@ -565,8 +565,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceRedirectStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceRedirectStatus.html index 4111fccd161..9330cef3d0a 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceRedirectStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceRedirectStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceStatus.html index ddda49c6568..86b7bacb42d 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceStatus.html @@ -432,7 +432,7 @@

    Declaration

    @@ -463,7 +463,7 @@

    Declaration

    @@ -493,7 +493,7 @@

    Declaration

    @@ -524,7 +524,7 @@

    Declaration

    @@ -556,7 +556,7 @@

    Declaration

    @@ -586,7 +586,7 @@

    Declaration

    @@ -599,8 +599,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceType.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceType.html index 028c41eedf6..506fff5db77 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceType.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceType.html @@ -437,7 +437,7 @@

    Declaration

    @@ -467,7 +467,7 @@

    Declaration

    @@ -497,7 +497,7 @@

    Declaration

    @@ -527,7 +527,7 @@

    Declaration

    @@ -557,7 +557,7 @@

    Declaration

    @@ -587,7 +587,7 @@

    Declaration

    @@ -617,7 +617,7 @@

    Declaration

    @@ -647,7 +647,7 @@

    Declaration

    @@ -677,7 +677,7 @@

    Declaration

    @@ -707,7 +707,7 @@

    Declaration

    @@ -737,7 +737,7 @@

    Declaration

    @@ -750,8 +750,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceUsage.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceUsage.html index 3e6a1bb56c2..2a833572c36 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceUsage.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceUsage.html @@ -432,7 +432,7 @@

    Declaration

    @@ -462,7 +462,7 @@

    Declaration

    @@ -492,7 +492,7 @@

    Declaration

    @@ -505,8 +505,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceVerificationStatus.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceVerificationStatus.html index ee198db91d0..ef17246a90e 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceVerificationStatus.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Enums/STPSourceVerificationStatus.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -507,7 +507,7 @@

    Declaration

    @@ -542,7 +542,7 @@

    Declaration

    @@ -555,8 +555,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Functions.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Functions.html index 1715c5551d0..705e10e8da7 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Functions.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Functions.html @@ -434,7 +434,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Declaration

    @@ -527,7 +527,7 @@

    Declaration

    @@ -540,8 +540,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols.html index c7a6ab39441..3fa1a5803f6 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols.html @@ -432,7 +432,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -525,7 +525,7 @@

    Declaration

    @@ -567,7 +567,7 @@

    Declaration

    @@ -607,7 +607,7 @@

    Declaration

    @@ -649,7 +649,7 @@

    Declaration

    @@ -689,7 +689,7 @@

    Declaration

    @@ -733,7 +733,7 @@

    Declaration

    @@ -776,7 +776,7 @@

    Declaration

    @@ -816,7 +816,7 @@

    Declaration

    @@ -862,7 +862,7 @@

    Declaration

    @@ -875,8 +875,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAPIResponseDecodable.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAPIResponseDecodable.html index 1f789da5614..ef556817cad 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAPIResponseDecodable.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAPIResponseDecodable.html @@ -439,7 +439,7 @@

    Declaration

    @@ -500,7 +500,7 @@

    Return Value

    could not be decoded (i.e. if one of its requiredFields is nil).

    @@ -536,7 +536,7 @@

    Declaration

    @@ -549,8 +549,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAddCardViewControllerDelegate.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAddCardViewControllerDelegate.html index d47aa592b07..b0314000a8c 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAddCardViewControllerDelegate.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPAddCardViewControllerDelegate.html @@ -457,7 +457,7 @@

    Parameters

    @@ -538,7 +538,7 @@

    Parameters

    @@ -551,8 +551,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPBackendAPIAdapter.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPBackendAPIAdapter.html index 2e22a01622b..57b389e5fab 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPBackendAPIAdapter.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPBackendAPIAdapter.html @@ -481,7 +481,7 @@

    Parameters

    @@ -557,7 +557,7 @@

    Parameters

    @@ -633,7 +633,7 @@

    Parameters

    @@ -709,7 +709,7 @@

    Parameters

    @@ -789,7 +789,7 @@

    Parameters

    @@ -802,8 +802,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPEphemeralKeyProvider.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPEphemeralKeyProvider.html index b651bafe867..e1d000a6768 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPEphemeralKeyProvider.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPEphemeralKeyProvider.html @@ -484,7 +484,7 @@

    Parameters

    @@ -497,8 +497,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPFormEncodable.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPFormEncodable.html index 1d62515547d..fe44369d94e 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPFormEncodable.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPFormEncodable.html @@ -437,7 +437,7 @@

    Declaration

    @@ -472,7 +472,7 @@

    Declaration

    @@ -512,7 +512,7 @@

    Declaration

    @@ -525,8 +525,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentCardTextFieldDelegate.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentCardTextFieldDelegate.html index ddafa3a3d9c..c2b3ab10afb 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentCardTextFieldDelegate.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentCardTextFieldDelegate.html @@ -467,7 +467,7 @@

    Parameters

    @@ -506,7 +506,7 @@

    Declaration

    @@ -545,7 +545,7 @@

    Declaration

    @@ -581,7 +581,7 @@

    Declaration

    @@ -617,7 +617,7 @@

    Declaration

    @@ -653,7 +653,7 @@

    Declaration

    @@ -689,7 +689,7 @@

    Declaration

    @@ -725,7 +725,7 @@

    Declaration

    @@ -761,7 +761,7 @@

    Declaration

    @@ -797,7 +797,7 @@

    Declaration

    @@ -833,7 +833,7 @@

    Declaration

    @@ -846,8 +846,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentContextDelegate.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentContextDelegate.html index 7d4ed38eac6..65af6dee5e1 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentContextDelegate.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentContextDelegate.html @@ -476,7 +476,7 @@

    Parameters

    @@ -530,7 +530,7 @@

    Parameters

    @@ -610,7 +610,7 @@

    Parameters

    @@ -690,7 +690,7 @@

    Parameters

    @@ -784,7 +784,7 @@

    Parameters

    @@ -797,8 +797,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethod.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethod.html index a3658d12ee2..923567666e5 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethod.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethod.html @@ -442,7 +442,7 @@

    Declaration

    @@ -478,7 +478,7 @@

    Declaration

    @@ -513,7 +513,7 @@

    Declaration

    @@ -526,8 +526,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethodsViewControllerDelegate.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethodsViewControllerDelegate.html index 87bba3c0c6b..e722a0d7ad8 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethodsViewControllerDelegate.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPPaymentMethodsViewControllerDelegate.html @@ -475,7 +475,7 @@

    Parameters

    @@ -532,7 +532,7 @@

    Parameters

    @@ -588,7 +588,7 @@

    Parameters

    @@ -665,7 +665,7 @@

    Parameters

    @@ -678,8 +678,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPShippingAddressViewControllerDelegate.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPShippingAddressViewControllerDelegate.html index 281de558c91..dfeae927fea 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPShippingAddressViewControllerDelegate.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPShippingAddressViewControllerDelegate.html @@ -457,7 +457,7 @@

    Parameters

    @@ -540,7 +540,7 @@

    Parameters

    @@ -621,7 +621,7 @@

    Parameters

    @@ -634,8 +634,8 @@

    Parameters

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPSourceProtocol.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPSourceProtocol.html index d19ae0c2c87..0159f512026 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPSourceProtocol.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Protocols/STPSourceProtocol.html @@ -443,7 +443,7 @@

    Declaration

    @@ -456,8 +456,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Type Definitions.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Type Definitions.html index 93f8f28bd38..9ffe33092e2 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Type Definitions.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/Type Definitions.html @@ -430,7 +430,7 @@

    Declaration

    @@ -484,7 +484,7 @@

    Parameters

    @@ -551,7 +551,7 @@

    Parameters

    @@ -617,7 +617,7 @@

    Parameters

    @@ -684,7 +684,7 @@

    Parameters

    @@ -746,7 +746,7 @@

    Parameters

    @@ -839,7 +839,7 @@

    Parameters

    @@ -905,7 +905,7 @@

    Parameters

    @@ -972,7 +972,7 @@

    Parameters

    @@ -1060,7 +1060,7 @@

    Parameters

    @@ -1108,7 +1108,7 @@

    Declaration

    @@ -1121,8 +1121,8 @@

    Declaration

    diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/index.html b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/index.html index 4569d6ac6bd..19bd4efca6e 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/index.html +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/index.html @@ -420,7 +420,7 @@

    Releases

    If you’re reading this on GitHub.com, please make sure you are looking at the tagged version that corresponds to the release you have installed. Otherwise, the instructions and example code may be mismatched with your copy. You can read the latest tagged version of this README and browse the associated code on GitHub using this link.

    Requirements

    -

    The Stripe iOS SDK is compatible with apps supporting iOS 8 and above and requires Xcode 8 to build from source.

    +

    The Stripe iOS SDK is compatible with apps supporting iOS 8 and above and requires Xcode 8 or Xcode 9 to build from source.

    Getting Started

    Integration

    @@ -441,7 +441,7 @@

    Examples

  • Execute ./setup.sh from the root of the repository to build the necessary dependencies.
  • If you haven’t already, sign up for a Stripe account (it takes seconds). Then go to https://dashboard.stripe.com/account/apikeys.
  • Replace the stripePublishableKey constant in CheckoutViewController.swift (for the Standard Integration app) or Constants.m (for the Custom Integration app) with your Test Publishable Key.
  • -
  • Head to https://github.com/stripe/example-ios-backend/tree/v11.0.0 and click Deploy to Heroku (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under ‘Env’. Click Deploy for Free.
  • +
  • Head to https://github.com/stripe/example-ios-backend and click Deploy to Heroku (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under ‘Env’. Click Deploy for Free.
  • Replace the backendBaseURL variable in the example iOS app with the app URL Heroku provides you with (e.g. https://my-example-app.herokuapp.com)
  • @@ -474,8 +474,8 @@

    Migrating from Older Vers diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/search.json b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/search.json index 76f2e61363b..97e29aa95a7 100644 --- a/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/search.json +++ b/docs/docs/docsets/Stripe.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Functions.html#/c:@F@linkSTPAPIClientApplePayCategory":{"name":"linkSTPAPIClientApplePayCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkNSErrorCategory":{"name":"linkNSErrorCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkUINavigationBarThemeCategory":{"name":"linkUINavigationBarThemeCategory","abstract":"

    This function should not be called directly.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPVoidBlock":{"name":"STPVoidBlock","abstract":"

    An empty block, called with no arguments, returning nothing.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPErrorBlock":{"name":"STPErrorBlock","abstract":"

    A block that may optionally be called with an error.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPJSONResponseCompletionBlock":{"name":"STPJSONResponseCompletionBlock","abstract":"

    A callback to be run with a JSON response.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPTokenCompletionBlock":{"name":"STPTokenCompletionBlock","abstract":"

    A callback to be run with a token response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceCompletionBlock":{"name":"STPSourceCompletionBlock","abstract":"

    A callback to be run with a source response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceProtocolCompletionBlock":{"name":"STPSourceProtocolCompletionBlock","abstract":"

    A callback to be run with a source or card response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPShippingMethodsCompletionBlock":{"name":"STPShippingMethodsCompletionBlock","abstract":"

    A callback to be run with a validation result and shipping methods for a"},"Type Definitions.html#/c:STPBlocks.h@T@STPFileCompletionBlock":{"name":"STPFileCompletionBlock","abstract":"

    A callback to be run with a file response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPCustomerCompletionBlock":{"name":"STPCustomerCompletionBlock","abstract":"

    A callback to be run with a customer response from the Stripe API.

    "},"Type Definitions.html#/c:STPRedirectContext.h@T@STPRedirectContextCompletionBlock":{"name":"STPRedirectContextCompletionBlock","abstract":"

    A callback run when the context believes the redirect action has been completed.

    "},"Type Definitions.html#/c:StripeError.h@T@STPCardErrorCode":{"name":"STPCardErrorCode","abstract":"

    Possible string values you may receive when there was an error tokenizing"},"Protocols/STPSourceProtocol.html#/c:objc(pl)STPSourceProtocol(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the source.

    ","parent_name":"STPSourceProtocol"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewControllerDidCancel:":{"name":"-shippingAddressViewControllerDidCancel:","abstract":"

    Called when the user cancels entering a shipping address. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didEnterAddress:completion:":{"name":"-shippingAddressViewController:didEnterAddress:completion:","abstract":"

    This is called when the user enters a shipping address and taps next. You should validate the address and determine what shipping methods are available, and call the completion block when finished. If an error occurrs, call the completion block with the error. Otherwise, call the completion block with a nil error and an array of available shipping methods. If you don’t need to collect a shipping method, you may pass an empty array.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didFinishWithAddress:shippingMethod:":{"name":"-shippingAddressViewController:didFinishWithAddress:shippingMethod:","abstract":"

    This is called when the user selects a shipping method. If no shipping methods are given, or if the shipping type doesn’t require a shipping method, this will be called after the user has a shipping address and your validation has succeeded. After updating your app with the user’s shipping info, you should dismiss (or pop) the view controller. Note that if shippingMethod is non-nil, there will be an additional shipping methods view controller on the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didFailToLoadWithError:":{"name":"-paymentMethodsViewController:didFailToLoadWithError:","abstract":"

    This is called when the view controller encounters an error fetching the user’s","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidFinish:":{"name":"-paymentMethodsViewControllerDidFinish:","abstract":"

    This is called when the user selects or adds a payment method, so it will often","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidCancel:":{"name":"-paymentMethodsViewControllerDidCancel:","abstract":"

    This is called when the user taps cancel.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didSelectPaymentMethod:":{"name":"-paymentMethodsViewController:didSelectPaymentMethod:","abstract":"

    This is called when the user either makes a selection, or adds a new card.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)image":{"name":"image","abstract":"

    A small (32 x 20 points) logo image representing the payment method. For","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)templateImage":{"name":"templateImage","abstract":"

    A small (32 x 20 points) logo image representing the payment method that can be","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)label":{"name":"label","abstract":"

    A string describing the payment method, such as Apple Pay or Visa 4242.

    ","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFailToLoadWithError:":{"name":"-paymentContext:didFailToLoadWithError:","abstract":"

    Called when the payment context encounters an error when fetching its initial set of data. A few ways to handle this are:

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContextDidChange:":{"name":"-paymentContextDidChange:","abstract":"

    This is called every time the contents of the payment context change. When this is called, you should update your app’s UI to reflect the current state of the payment context. For example, if you have a checkout page with a selected payment method row, you should update its payment method with paymentContext.selectedPaymentMethod.label. If that checkout page has a buy button, you should enable/disable it depending on the result of [paymentContext isReadyForPayment].

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didCreatePaymentResult:completion:":{"name":"-paymentContext:didCreatePaymentResult:completion:","abstract":"

    Inside this method, you should make a call to your backend API to make a charge with that Customer + source, and invoke the completion block when that is done.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFinishWithStatus:error:":{"name":"-paymentContext:didFinishWithStatus:error:","abstract":"

    This is invoked by an STPPaymentContext when it is finished. This will be called after the payment is done and all necessary UI has been dismissed. You should inspect the returned status and behave appropriately. For example: if it’s STPPaymentStatusSuccess, show the user a receipt. If it’s STPPaymentStatusError, inform the user of the error. If it’s STPPaymentStatusUserCanceled, do nothing.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didUpdateShippingAddress:completion:":{"name":"-paymentContext:didUpdateShippingAddress:completion:","abstract":"

    Inside this method, you should verify that you can ship to the given address.","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidChange:":{"name":"-paymentCardTextFieldDidChange:","abstract":"

    Called when either the card number, expiration, or CVC changes. At this point,","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditing:":{"name":"-paymentCardTextFieldDidBeginEditing:","abstract":"

    Called when editing begins in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditing:":{"name":"-paymentCardTextFieldDidEndEditing:","abstract":"

    Called when editing ends in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingNumber:":{"name":"-paymentCardTextFieldDidBeginEditingNumber:","abstract":"

    Called when editing begins in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingNumber:":{"name":"-paymentCardTextFieldDidEndEditingNumber:","abstract":"

    Called when editing ends in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingCVC:":{"name":"-paymentCardTextFieldDidBeginEditingCVC:","abstract":"

    Called when editing begins in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingCVC:":{"name":"-paymentCardTextFieldDidEndEditingCVC:","abstract":"

    Called when editing ends in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingExpiration:":{"name":"-paymentCardTextFieldDidBeginEditingExpiration:","abstract":"

    Called when editing begins in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingExpiration:":{"name":"-paymentCardTextFieldDidEndEditingExpiration:","abstract":"

    Called when editing ends in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingPostalCode:":{"name":"-paymentCardTextFieldDidBeginEditingPostalCode:","abstract":"

    Called when editing begins in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingPostalCode:":{"name":"-paymentCardTextFieldDidEndEditingPostalCode:","abstract":"

    Called when editing ends in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)rootObjectName":{"name":"+rootObjectName","abstract":"

    The root object name to be used when converting this object to a form-encoded string. For example, if this returns @card, then the form-encoded output will resemble @card[foo]=bar (where ‘foo’ and ‘bar’ are specified by propertyNamesToFormFieldNamesMapping below.

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)propertyNamesToFormFieldNamesMapping":{"name":"+propertyNamesToFormFieldNamesMapping","abstract":"

    This maps properties on an object that is being form-encoded into parameter names in the Stripe API. For example, STPCardParams has a field called expMonth, but the Stripe API expects a field called exp_month. This dictionary represents a mapping from the former to the latter (in other words, [STPCardParams propertyNamesToFormFieldNamesMapping][@expMonth] == @exp_month.)

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(py)additionalAPIParameters":{"name":"additionalAPIParameters","abstract":"

    You can use this property to add additional fields to an API request that are not explicitly defined by the object’s interface. This can be useful when using beta features that haven’t been added to the Stripe SDK yet. For example, if the /v1/tokens API began to accept a beta field called test_field, you might do the following:","parent_name":"STPFormEncodable"},"Protocols/STPEphemeralKeyProvider.html#/c:objc(pl)STPEphemeralKeyProvider(im)createCustomerKeyWithAPIVersion:completion:":{"name":"-createCustomerKeyWithAPIVersion:completion:","abstract":"

    Creates a new ephemeral key for retrieving and updating a Stripe customer.","parent_name":"STPEphemeralKeyProvider"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)retrieveCustomer:":{"name":"-retrieveCustomer:","abstract":"

    Retrieve the cards to be displayed inside a payment context.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)attachSourceToCustomer:completion:":{"name":"-attachSourceToCustomer:completion:","abstract":"

    Adds a payment source to a customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)selectDefaultCustomerSource:completion:":{"name":"-selectDefaultCustomerSource:completion:","abstract":"

    Change a customer’s default_source to be the provided card.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)detachSourceFromCustomer:completion:":{"name":"-detachSourceFromCustomer:completion:","abstract":"

    Deletes the given source from the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)updateCustomerWithShippingAddress:completion:":{"name":"-updateCustomerWithShippingAddress:completion:","abstract":"

    Sets the given shipping address on the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewControllerDidCancel:":{"name":"-addCardViewControllerDidCancel:","abstract":"

    Called when the user cancels adding a card. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewController:didCreateToken:completion:":{"name":"-addCardViewController:didCreateToken:completion:","abstract":"

    This is called when the user successfully adds a card and tokenizes it with Stripe. You should send the token to your backend to store it on a customer, and then call the provided completion block when that call is finished. If an error occurred while talking to your backend, call completion(error), otherwise, dismiss (or pop) the view controller.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)requiredFields":{"name":"+requiredFields","abstract":"

    These fields are required to be present in the API response. If any of them are","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)decodedObjectFromAPIResponse:":{"name":"+decodedObjectFromAPIResponse:","abstract":"

    Parses an response from the Stripe API (in JSON format; represented as","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(py)allResponseFields":{"name":"allResponseFields","abstract":"

    The raw JSON response used to create the object. This can be useful for accessing","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html":{"name":"STPAPIResponseDecodable","abstract":"

    Objects conforming to STPAPIResponseDecodable can be automatically converted"},"Protocols/STPAddCardViewControllerDelegate.html":{"name":"STPAddCardViewControllerDelegate","abstract":"

    An STPAddCardViewControllerDelegate is notified when an STPAddCardViewController successfully creates a card token or is cancelled. It has internal error-handling logic, so there’s no error case to deal with.

    "},"Protocols/STPBackendAPIAdapter.html":{"name":"STPBackendAPIAdapter","abstract":"

    Typically, you will not need to implement this protocol yourself. You"},"Protocols/STPEphemeralKeyProvider.html":{"name":"STPEphemeralKeyProvider","abstract":"

    You should make your application’s API client conform to this interface."},"Protocols/STPFormEncodable.html":{"name":"STPFormEncodable","abstract":"

    Objects conforming to STPFormEncodable can be automatically converted to a form-encoded string, which can then be used when making requests to the Stripe API.

    "},"Protocols/STPPaymentCardTextFieldDelegate.html":{"name":"STPPaymentCardTextFieldDelegate","abstract":"

    This protocol allows a delegate to be notified when a payment text field’s"},"Protocols/STPPaymentContextDelegate.html":{"name":"STPPaymentContextDelegate","abstract":"

    Implement STPPaymentContextDelegate to get notified when a payment context changes, finishes, encounters errors, etc. In practice, if your app has a checkout screen view controller, that is a good candidate to implement this protocol.

    "},"Protocols/STPPaymentMethod.html":{"name":"STPPaymentMethod","abstract":"

    This protocol represents a payment method that a user can select and use to"},"Protocols/STPPaymentMethodsViewControllerDelegate.html":{"name":"STPPaymentMethodsViewControllerDelegate","abstract":"

    An STPPaymentMethodsViewControllerDelegate responds when a user selects a"},"Protocols/STPShippingAddressViewControllerDelegate.html":{"name":"STPShippingAddressViewControllerDelegate","abstract":"

    An STPShippingAddressViewControllerDelegate is notified when an STPShippingAddressViewController receives an address, completes with an address, or is cancelled.

    "},"Protocols/STPSourceProtocol.html":{"name":"STPSourceProtocol","abstract":"

    Objects conforming to this protocol can be attached to a Stripe Customer object"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPConnectionError":{"name":"STPConnectionError","abstract":"

    Trouble connecting to Stripe.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPInvalidRequestError":{"name":"STPInvalidRequestError","abstract":"

    Your request had invalid parameters.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPAPIError":{"name":"STPAPIError","abstract":"

    General-purpose API error.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCardError":{"name":"STPCardError","abstract":"

    Something was wrong with the given card details.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCancellationError":{"name":"STPCancellationError","abstract":"

    The operation was cancelled.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPEphemeralKeyDecodingError":{"name":"STPEphemeralKeyDecodingError","abstract":"

    The ephemeral key could not be decoded. Make sure your backend is sending","parent_name":"STPErrorCode"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusPending":{"name":"STPSourceVerificationStatusPending","abstract":"

    The verification is pending.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusSucceeded":{"name":"STPSourceVerificationStatusSucceeded","abstract":"

    The verification has succeeeded.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusFailed":{"name":"STPSourceVerificationStatusFailed","abstract":"

    The verification has failed.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusUnknown":{"name":"STPSourceVerificationStatusUnknown","abstract":"

    The state of the verification is unknown.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusPending":{"name":"STPSourceRedirectStatusPending","abstract":"

    The redirect is pending.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusSucceeded":{"name":"STPSourceRedirectStatusSucceeded","abstract":"

    The redirect has succeeded.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusFailed":{"name":"STPSourceRedirectStatusFailed","abstract":"

    The redirect has failed.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusUnknown":{"name":"STPSourceRedirectStatusUnknown","abstract":"

    The state of the redirect is unknown.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBancontact":{"name":"STPSourceTypeBancontact","abstract":"

    A Bancontact source. - see: https://stripe.com/docs/sources/bancontact

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBitcoin":{"name":"STPSourceTypeBitcoin","abstract":"

    A Bitcoin source. - see: https://stripe.com/docs/sources/bitcoin

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeCard":{"name":"STPSourceTypeCard","abstract":"

    A card source. - see: https://stripe.com/docs/sources/cards

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeGiropay":{"name":"STPSourceTypeGiropay","abstract":"

    A Giropay source. - see: https://stripe.com/docs/sources/giropay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeIDEAL":{"name":"STPSourceTypeIDEAL","abstract":"

    An iDEAL source. - see: https://stripe.com/docs/sources/ideal

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSEPADebit":{"name":"STPSourceTypeSEPADebit","abstract":"

    A SEPA Direct Debit source. - see: https://stripe.com/docs/sources/sepa-debit

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSofort":{"name":"STPSourceTypeSofort","abstract":"

    A SOFORT source. - see: https://stripe.com/docs/sources/sofort

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeThreeDSecure":{"name":"STPSourceTypeThreeDSecure","abstract":"

    A 3DS card source. - see: https://stripe.com/docs/sources/three-d-secure

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeAlipay":{"name":"STPSourceTypeAlipay","abstract":"

    An Alipay source. - see: https://stripe.com/docs/sources/alipay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeP24":{"name":"STPSourceTypeP24","abstract":"

    A P24 source. - see: https://stripe.com/docs/sources/p24

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeUnknown":{"name":"STPSourceTypeUnknown","abstract":"

    An unknown type of source.

    ","parent_name":"STPSourceType"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusPending":{"name":"STPSourceStatusPending","abstract":"

    The source has been created and is awaiting customer action.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusChargeable":{"name":"STPSourceStatusChargeable","abstract":"

    The source is ready to use. The customer action has been completed or the","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusConsumed":{"name":"STPSourceStatusConsumed","abstract":"

    The source has been used. This status only applies to single-use sources.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusCanceled":{"name":"STPSourceStatusCanceled","abstract":"

    The source, which was chargeable, has expired because it was not used to","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusFailed":{"name":"STPSourceStatusFailed","abstract":"

    Your customer has not taken the required action or revoked your access","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusUnknown":{"name":"STPSourceStatusUnknown","abstract":"

    The source status is unknown.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageReusable":{"name":"STPSourceUsageReusable","abstract":"

    The source can be reused.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageSingleUse":{"name":"STPSourceUsageSingleUse","abstract":"

    The source can only be used once.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageUnknown":{"name":"STPSourceUsageUnknown","abstract":"

    The source’s usage is unknown.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowNone":{"name":"STPSourceFlowNone","abstract":"

    No action is required from your customer.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowRedirect":{"name":"STPSourceFlowRedirect","abstract":"

    Your customer must be redirected to their online banking service (either a website or mobile banking app) to approve the payment.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowCodeVerification":{"name":"STPSourceFlowCodeVerification","abstract":"

    Your customer must verify ownership of their account by providing a code that you post to the Stripe API for authentication.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowReceiver":{"name":"STPSourceFlowReceiver","abstract":"

    Your customer must push funds to the account information provided.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowUnknown":{"name":"STPSourceFlowUnknown","abstract":"

    The source’s flow is unknown.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusRequired":{"name":"STPSourceCard3DSecureStatusRequired","abstract":"

    3D Secure is required. This card must be converted into a 3D Secure","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusOptional":{"name":"STPSourceCard3DSecureStatusOptional","abstract":"

    3D Secure is optional. It is not required for successful charging,","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusNotSupported":{"name":"STPSourceCard3DSecureStatusNotSupported","abstract":"

    3D Secure is not supported on this card.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusUnknown":{"name":"STPSourceCard3DSecureStatusUnknown","abstract":"

    The status of 3D Secure support on this card is unknown.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateNotStarted":{"name":"STPRedirectContextStateNotStarted","abstract":"

    Initialized, but redirect not started.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateInProgress":{"name":"STPRedirectContextStateInProgress","abstract":"

    Redirect is in progress.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCancelled":{"name":"STPRedirectContextStateCancelled","abstract":"

    Redirect has been cancelled programmatically before completing.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCompleted":{"name":"STPRedirectContextStateCompleted","abstract":"

    Redirect has completed.

    ","parent_name":"STPRedirectContextState"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeNone":{"name":"STPPaymentMethodTypeNone","abstract":"

    Don’t allow any payment methods except for cards.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeApplePay":{"name":"STPPaymentMethodTypeApplePay","abstract":"

    The user is allowed to pay with Apple Pay if it’s configured and available","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeAll":{"name":"STPPaymentMethodTypeAll","abstract":"

    The user is allowed to use any available payment method to pay.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeIdentityDocument":{"name":"STPFilePurposeIdentityDocument","abstract":"

    Identity document file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeDisputeEvidence":{"name":"STPFilePurposeDisputeEvidence","abstract":"

    Dispute evidence file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeUnknown":{"name":"STPFilePurposeUnknown","abstract":"

    A file of unknown purpose type

    ","parent_name":"STPFilePurpose"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateValid":{"name":"STPCardValidationStateValid","abstract":"

    The field’s contents are valid. For example, a valid, 16-digit card number.","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateInvalid":{"name":"STPCardValidationStateInvalid","abstract":"

    The field’s contents are invalid. For example, an expiration date","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateIncomplete":{"name":"STPCardValidationStateIncomplete","abstract":"

    The field’s contents are not currently valid, but could be by typing","parent_name":"STPCardValidationState"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandVisa":{"name":"STPCardBrandVisa","abstract":"

    Visa card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandAmex":{"name":"STPCardBrandAmex","abstract":"

    American Express card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandMasterCard":{"name":"STPCardBrandMasterCard","abstract":"

    MasterCard card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDiscover":{"name":"STPCardBrandDiscover","abstract":"

    Discover card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandJCB":{"name":"STPCardBrandJCB","abstract":"

    JCB card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDinersClub":{"name":"STPCardBrandDinersClub","abstract":"

    Diners Club card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandUnknown":{"name":"STPCardBrandUnknown","abstract":"

    An unknown card brand type

    ","parent_name":"STPCardBrand"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeDebit":{"name":"STPCardFundingTypeDebit","abstract":"

    Debit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeCredit":{"name":"STPCardFundingTypeCredit","abstract":"

    Credit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypePrepaid":{"name":"STPCardFundingTypePrepaid","abstract":"

    Prepaid card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeOther":{"name":"STPCardFundingTypeOther","abstract":"

    An other or unknown type of funding source.

    ","parent_name":"STPCardFundingType"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusSuccess":{"name":"STPPaymentStatusSuccess","abstract":"

    The payment succeeded.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusError":{"name":"STPPaymentStatusError","abstract":"

    The payment failed due to an unforeseen error, such as the user’s Internet connection being offline.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusUserCancellation":{"name":"STPPaymentStatusUserCancellation","abstract":"

    The user cancelled the payment (for example, by hitting cancel in the Apple Pay dialog).

    ","parent_name":"STPPaymentStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusValid":{"name":"STPShippingStatusValid","abstract":"

    The shipping address is valid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusInvalid":{"name":"STPShippingStatusInvalid","abstract":"

    The shipping address is invalid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeShipping":{"name":"STPShippingTypeShipping","abstract":"

    Shipping the purchase to the provided address using a third-party","parent_name":"STPShippingType"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeDelivery":{"name":"STPShippingTypeDelivery","abstract":"

    Delivering the purchase by the seller.

    ","parent_name":"STPShippingType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeIndividual":{"name":"STPBankAccountHolderTypeIndividual","abstract":"

    An individual holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeCompany":{"name":"STPBankAccountHolderTypeCompany","abstract":"

    A company holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusNew":{"name":"STPBankAccountStatusNew","abstract":"

    The account has had no activity or validation performed

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusValidated":{"name":"STPBankAccountStatusValidated","abstract":"

    Stripe has determined this bank account exists.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerified":{"name":"STPBankAccountStatusVerified","abstract":"

    Bank account verification has succeeded.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerificationFailed":{"name":"STPBankAccountStatusVerificationFailed","abstract":"

    Verification for this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusErrored":{"name":"STPBankAccountStatusErrored","abstract":"

    A transfer sent to this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsNone":{"name":"STPBillingAddressFieldsNone","abstract":"

    No billing address information

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsZip":{"name":"STPBillingAddressFieldsZip","abstract":"

    Just request the user’s billing ZIP code

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsFull":{"name":"STPBillingAddressFieldsFull","abstract":"

    Request the user’s full billing address

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html":{"name":"STPBillingAddressFields","abstract":"

    What set of billing address information you need to collect from your user.

    "},"Enums/STPBankAccountStatus.html":{"name":"STPBankAccountStatus","abstract":"

    Possible validation states for a bank account.

    "},"Enums/STPBankAccountHolderType.html":{"name":"STPBankAccountHolderType","abstract":"

    The type of entity that holds a bank account.

    "},"Enums/STPShippingType.html":{"name":"STPShippingType","abstract":"

    These values control the labels used in the shipping info collection form.

    "},"Enums/STPShippingStatus.html":{"name":"STPShippingStatus","abstract":"

    An enum representing the status of a shipping address validation.

    "},"Enums/STPPaymentStatus.html":{"name":"STPPaymentStatus","abstract":"

    An enum representing the status of a payment requested from the user.

    "},"Enums/STPCardFundingType.html":{"name":"STPCardFundingType","abstract":"

    The various funding sources for a payment card.

    "},"Enums/STPCardBrand.html":{"name":"STPCardBrand","abstract":"

    The various card brands to which a payment card can belong.

    "},"Enums/STPCardValidationState.html":{"name":"STPCardValidationState","abstract":"

    These fields indicate whether a card field represents a valid value, invalid"},"Enums/STPFilePurpose.html":{"name":"STPFilePurpose","abstract":"

    The purpose of the uploaded file.

    "},"Enums/STPPaymentMethodType.html":{"name":"STPPaymentMethodType","abstract":"

    This represents all of the payment methods available to your user when"},"Enums/STPRedirectContextState.html":{"name":"STPRedirectContextState","abstract":"

    Possible states for the redirect context to be in

    "},"Enums/STPSourceCard3DSecureStatus.html":{"name":"STPSourceCard3DSecureStatus","abstract":"

    The status of this card’s 3D Secure support.

    "},"Enums/STPSourceFlow.html":{"name":"STPSourceFlow","abstract":"

    Authentication flows for a Source

    "},"Enums/STPSourceUsage.html":{"name":"STPSourceUsage","abstract":"

    Usage types for a Source

    "},"Enums/STPSourceStatus.html":{"name":"STPSourceStatus","abstract":"

    Status types for a Source

    "},"Enums/STPSourceType.html":{"name":"STPSourceType","abstract":"

    Types for a Source

    "},"Enums/STPSourceRedirectStatus.html":{"name":"STPSourceRedirectStatus","abstract":"

    Redirect status types for a Source.

    "},"Enums/STPSourceVerificationStatus.html":{"name":"STPSourceVerificationStatus","abstract":"

    Verification status types for a Source.

    "},"Enums/STPErrorCode.html":{"name":"STPErrorCode","abstract":"

    Possible error code values for NSError’s with the StripeDomain domain

    "},"Constants.html#/c:STPAPIClient.h@STPSDKVersion":{"name":"STPSDKVersion","abstract":"

    The current version of this library.

    "},"Constants.html#/c:@StripeDomain":{"name":"StripeDomain","abstract":"

    All Stripe iOS errors will be under this domain.

    "},"Constants.html#/c:@STPErrorMessageKey":{"name":"STPErrorMessageKey","abstract":"

    A developer-friendly error message that explains what went wrong. You probably"},"Constants.html#/c:@STPCardErrorCodeKey":{"name":"STPCardErrorCodeKey","abstract":"

    What went wrong with your STPCard (e.g., STPInvalidCVC. See below for full list).

    "},"Constants.html#/c:@STPErrorParameterKey":{"name":"STPErrorParameterKey","abstract":"

    Which parameter on the STPCard had an error (e.g., cvc). Useful for marking up the"},"Constants.html#/c:@STPStripeErrorCodeKey":{"name":"STPStripeErrorCodeKey","abstract":"

    The error code returned by the Stripe API.

    "},"Constants.html#/c:@STPStripeErrorTypeKey":{"name":"STPStripeErrorTypeKey","abstract":"

    The error type returned by the Stripe API.

    "},"Constants.html#/c:@STPInvalidNumber":{"name":"STPInvalidNumber","abstract":"

    The card number is not a valid credit card number.

    "},"Constants.html#/c:@STPInvalidExpMonth":{"name":"STPInvalidExpMonth","abstract":"

    The card has an invalid expiration month.

    "},"Constants.html#/c:@STPInvalidExpYear":{"name":"STPInvalidExpYear","abstract":"

    The card has an invalid expiration year.

    "},"Constants.html#/c:@STPInvalidCVC":{"name":"STPInvalidCVC","abstract":"

    The card has an invalid CVC.

    "},"Constants.html#/c:@STPIncorrectNumber":{"name":"STPIncorrectNumber","abstract":"

    The card number is incorrect.

    "},"Constants.html#/c:@STPExpiredCard":{"name":"STPExpiredCard","abstract":"

    The card is expired.

    "},"Constants.html#/c:@STPCardDeclined":{"name":"STPCardDeclined","abstract":"

    The card was declined.

    "},"Constants.html#/c:@STPIncorrectCVC":{"name":"STPIncorrectCVC","abstract":"

    The card has an incorrect CVC.

    "},"Constants.html#/c:@STPProcessingError":{"name":"STPProcessingError","abstract":"

    An error occured while processing this card.

    "},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)billingAddress":{"name":"billingAddress","abstract":"

    The user’s billing address. When set, the add card form will be filled with","parent_name":"STPUserInformation"},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. When set, the shipping address form will be filled","parent_name":"STPUserInformation"},"Classes/STPToken.html#/c:objc(cs)STPToken(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPToken. You should only use one that has been returned from an STPAPIClient callback.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)tokenId":{"name":"tokenId","abstract":"

    The value of the token. You can store this value on your server and use it to make charges and customers.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)livemode":{"name":"livemode","abstract":"

    Whether or not this token was created in livemode. Will be YES if you used your Live Publishable Key, and NO if you used your Test Publishable Key.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)card":{"name":"card","abstract":"

    The credit card details that were used to create the token. Will only be set if the token was created via a credit card or Apple Pay, otherwise it will be","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)bankAccount":{"name":"bankAccount","abstract":"

    The bank account details that were used to create the token. Will only be set if the token was created with a bank account, otherwise it will be nil.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)created":{"name":"created","abstract":"

    When the token was created.

    ","parent_name":"STPToken"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(cm)defaultTheme":{"name":"+defaultTheme","abstract":"

    The default theme used by all Stripe UI. All themable UI classes, such as STPAddCardViewController, have one initializer that takes a theme and one that does not. If you use the one that does not, the default theme will be used to customize that view controller’s appearance.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryBackgroundColor":{"name":"primaryBackgroundColor","abstract":"

    The primary background color of the theme. This will be used as the backgroundColor for any views with this theme.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryBackgroundColor":{"name":"secondaryBackgroundColor","abstract":"

    The secondary background color of this theme. This will be used as the backgroundColor for any supplemental views inside a view with this theme - for example, a UITableView will set it’s cells’ background color to this value.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryBackgroundColor":{"name":"tertiaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the alpha of the primaryBackgroundColor and is used as a section border color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)quaternaryBackgroundColor":{"name":"quaternaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the brightness of the primaryBackgroundColor and is used as a separator color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryForegroundColor":{"name":"primaryForegroundColor","abstract":"

    The primary foreground color of this theme. This will be used as the text color for any important labels in a view with this theme (such as the text color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryForegroundColor":{"name":"secondaryForegroundColor","abstract":"

    The secondary foreground color of this theme. This will be used as the text color for any supplementary labels in a view with this theme (such as the placeholder color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryForegroundColor":{"name":"tertiaryForegroundColor","abstract":"

    This color is automatically derived from the secondaryForegroundColor with a lower alpha component, used for disabled text.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)accentColor":{"name":"accentColor","abstract":"

    The accent color of this theme - it will be used for any buttons and other elements on a view that are important to highlight.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)errorColor":{"name":"errorColor","abstract":"

    The error color of this theme - it will be used for rendering any error messages or views.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)font":{"name":"font","abstract":"

    The font to be used for all views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)emphasisFont":{"name":"emphasisFont","abstract":"

    The medium-weight font to be used for all bold text in views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)barStyle":{"name":"barStyle","abstract":"

    The navigation bar style to use for any view controllers presented modally","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)translucentNavigationBar":{"name":"translucentNavigationBar","abstract":"

    A Boolean value indicating whether the navigation bar for any view controllers","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)smallFont":{"name":"smallFont","abstract":"

    This font is automatically derived from the font, with a slightly lower point size, and will be used for supplementary labels.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)largeFont":{"name":"largeFont","abstract":"

    This font is automatically derived from the font, with a larger point size, and will be used for large labels such as SMS code entry.

    ","parent_name":"STPTheme"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceVerification. You should only use","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)attemptsRemaining":{"name":"attemptsRemaining","abstract":"

    The number of attempts remaining to authenticate the source object with a","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)status":{"name":"status","abstract":"

    The status of the verification.

    ","parent_name":"STPSourceVerification"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceSEPADebitDetails.","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)bankCode":{"name":"bankCode","abstract":"

    The account’s bank code.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country of the bank account.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)fingerprint":{"name":"fingerprint","abstract":"

    The account’s fingerprint.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateReference":{"name":"mandateReference","abstract":"

    The reference of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateURL":{"name":"mandateURL","abstract":"

    The details of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceRedirect. You should only use","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)returnURL":{"name":"returnURL","abstract":"

    The URL you provide to redirect the customer to after they authenticated their payment.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)status":{"name":"status","abstract":"

    The status of the redirect.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)url":{"name":"url","abstract":"

    The URL provided to you to redirect a customer to as part of a redirect authentication flow.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceReceiver. You should only use one that is part of an existing STPSource object.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)address":{"name":"address","abstract":"

    The address of the receiver source. This is the value that should be communicated to the customer to send their funds to.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountCharged":{"name":"amountCharged","abstract":"

    The total amount charged by you.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReceived":{"name":"amountReceived","abstract":"

    The total amount received by the receiver source.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReturned":{"name":"amountReturned","abstract":"

    The total amount that was returned to the customer.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)type":{"name":"type","abstract":"

    The type of the source to create. Required.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)rawTypeString":{"name":"rawTypeString","abstract":"

    The raw underlying type string sent to the server.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)amount":{"name":"amount","abstract":"

    A positive integer in the smallest currency unit representing the","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)currency":{"name":"currency","abstract":"

    The currency associated with the source. This is the currency for which the source","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source to create. flow may be redirect,","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs that you can attach to a source object.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument. May be used or required","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)redirect":{"name":"redirect","abstract":"

    Parameters required for the redirect flow. Required if the source is","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)token":{"name":"token","abstract":"

    An optional token used to create the source. When passed, token properties will","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not. usage may be reusable or","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bancontactParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+bancontactParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Bancontact source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bitcoinParamsWithAmount:currency:email:":{"name":"+bitcoinParamsWithAmount:currency:email:","abstract":"

    Creates params for a Bitcoin source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)cardParamsWithCard:":{"name":"+cardParamsWithCard:","abstract":"

    Creates params for a Card source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)giropayParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+giropayParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Giropay source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)idealParamsWithAmount:name:returnURL:statementDescriptor:bank:":{"name":"+idealParamsWithAmount:name:returnURL:statementDescriptor:bank:","abstract":"

    Creates params for an iDEAL source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:":{"name":"+sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:","abstract":"

    Creates params for a SEPA Debit source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sofortParamsWithAmount:returnURL:country:statementDescriptor:":{"name":"+sofortParamsWithAmount:returnURL:country:statementDescriptor:","abstract":"

    Creates params for a Sofort source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)threeDSecureParamsWithAmount:currency:returnURL:card:":{"name":"+threeDSecureParamsWithAmount:currency:returnURL:card:","abstract":"

    Creates params for a 3DS source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)alipayParamsWithAmount:currency:returnURL:":{"name":"+alipayParamsWithAmount:currency:returnURL:","abstract":"

    Creates params for a single-use Alipay source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)p24ParamsWithAmount:currency:email:name:returnURL:":{"name":"+p24ParamsWithAmount:currency:email:name:returnURL:","abstract":"

    Creates params for a P24 source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceOwner. You should only use one","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)address":{"name":"address","abstract":"

    Owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)email":{"name":"email","abstract":"

    Owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)name":{"name":"name","abstract":"

    Owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)phone":{"name":"phone","abstract":"

    Owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedAddress":{"name":"verifiedAddress","abstract":"

    Verified owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedEmail":{"name":"verifiedEmail","abstract":"

    Verified owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedName":{"name":"verifiedName","abstract":"

    Verified owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedPhone":{"name":"verifiedPhone","abstract":"

    Verified owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceCardDetails. You should only","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)threeDSecure":{"name":"threeDSecure","abstract":"

    Whether 3D Secure is supported or required by the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    True if this card was created through Apple Pay, false otherwise.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSource.html#/c:objc(cs)STPSource(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSource. You should only use one that","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)amount":{"name":"amount","abstract":"

    The amount associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)clientSecret":{"name":"clientSecret","abstract":"

    The client secret of the source. Used for client-side fetching of a source","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)created":{"name":"created","abstract":"

    When the source was created.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)currency":{"name":"currency","abstract":"

    The currency associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)livemode":{"name":"livemode","abstract":"

    Whether or not this source was created in livemode.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the source object.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)receiver":{"name":"receiver","abstract":"

    Information related to the receiver flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)redirect":{"name":"redirect","abstract":"

    Information related to the redirect flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)status":{"name":"status","abstract":"

    The status of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)type":{"name":"type","abstract":"

    The type of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)verification":{"name":"verification","abstract":"

    Information related to the verification flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)details":{"name":"details","abstract":"

    Information about the source specific to its type

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)cardDetails":{"name":"cardDetails","abstract":"

    If this is a card source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)sepaDebitDetails":{"name":"sepaDebitDetails","abstract":"

    If this is a SEPA Debit source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme] currency:nil shippingAddress:nil selectedShippingMethod:nil prefilledInformation:nil.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Initializes a new STPShippingAddressViewController with the given payment context and sets the payment context as its delegate.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:":{"name":"-initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:","abstract":"

    Initializes a new STPShippingAddressCardViewController with the provided parameters.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPShippingAddressViewControllerDelegate

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPShippingAddressViewController onto an existing UINavigationController‘s stack, you should use this method to dismiss it, since it may have pushed an additional shipping method view controller onto the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(py)state":{"name":"state","abstract":"

    The current state of the context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)initWithSource:completion:":{"name":"-initWithSource:completion:","abstract":"

    Initializer for context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)init":{"name":"-init","abstract":"

    Use initWithSource:completion:

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startRedirectFlowFromViewController:":{"name":"-startRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariViewControllerRedirectFlowFromViewController:":{"name":"-startSafariViewControllerRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow by presenting an SFSafariViewController in your app","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariAppRedirectFlow":{"name":"-startSafariAppRedirectFlow","abstract":"

    Starts a redirect flow by calling openURL to bounce the user out to","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)cancel":{"name":"-cancel","abstract":"

    Dismisses any presented views and stops listening for any","parent_name":"STPRedirectContext"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(py)source":{"name":"source","abstract":"

    The returned source that the user has selected. This may come from a variety of different payment methods, such as an Apple Pay payment or a stored credit card. - see: STPSource.h

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(im)initWithSource:":{"name":"-initWithSource:","abstract":"

    Initializes the payment result with a given source. This is invoked by STPPaymentContext internally; you shouldn’t have to call it directly.

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)delegate":{"name":"delegate","abstract":"

    The delegate for the view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Creates a new payment methods view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:customerContext:delegate:":{"name":"-initWithConfiguration:theme:customerContext:delegate:","abstract":"

    Initializes a new payment methods view controller without using a","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:apiAdapter:delegate:":{"name":"-initWithConfiguration:theme:apiAdapter:delegate:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPPaymentMethodsViewController onto an existing","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:":{"name":"-initWithCustomerContext:","abstract":"

    This is a convenience initializer; it is equivalent to calling","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:configuration:theme:":{"name":"-initWithCustomerContext:configuration:theme:","abstract":"

    Initializes a new Payment Context with the provided customer context, configuration,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:":{"name":"-initWithAPIAdapter:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:configuration:theme:":{"name":"-initWithAPIAdapter:configuration:theme:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)apiAdapter":{"name":"apiAdapter","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)configuration":{"name":"configuration","abstract":"

    The configuration for the payment context to use internally. - see: STPPaymentConfiguration.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)theme":{"name":"theme","abstract":"

    The visual appearance that will be used by any views that the context generates. - see: STPTheme.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it here and it’ll be automatically filled out when possible/appropriate in any UI that the payment context creates.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)hostViewController":{"name":"hostViewController","abstract":"

    The view controller that any additional UI will be presented on. If you have a checkout view controller in your app, that should be used as the host view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)delegate":{"name":"delegate","abstract":"

    This delegate will be notified when the payment context’s contents change. - see: STPPaymentContextDelegate

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)loading":{"name":"loading","abstract":"

    Whether or not the payment context is currently loading information from the network.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedPaymentMethod":{"name":"selectedPaymentMethod","abstract":"

    The user’s currently selected payment method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethods":{"name":"paymentMethods","abstract":"

    The available payment methods the user can choose between. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedShippingMethod":{"name":"selectedShippingMethod","abstract":"

    The user’s currently selected shipping method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingMethods":{"name":"shippingMethods","abstract":"

    An array of STPShippingMethod objects that describe the supported shipping methods. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. May be nil.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentAmount":{"name":"paymentAmount","abstract":"

    The amount of money you’re requesting from the user, in the smallest currency","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCurrency":{"name":"paymentCurrency","abstract":"

    The three-letter currency code for the currency of the payment (i.e. USD, GBP,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCountry":{"name":"paymentCountry","abstract":"

    The two-letter country code for the country where the payment will be processed.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentSummaryItems":{"name":"paymentSummaryItems","abstract":"

    If you support Apple Pay, you can optionally set the PKPaymentSummaryItems","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)modalPresentationStyle":{"name":"modalPresentationStyle","abstract":"

    The presentation style used for all view controllers presented modally by the context.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the payment methods selection","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the add card view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)retryLoading":{"name":"-retryLoading","abstract":"

    If paymentContext:didFailToLoadWithError: is called on your delegate, you","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentPaymentMethodsViewController":{"name":"-presentPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately presents an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushPaymentMethodsViewController":{"name":"-pushPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately pushes an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentShippingViewController":{"name":"-presentShippingViewController","abstract":"

    This creates, configures, and appropriately presents a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushShippingViewController":{"name":"-pushShippingViewController","abstract":"

    This creates, configures, and appropriately pushes a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)requestPayment":{"name":"-requestPayment","abstract":"

    Requests payment from the user. This may need to present some supplemental UI","parent_name":"STPPaymentContext"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(cm)sharedConfiguration":{"name":"+sharedConfiguration","abstract":"

    This is a convenience singleton configuration that uses the default values for","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)publishableKey":{"name":"publishableKey","abstract":"

    Your Stripe publishable key

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)additionalPaymentMethods":{"name":"additionalPaymentMethods","abstract":"

    An enum value representing which payment methods you will accept from your user","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredBillingAddressFields":{"name":"requiredBillingAddressFields","abstract":"

    The billing address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredShippingAddressFields":{"name":"requiredShippingAddressFields","abstract":"

    The shipping address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)verifyPrefilledShippingAddress":{"name":"verifyPrefilledShippingAddress","abstract":"

    Whether the user should be prompted to verify prefilled shipping information.

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)shippingType":{"name":"shippingType","abstract":"

    The type of shipping for this purchase. This property sets the labels displayed","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)companyName":{"name":"companyName","abstract":"

    The name of your company, for displaying to the user during payment flows. For","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)appleMerchantIdentifier":{"name":"appleMerchantIdentifier","abstract":"

    The Apple Merchant Identifier to use during Apple Pay transactions. To create","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)canDeletePaymentMethods":{"name":"canDeletePaymentMethods","abstract":"

    Determines whether or not the user is able to delete payment methods

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)delegate":{"name":"delegate","abstract":"
    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)font":{"name":"font","abstract":"

    The font used in each child field. Default is [UIFont systemFontOfSize:18].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textColor":{"name":"textColor","abstract":"

    The text color to be used when entering valid text. Default is [UIColor blackColor].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textErrorColor":{"name":"textErrorColor","abstract":"

    The text color to be used when the user has entered invalid information,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)placeholderColor":{"name":"placeholderColor","abstract":"

    The text placeholder color used in each child field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)numberPlaceholder":{"name":"numberPlaceholder","abstract":"

    The placeholder for the card number field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationPlaceholder":{"name":"expirationPlaceholder","abstract":"

    The placeholder for the expiration field. Defaults to @MM/YY.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvcPlaceholder":{"name":"cvcPlaceholder","abstract":"

    The placeholder for the cvc field. Defaults to @CVC.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodePlaceholder":{"name":"postalCodePlaceholder","abstract":"

    The placeholder for the postal code field. Defaults to @ZIP for United States","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cursorColor":{"name":"cursorColor","abstract":"

    The cursor color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderColor":{"name":"borderColor","abstract":"

    The border color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderWidth":{"name":"borderWidth","abstract":"

    The width of the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cornerRadius":{"name":"cornerRadius","abstract":"

    The corner radius for the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)keyboardAppearance":{"name":"keyboardAppearance","abstract":"

    The keyboard appearance for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputView":{"name":"inputView","abstract":"

    This behaves identically to setting the inputView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputAccessoryView":{"name":"inputAccessoryView","abstract":"

    This behaves identically to setting the inputAccessoryView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)brandImage":{"name":"brandImage","abstract":"

    The curent brand image displayed in the receiver.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)isValid":{"name":"isValid","abstract":"

    Whether or not the form currently contains a valid card number,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)enabled":{"name":"enabled","abstract":"

    Enable/disable selecting or editing the field. Useful when submitting card details to Stripe.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardNumber":{"name":"cardNumber","abstract":"

    The current card number displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationMonth":{"name":"expirationMonth","abstract":"

    The current expiration month displayed by the field (1 = January, etc).

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationMonth":{"name":"formattedExpirationMonth","abstract":"

    The current expiration month displayed by the field, as a string. T

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationYear":{"name":"expirationYear","abstract":"

    The current expiration year displayed by the field, modulo 100","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationYear":{"name":"formattedExpirationYear","abstract":"

    The current expiration year displayed by the field, as a string.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvc":{"name":"cvc","abstract":"

    The current card CVC displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCode":{"name":"postalCode","abstract":"

    The current card ZIP or postal code displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodeEntryEnabled":{"name":"postalCodeEntryEnabled","abstract":"

    Controls if a postal code entry field can be displayed to the user.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)countryCode":{"name":"countryCode","abstract":"

    The two-letter ISO country code that corresponds to the user’s billing address.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardParams":{"name":"cardParams","abstract":"

    Convenience property for creating an STPCardParams from the currently entered information","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)becomeFirstResponder":{"name":"-becomeFirstResponder","abstract":"

    Causes the text field to begin editing. Presents the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)resignFirstResponder":{"name":"-resignFirstResponder","abstract":"

    Causes the text field to stop editing. Dismisses the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)clear":{"name":"-clear","abstract":"

    Resets all of the contents of all of the fields. If the field is currently being edited, the number field will become selected.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    Returns the cvc image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    Returns the brand image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    Returns the error image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)brandImageRectForBounds:":{"name":"-brandImageRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws its brand image.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)fieldsRectForBounds:":{"name":"-fieldsRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws the text fields.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(im)setAnimating:animated:":{"name":"-setAnimating:animated:","abstract":"

    Tell the view to start or stop spinning. If hidesWhenStopped is true, it will fade in/out if animated is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)animating":{"name":"animating","abstract":"

    Whether or not the view is animating.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)hidesWhenStopped":{"name":"hidesWhenStopped","abstract":"

    If true, the view will hide when it is not spinning. Default is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)applePayCardImage":{"name":"+applePayCardImage","abstract":"

    An icon representing Apple Pay.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)amexCardImage":{"name":"+amexCardImage","abstract":"

    An icon representing American Express.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)dinersClubCardImage":{"name":"+dinersClubCardImage","abstract":"

    An icon representing Diners Club.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)discoverCardImage":{"name":"+discoverCardImage","abstract":"

    An icon representing Discover.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)jcbCardImage":{"name":"+jcbCardImage","abstract":"

    An icon representing JCB.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)masterCardCardImage":{"name":"+masterCardCardImage","abstract":"

    An icon representing MasterCard.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)visaCardImage":{"name":"+visaCardImage","abstract":"

    An icon representing Visa.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)unknownCardCardImage":{"name":"+unknownCardCardImage","abstract":"

    An icon to use when the type of the card is unknown.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)templatedBrandImageForCardBrand:":{"name":"+templatedBrandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand as a","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    This returns a small icon indicating the CVC location for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    This returns a small icon indicating a card number error for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)fileId":{"name":"fileId","abstract":"

    The token for this file.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)created":{"name":"created","abstract":"

    The date this file was created.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)purpose":{"name":"purpose","abstract":"

    The purpose of this file. This can be either an identifing document or an evidence dispute.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)size":{"name":"size","abstract":"

    The file size in bytes.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)type":{"name":"type","abstract":"

    The file type. This can be jpg, png, or pdf.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(cm)stringFromPurpose:":{"name":"+stringFromPurpose:","abstract":"

    Returns the string value for a purpose.

    ","parent_name":"STPFile"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)initWithKeyProvider:":{"name":"-initWithKeyProvider:","abstract":"

    Initializes a new STPCustomerContext with the specified key provider.","parent_name":"STPCustomerContext"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)clearCachedCustomer":{"name":"-clearCachedCustomer","abstract":"

    STPCustomerContext will cache its customer object for up to 60 seconds.","parent_name":"STPCustomerContext"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithData:urlResponse:error:":{"name":"-initWithData:urlResponse:error:","abstract":"

    Initialize a customer deserializer. The data, urlResponse, and error","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithJSONResponse:":{"name":"-initWithJSONResponse:","abstract":"

    Initializes a customer deserializer with a JSON dictionary. This JSON should be","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)customer":{"name":"customer","abstract":"

    If a customer was successfully parsed from the response, it will be set here. Otherwise, this value wil be nil (and the error property will explain what went wrong).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)error":{"name":"error","abstract":"

    If the deserializer failed to parse a customer, this property will explain why (and the customer property will be nil).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(cm)customerWithStripeID:defaultSource:sources:":{"name":"+customerWithStripeID:defaultSource:sources:","abstract":"

    Initialize a customer object with the provided values.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the customer, e.g. cus_1234

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)defaultSource":{"name":"defaultSource","abstract":"

    The default source used to charge the customer.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)sources":{"name":"sources","abstract":"

    The available payment sources the customer has (this may be an empty array).

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The customer’s shipping address.

    ","parent_name":"STPCustomer"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithTheme:[STPTheme defaultTheme].

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithTheme:":{"name":"-initWithTheme:","abstract":"

    Initializes a new view controller with the specified theme

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithNibName:bundle:":{"name":"-initWithNibName:bundle:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithCoder:":{"name":"-initWithCoder:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)sanitizedNumericStringForString:":{"name":"+sanitizedNumericStringForString:","abstract":"

    Returns a copy of the passed string with all non-numeric characters removed.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)stringIsNumeric:":{"name":"+stringIsNumeric:","abstract":"

    Whether or not the target string contains only numeric characters.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForNumber:validatingCardBrand:":{"name":"+validationStateForNumber:validatingCardBrand:","abstract":"

    Validates a card number, passed as a string. This will return","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)brandForNumber:":{"name":"+brandForNumber:","abstract":"

    The card brand for a card number or substring thereof.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)lengthsForCardBrand:":{"name":"+lengthsForCardBrand:","abstract":"

    The possible number lengths for cards associated with a card brand. For","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxLengthForCardBrand:":{"name":"+maxLengthForCardBrand:","abstract":"

    The maximum possible length the number of a card associated with the specified","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)fragmentLengthForCardBrand:":{"name":"+fragmentLengthForCardBrand:","abstract":"

    The length of the final grouping of digits to use when formatting a card number","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationMonth:":{"name":"+validationStateForExpirationMonth:","abstract":"

    Validates an expiration month, passed as an (optionally 0-padded) string.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationYear:inMonth:":{"name":"+validationStateForExpirationYear:inMonth:","abstract":"

    Validates an expiration year, passed as a string representing the final","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxCVCLengthForCardBrand:":{"name":"+maxCVCLengthForCardBrand:","abstract":"

    The max CVC length for a card brand (for example, American Express CVCs are","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCVC:cardBrand:":{"name":"+validationStateForCVC:cardBrand:","abstract":"

    Validates a card’s CVC, passed as a numeric string, for the given card brand.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCard:":{"name":"+validationStateForCard:","abstract":"

    Validates the given card details.

    ","parent_name":"STPCardValidator"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)number":{"name":"number","abstract":"

    The card’s number.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(im)last4":{"name":"-last4","abstract":"

    The last 4 digits of the card’s number, if it’s been set, otherwise nil.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)cvc":{"name":"cvc","abstract":"

    The card’s security code, found on the back.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)currency":{"name":"currency","abstract":"

    Three-letter ISO currency code representing the currency paid out to the bank","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPCard. You should only use one that has","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)dynamicLast4":{"name":"dynamicLast4","abstract":"

    For cards made with Apple Pay, this refers to the last 4 digits of the","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    Whether or not the card originated from Apple Pay.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)currency":{"name":"currency","abstract":"

    This is only applicable when tokenizing debit cards to issue payouts to managed","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the card object.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)stringFromBrand:":{"name":"+stringFromBrand:","abstract":"

    Returns a string representation for the provided card brand;","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)brandFromString:":{"name":"+brandFromString:","abstract":"

    This parses a string representing a card’s brand into the appropriate","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)cardId":{"name":"cardId","abstract":"

    The Stripe ID for the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)initWithID:brand:last4:expMonth:expYear:funding:":{"name":"-initWithID:brand:last4:expMonth:expYear:funding:","abstract":"

    Create an STPCard from a Stripe API response.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)fundingFromString:":{"name":"+fundingFromString:","abstract":"

    This parses a string representing a card’s funding type into the appropriate","parent_name":"STPCard"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountNumber":{"name":"accountNumber","abstract":"

    The account number for the bank account. Currently must be a checking account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the bank account’s account number, if it’s been set,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPBankAccount. You should only use one","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankName":{"name":"bankName","abstract":"

    The name of the bank that owns the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)fingerprint":{"name":"fingerprint","abstract":"

    A proxy for the account number, this uniquely identifies the account and can be","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the bank account object.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)status":{"name":"status","abstract":"

    The validation status of the bank account. - see: STPBankAccountStatus

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankAccountId":{"name":"bankAccountId","abstract":"

    The Stripe ID for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)name":{"name":"name","abstract":"

    The user’s full name (e.g. Jane Doe)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line1":{"name":"line1","abstract":"

    The first line of the user’s street address (e.g. 123 Fake St)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line2":{"name":"line2","abstract":"

    The apartment, floor number, etc of the user’s street address (e.g. Apartment 1A)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)city":{"name":"city","abstract":"

    The city in which the user resides (e.g. San Francisco)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)state":{"name":"state","abstract":"

    The state in which the user resides (e.g. CA)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)postalCode":{"name":"postalCode","abstract":"

    The postal code in which the user resides (e.g. 90210)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)country":{"name":"country","abstract":"

    The ISO country code of the address (e.g. US)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)phone":{"name":"phone","abstract":"

    The phone number of the address (e.g. 8885551212)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)email":{"name":"email","abstract":"

    The email of the address (e.g. jane@doe.com)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)shippingInfoForChargeWithAddress:shippingMethod:":{"name":"+shippingInfoForChargeWithAddress:shippingMethod:","abstract":"

    When creating a charge on your backend, you can attach shipping information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithABRecord:":{"name":"-initWithABRecord:","abstract":"

    Initializes a new STPAddress with data from an Address Book record.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)ABRecordValue":{"name":"-ABRecordValue","abstract":"

    Generates an Address Book record representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithPKContact:":{"name":"-initWithPKContact:","abstract":"

    Initializes a new STPAddress with data from an PassKit contact.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)PKContactValue":{"name":"-PKContactValue","abstract":"

    Generates a PassKit contact representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithCNContact:":{"name":"-initWithCNContact:","abstract":"

    Initializes a new STPAddress with a contact from the Contacts framework.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredFields:":{"name":"-containsRequiredFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredShippingAddressFields:":{"name":"-containsRequiredShippingAddressFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)applePayAddressFieldsFromBillingAddressFields:":{"name":"+applePayAddressFieldsFromBillingAddressFields:","abstract":"

    Converts an STPBillingAddressFields enum value into the closest equivalent","parent_name":"STPAddress"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme].

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)initWithConfiguration:theme:":{"name":"-initWithConfiguration:theme:","abstract":"

    Initializes a new STPAddCardViewController with the provided configuration and theme. Don’t forget to set the delegate property after initialization.

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPAddCardViewControllerDelegate

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    You can set this property to pre-fill any information you’ve already collected from your user. - see: STPUserInformation.h

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)managedAccountCurrency":{"name":"managedAccountCurrency","abstract":"

    If you’re using the token generated from STPAddCardViewController to make a Managed Account, you should set this property to the currency that account will use. Otherwise, you should leave it empty. For more information, see https://stripe.com/docs/api#create_card_token-card-currency

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)customFooterView":{"name":"customFooterView","abstract":"

    Provide this view controller with a footer view.

    ","parent_name":"STPAddCardViewController"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)setDefaultPublishableKey:":{"name":"+setDefaultPublishableKey:","abstract":"

    Set your Stripe API key with this method. New instances of STPAPIClient will be initialized with this value. You should call this method as early as","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)defaultPublishableKey":{"name":"+defaultPublishableKey","abstract":"

    The current default publishable key.

    ","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)canSubmitPaymentRequest:":{"name":"+canSubmitPaymentRequest:","abstract":"

    Whether or not this device is capable of using Apple Pay. This checks both","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)deviceSupportsApplePay":{"name":"+deviceSupportsApplePay","abstract":"

    Whether or not this can make Apple Pay payments via a card network supported","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:":{"name":"+paymentRequestWithMerchantIdentifier:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:country:currency:":{"name":"+paymentRequestWithMerchantIdentifier:country:currency:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)handleStripeURLCallbackWithURL:":{"name":"+handleStripeURLCallbackWithURL:","abstract":"

    Call this method in your app delegate whenever you receive an URL in your","parent_name":"Stripe"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(cm)sharedClient":{"name":"+sharedClient","abstract":"

    A shared singleton API client. Its API key will be initially equal to [Stripe defaultPublishableKey].

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithConfiguration:":{"name":"-initWithConfiguration:","abstract":"

    Initializes an API client with the given configuration. Its API key will be","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithPublishableKey:":{"name":"-initWithPublishableKey:","abstract":"

    Initializes an API client with the given publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)publishableKey":{"name":"publishableKey","abstract":"

    The client’s publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)configuration":{"name":"configuration","abstract":"

    The client’s configuration.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)stripeAccount":{"name":"stripeAccount","abstract":"

    In order to perform API requests on behalf of a connected account, e.g. to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPayment:completion:":{"name":"-createTokenWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithPayment:completion:":{"name":"-createSourceWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe source using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithBankAccount:completion:":{"name":"-createTokenWithBankAccount:completion:","abstract":"

    Converts an STPBankAccount object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPersonalIDNumber:completion:":{"name":"-createTokenWithPersonalIDNumber:completion:","abstract":"

    Converts a personal identification number into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)uploadImage:purpose:completion:":{"name":"-uploadImage:purpose:completion:","abstract":"

    Uses the Stripe file upload API to upload an image. This can be used for","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithCard:completion:":{"name":"-createTokenWithCard:completion:","abstract":"

    Converts an STPCardParams object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithParams:completion:":{"name":"-createSourceWithParams:completion:","abstract":"

    Creates a Source object using the provided details.","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)retrieveSourceWithId:clientSecret:completion:":{"name":"-retrieveSourceWithId:clientSecret:completion:","abstract":"

    Retrieves the Source object with the given ID. - see: https://stripe.com/docs/api#retrieve_source

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)startPollingSourceWithId:clientSecret:timeout:completion:":{"name":"-startPollingSourceWithId:clientSecret:timeout:completion:","abstract":"

    Starts polling the Source object with the given ID. For payment methods that require","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)stopPollingSourceWithId:":{"name":"-stopPollingSourceWithId:","abstract":"

    Stops polling the Source object with the given ID. Note that the completion block passed to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html":{"name":"STPAPIClient","abstract":"

    A client for making connections to the Stripe API.

    "},"Classes/Stripe.html":{"name":"Stripe","abstract":"

    A top-level class that imports the rest of the Stripe SDK.

    "},"Classes/STPAddCardViewController.html":{"name":"STPAddCardViewController","abstract":"

    This view controller contains a credit card entry form that the user can fill out. On submission, it will use the Stripe API to convert the user’s card details to a Stripe token. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController.

    "},"Classes/STPAddress.html":{"name":"STPAddress","abstract":"

    STPAddress Contains an address as represented by the Stripe API.

    "},"Classes.html#/c:objc(cs)STPApplePayPaymentMethod":{"name":"STPApplePayPaymentMethod","abstract":"

    An empty class representing that the user wishes to pay via Apple Pay. This can"},"Classes/STPBankAccount.html":{"name":"STPBankAccount","abstract":"

    Representation of a user’s bank account details that have been tokenized with"},"Classes/STPBankAccountParams.html":{"name":"STPBankAccountParams","abstract":"

    Representation of a user’s bank account details. You can assemble these with"},"Classes/STPCard.html":{"name":"STPCard","abstract":"

    Representation of a user’s credit card details that have been tokenized with"},"Classes/STPCardParams.html":{"name":"STPCardParams","abstract":"

    Representation of a user’s credit card details. You can assemble these with"},"Classes/STPCardValidator.html":{"name":"STPCardValidator","abstract":"

    This class contains static methods to validate card numbers, expiration dates,"},"Classes.html#/c:objc(cs)STPCoreScrollViewController":{"name":"STPCoreScrollViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes.html#/c:objc(cs)STPCoreTableViewController":{"name":"STPCoreTableViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes/STPCoreViewController.html":{"name":"STPCoreViewController","abstract":"

    This is the base class for all Stripe view controllers. It is intended for use"},"Classes/STPCustomer.html":{"name":"STPCustomer","abstract":"

    An STPCustomer represents a deserialized Customer object from the Stripe API."},"Classes/STPCustomerDeserializer.html":{"name":"STPCustomerDeserializer","abstract":"

    Use STPCustomerDeserializer to convert a response from the Stripe API into an STPCustomer object. STPCustomerDeserializer expects the JSON response to be in the exact same format as the Stripe API.

    "},"Classes/STPCustomerContext.html":{"name":"STPCustomerContext","abstract":"

    An STPCustomerContext retrieves and updates a Stripe customer using"},"Classes/STPFile.html":{"name":"STPFile","abstract":"

    Representation of a file upload object in the Stripe API.

    "},"Classes/STPImageLibrary.html":{"name":"STPImageLibrary","abstract":"

    This class lets you access card icons used by the Stripe SDK. All icons are 32 x 20 points.

    "},"Classes/STPPaymentActivityIndicatorView.html":{"name":"STPPaymentActivityIndicatorView","abstract":"

    This class can be used wherever you’d use a UIActivityIndicatorView and is intended to have a similar API. It renders as a spinning circle with a gap in it, similar to what you see in the App Store app or in the Apple Pay dialog when making a purchase. To change its color, set the tintColor property.

    "},"Classes/STPPaymentCardTextField.html":{"name":"STPPaymentCardTextField","abstract":"

    STPPaymentCardTextField is a text field with similar properties to UITextField,"},"Classes/STPPaymentConfiguration.html":{"name":"STPPaymentConfiguration","abstract":"

    An STPPaymentConfiguration represents all the options you can set or change"},"Classes/STPPaymentContext.html":{"name":"STPPaymentContext","abstract":"

    An STPPaymentContext keeps track of all of the state around a payment. It will manage fetching a user’s saved payment methods, tracking any information they select, and prompting them for required additional information before completing their purchase. It can be used to power your application’s payment confirmation page with just a few lines of code.

    "},"Classes/STPPaymentMethodsViewController.html":{"name":"STPPaymentMethodsViewController","abstract":"

    This view controller presents a list of payment method options to the user,"},"Classes/STPPaymentResult.html":{"name":"STPPaymentResult","abstract":"

    When you’re using STPPaymentContext to request your user’s payment details, this is the object that will be returned to your application when they’ve successfully made a payment. It currently just contains a source, but in the future will include any relevant metadata as well. You should pass source.stripeID to your server, and call the charge creation endpoint. This assumes you are charging a Customer, so you should specify the customer parameter to be that customer’s ID and the source parameter to the value returned here. For more information, see https://stripe.com/docs/api#create_charge

    "},"Classes/STPRedirectContext.html":{"name":"STPRedirectContext","abstract":"

    This is a helper class for handling redirect sources.

    "},"Classes/STPShippingAddressViewController.html":{"name":"STPShippingAddressViewController","abstract":"

    This view controller contains a shipping address collection form. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController. Depending on your configuration’s shippingType, the view controller may present a shipping method selection form after the user enters an address.

    "},"Classes/STPSource.html":{"name":"STPSource","abstract":"

    Representation of a customer’s payment instrument created with the Stripe API. - see: https://stripe.com/docs/api#sources

    "},"Classes/STPSourceCardDetails.html":{"name":"STPSourceCardDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceOwner.html":{"name":"STPSourceOwner","abstract":"

    Information about a source’s owner.

    "},"Classes/STPSourceParams.html":{"name":"STPSourceParams","abstract":"

    An object representing parameters used to create a Source object.

    "},"Classes/STPSourceReceiver.html":{"name":"STPSourceReceiver","abstract":"

    Information related to a source’s receiver flow.

    "},"Classes/STPSourceRedirect.html":{"name":"STPSourceRedirect","abstract":"

    Information related to a source’s redirect flow.

    "},"Classes/STPSourceSEPADebitDetails.html":{"name":"STPSourceSEPADebitDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceVerification.html":{"name":"STPSourceVerification","abstract":"

    Information related to a source’s verification flow.

    "},"Classes/STPTheme.html":{"name":"STPTheme","abstract":"

    STPTheme objects can be used to visually style Stripe-provided UI. See https://stripe.com/docs/mobile/ios/standard#theming for more information.

    "},"Classes/STPToken.html":{"name":"STPToken","abstract":"

    A token returned from submitting payment details to the Stripe API. You should not have to instantiate one of these directly.

    "},"Classes/STPUserInformation.html":{"name":"STPUserInformation","abstract":"

    You can use this class to specify information that you’ve already collected"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(im)stp_setTheme:":{"name":"-stp_setTheme:","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(py)stp_theme":{"name":"stp_theme","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the bar’s tintColor and barTintColor properties, as well as the color of the single-pixel line at the bottom of the navbar.","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/NSError(Stripe).html#/c:objc(cs)NSError(cm)stp_errorFromStripeResponse:":{"name":"+stp_errorFromStripeResponse:","abstract":"

    Creates an NSError object from a given Stripe API json response.

    ","parent_name":"NSError(Stripe)"},"Categories/NSError(Stripe).html":{"name":"NSError(Stripe)","abstract":"

    NSError extensions for creating error objects from Stripe API responses.

    "},"Categories/UINavigationBar(Stripe_Theme).html":{"name":"UINavigationBar(Stripe_Theme)","abstract":"

    This allows quickly setting the appearance of a UINavigationBar to match your"},"Categories.html":{"name":"Categories","abstract":"

    The following categories are available globally.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "}} \ No newline at end of file +{"Functions.html#/c:@F@linkSTPAPIClientApplePayCategory":{"name":"linkSTPAPIClientApplePayCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkNSErrorCategory":{"name":"linkNSErrorCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkUINavigationBarThemeCategory":{"name":"linkUINavigationBarThemeCategory","abstract":"

    This function should not be called directly.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPVoidBlock":{"name":"STPVoidBlock","abstract":"

    An empty block, called with no arguments, returning nothing.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPErrorBlock":{"name":"STPErrorBlock","abstract":"

    A block that may optionally be called with an error.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPJSONResponseCompletionBlock":{"name":"STPJSONResponseCompletionBlock","abstract":"

    A callback to be run with a JSON response.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPTokenCompletionBlock":{"name":"STPTokenCompletionBlock","abstract":"

    A callback to be run with a token response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceCompletionBlock":{"name":"STPSourceCompletionBlock","abstract":"

    A callback to be run with a source response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceProtocolCompletionBlock":{"name":"STPSourceProtocolCompletionBlock","abstract":"

    A callback to be run with a source or card response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPShippingMethodsCompletionBlock":{"name":"STPShippingMethodsCompletionBlock","abstract":"

    A callback to be run with a validation result and shipping methods for a"},"Type Definitions.html#/c:STPBlocks.h@T@STPFileCompletionBlock":{"name":"STPFileCompletionBlock","abstract":"

    A callback to be run with a file response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPCustomerCompletionBlock":{"name":"STPCustomerCompletionBlock","abstract":"

    A callback to be run with a customer response from the Stripe API.

    "},"Type Definitions.html#/c:STPRedirectContext.h@T@STPRedirectContextCompletionBlock":{"name":"STPRedirectContextCompletionBlock","abstract":"

    A callback run when the context believes the redirect action has been completed.

    "},"Type Definitions.html#/c:StripeError.h@T@STPCardErrorCode":{"name":"STPCardErrorCode","abstract":"

    Possible string values you may receive when there was an error tokenizing"},"Protocols/STPSourceProtocol.html#/c:objc(pl)STPSourceProtocol(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the source.

    ","parent_name":"STPSourceProtocol"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewControllerDidCancel:":{"name":"-shippingAddressViewControllerDidCancel:","abstract":"

    Called when the user cancels entering a shipping address. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didEnterAddress:completion:":{"name":"-shippingAddressViewController:didEnterAddress:completion:","abstract":"

    This is called when the user enters a shipping address and taps next. You should validate the address and determine what shipping methods are available, and call the completion block when finished. If an error occurrs, call the completion block with the error. Otherwise, call the completion block with a nil error and an array of available shipping methods. If you don’t need to collect a shipping method, you may pass an empty array.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didFinishWithAddress:shippingMethod:":{"name":"-shippingAddressViewController:didFinishWithAddress:shippingMethod:","abstract":"

    This is called when the user selects a shipping method. If no shipping methods are given, or if the shipping type doesn’t require a shipping method, this will be called after the user has a shipping address and your validation has succeeded. After updating your app with the user’s shipping info, you should dismiss (or pop) the view controller. Note that if shippingMethod is non-nil, there will be an additional shipping methods view controller on the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didFailToLoadWithError:":{"name":"-paymentMethodsViewController:didFailToLoadWithError:","abstract":"

    This is called when the view controller encounters an error fetching the user’s","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidFinish:":{"name":"-paymentMethodsViewControllerDidFinish:","abstract":"

    This is called when the user selects or adds a payment method, so it will often","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidCancel:":{"name":"-paymentMethodsViewControllerDidCancel:","abstract":"

    This is called when the user taps cancel.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didSelectPaymentMethod:":{"name":"-paymentMethodsViewController:didSelectPaymentMethod:","abstract":"

    This is called when the user either makes a selection, or adds a new card.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)image":{"name":"image","abstract":"

    A small (32 x 20 points) logo image representing the payment method. For","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)templateImage":{"name":"templateImage","abstract":"

    A small (32 x 20 points) logo image representing the payment method that can be","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)label":{"name":"label","abstract":"

    A string describing the payment method, such as Apple Pay or Visa 4242.

    ","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFailToLoadWithError:":{"name":"-paymentContext:didFailToLoadWithError:","abstract":"

    Called when the payment context encounters an error when fetching its initial set of data. A few ways to handle this are:

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContextDidChange:":{"name":"-paymentContextDidChange:","abstract":"

    This is called every time the contents of the payment context change. When this is called, you should update your app’s UI to reflect the current state of the payment context. For example, if you have a checkout page with a selected payment method row, you should update its payment method with paymentContext.selectedPaymentMethod.label. If that checkout page has a buy button, you should enable/disable it depending on the result of [paymentContext isReadyForPayment].

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didCreatePaymentResult:completion:":{"name":"-paymentContext:didCreatePaymentResult:completion:","abstract":"

    Inside this method, you should make a call to your backend API to make a charge with that Customer + source, and invoke the completion block when that is done.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFinishWithStatus:error:":{"name":"-paymentContext:didFinishWithStatus:error:","abstract":"

    This is invoked by an STPPaymentContext when it is finished. This will be called after the payment is done and all necessary UI has been dismissed. You should inspect the returned status and behave appropriately. For example: if it’s STPPaymentStatusSuccess, show the user a receipt. If it’s STPPaymentStatusError, inform the user of the error. If it’s STPPaymentStatusUserCanceled, do nothing.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didUpdateShippingAddress:completion:":{"name":"-paymentContext:didUpdateShippingAddress:completion:","abstract":"

    Inside this method, you should verify that you can ship to the given address.","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidChange:":{"name":"-paymentCardTextFieldDidChange:","abstract":"

    Called when either the card number, expiration, or CVC changes. At this point,","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditing:":{"name":"-paymentCardTextFieldDidBeginEditing:","abstract":"

    Called when editing begins in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditing:":{"name":"-paymentCardTextFieldDidEndEditing:","abstract":"

    Called when editing ends in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingNumber:":{"name":"-paymentCardTextFieldDidBeginEditingNumber:","abstract":"

    Called when editing begins in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingNumber:":{"name":"-paymentCardTextFieldDidEndEditingNumber:","abstract":"

    Called when editing ends in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingCVC:":{"name":"-paymentCardTextFieldDidBeginEditingCVC:","abstract":"

    Called when editing begins in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingCVC:":{"name":"-paymentCardTextFieldDidEndEditingCVC:","abstract":"

    Called when editing ends in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingExpiration:":{"name":"-paymentCardTextFieldDidBeginEditingExpiration:","abstract":"

    Called when editing begins in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingExpiration:":{"name":"-paymentCardTextFieldDidEndEditingExpiration:","abstract":"

    Called when editing ends in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingPostalCode:":{"name":"-paymentCardTextFieldDidBeginEditingPostalCode:","abstract":"

    Called when editing begins in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingPostalCode:":{"name":"-paymentCardTextFieldDidEndEditingPostalCode:","abstract":"

    Called when editing ends in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)rootObjectName":{"name":"+rootObjectName","abstract":"

    The root object name to be used when converting this object to a form-encoded string. For example, if this returns @card, then the form-encoded output will resemble @card[foo]=bar (where ‘foo’ and ‘bar’ are specified by propertyNamesToFormFieldNamesMapping below.

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)propertyNamesToFormFieldNamesMapping":{"name":"+propertyNamesToFormFieldNamesMapping","abstract":"

    This maps properties on an object that is being form-encoded into parameter names in the Stripe API. For example, STPCardParams has a field called expMonth, but the Stripe API expects a field called exp_month. This dictionary represents a mapping from the former to the latter (in other words, [STPCardParams propertyNamesToFormFieldNamesMapping][@expMonth] == @exp_month.)

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(py)additionalAPIParameters":{"name":"additionalAPIParameters","abstract":"

    You can use this property to add additional fields to an API request that are not explicitly defined by the object’s interface. This can be useful when using beta features that haven’t been added to the Stripe SDK yet. For example, if the /v1/tokens API began to accept a beta field called test_field, you might do the following:","parent_name":"STPFormEncodable"},"Protocols/STPEphemeralKeyProvider.html#/c:objc(pl)STPEphemeralKeyProvider(im)createCustomerKeyWithAPIVersion:completion:":{"name":"-createCustomerKeyWithAPIVersion:completion:","abstract":"

    Creates a new ephemeral key for retrieving and updating a Stripe customer.","parent_name":"STPEphemeralKeyProvider"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)retrieveCustomer:":{"name":"-retrieveCustomer:","abstract":"

    Retrieve the cards to be displayed inside a payment context.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)attachSourceToCustomer:completion:":{"name":"-attachSourceToCustomer:completion:","abstract":"

    Adds a payment source to a customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)selectDefaultCustomerSource:completion:":{"name":"-selectDefaultCustomerSource:completion:","abstract":"

    Change a customer’s default_source to be the provided card.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)detachSourceFromCustomer:completion:":{"name":"-detachSourceFromCustomer:completion:","abstract":"

    Deletes the given source from the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)updateCustomerWithShippingAddress:completion:":{"name":"-updateCustomerWithShippingAddress:completion:","abstract":"

    Sets the given shipping address on the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewControllerDidCancel:":{"name":"-addCardViewControllerDidCancel:","abstract":"

    Called when the user cancels adding a card. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewController:didCreateToken:completion:":{"name":"-addCardViewController:didCreateToken:completion:","abstract":"

    This is called when the user successfully adds a card and tokenizes it with Stripe. You should send the token to your backend to store it on a customer, and then call the provided completion block when that call is finished. If an error occurred while talking to your backend, call completion(error), otherwise, dismiss (or pop) the view controller.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)requiredFields":{"name":"+requiredFields","abstract":"

    These fields are required to be present in the API response. If any of them are","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)decodedObjectFromAPIResponse:":{"name":"+decodedObjectFromAPIResponse:","abstract":"

    Parses an response from the Stripe API (in JSON format; represented as","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(py)allResponseFields":{"name":"allResponseFields","abstract":"

    The raw JSON response used to create the object. This can be useful for accessing","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html":{"name":"STPAPIResponseDecodable","abstract":"

    Objects conforming to STPAPIResponseDecodable can be automatically converted"},"Protocols/STPAddCardViewControllerDelegate.html":{"name":"STPAddCardViewControllerDelegate","abstract":"

    An STPAddCardViewControllerDelegate is notified when an STPAddCardViewController successfully creates a card token or is cancelled. It has internal error-handling logic, so there’s no error case to deal with.

    "},"Protocols/STPBackendAPIAdapter.html":{"name":"STPBackendAPIAdapter","abstract":"

    Typically, you will not need to implement this protocol yourself. You"},"Protocols/STPEphemeralKeyProvider.html":{"name":"STPEphemeralKeyProvider","abstract":"

    You should make your application’s API client conform to this interface."},"Protocols/STPFormEncodable.html":{"name":"STPFormEncodable","abstract":"

    Objects conforming to STPFormEncodable can be automatically converted to a form-encoded string, which can then be used when making requests to the Stripe API.

    "},"Protocols/STPPaymentCardTextFieldDelegate.html":{"name":"STPPaymentCardTextFieldDelegate","abstract":"

    This protocol allows a delegate to be notified when a payment text field’s"},"Protocols/STPPaymentContextDelegate.html":{"name":"STPPaymentContextDelegate","abstract":"

    Implement STPPaymentContextDelegate to get notified when a payment context changes, finishes, encounters errors, etc. In practice, if your app has a checkout screen view controller, that is a good candidate to implement this protocol.

    "},"Protocols/STPPaymentMethod.html":{"name":"STPPaymentMethod","abstract":"

    This protocol represents a payment method that a user can select and use to"},"Protocols/STPPaymentMethodsViewControllerDelegate.html":{"name":"STPPaymentMethodsViewControllerDelegate","abstract":"

    An STPPaymentMethodsViewControllerDelegate responds when a user selects a"},"Protocols/STPShippingAddressViewControllerDelegate.html":{"name":"STPShippingAddressViewControllerDelegate","abstract":"

    An STPShippingAddressViewControllerDelegate is notified when an STPShippingAddressViewController receives an address, completes with an address, or is cancelled.

    "},"Protocols/STPSourceProtocol.html":{"name":"STPSourceProtocol","abstract":"

    Objects conforming to this protocol can be attached to a Stripe Customer object"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPConnectionError":{"name":"STPConnectionError","abstract":"

    Trouble connecting to Stripe.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPInvalidRequestError":{"name":"STPInvalidRequestError","abstract":"

    Your request had invalid parameters.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPAPIError":{"name":"STPAPIError","abstract":"

    General-purpose API error.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCardError":{"name":"STPCardError","abstract":"

    Something was wrong with the given card details.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCancellationError":{"name":"STPCancellationError","abstract":"

    The operation was cancelled.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPEphemeralKeyDecodingError":{"name":"STPEphemeralKeyDecodingError","abstract":"

    The ephemeral key could not be decoded. Make sure your backend is sending","parent_name":"STPErrorCode"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusPending":{"name":"STPSourceVerificationStatusPending","abstract":"

    The verification is pending.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusSucceeded":{"name":"STPSourceVerificationStatusSucceeded","abstract":"

    The verification has succeeeded.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusFailed":{"name":"STPSourceVerificationStatusFailed","abstract":"

    The verification has failed.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusUnknown":{"name":"STPSourceVerificationStatusUnknown","abstract":"

    The state of the verification is unknown.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusPending":{"name":"STPSourceRedirectStatusPending","abstract":"

    The redirect is pending.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusSucceeded":{"name":"STPSourceRedirectStatusSucceeded","abstract":"

    The redirect has succeeded.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusFailed":{"name":"STPSourceRedirectStatusFailed","abstract":"

    The redirect has failed.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusUnknown":{"name":"STPSourceRedirectStatusUnknown","abstract":"

    The state of the redirect is unknown.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBancontact":{"name":"STPSourceTypeBancontact","abstract":"

    A Bancontact source. - see: https://stripe.com/docs/sources/bancontact

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBitcoin":{"name":"STPSourceTypeBitcoin","abstract":"

    A Bitcoin source. - see: https://stripe.com/docs/sources/bitcoin

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeCard":{"name":"STPSourceTypeCard","abstract":"

    A card source. - see: https://stripe.com/docs/sources/cards

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeGiropay":{"name":"STPSourceTypeGiropay","abstract":"

    A Giropay source. - see: https://stripe.com/docs/sources/giropay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeIDEAL":{"name":"STPSourceTypeIDEAL","abstract":"

    An iDEAL source. - see: https://stripe.com/docs/sources/ideal

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSEPADebit":{"name":"STPSourceTypeSEPADebit","abstract":"

    A SEPA Direct Debit source. - see: https://stripe.com/docs/sources/sepa-debit

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSofort":{"name":"STPSourceTypeSofort","abstract":"

    A SOFORT source. - see: https://stripe.com/docs/sources/sofort

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeThreeDSecure":{"name":"STPSourceTypeThreeDSecure","abstract":"

    A 3DS card source. - see: https://stripe.com/docs/sources/three-d-secure

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeAlipay":{"name":"STPSourceTypeAlipay","abstract":"

    An Alipay source. - see: https://stripe.com/docs/sources/alipay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeP24":{"name":"STPSourceTypeP24","abstract":"

    A P24 source. - see: https://stripe.com/docs/sources/p24

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeUnknown":{"name":"STPSourceTypeUnknown","abstract":"

    An unknown type of source.

    ","parent_name":"STPSourceType"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusPending":{"name":"STPSourceStatusPending","abstract":"

    The source has been created and is awaiting customer action.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusChargeable":{"name":"STPSourceStatusChargeable","abstract":"

    The source is ready to use. The customer action has been completed or the","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusConsumed":{"name":"STPSourceStatusConsumed","abstract":"

    The source has been used. This status only applies to single-use sources.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusCanceled":{"name":"STPSourceStatusCanceled","abstract":"

    The source, which was chargeable, has expired because it was not used to","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusFailed":{"name":"STPSourceStatusFailed","abstract":"

    Your customer has not taken the required action or revoked your access","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusUnknown":{"name":"STPSourceStatusUnknown","abstract":"

    The source status is unknown.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageReusable":{"name":"STPSourceUsageReusable","abstract":"

    The source can be reused.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageSingleUse":{"name":"STPSourceUsageSingleUse","abstract":"

    The source can only be used once.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageUnknown":{"name":"STPSourceUsageUnknown","abstract":"

    The source’s usage is unknown.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowNone":{"name":"STPSourceFlowNone","abstract":"

    No action is required from your customer.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowRedirect":{"name":"STPSourceFlowRedirect","abstract":"

    Your customer must be redirected to their online banking service (either a website or mobile banking app) to approve the payment.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowCodeVerification":{"name":"STPSourceFlowCodeVerification","abstract":"

    Your customer must verify ownership of their account by providing a code that you post to the Stripe API for authentication.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowReceiver":{"name":"STPSourceFlowReceiver","abstract":"

    Your customer must push funds to the account information provided.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowUnknown":{"name":"STPSourceFlowUnknown","abstract":"

    The source’s flow is unknown.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusRequired":{"name":"STPSourceCard3DSecureStatusRequired","abstract":"

    3D Secure is required. This card must be converted into a 3D Secure","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusOptional":{"name":"STPSourceCard3DSecureStatusOptional","abstract":"

    3D Secure is optional. It is not required for successful charging,","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusNotSupported":{"name":"STPSourceCard3DSecureStatusNotSupported","abstract":"

    3D Secure is not supported on this card.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusUnknown":{"name":"STPSourceCard3DSecureStatusUnknown","abstract":"

    The status of 3D Secure support on this card is unknown.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateNotStarted":{"name":"STPRedirectContextStateNotStarted","abstract":"

    Initialized, but redirect not started.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateInProgress":{"name":"STPRedirectContextStateInProgress","abstract":"

    Redirect is in progress.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCancelled":{"name":"STPRedirectContextStateCancelled","abstract":"

    Redirect has been cancelled programmatically before completing.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCompleted":{"name":"STPRedirectContextStateCompleted","abstract":"

    Redirect has completed.

    ","parent_name":"STPRedirectContextState"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeNone":{"name":"STPPaymentMethodTypeNone","abstract":"

    Don’t allow any payment methods except for cards.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeApplePay":{"name":"STPPaymentMethodTypeApplePay","abstract":"

    The user is allowed to pay with Apple Pay if it’s configured and available","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeAll":{"name":"STPPaymentMethodTypeAll","abstract":"

    The user is allowed to use any available payment method to pay.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeIdentityDocument":{"name":"STPFilePurposeIdentityDocument","abstract":"

    Identity document file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeDisputeEvidence":{"name":"STPFilePurposeDisputeEvidence","abstract":"

    Dispute evidence file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeUnknown":{"name":"STPFilePurposeUnknown","abstract":"

    A file of unknown purpose type

    ","parent_name":"STPFilePurpose"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateValid":{"name":"STPCardValidationStateValid","abstract":"

    The field’s contents are valid. For example, a valid, 16-digit card number.","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateInvalid":{"name":"STPCardValidationStateInvalid","abstract":"

    The field’s contents are invalid. For example, an expiration date","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateIncomplete":{"name":"STPCardValidationStateIncomplete","abstract":"

    The field’s contents are not currently valid, but could be by typing","parent_name":"STPCardValidationState"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandVisa":{"name":"STPCardBrandVisa","abstract":"

    Visa card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandAmex":{"name":"STPCardBrandAmex","abstract":"

    American Express card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandMasterCard":{"name":"STPCardBrandMasterCard","abstract":"

    MasterCard card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDiscover":{"name":"STPCardBrandDiscover","abstract":"

    Discover card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandJCB":{"name":"STPCardBrandJCB","abstract":"

    JCB card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDinersClub":{"name":"STPCardBrandDinersClub","abstract":"

    Diners Club card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandUnknown":{"name":"STPCardBrandUnknown","abstract":"

    An unknown card brand type

    ","parent_name":"STPCardBrand"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeDebit":{"name":"STPCardFundingTypeDebit","abstract":"

    Debit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeCredit":{"name":"STPCardFundingTypeCredit","abstract":"

    Credit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypePrepaid":{"name":"STPCardFundingTypePrepaid","abstract":"

    Prepaid card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeOther":{"name":"STPCardFundingTypeOther","abstract":"

    An other or unknown type of funding source.

    ","parent_name":"STPCardFundingType"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusSuccess":{"name":"STPPaymentStatusSuccess","abstract":"

    The payment succeeded.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusError":{"name":"STPPaymentStatusError","abstract":"

    The payment failed due to an unforeseen error, such as the user’s Internet connection being offline.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusUserCancellation":{"name":"STPPaymentStatusUserCancellation","abstract":"

    The user cancelled the payment (for example, by hitting cancel in the Apple Pay dialog).

    ","parent_name":"STPPaymentStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusValid":{"name":"STPShippingStatusValid","abstract":"

    The shipping address is valid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusInvalid":{"name":"STPShippingStatusInvalid","abstract":"

    The shipping address is invalid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeShipping":{"name":"STPShippingTypeShipping","abstract":"

    Shipping the purchase to the provided address using a third-party","parent_name":"STPShippingType"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeDelivery":{"name":"STPShippingTypeDelivery","abstract":"

    Delivering the purchase by the seller.

    ","parent_name":"STPShippingType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeIndividual":{"name":"STPBankAccountHolderTypeIndividual","abstract":"

    An individual holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeCompany":{"name":"STPBankAccountHolderTypeCompany","abstract":"

    A company holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusNew":{"name":"STPBankAccountStatusNew","abstract":"

    The account has had no activity or validation performed

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusValidated":{"name":"STPBankAccountStatusValidated","abstract":"

    Stripe has determined this bank account exists.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerified":{"name":"STPBankAccountStatusVerified","abstract":"

    Bank account verification has succeeded.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerificationFailed":{"name":"STPBankAccountStatusVerificationFailed","abstract":"

    Verification for this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusErrored":{"name":"STPBankAccountStatusErrored","abstract":"

    A transfer sent to this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsNone":{"name":"STPBillingAddressFieldsNone","abstract":"

    No billing address information

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsZip":{"name":"STPBillingAddressFieldsZip","abstract":"

    Just request the user’s billing ZIP code

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsFull":{"name":"STPBillingAddressFieldsFull","abstract":"

    Request the user’s full billing address

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html":{"name":"STPBillingAddressFields","abstract":"

    What set of billing address information you need to collect from your user.

    "},"Enums/STPBankAccountStatus.html":{"name":"STPBankAccountStatus","abstract":"

    Possible validation states for a bank account.

    "},"Enums/STPBankAccountHolderType.html":{"name":"STPBankAccountHolderType","abstract":"

    The type of entity that holds a bank account.

    "},"Enums/STPShippingType.html":{"name":"STPShippingType","abstract":"

    These values control the labels used in the shipping info collection form.

    "},"Enums/STPShippingStatus.html":{"name":"STPShippingStatus","abstract":"

    An enum representing the status of a shipping address validation.

    "},"Enums/STPPaymentStatus.html":{"name":"STPPaymentStatus","abstract":"

    An enum representing the status of a payment requested from the user.

    "},"Enums/STPCardFundingType.html":{"name":"STPCardFundingType","abstract":"

    The various funding sources for a payment card.

    "},"Enums/STPCardBrand.html":{"name":"STPCardBrand","abstract":"

    The various card brands to which a payment card can belong.

    "},"Enums/STPCardValidationState.html":{"name":"STPCardValidationState","abstract":"

    These fields indicate whether a card field represents a valid value, invalid"},"Enums/STPFilePurpose.html":{"name":"STPFilePurpose","abstract":"

    The purpose of the uploaded file.

    "},"Enums/STPPaymentMethodType.html":{"name":"STPPaymentMethodType","abstract":"

    This represents all of the payment methods available to your user when"},"Enums/STPRedirectContextState.html":{"name":"STPRedirectContextState","abstract":"

    Possible states for the redirect context to be in

    "},"Enums/STPSourceCard3DSecureStatus.html":{"name":"STPSourceCard3DSecureStatus","abstract":"

    The status of this card’s 3D Secure support.

    "},"Enums/STPSourceFlow.html":{"name":"STPSourceFlow","abstract":"

    Authentication flows for a Source

    "},"Enums/STPSourceUsage.html":{"name":"STPSourceUsage","abstract":"

    Usage types for a Source

    "},"Enums/STPSourceStatus.html":{"name":"STPSourceStatus","abstract":"

    Status types for a Source

    "},"Enums/STPSourceType.html":{"name":"STPSourceType","abstract":"

    Types for a Source

    "},"Enums/STPSourceRedirectStatus.html":{"name":"STPSourceRedirectStatus","abstract":"

    Redirect status types for a Source.

    "},"Enums/STPSourceVerificationStatus.html":{"name":"STPSourceVerificationStatus","abstract":"

    Verification status types for a Source.

    "},"Enums/STPErrorCode.html":{"name":"STPErrorCode","abstract":"

    Possible error code values for NSError’s with the StripeDomain domain

    "},"Constants.html#/c:STPAPIClient.h@STPSDKVersion":{"name":"STPSDKVersion","abstract":"

    The current version of this library.

    "},"Constants.html#/c:@StripeDomain":{"name":"StripeDomain","abstract":"

    All Stripe iOS errors will be under this domain.

    "},"Constants.html#/c:@STPErrorMessageKey":{"name":"STPErrorMessageKey","abstract":"

    A developer-friendly error message that explains what went wrong. You probably"},"Constants.html#/c:@STPCardErrorCodeKey":{"name":"STPCardErrorCodeKey","abstract":"

    What went wrong with your STPCard (e.g., STPInvalidCVC. See below for full list).

    "},"Constants.html#/c:@STPErrorParameterKey":{"name":"STPErrorParameterKey","abstract":"

    Which parameter on the STPCard had an error (e.g., cvc). Useful for marking up the"},"Constants.html#/c:@STPStripeErrorCodeKey":{"name":"STPStripeErrorCodeKey","abstract":"

    The error code returned by the Stripe API.

    "},"Constants.html#/c:@STPStripeErrorTypeKey":{"name":"STPStripeErrorTypeKey","abstract":"

    The error type returned by the Stripe API.

    "},"Constants.html#/c:@STPInvalidNumber":{"name":"STPInvalidNumber","abstract":"

    The card number is not a valid credit card number.

    "},"Constants.html#/c:@STPInvalidExpMonth":{"name":"STPInvalidExpMonth","abstract":"

    The card has an invalid expiration month.

    "},"Constants.html#/c:@STPInvalidExpYear":{"name":"STPInvalidExpYear","abstract":"

    The card has an invalid expiration year.

    "},"Constants.html#/c:@STPInvalidCVC":{"name":"STPInvalidCVC","abstract":"

    The card has an invalid CVC.

    "},"Constants.html#/c:@STPIncorrectNumber":{"name":"STPIncorrectNumber","abstract":"

    The card number is incorrect.

    "},"Constants.html#/c:@STPExpiredCard":{"name":"STPExpiredCard","abstract":"

    The card is expired.

    "},"Constants.html#/c:@STPCardDeclined":{"name":"STPCardDeclined","abstract":"

    The card was declined.

    "},"Constants.html#/c:@STPIncorrectCVC":{"name":"STPIncorrectCVC","abstract":"

    The card has an incorrect CVC.

    "},"Constants.html#/c:@STPProcessingError":{"name":"STPProcessingError","abstract":"

    An error occured while processing this card.

    "},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)billingAddress":{"name":"billingAddress","abstract":"

    The user’s billing address. When set, the add card form will be filled with","parent_name":"STPUserInformation"},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. When set, the shipping address form will be filled","parent_name":"STPUserInformation"},"Classes/STPToken.html#/c:objc(cs)STPToken(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPToken. You should only use one that has been returned from an STPAPIClient callback.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)tokenId":{"name":"tokenId","abstract":"

    The value of the token. You can store this value on your server and use it to make charges and customers.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)livemode":{"name":"livemode","abstract":"

    Whether or not this token was created in livemode. Will be YES if you used your Live Publishable Key, and NO if you used your Test Publishable Key.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)card":{"name":"card","abstract":"

    The credit card details that were used to create the token. Will only be set if the token was created via a credit card or Apple Pay, otherwise it will be","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)bankAccount":{"name":"bankAccount","abstract":"

    The bank account details that were used to create the token. Will only be set if the token was created with a bank account, otherwise it will be nil.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)created":{"name":"created","abstract":"

    When the token was created.

    ","parent_name":"STPToken"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(cm)defaultTheme":{"name":"+defaultTheme","abstract":"

    The default theme used by all Stripe UI. All themable UI classes, such as STPAddCardViewController, have one initializer that takes a theme and one that does not. If you use the one that does not, the default theme will be used to customize that view controller’s appearance.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryBackgroundColor":{"name":"primaryBackgroundColor","abstract":"

    The primary background color of the theme. This will be used as the backgroundColor for any views with this theme.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryBackgroundColor":{"name":"secondaryBackgroundColor","abstract":"

    The secondary background color of this theme. This will be used as the backgroundColor for any supplemental views inside a view with this theme - for example, a UITableView will set it’s cells’ background color to this value.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryBackgroundColor":{"name":"tertiaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the alpha of the primaryBackgroundColor and is used as a section border color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)quaternaryBackgroundColor":{"name":"quaternaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the brightness of the primaryBackgroundColor and is used as a separator color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryForegroundColor":{"name":"primaryForegroundColor","abstract":"

    The primary foreground color of this theme. This will be used as the text color for any important labels in a view with this theme (such as the text color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryForegroundColor":{"name":"secondaryForegroundColor","abstract":"

    The secondary foreground color of this theme. This will be used as the text color for any supplementary labels in a view with this theme (such as the placeholder color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryForegroundColor":{"name":"tertiaryForegroundColor","abstract":"

    This color is automatically derived from the secondaryForegroundColor with a lower alpha component, used for disabled text.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)accentColor":{"name":"accentColor","abstract":"

    The accent color of this theme - it will be used for any buttons and other elements on a view that are important to highlight.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)errorColor":{"name":"errorColor","abstract":"

    The error color of this theme - it will be used for rendering any error messages or views.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)font":{"name":"font","abstract":"

    The font to be used for all views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)emphasisFont":{"name":"emphasisFont","abstract":"

    The medium-weight font to be used for all bold text in views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)barStyle":{"name":"barStyle","abstract":"

    The navigation bar style to use for any view controllers presented modally","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)translucentNavigationBar":{"name":"translucentNavigationBar","abstract":"

    A Boolean value indicating whether the navigation bar for any view controllers","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)smallFont":{"name":"smallFont","abstract":"

    This font is automatically derived from the font, with a slightly lower point size, and will be used for supplementary labels.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)largeFont":{"name":"largeFont","abstract":"

    This font is automatically derived from the font, with a larger point size, and will be used for large labels such as SMS code entry.

    ","parent_name":"STPTheme"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceVerification. You should only use","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)attemptsRemaining":{"name":"attemptsRemaining","abstract":"

    The number of attempts remaining to authenticate the source object with a","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)status":{"name":"status","abstract":"

    The status of the verification.

    ","parent_name":"STPSourceVerification"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceSEPADebitDetails.","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)bankCode":{"name":"bankCode","abstract":"

    The account’s bank code.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country of the bank account.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)fingerprint":{"name":"fingerprint","abstract":"

    The account’s fingerprint.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateReference":{"name":"mandateReference","abstract":"

    The reference of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateURL":{"name":"mandateURL","abstract":"

    The details of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceRedirect. You should only use","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)returnURL":{"name":"returnURL","abstract":"

    The URL you provide to redirect the customer to after they authenticated their payment.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)status":{"name":"status","abstract":"

    The status of the redirect.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)url":{"name":"url","abstract":"

    The URL provided to you to redirect a customer to as part of a redirect authentication flow.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceReceiver. You should only use one that is part of an existing STPSource object.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)address":{"name":"address","abstract":"

    The address of the receiver source. This is the value that should be communicated to the customer to send their funds to.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountCharged":{"name":"amountCharged","abstract":"

    The total amount charged by you.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReceived":{"name":"amountReceived","abstract":"

    The total amount received by the receiver source.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReturned":{"name":"amountReturned","abstract":"

    The total amount that was returned to the customer.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)type":{"name":"type","abstract":"

    The type of the source to create. Required.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)rawTypeString":{"name":"rawTypeString","abstract":"

    The raw underlying type string sent to the server.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)amount":{"name":"amount","abstract":"

    A positive integer in the smallest currency unit representing the","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)currency":{"name":"currency","abstract":"

    The currency associated with the source. This is the currency for which the source","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source to create. flow may be redirect,","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs that you can attach to a source object.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument. May be used or required","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)redirect":{"name":"redirect","abstract":"

    Parameters required for the redirect flow. Required if the source is","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)token":{"name":"token","abstract":"

    An optional token used to create the source. When passed, token properties will","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not. usage may be reusable or","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bancontactParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+bancontactParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Bancontact source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bitcoinParamsWithAmount:currency:email:":{"name":"+bitcoinParamsWithAmount:currency:email:","abstract":"

    Creates params for a Bitcoin source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)cardParamsWithCard:":{"name":"+cardParamsWithCard:","abstract":"

    Creates params for a Card source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)giropayParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+giropayParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Giropay source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)idealParamsWithAmount:name:returnURL:statementDescriptor:bank:":{"name":"+idealParamsWithAmount:name:returnURL:statementDescriptor:bank:","abstract":"

    Creates params for an iDEAL source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:":{"name":"+sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:","abstract":"

    Creates params for a SEPA Debit source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sofortParamsWithAmount:returnURL:country:statementDescriptor:":{"name":"+sofortParamsWithAmount:returnURL:country:statementDescriptor:","abstract":"

    Creates params for a Sofort source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)threeDSecureParamsWithAmount:currency:returnURL:card:":{"name":"+threeDSecureParamsWithAmount:currency:returnURL:card:","abstract":"

    Creates params for a 3DS source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)alipayParamsWithAmount:currency:returnURL:":{"name":"+alipayParamsWithAmount:currency:returnURL:","abstract":"

    Creates params for a single-use Alipay source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)alipayReusableParamsWithCurrency:returnURL:":{"name":"+alipayReusableParamsWithCurrency:returnURL:","abstract":"

    Creates params for a reusable Alipay source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)p24ParamsWithAmount:currency:email:name:returnURL:":{"name":"+p24ParamsWithAmount:currency:email:name:returnURL:","abstract":"

    Creates params for a P24 source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceOwner. You should only use one","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)address":{"name":"address","abstract":"

    Owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)email":{"name":"email","abstract":"

    Owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)name":{"name":"name","abstract":"

    Owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)phone":{"name":"phone","abstract":"

    Owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedAddress":{"name":"verifiedAddress","abstract":"

    Verified owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedEmail":{"name":"verifiedEmail","abstract":"

    Verified owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedName":{"name":"verifiedName","abstract":"

    Verified owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedPhone":{"name":"verifiedPhone","abstract":"

    Verified owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceCardDetails. You should only","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)threeDSecure":{"name":"threeDSecure","abstract":"

    Whether 3D Secure is supported or required by the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    True if this card was created through Apple Pay, false otherwise.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSource.html#/c:objc(cs)STPSource(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSource. You should only use one that","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)amount":{"name":"amount","abstract":"

    The amount associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)clientSecret":{"name":"clientSecret","abstract":"

    The client secret of the source. Used for client-side fetching of a source","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)created":{"name":"created","abstract":"

    When the source was created.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)currency":{"name":"currency","abstract":"

    The currency associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)livemode":{"name":"livemode","abstract":"

    Whether or not this source was created in livemode.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the source object.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)receiver":{"name":"receiver","abstract":"

    Information related to the receiver flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)redirect":{"name":"redirect","abstract":"

    Information related to the redirect flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)status":{"name":"status","abstract":"

    The status of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)type":{"name":"type","abstract":"

    The type of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)verification":{"name":"verification","abstract":"

    Information related to the verification flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)details":{"name":"details","abstract":"

    Information about the source specific to its type

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)cardDetails":{"name":"cardDetails","abstract":"

    If this is a card source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)sepaDebitDetails":{"name":"sepaDebitDetails","abstract":"

    If this is a SEPA Debit source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme] currency:nil shippingAddress:nil selectedShippingMethod:nil prefilledInformation:nil.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Initializes a new STPShippingAddressViewController with the given payment context and sets the payment context as its delegate.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:":{"name":"-initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:","abstract":"

    Initializes a new STPShippingAddressCardViewController with the provided parameters.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPShippingAddressViewControllerDelegate

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPShippingAddressViewController onto an existing UINavigationController‘s stack, you should use this method to dismiss it, since it may have pushed an additional shipping method view controller onto the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(py)state":{"name":"state","abstract":"

    The current state of the context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)initWithSource:completion:":{"name":"-initWithSource:completion:","abstract":"

    Initializer for context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)init":{"name":"-init","abstract":"

    Use initWithSource:completion:

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startRedirectFlowFromViewController:":{"name":"-startRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariViewControllerRedirectFlowFromViewController:":{"name":"-startSafariViewControllerRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow by presenting an SFSafariViewController in your app","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariAppRedirectFlow":{"name":"-startSafariAppRedirectFlow","abstract":"

    Starts a redirect flow by calling openURL to bounce the user out to","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)cancel":{"name":"-cancel","abstract":"

    Dismisses any presented views and stops listening for any","parent_name":"STPRedirectContext"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(py)source":{"name":"source","abstract":"

    The returned source that the user has selected. This may come from a variety of different payment methods, such as an Apple Pay payment or a stored credit card. - see: STPSource.h

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(im)initWithSource:":{"name":"-initWithSource:","abstract":"

    Initializes the payment result with a given source. This is invoked by STPPaymentContext internally; you shouldn’t have to call it directly.

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)delegate":{"name":"delegate","abstract":"

    The delegate for the view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Creates a new payment methods view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:customerContext:delegate:":{"name":"-initWithConfiguration:theme:customerContext:delegate:","abstract":"

    Initializes a new payment methods view controller without using a","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:apiAdapter:delegate:":{"name":"-initWithConfiguration:theme:apiAdapter:delegate:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPPaymentMethodsViewController onto an existing","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:":{"name":"-initWithCustomerContext:","abstract":"

    This is a convenience initializer; it is equivalent to calling","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:configuration:theme:":{"name":"-initWithCustomerContext:configuration:theme:","abstract":"

    Initializes a new Payment Context with the provided customer context, configuration,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:":{"name":"-initWithAPIAdapter:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:configuration:theme:":{"name":"-initWithAPIAdapter:configuration:theme:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)apiAdapter":{"name":"apiAdapter","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)configuration":{"name":"configuration","abstract":"

    The configuration for the payment context to use internally. - see: STPPaymentConfiguration.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)theme":{"name":"theme","abstract":"

    The visual appearance that will be used by any views that the context generates. - see: STPTheme.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it here and it’ll be automatically filled out when possible/appropriate in any UI that the payment context creates.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)hostViewController":{"name":"hostViewController","abstract":"

    The view controller that any additional UI will be presented on. If you have a checkout view controller in your app, that should be used as the host view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)delegate":{"name":"delegate","abstract":"

    This delegate will be notified when the payment context’s contents change. - see: STPPaymentContextDelegate

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)loading":{"name":"loading","abstract":"

    Whether or not the payment context is currently loading information from the network.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedPaymentMethod":{"name":"selectedPaymentMethod","abstract":"

    The user’s currently selected payment method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethods":{"name":"paymentMethods","abstract":"

    The available payment methods the user can choose between. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedShippingMethod":{"name":"selectedShippingMethod","abstract":"

    The user’s currently selected shipping method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingMethods":{"name":"shippingMethods","abstract":"

    An array of STPShippingMethod objects that describe the supported shipping methods. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. May be nil.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentAmount":{"name":"paymentAmount","abstract":"

    The amount of money you’re requesting from the user, in the smallest currency","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCurrency":{"name":"paymentCurrency","abstract":"

    The three-letter currency code for the currency of the payment (i.e. USD, GBP,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCountry":{"name":"paymentCountry","abstract":"

    The two-letter country code for the country where the payment will be processed.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentSummaryItems":{"name":"paymentSummaryItems","abstract":"

    If you support Apple Pay, you can optionally set the PKPaymentSummaryItems","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)modalPresentationStyle":{"name":"modalPresentationStyle","abstract":"

    The presentation style used for all view controllers presented modally by the context.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the payment methods selection","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the add card view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)retryLoading":{"name":"-retryLoading","abstract":"

    If paymentContext:didFailToLoadWithError: is called on your delegate, you","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentPaymentMethodsViewController":{"name":"-presentPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately presents an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushPaymentMethodsViewController":{"name":"-pushPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately pushes an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentShippingViewController":{"name":"-presentShippingViewController","abstract":"

    This creates, configures, and appropriately presents a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushShippingViewController":{"name":"-pushShippingViewController","abstract":"

    This creates, configures, and appropriately pushes a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)requestPayment":{"name":"-requestPayment","abstract":"

    Requests payment from the user. This may need to present some supplemental UI","parent_name":"STPPaymentContext"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(cm)sharedConfiguration":{"name":"+sharedConfiguration","abstract":"

    This is a convenience singleton configuration that uses the default values for","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)publishableKey":{"name":"publishableKey","abstract":"

    Your Stripe publishable key

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)additionalPaymentMethods":{"name":"additionalPaymentMethods","abstract":"

    An enum value representing which payment methods you will accept from your user","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredBillingAddressFields":{"name":"requiredBillingAddressFields","abstract":"

    The billing address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredShippingAddressFields":{"name":"requiredShippingAddressFields","abstract":"

    The shipping address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)verifyPrefilledShippingAddress":{"name":"verifyPrefilledShippingAddress","abstract":"

    Whether the user should be prompted to verify prefilled shipping information.

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)shippingType":{"name":"shippingType","abstract":"

    The type of shipping for this purchase. This property sets the labels displayed","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)companyName":{"name":"companyName","abstract":"

    The name of your company, for displaying to the user during payment flows. For","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)appleMerchantIdentifier":{"name":"appleMerchantIdentifier","abstract":"

    The Apple Merchant Identifier to use during Apple Pay transactions. To create","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)canDeletePaymentMethods":{"name":"canDeletePaymentMethods","abstract":"

    Determines whether or not the user is able to delete payment methods

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)delegate":{"name":"delegate","abstract":"
    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)font":{"name":"font","abstract":"

    The font used in each child field. Default is [UIFont systemFontOfSize:18].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textColor":{"name":"textColor","abstract":"

    The text color to be used when entering valid text. Default is [UIColor blackColor].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textErrorColor":{"name":"textErrorColor","abstract":"

    The text color to be used when the user has entered invalid information,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)placeholderColor":{"name":"placeholderColor","abstract":"

    The text placeholder color used in each child field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)numberPlaceholder":{"name":"numberPlaceholder","abstract":"

    The placeholder for the card number field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationPlaceholder":{"name":"expirationPlaceholder","abstract":"

    The placeholder for the expiration field. Defaults to @MM/YY.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvcPlaceholder":{"name":"cvcPlaceholder","abstract":"

    The placeholder for the cvc field. Defaults to @CVC.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodePlaceholder":{"name":"postalCodePlaceholder","abstract":"

    The placeholder for the postal code field. Defaults to @ZIP for United States","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cursorColor":{"name":"cursorColor","abstract":"

    The cursor color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderColor":{"name":"borderColor","abstract":"

    The border color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderWidth":{"name":"borderWidth","abstract":"

    The width of the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cornerRadius":{"name":"cornerRadius","abstract":"

    The corner radius for the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)keyboardAppearance":{"name":"keyboardAppearance","abstract":"

    The keyboard appearance for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputView":{"name":"inputView","abstract":"

    This behaves identically to setting the inputView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputAccessoryView":{"name":"inputAccessoryView","abstract":"

    This behaves identically to setting the inputAccessoryView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)brandImage":{"name":"brandImage","abstract":"

    The curent brand image displayed in the receiver.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)isValid":{"name":"isValid","abstract":"

    Whether or not the form currently contains a valid card number,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)enabled":{"name":"enabled","abstract":"

    Enable/disable selecting or editing the field. Useful when submitting card details to Stripe.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardNumber":{"name":"cardNumber","abstract":"

    The current card number displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationMonth":{"name":"expirationMonth","abstract":"

    The current expiration month displayed by the field (1 = January, etc).

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationMonth":{"name":"formattedExpirationMonth","abstract":"

    The current expiration month displayed by the field, as a string. T

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationYear":{"name":"expirationYear","abstract":"

    The current expiration year displayed by the field, modulo 100","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationYear":{"name":"formattedExpirationYear","abstract":"

    The current expiration year displayed by the field, as a string.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvc":{"name":"cvc","abstract":"

    The current card CVC displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCode":{"name":"postalCode","abstract":"

    The current card ZIP or postal code displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodeEntryEnabled":{"name":"postalCodeEntryEnabled","abstract":"

    Controls if a postal code entry field can be displayed to the user.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)countryCode":{"name":"countryCode","abstract":"

    The two-letter ISO country code that corresponds to the user’s billing address.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardParams":{"name":"cardParams","abstract":"

    Convenience property for creating an STPCardParams from the currently entered information","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)becomeFirstResponder":{"name":"-becomeFirstResponder","abstract":"

    Causes the text field to begin editing. Presents the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)resignFirstResponder":{"name":"-resignFirstResponder","abstract":"

    Causes the text field to stop editing. Dismisses the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)clear":{"name":"-clear","abstract":"

    Resets all of the contents of all of the fields. If the field is currently being edited, the number field will become selected.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    Returns the cvc image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    Returns the brand image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    Returns the error image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)brandImageRectForBounds:":{"name":"-brandImageRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws its brand image.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)fieldsRectForBounds:":{"name":"-fieldsRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws the text fields.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(im)setAnimating:animated:":{"name":"-setAnimating:animated:","abstract":"

    Tell the view to start or stop spinning. If hidesWhenStopped is true, it will fade in/out if animated is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)animating":{"name":"animating","abstract":"

    Whether or not the view is animating.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)hidesWhenStopped":{"name":"hidesWhenStopped","abstract":"

    If true, the view will hide when it is not spinning. Default is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)applePayCardImage":{"name":"+applePayCardImage","abstract":"

    An icon representing Apple Pay.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)amexCardImage":{"name":"+amexCardImage","abstract":"

    An icon representing American Express.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)dinersClubCardImage":{"name":"+dinersClubCardImage","abstract":"

    An icon representing Diners Club.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)discoverCardImage":{"name":"+discoverCardImage","abstract":"

    An icon representing Discover.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)jcbCardImage":{"name":"+jcbCardImage","abstract":"

    An icon representing JCB.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)masterCardCardImage":{"name":"+masterCardCardImage","abstract":"

    An icon representing MasterCard.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)visaCardImage":{"name":"+visaCardImage","abstract":"

    An icon representing Visa.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)unknownCardCardImage":{"name":"+unknownCardCardImage","abstract":"

    An icon to use when the type of the card is unknown.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)templatedBrandImageForCardBrand:":{"name":"+templatedBrandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand as a","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    This returns a small icon indicating the CVC location for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    This returns a small icon indicating a card number error for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)fileId":{"name":"fileId","abstract":"

    The token for this file.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)created":{"name":"created","abstract":"

    The date this file was created.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)purpose":{"name":"purpose","abstract":"

    The purpose of this file. This can be either an identifing document or an evidence dispute.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)size":{"name":"size","abstract":"

    The file size in bytes.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)type":{"name":"type","abstract":"

    The file type. This can be jpg, png, or pdf.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(cm)stringFromPurpose:":{"name":"+stringFromPurpose:","abstract":"

    Returns the string value for a purpose.

    ","parent_name":"STPFile"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)initWithKeyProvider:":{"name":"-initWithKeyProvider:","abstract":"

    Initializes a new STPCustomerContext with the specified key provider.","parent_name":"STPCustomerContext"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)clearCachedCustomer":{"name":"-clearCachedCustomer","abstract":"

    STPCustomerContext will cache its customer object for up to 60 seconds.","parent_name":"STPCustomerContext"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithData:urlResponse:error:":{"name":"-initWithData:urlResponse:error:","abstract":"

    Initialize a customer deserializer. The data, urlResponse, and error","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithJSONResponse:":{"name":"-initWithJSONResponse:","abstract":"

    Initializes a customer deserializer with a JSON dictionary. This JSON should be","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)customer":{"name":"customer","abstract":"

    If a customer was successfully parsed from the response, it will be set here. Otherwise, this value wil be nil (and the error property will explain what went wrong).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)error":{"name":"error","abstract":"

    If the deserializer failed to parse a customer, this property will explain why (and the customer property will be nil).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(cm)customerWithStripeID:defaultSource:sources:":{"name":"+customerWithStripeID:defaultSource:sources:","abstract":"

    Initialize a customer object with the provided values.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the customer, e.g. cus_1234

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)defaultSource":{"name":"defaultSource","abstract":"

    The default source used to charge the customer.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)sources":{"name":"sources","abstract":"

    The available payment sources the customer has (this may be an empty array).

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The customer’s shipping address.

    ","parent_name":"STPCustomer"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithTheme:[STPTheme defaultTheme].

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithTheme:":{"name":"-initWithTheme:","abstract":"

    Initializes a new view controller with the specified theme

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithNibName:bundle:":{"name":"-initWithNibName:bundle:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithCoder:":{"name":"-initWithCoder:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)sanitizedNumericStringForString:":{"name":"+sanitizedNumericStringForString:","abstract":"

    Returns a copy of the passed string with all non-numeric characters removed.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)stringIsNumeric:":{"name":"+stringIsNumeric:","abstract":"

    Whether or not the target string contains only numeric characters.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForNumber:validatingCardBrand:":{"name":"+validationStateForNumber:validatingCardBrand:","abstract":"

    Validates a card number, passed as a string. This will return","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)brandForNumber:":{"name":"+brandForNumber:","abstract":"

    The card brand for a card number or substring thereof.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)lengthsForCardBrand:":{"name":"+lengthsForCardBrand:","abstract":"

    The possible number lengths for cards associated with a card brand. For","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxLengthForCardBrand:":{"name":"+maxLengthForCardBrand:","abstract":"

    The maximum possible length the number of a card associated with the specified","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)fragmentLengthForCardBrand:":{"name":"+fragmentLengthForCardBrand:","abstract":"

    The length of the final grouping of digits to use when formatting a card number","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationMonth:":{"name":"+validationStateForExpirationMonth:","abstract":"

    Validates an expiration month, passed as an (optionally 0-padded) string.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationYear:inMonth:":{"name":"+validationStateForExpirationYear:inMonth:","abstract":"

    Validates an expiration year, passed as a string representing the final","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxCVCLengthForCardBrand:":{"name":"+maxCVCLengthForCardBrand:","abstract":"

    The max CVC length for a card brand (for example, American Express CVCs are","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCVC:cardBrand:":{"name":"+validationStateForCVC:cardBrand:","abstract":"

    Validates a card’s CVC, passed as a numeric string, for the given card brand.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCard:":{"name":"+validationStateForCard:","abstract":"

    Validates the given card details.

    ","parent_name":"STPCardValidator"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)number":{"name":"number","abstract":"

    The card’s number.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(im)last4":{"name":"-last4","abstract":"

    The last 4 digits of the card’s number, if it’s been set, otherwise nil.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)cvc":{"name":"cvc","abstract":"

    The card’s security code, found on the back.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)currency":{"name":"currency","abstract":"

    Three-letter ISO currency code representing the currency paid out to the bank","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPCard. You should only use one that has","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)dynamicLast4":{"name":"dynamicLast4","abstract":"

    For cards made with Apple Pay, this refers to the last 4 digits of the","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    Whether or not the card originated from Apple Pay.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)currency":{"name":"currency","abstract":"

    This is only applicable when tokenizing debit cards to issue payouts to managed","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the card object.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)stringFromBrand:":{"name":"+stringFromBrand:","abstract":"

    Returns a string representation for the provided card brand;","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)brandFromString:":{"name":"+brandFromString:","abstract":"

    This parses a string representing a card’s brand into the appropriate","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)cardId":{"name":"cardId","abstract":"

    The Stripe ID for the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)initWithID:brand:last4:expMonth:expYear:funding:":{"name":"-initWithID:brand:last4:expMonth:expYear:funding:","abstract":"

    Create an STPCard from a Stripe API response.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)fundingFromString:":{"name":"+fundingFromString:","abstract":"

    This parses a string representing a card’s funding type into the appropriate","parent_name":"STPCard"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountNumber":{"name":"accountNumber","abstract":"

    The account number for the bank account. Currently must be a checking account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the bank account’s account number, if it’s been set,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPBankAccount. You should only use one","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankName":{"name":"bankName","abstract":"

    The name of the bank that owns the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)fingerprint":{"name":"fingerprint","abstract":"

    A proxy for the account number, this uniquely identifies the account and can be","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the bank account object.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)status":{"name":"status","abstract":"

    The validation status of the bank account. - see: STPBankAccountStatus

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankAccountId":{"name":"bankAccountId","abstract":"

    The Stripe ID for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)name":{"name":"name","abstract":"

    The user’s full name (e.g. Jane Doe)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line1":{"name":"line1","abstract":"

    The first line of the user’s street address (e.g. 123 Fake St)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line2":{"name":"line2","abstract":"

    The apartment, floor number, etc of the user’s street address (e.g. Apartment 1A)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)city":{"name":"city","abstract":"

    The city in which the user resides (e.g. San Francisco)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)state":{"name":"state","abstract":"

    The state in which the user resides (e.g. CA)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)postalCode":{"name":"postalCode","abstract":"

    The postal code in which the user resides (e.g. 90210)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)country":{"name":"country","abstract":"

    The ISO country code of the address (e.g. US)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)phone":{"name":"phone","abstract":"

    The phone number of the address (e.g. 8885551212)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)email":{"name":"email","abstract":"

    The email of the address (e.g. jane@doe.com)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)shippingInfoForChargeWithAddress:shippingMethod:":{"name":"+shippingInfoForChargeWithAddress:shippingMethod:","abstract":"

    When creating a charge on your backend, you can attach shipping information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithABRecord:":{"name":"-initWithABRecord:","abstract":"

    Initializes a new STPAddress with data from an Address Book record.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)ABRecordValue":{"name":"-ABRecordValue","abstract":"

    Generates an Address Book record representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithPKContact:":{"name":"-initWithPKContact:","abstract":"

    Initializes a new STPAddress with data from an PassKit contact.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)PKContactValue":{"name":"-PKContactValue","abstract":"

    Generates a PassKit contact representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithCNContact:":{"name":"-initWithCNContact:","abstract":"

    Initializes a new STPAddress with a contact from the Contacts framework.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredFields:":{"name":"-containsRequiredFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsContentForBillingAddressFields:":{"name":"-containsContentForBillingAddressFields:","abstract":"

    Checks if this STPAddress has any content (possibly invalid) in any of the","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredShippingAddressFields:":{"name":"-containsRequiredShippingAddressFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsContentForShippingAddressFields:":{"name":"-containsContentForShippingAddressFields:","abstract":"

    Checks if this STPAddress has any content (possibly invalid) in any of the","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)applePayAddressFieldsFromBillingAddressFields:":{"name":"+applePayAddressFieldsFromBillingAddressFields:","abstract":"

    Converts an STPBillingAddressFields enum value into the closest equivalent","parent_name":"STPAddress"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme].

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)initWithConfiguration:theme:":{"name":"-initWithConfiguration:theme:","abstract":"

    Initializes a new STPAddCardViewController with the provided configuration and theme. Don’t forget to set the delegate property after initialization.

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPAddCardViewControllerDelegate

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    You can set this property to pre-fill any information you’ve already collected from your user. - see: STPUserInformation.h

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)managedAccountCurrency":{"name":"managedAccountCurrency","abstract":"

    If you’re using the token generated from STPAddCardViewController to make a Managed Account, you should set this property to the currency that account will use. Otherwise, you should leave it empty. For more information, see https://stripe.com/docs/api#create_card_token-card-currency

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)customFooterView":{"name":"customFooterView","abstract":"

    Provide this view controller with a footer view.

    ","parent_name":"STPAddCardViewController"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)setDefaultPublishableKey:":{"name":"+setDefaultPublishableKey:","abstract":"

    Set your Stripe API key with this method. New instances of STPAPIClient will be initialized with this value. You should call this method as early as","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)defaultPublishableKey":{"name":"+defaultPublishableKey","abstract":"

    The current default publishable key.

    ","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)canSubmitPaymentRequest:":{"name":"+canSubmitPaymentRequest:","abstract":"

    Whether or not this device is capable of using Apple Pay. This checks both","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)deviceSupportsApplePay":{"name":"+deviceSupportsApplePay","abstract":"

    Whether or not this can make Apple Pay payments via a card network supported","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:":{"name":"+paymentRequestWithMerchantIdentifier:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:country:currency:":{"name":"+paymentRequestWithMerchantIdentifier:country:currency:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)handleStripeURLCallbackWithURL:":{"name":"+handleStripeURLCallbackWithURL:","abstract":"

    Call this method in your app delegate whenever you receive an URL in your","parent_name":"Stripe"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(cm)sharedClient":{"name":"+sharedClient","abstract":"

    A shared singleton API client. Its API key will be initially equal to [Stripe defaultPublishableKey].

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithConfiguration:":{"name":"-initWithConfiguration:","abstract":"

    Initializes an API client with the given configuration. Its API key will be","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithPublishableKey:":{"name":"-initWithPublishableKey:","abstract":"

    Initializes an API client with the given publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)publishableKey":{"name":"publishableKey","abstract":"

    The client’s publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)configuration":{"name":"configuration","abstract":"

    The client’s configuration.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)stripeAccount":{"name":"stripeAccount","abstract":"

    In order to perform API requests on behalf of a connected account, e.g. to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPayment:completion:":{"name":"-createTokenWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithPayment:completion:":{"name":"-createSourceWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe source using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithBankAccount:completion:":{"name":"-createTokenWithBankAccount:completion:","abstract":"

    Converts an STPBankAccount object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPersonalIDNumber:completion:":{"name":"-createTokenWithPersonalIDNumber:completion:","abstract":"

    Converts a personal identification number into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)uploadImage:purpose:completion:":{"name":"-uploadImage:purpose:completion:","abstract":"

    Uses the Stripe file upload API to upload an image. This can be used for","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithCard:completion:":{"name":"-createTokenWithCard:completion:","abstract":"

    Converts an STPCardParams object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithParams:completion:":{"name":"-createSourceWithParams:completion:","abstract":"

    Creates a Source object using the provided details.","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)retrieveSourceWithId:clientSecret:completion:":{"name":"-retrieveSourceWithId:clientSecret:completion:","abstract":"

    Retrieves the Source object with the given ID. - see: https://stripe.com/docs/api#retrieve_source

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)startPollingSourceWithId:clientSecret:timeout:completion:":{"name":"-startPollingSourceWithId:clientSecret:timeout:completion:","abstract":"

    Starts polling the Source object with the given ID. For payment methods that require","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)stopPollingSourceWithId:":{"name":"-stopPollingSourceWithId:","abstract":"

    Stops polling the Source object with the given ID. Note that the completion block passed to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html":{"name":"STPAPIClient","abstract":"

    A client for making connections to the Stripe API.

    "},"Classes/Stripe.html":{"name":"Stripe","abstract":"

    A top-level class that imports the rest of the Stripe SDK.

    "},"Classes/STPAddCardViewController.html":{"name":"STPAddCardViewController","abstract":"

    This view controller contains a credit card entry form that the user can fill out. On submission, it will use the Stripe API to convert the user’s card details to a Stripe token. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController.

    "},"Classes/STPAddress.html":{"name":"STPAddress","abstract":"

    STPAddress Contains an address as represented by the Stripe API.

    "},"Classes.html#/c:objc(cs)STPApplePayPaymentMethod":{"name":"STPApplePayPaymentMethod","abstract":"

    An empty class representing that the user wishes to pay via Apple Pay. This can"},"Classes/STPBankAccount.html":{"name":"STPBankAccount","abstract":"

    Representation of a user’s bank account details that have been tokenized with"},"Classes/STPBankAccountParams.html":{"name":"STPBankAccountParams","abstract":"

    Representation of a user’s bank account details. You can assemble these with"},"Classes/STPCard.html":{"name":"STPCard","abstract":"

    Representation of a user’s credit card details that have been tokenized with"},"Classes/STPCardParams.html":{"name":"STPCardParams","abstract":"

    Representation of a user’s credit card details. You can assemble these with"},"Classes/STPCardValidator.html":{"name":"STPCardValidator","abstract":"

    This class contains static methods to validate card numbers, expiration dates,"},"Classes.html#/c:objc(cs)STPCoreScrollViewController":{"name":"STPCoreScrollViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes.html#/c:objc(cs)STPCoreTableViewController":{"name":"STPCoreTableViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes/STPCoreViewController.html":{"name":"STPCoreViewController","abstract":"

    This is the base class for all Stripe view controllers. It is intended for use"},"Classes/STPCustomer.html":{"name":"STPCustomer","abstract":"

    An STPCustomer represents a deserialized Customer object from the Stripe API."},"Classes/STPCustomerDeserializer.html":{"name":"STPCustomerDeserializer","abstract":"

    Use STPCustomerDeserializer to convert a response from the Stripe API into an STPCustomer object. STPCustomerDeserializer expects the JSON response to be in the exact same format as the Stripe API.

    "},"Classes/STPCustomerContext.html":{"name":"STPCustomerContext","abstract":"

    An STPCustomerContext retrieves and updates a Stripe customer using"},"Classes/STPFile.html":{"name":"STPFile","abstract":"

    Representation of a file upload object in the Stripe API.

    "},"Classes/STPImageLibrary.html":{"name":"STPImageLibrary","abstract":"

    This class lets you access card icons used by the Stripe SDK. All icons are 32 x 20 points.

    "},"Classes/STPPaymentActivityIndicatorView.html":{"name":"STPPaymentActivityIndicatorView","abstract":"

    This class can be used wherever you’d use a UIActivityIndicatorView and is intended to have a similar API. It renders as a spinning circle with a gap in it, similar to what you see in the App Store app or in the Apple Pay dialog when making a purchase. To change its color, set the tintColor property.

    "},"Classes/STPPaymentCardTextField.html":{"name":"STPPaymentCardTextField","abstract":"

    STPPaymentCardTextField is a text field with similar properties to UITextField,"},"Classes/STPPaymentConfiguration.html":{"name":"STPPaymentConfiguration","abstract":"

    An STPPaymentConfiguration represents all the options you can set or change"},"Classes/STPPaymentContext.html":{"name":"STPPaymentContext","abstract":"

    An STPPaymentContext keeps track of all of the state around a payment. It will manage fetching a user’s saved payment methods, tracking any information they select, and prompting them for required additional information before completing their purchase. It can be used to power your application’s payment confirmation page with just a few lines of code.

    "},"Classes/STPPaymentMethodsViewController.html":{"name":"STPPaymentMethodsViewController","abstract":"

    This view controller presents a list of payment method options to the user,"},"Classes/STPPaymentResult.html":{"name":"STPPaymentResult","abstract":"

    When you’re using STPPaymentContext to request your user’s payment details, this is the object that will be returned to your application when they’ve successfully made a payment. It currently just contains a source, but in the future will include any relevant metadata as well. You should pass source.stripeID to your server, and call the charge creation endpoint. This assumes you are charging a Customer, so you should specify the customer parameter to be that customer’s ID and the source parameter to the value returned here. For more information, see https://stripe.com/docs/api#create_charge

    "},"Classes/STPRedirectContext.html":{"name":"STPRedirectContext","abstract":"

    This is a helper class for handling redirect sources.

    "},"Classes/STPShippingAddressViewController.html":{"name":"STPShippingAddressViewController","abstract":"

    This view controller contains a shipping address collection form. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController. Depending on your configuration’s shippingType, the view controller may present a shipping method selection form after the user enters an address.

    "},"Classes/STPSource.html":{"name":"STPSource","abstract":"

    Representation of a customer’s payment instrument created with the Stripe API. - see: https://stripe.com/docs/api#sources

    "},"Classes/STPSourceCardDetails.html":{"name":"STPSourceCardDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceOwner.html":{"name":"STPSourceOwner","abstract":"

    Information about a source’s owner.

    "},"Classes/STPSourceParams.html":{"name":"STPSourceParams","abstract":"

    An object representing parameters used to create a Source object.

    "},"Classes/STPSourceReceiver.html":{"name":"STPSourceReceiver","abstract":"

    Information related to a source’s receiver flow.

    "},"Classes/STPSourceRedirect.html":{"name":"STPSourceRedirect","abstract":"

    Information related to a source’s redirect flow.

    "},"Classes/STPSourceSEPADebitDetails.html":{"name":"STPSourceSEPADebitDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceVerification.html":{"name":"STPSourceVerification","abstract":"

    Information related to a source’s verification flow.

    "},"Classes/STPTheme.html":{"name":"STPTheme","abstract":"

    STPTheme objects can be used to visually style Stripe-provided UI. See https://stripe.com/docs/mobile/ios/standard#theming for more information.

    "},"Classes/STPToken.html":{"name":"STPToken","abstract":"

    A token returned from submitting payment details to the Stripe API. You should not have to instantiate one of these directly.

    "},"Classes/STPUserInformation.html":{"name":"STPUserInformation","abstract":"

    You can use this class to specify information that you’ve already collected"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(im)stp_setTheme:":{"name":"-stp_setTheme:","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(py)stp_theme":{"name":"stp_theme","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the bar’s tintColor and barTintColor properties, as well as the color of the single-pixel line at the bottom of the navbar.","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/NSError(Stripe).html#/c:objc(cs)NSError(cm)stp_errorFromStripeResponse:":{"name":"+stp_errorFromStripeResponse:","abstract":"

    Creates an NSError object from a given Stripe API json response.

    ","parent_name":"NSError(Stripe)"},"Categories/NSError(Stripe).html":{"name":"NSError(Stripe)","abstract":"

    NSError extensions for creating error objects from Stripe API responses.

    "},"Categories/UINavigationBar(Stripe_Theme).html":{"name":"UINavigationBar(Stripe_Theme)","abstract":"

    This allows quickly setting the appearance of a UINavigationBar to match your"},"Categories.html":{"name":"Categories","abstract":"

    The following categories are available globally.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "}} \ No newline at end of file diff --git a/docs/docs/docsets/Stripe.docset/Contents/Resources/docSet.dsidx b/docs/docs/docsets/Stripe.docset/Contents/Resources/docSet.dsidx index 7e7b3c643beea80533dde664993303ae9d72d253..dff548e54b915ecb2883ce4d829bc4fd54d6a994 100644 GIT binary patch delta 9661 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 EKUt?E!vFvP delta 9259 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 dLOGSzu3u899) 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 &gfMWhKo{EGRZ9|Qvx{hNAoV@KdSwy?q^ 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

    @D4EGmlE(@g!6L*p8nbpBQ1|0YSD zB}<_lZ`}C5=ejg28l1NJ{3FZikR%xC1qt52ASnHd)&npxtQ7@Eue$YjfN44_rg>@H zUWpc`4=MH09xW+E0bAnMh9#)|@E?f?>ft;P=MmNh$2u@sz##20+zG%H&kX7Tt`MOz z`Ax?Le>y`tfT++5mWa{3EjQ*Jpy*qd8liw*lZr2YIsSQi1%9{t@b@$me{=f5&v@MG zmb@su5CV>u!chC_f~MHm5FEX2Mjje2f`!SbCm3fDkgfFFF6gZxdQRuB+5Cd?YrFGU z8~qE^`LsUSsOnjtXCIlWVO%&ZnbxaTf<9hKoQBagi)C-)&cf=pk?%&8@A47611*&* zc{%0d!}*>~LA3kyaZs`d?lqS{|BOqxg-9viMgx7E&Ie~<6~34iDcwkM&czeR$r8Sy ze(r$7O`;#`fCjL(iI9974+ZJ=MU(ao)dOPB5@x=o$OTR~fa-ttj`81))GMxctZDZC zdHLO2H65-wGY7PBs(cT6zFyf)HkR#vXJs<0cg3M6P z&_#DV0~cNnK3=rQOZGyLuC~vLdc2UO?=bid&hp!&l(pGuN9W^2#>wCzux+JyeNe1h zdmJEQ>{qVB;H3j3BLiXNw#c)qN8Tf812c;t>mG0T+htwFG$|U_j>9AsnPgx}wMiFK zP;%}_~hrYk(XD>v48c`3BO8S+iuDHNs{Z12c zm^N#LP?DTZTHFPHtVm428%2pllS_ORNpH^2l+{LYAv**gL!3|E_|uc8&z^Ub$6XS3 zgWg6wy58=t7f3e|qCh6zMMJHc>#(?D23l*QJ8?&&pl9D~*J88*E5;;0tYqdXs4T!$ zugR1zE6l3gy`b)j%u?x&CHVf7$BTlU7p%LQRC84C%FrkN5=hSCM^+i>_gFFJ-J;cWR zA{0(*MLxT_mj0Y_gZXf7Rf5Jat3+AEutKb2A7{|bMhF4UtZp4i^b8Q~u!u4839g2n z80!Pjs+`K_gWgftH>;ADArkkO0r z(BW@^+slGY@|zZGpMlZx+&t*@UdXnU_wYTS2eUCtA` zzPQmm_=Le9{F!DW!3Dr0EFW)ZviY%lRb7|fYYu0>)9Nj1E=iokgXGE1ALX-GmU)z* zBa^TvXqOtktX-?cb`t*j4Z`Kc*E7O}F&~;tW|JCoLRoi0&c_l<8+qecUq9mGBD?}2 zxC8sPVJ;E~jFq=G)S9~D#~X^Gyfsd)63UXHuCPVuR^!%d8~d6SGuW}2HAc7WU|A!^ z(AdYa;GtIb;PJtfi|s6a)ERcRIf6hq-HT*Fx|k33B@aa7xpsNecSAAQMs|tQ?@zlo z3eOMMWF zVHPw-qGF`7e^1@Jz&P$zZCz7bUF`uBHud$w*)u*`hp%MOtVk*fEQL*FmSJ5H3@i#Gf7Qa3 z08Fo|mmU1$1DR5g)tt=7t{1qlVTTOc?2k1Wv4(J= zx~E}6wPb~bW)x;0*G>0tl8ilR5}%sgJ~0K~{!-qrZ+-4L*#zSNq)*)lJar;KUJnDp z;FNC+O$4yjxddPz83f=cZ!{sNW+&;PXBe>mPcm&n4vj9je@mvcb_W4^vjU*i;m&zS znGM#1fe-fHw=_RcO+GMB#tDQWa_uz9IKS|15_m=xJQ6RKH!lG^C|p3$cnRu$o{8iQ z*P$~HCcIz~B%r9VB_7^EI&3|l76d1r^T(6u8w)C<*#_>7vWHC|$`6e}T2;h~+=a(r z+ZN}K3zZcikd!A{0GE*=&FJW1%0?X~FF24HTDj1DraR8-4nVI~mJXiqr4X}UImlE_ z^hxlA%7OK0wP0^Tu3iwTbqb{mg0c}2bU~QV$Y7^Lbi$LA<*Y8!xayr|%rzA=xK_3} zg+uC-z8XfJ?uStU*)sNnn2q2cE(L?Yi*D1X5U-NwqsAE-`3^@r1CUEZ2O85wS>qI4 zC9xONGN`5(o_Y`sn?&ezLg88vDv|t#-u*yrvGMbL9k~TOQ@Eai4U;enulzRw3t})~ zRR}({8V0JV>6rn(jGUAo+5Cu{7db-|&HI{qmq)*=l~LUAtZ!Nw8-4z3WZQ0R1`;Xv zu-bh1_Z7iUH-H>O$F+E)&&fjQq3E-HTh>yM_aYPWffhElss+IRHNt^JL%VmIzRj%R zT-ch5e0OlSqY&Q>-i@ojcLQ@9%I@7D-GXX+$C=-nB6|lF7W}Ku&tBjb_yX0x7gG3t zA>`>7Li}<1X7zryk&_L>3bkB(q~U~e13bAnSCIm%JQ@W+p2Nk_yY%rQrAG`jU*eQ` z6=ok#B4iZ5X{9j;8Iu|sDV@!Br`IoyP)Xp#kpw1O*>@P6s_b!CU2%j?<<~6wh{O=1 zd{fu}cx6~GY246ptQVm{5ARjjW)Us8(922Pm|nBpg}4~eKE25Bb;(E=aB}*U_3VaG zUa=x1cV8QM&_pnR9y5V%frl4Uooeq_b@}3)(#_)`zWfy)X>Uy%Nwd#|84Ok~t*j`y zA_Aq}W+jv{EXgpM-^#3p1H#s-R@&@yCIt{lNq|SIxiI_YvXZS@nkzu91F5x`y0!Or zS-d;2yE|U@WZzs0!NKm5%VD*xJ#i_hmy||K!DH>v0%@#mS~Yd;&PY~sKi(9P2Y$?~ z4!1QPD(l7rlC!XaYd&TbT&=ZfQRS-Aul2gMg>by%n`Ox_GX{r_tm|x`g}DwW(aAcI zTbrTS*l#-w#;ZaGOg%;kI?>?bt=e5PpiwT2y<===Q6Dwhsr|2Q+nlL8wQc-s+jgh6 zt*LF>w(WLm`}TRBH}8j=+~g)J=fgfLXYUUu*(>WO_A@4~9jrd|@zQfg7X-58eI^v5f?Vqz1z>qnj+M@xXfl33C zCgrV2Z$d)jE_#~FNy#FJ^}+BE&b+)Hu?fyhiWk5ej2x3#+3p@MZd-)i`0AJRoU?P7*I0aXM)M=JoA%M;#|ienF!Fkyb~#Or3EJo zyEcTT!AtLG1lD$V%I&?*!K-<-H;+n#rZUHT!%^}u*zJ^o`MHy59GgH5wIzs>95ASk zKR~Cqhdb9o6pYJOp=mk^d$b}brs~pvotZn=dRwTz|40esFS=Ef_YH;}3}dE0apA4Q zdIfT%uvZ0ylIY_Ns1**7B9-U|Z8y6nIeM8>V4X1^W>a2LLfwmX-=%r>foUQGz<%79 zo~r|Vb*@JtC5X;*sV2Dtl9KT(h~xc!3AqLk9{0!;HSFo( zQL3@to)0ak)+r`z^%nh(cCu>t5I4`gOh+6Kd(aeL`CWf&GU^bmMRZ()8Y_CVy9TvD zR5$X-1q|)g$c7Py{(BmH&m->|t}^~NP&>XbwS&=EO`GF&daL$*J`ITlufH?ZK>W9T z#zwBcO(7ndjO<-S8mvs(-vi;jCdJpQp8H6w90o|t)aF~z8QGHLo1MY>tZtSP+_h$`*esre)0_qoTUt#ggIMV! zJ6A{wqRpFxo_iL^2l0#934NsZ=0eh=DDZDdbe&2S&7oKOzN<~;5 zLPrfYf^h{3`yqo#0o(4}AeFIReXBY09bz4F`vF}TobFvfaOUS;PcS`Blu2l>7S&bg zCwpvQl2ohT)ZmMGdQF9FxsH@V?IU6$0zwKdQtADZ@DdgV22$YuA9j%y3=*Y(Lfcg8 zM|e9^i;_wIinN9se89yI)6NG4kJ?`jt=J@Jh(!Z#hse!Xq3Ug=P5n$kO|N7?0~pYD zQc0e@FwBR`_jyEu5fy_(xkHSq^f`9MQ|eFIj?01~rP+)7x$^;`Q&4!$Up?#s&#{tR8Qo;j27f2-x56kOYLt7iK(*hq3k8)k!xW7D)yy@Xsr4T7S+5b`%bD3pZW>K^eE{)qA zbV;f-jA7mDV`T>`-^Bjj9&!GTHO{*Ic+AYRB3SV6 z9`|7pZFmCgQ|6BuQx2KC*s;kjBnWVCwo@F7`CVaZuXqR&_0Txo08ffS=f8ULqbRzT z7-j=F%!aPIS4pgpDPLP(whk1t z(EZ zHEnF-C!sT;d)zF4ir3MfgnZHevVKj`DkM>6uXdG&cDO&63TYa`HTiI)9QR8JQ4FZ@ z3-wlnIo*}1(D4S2w0?$YgnK1mio3A4yKWDUxf*?_%(2f}QMW!GRWYm=!XR6}eg z4knM_Zk`9k+I4)!h=g=ViW$}Ty#tu2BUC7Wy3E~4vebzbK69PaBhf5z5;d8Z=I0%p z&}ziMq!NyS%3^9VA*+8+?u(he*jEBo*seJGVmD3JFVo~EaIYk9 zti+Z@1M6nk$MqJdldE2w6^K^LnZF>mr8UdoPUK83Kg1xGrQUw_Q7xJKAJGzc$FrYr zjB61!I`@~BCXqx3DwUg5-rg-u;Q{QTZhLJ6qWZcJWx8M*KZ6DY60n7mrp6#D<^Ahb z(8NV6S`dxo8y+oDXZt^pc07MX1POe5PUt9hDWQ3mGlM=5wr?nVvZKr7(Bras4WBF? zkY8s%#=^Nl*;Lvv(Cy)RI3?E5GD=&Q!*Vm+5-SU!fHNic zGAuN?bY6FF9T>6~jG78gkOqo~i9q!ld1-3Xk9?<5c^_%5q<+O9c_c=uUJ2C!bU8TVL zuktlcMmn;kZ4A&Et(rJjq28Sx!xz&}D(L#81^;c<)4l;DX0Y ze=%S%8MsS(N#Sh*?}RKdqfwakykF4C+tI^yv7}AyJ`jCOuWI?6Tp)B!>}rbLYi(QS z9H^Ur1|zOVG#XzDB)Uyw!neh|9Zz5#%^_*;`^^AB#^b6Xo@F@S0^~tkf`YCA$7i+P zfWjf2RKmHXUmV`!cDy@3y{}bsAe4=&l;c8Ed-9MH_8?a48`Ho%0!nSI2(dF9`fkMd z_G}W$aus015hL(mZ-eIC0_mdG=vxgT4OK;!2aHU5e(E9ATHme~Gw#}rMOqu`C zEq`lid+u;RkWSU4prVJ?LWV3QQ!bl!3$^1+cERvqqh`D0ua49KX=r*+cJUYb8y=!Y z&8GY5Kxf}0rF=sToqjl?6NdiITC(I-e1rlRcrReYpJ_Jkjos6588fu*e_Q2Xd!dvW zIWmxqFpvO(2e{wUWxG~n7STtFe_WbrhpJto1cV!!$F>;Uxzjh;-47%=Tp;OepTWgL zvr8ETAuCpKxhPO3>e475B&Uv;5XM<#);nFK>r7q02OZ!zmazgE%EXO(e%s8^DgGum zHya{+(|?Tf{Bj#227;@{i=4u5O{S>zs?E!Y&qtmb?!dPhn_IM42O!Tq4-l`mPfxS8 z5eH;ybH)|~%f!l}jeX;5b0#W$0+n^(^0C%C(CdHntpJfT9 zXf%4SBwwr{LI6ez1SSP8L}urVVxeF{Or|I&`k4Hcp@oJnckB_Rd2nhTsy!3!)egPF zG9J1kgjs^FejMsGJw>xhlk^mpW0w?>x^rc(Hv&9DpK)(o%5n1A^7d^ zGO9XR)Qg?LBDq3~iikzP^*~HrZ~Ul<8khZ>?mc;acMeHBNf zejI;gnvtHW$SK4limJ#A1*!Vb20`1pFgV2qr1wUUH}-?>+t(*LOU`sdwN&V_gGs5f zF~c7!j;M#1Jx=!<&CfO&@{}@DLRPgenv3E)N#eTKJH%0`C3HYKN%__I$q)Qg4Xz!L zHIT2=>B6Dq)Tf_-h#*U1{WXxO7~f z1zt)I;9ijH3K;}dfgxJCo|d3(OHF95y$*b*lFYcaRveXX93m!a4MBCS>paF2P`pq{ ztSZE(h#}>n-g%!)=fd1HF4R3V@<3=2>wIb6MkY|X9iI@vHvFpg?A;cHku%FGOi-co z5pHwQ<~%2%9`Mg)hbX%>d+~Klx~nvz5w3xI6*V&i16T%eVkBJJEspus7!qfvkI`ya zXo4~$3q=p8=#t@y>-f2$V*tWX_=zofEjCzI3T7LDuS%m-9UHf%Gr#b9fn;Y!XTd}m zi=(H-N*F>G92CcYuE0thBh;-nDC8HRhYc0O)2DDNS1J=xPMml?VEkF}qK(%@q4hg@ z4S$2_1hqZyJQ1McQjT;j%oV=iT04!=1S+6G%^#>GE28|i$L1Yt)&3RN&*kt=D|1{e zLUD9)c%DCUn0ll<^7$tIJ}+5>Q!QuLIVRq?lUQ2J28{Xll00*o>rw^U-#PCnd?#Q@ciJW_PS|jE{S#V=CU8 z;C<4_XT`WW)Qc2dENMZDKK?=ubmy(YK4)X;D1pTL2O=16?!yDIjzLh?#uf$Gh=Vxa zp?gmv%Gn5eHO`$7X1jk+>g41pWNnX}{6efD?*g6}qLr@MDX}>XRl0kG9C?K}Iom9)6!|zb!OKt~5QiCNt~4r)a@RG(eAKq5n$+?<@JpglDnI@DF~TfY)iT zDppF=YnfO85%>{l4}wEetpS_$*#oLSTFrBp%F@*jq(cA<;&vn9NjLruKAyawI2=tw zCkD5C$VnS!klXK(?NFjr9QjV^y3>leXBWoQzrcYK-EB^nFb<-v+S0@VxweYmE%_nM8Tbl&(gW=gU0Yo~0) zRLRlfd1?*I-Y-9nJuJ^NwHL2x##fsY%kc>8A{TZ%hU3jmKPWFM&V~zE0wvpg=4#c* z;TIYvnIO}*DvaFV%<3r3h^I?1sTlaH0=fJUL&x$LMt8^{<<@nEVW+v}zgb$ zd1CoBwY(9!M&cl%v^{;*Zt{RIWlhZvPe%XnTkH3HZLwTInwjYcjaj_v1zEDY=5=vK zfYhEGe_FA^ga6YMP}+d> z()94x)YR+*{}l|dw5wcVq0?s!$1?y+_y_B%UI&|I-T!0dehcK9ak}eBQXs5LacFuM zBuYPjWhE9beKHUNcViPzKjMhkKdL9|Fo9{butT;xgtF1{yTh1=`bch&3;3MF%`^pSAQ%ck@2e*Yqek_3>4&PRD#BljwV!r&mcD{TTodJ9vn|dbQR6}hthhSDKbE$5 zqmC-U%r^m=v?Gh{&asD+xiaeY-c0)GR%OjLguk5$pa1=f7pV_mH#@^-Mw;0cFhGS< zH^YT?b9iYfwRl7XH{vV_1fA8CFS91v@dnwiK_KKn1Q+@cJi*fjLg+`W_almD<5XTFKBlvOZ}j0%)8X@IKC%netu&PnLF5 zDu0$8+D}hzm!boD{=cDaGjpbP52zoH86Bw|Q#kN8YyeRC6fKK{+I3L`SOk>059rhn zVbH7wju;kB9)a24$CS}5gGiz7HYN)){0h<#t= zvh0KR@a{v(6>c<<3}dYIO*A0{1FpbepCWN?U$Bvc@V{oEu*j}m(%}2*n-X6{LMJA< zwxhmTJ};wO(O6|rZSlr?0CKCSGAPiTy&cJ#kma}bWLP3pQ7niyRTH2UiYnfGCOED9 zxQmEP1dQJx8@XQ$2|rcGt@UR}%+!-R$}(4pUVp-A#X!XH*;8&I7pkNajQbrqJW`t9 zZ;I@ft=a;6t&Keh%_q0`RS9YMHBop(eA;ScQSsE1hA8#k_!&<<0(-QDn3@t4suPMD zu+TiPxJpYovfDoUqLO9ep|Bhi3I_V!l#^v$V-U}efjrb3QO5-qY9&IfhMm~c0i>Bq z0KYYv0}P9_BWlSL9M!o4(b$05%WOj}dwrk!F!XChIWJOa%%%Q*B~0U1Y+c7qhNH z$fmb~?2lxtWHouC>RPfWwI>KxllPcDS>zSBz1No;4c_=G+G#CF%j!_8+WPA;3>2%M zRQZCyBCrX%HrIFjBT+egiU~`n@tyKqkt{T&0xGN{VTV99jl=8Eytr(x`$q87K+$RJ2IL*`d+{~cF zs?o1rJO7OeF_qqx*~tXT&>TEI425tp%zB0N-+I6!~J~}$wb&Mag$QuY2iYtOSZ$}i+%3;Dx zaS?&{Pu`Yfb|5T!DqD2ntA0X?Qqi6W*(-Km3+Og>OS-Qwr=d>8(Rpib@`a%IBE z+d8&C0A%ZRQ+z1LyDlN}SG9EtQquZXJIAVfqw9=Aoy*+A-W)shOaT(ORmFqu1Pie= z6cdz5Yj>8k3?o*R^k$n42728zijlmue!HfGr(VMoSGLUD6`Fq(E$Aj)qo2vOZH|TA z_XM=P&`1vIs8Bt(yaRxz$?fph))Qajyy(Kpb_54#a1UAaCqW|0_beDdOF%q1wK;j+ z8vO|k9YJDvozm|~!CxXyK&H@=KR%yU#eZIT-;-wqvKX~9&RQ!1^D|?!>RKg@QIBQt zos~QA%L#@(h5sl}}Dc6apVsM)2$eV4i&+3}=K z-{17jX#ecK8nNxq!j;^qdDW`ocFh=ni7ewaC^@aae(8r_Zo7or#QbBCqV4G7tk$^E zF>b@-Hvc8!h7iuQjag9h#})SGN`&~as@!D|%f3nP46*ZA{+(Q9%wMgb%Wz9(8`Jx2 z69D#4seB7&%jE<;;h3~^_Lm@j^ zKoV;6e1d8zbFC-*T)kA%3&gC|6uB6EIbNbsJtxg(r)0E{WuAF`VwuNcF;OpJZoFl zKjtleW8T_FsD5BNAla?s)vIj>@5)I=>@9oJisBsw9m1qcspL9Oq$?M2YwJ9EAA?;m zwhp5amy92UEXuSA1p_xfGgzwj1tdq^)w=E_z!&>;bGQsvM1~s$X>_~@OK41Cgngax4hS!J@4DOa z%(^MGQ8WDxYX$eJwV#?&t9_|k!QnjRz#Z(RV69m(o9RC9uS(|pt7CpU&!z_wId|Gx ztIi&VH;s<2tn#awf8jZcswq%l3(xVvy#^| z>AhiO7N4dX&CAQFUl=G&|NGlTfq%HBpMNZCcUqdeU#N7oEpZr)GxdE0X7#m01UF~x zE*0KC8VqLL(t3XV8M7_K+WWNpxre5D>=aREc-|e$qciV!Zp?x=X;KW45y(*h0SE*8 zbZfh)KklEi*83LK^^-R>vZFL~`~=$QFIH>0yW<*VmZO#7OMltUTkdnQ`oD?Yok0oY?V8#-ll7714YUglxeeS^60FpS%p)RiDHsNHo z-ar^QR-6#Tr$WIE2LvJN?~3sV64hiwhM5U!kI=nQqCsr$#B%ce!qmiGFfS#=UEJq4 zK%f#6jfu+7VW_*vue^5(Bl~X6>M$-Q!uod(Xt9?_VJM*R{?6^BF&ARQ!CTN~K&t$K zeiY0QF#h%vRwyE#24m4Xnv%UShSVHq067oExiTMy!03%k_K?BAZD%`-Jd zkak_z-TJ@TT#O;Yfu%(z$@iBGIfAcfYu!ht8pKAeu0#l!iCZ9YfuH*rXHoTP$30fy zyGgMWN!XilXOv7h^5;MQF_D{d)8ssexMD5tHw5hlucP!VNV+L^yli6yS7Ov?hM!~O zFDF>GnrXc?s7CF^rcl~>_}4-NN#tdDee+DI$MyOsQ(#@jbq68TZ$$ikJ3A`FJhG;@ zxW2c7e_F)>U<~NVbB1wy)-O$ypls|EMn;9EVa2=9ywgLisU1YJu~a~2U#4*bWHE*X zU+24QQ)6@!^g}-o28$X5y^Se!xu=`^(ip3*dMyh^^|(z3n0774(l6o(b+3!b{IbRJ zLBXUD#C&!7rInqf&SNH`kDtdc$Sl^J9#N$g?-_x`;@epaM6VCVP@`F#|oomq{<&HGj{jU zasFjIKgSDJ!Pg^$mMQJwajVP`xD2V=_wIkE?aQ5Y562MtzP`JIeEB?{Qa)ep7vJM% zWc$4GxZOrh&n1}V@Oi$QUq7$TALsCWC|y6x;Xd0A4HgCjqJ*waTkk*D+_V(s#KJ6e zKOJ=t2!3G4AGoO!-V1la+OL9A#wbQ}b-cv>)-uR-kkk8Zsc6#@412 z6fJ`cqf(|U@)&=+IOwL%J`N5Kp{!2|%E=BQcm#cnnzo@UK2A@~RD%6p^FbM zFjCh4wQmx%v@X zDYtznM;9t09jvkVU=gPa_h?)E07BilWTC6uv!Qs*pRNeqU3A@kbl+wW{>rr5EIYwg zqbyu^gYfu2F2AP*UjjVo2%|m~MwyWkR|jUfrAd0Est~t) zot(Y7CaWH!C&c{WEd8gEDuuETe;zf2KhL4?l>TAb6Z6GGuOBT5sTpd#e7H{0r?K8v zAv(bl%>`z(08#TXsopPZ<_M^?PZ?!oW5nCITF5U-L>b{0u|7>5j5A=^NJ*|JJ*&8V z(@*82kT_%mppo zUxBPyw;RYSRoNG${#!5FqTR)@_IU*mC_eF^jdpI!1tIxEf2>07N@`12 zNHqNn0ik!NI9*Qf@3>>;sqD>Dd?(oGj9Dhf)2>R092`@m#%&sf9Ote9z*>M`YL!)! z`!}tHz|_Msapo>*g+e`5D>0z%R1yhle-YqS9BU+EmIQnIN}5nt0$XOfvSdX2Qf!1pPZK8uCN6G0bg<qogL8PJBiIs5k&i5>t$wJCj`(fG8s!pwk`8h zqF)}NAnf7;)!|I_Jl-|tRM(wp#>~Z8qs^+r^7@tK%3!9N*P2t~q zElAoE;pV!UJ`nl#&`daLNfap@ZIIyAo#i-_!hZ8@Sq&J8<*v~3

    39VTzFMC=-> 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�ZU;RME&Kid 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º|j^N)GO0(^F&rqVmvgppmIX$3L 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%0DeZ|n^OMCVa{|TXr$U2n38)N2pSnZ7C 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 a-}mmiGUngCTsYflbI1`!dG&_p)&Bt;T5>l4 literal 312533 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%0A-uq^IHZ$(qI{&@(h__6AeZG@^k-c(V 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

    K%A&*PhyL)2`Tc9H+itOV8S~#U}8j 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 phI5f(44GRpa*U1brz*&^fXN`U%M}oX-BDM? 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 QRV}vG6RGn6D@YQal$fDe(*BuCpSgup7 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 H^97Y*_~R|9i;3M9H7 z|3=9(aAJQl=wuT?ph}U3HM#7Hk2Thu(!5tUbf<%}tx?q(pmSH!$DP_`uOod>%Aj&7 zM4Dc#MP%^;LPIjQu!LUB18UnK_{N-6hFCXL%YS^be{gCP2*hf-?9aA8dz5*SY(fpv;lg(cV+|RmdQfw1*>0)4BTzmA|a<9r-=GQ33Pf;Cp z5rb+}FiHu1!fO1Pb;9a^ioKN`OTZfZ2WCGN;U6xJ;;kpdbd-7Ao7uRZ=nq`KcRGUz$BDQ=Y zroKDz%G#~5-j%O>%|(*|+jJ!OweQ&@OOE-L2pv1!(JJj)Rf*U1EwXdi!k88n6ERpS z{3@s(Y2$%Cohdj?01f-#P0e-A?^i`*deOrvmW#!z}ZZT8#D7xG~hdd zKlJ*?7gl5Bol8rXTU5eK?ZT#)o#Z=m3N+M?zo${iS76F`n?;B(Pc+*l>0jFT}S zd6je_(0}YI4$|jRL}~h3qADMcr3Q^`wk8-Rzn!!9(Ngm1q6N)#oY5b%m=hQoFP%kE z6PW$_QE^1#ykOVxmf#q+R6tJ?xdyuWh-)z=8c`-GKUSt)1GBm^(Ww3WKxu$0x-|}G zxbfP5&4YUxyvHoqIAB4hKj}t4}5I zJS%`|>of-k*p?0bx1VHXls|rs+#^eJ@ZDqA{?rRrW#t|E1$k~`C9rvjm2F?gyImJJ zOUe)c*$HGQY)obeJigkh&fH60e}Aq**0oB>eEMB7FKI@IhQOhjxIuD`v^7JyaB$wa zg#knJla^i}Qcb7~aeM&DBhMWdcb1Bg!&xM1b`)F}*7X!PLDz{=D`?}-5TP4v zk3?BE$UVlku7e2dKH&%pVN|;xx0VbRGxpaAY)J-Ya6eQAA3xh?e zvhA>^J&OG}L&Y+>cY7HbibGm!sv5cHc8G^EEEO?wh(6bD7s)RT)X$7vXS_2Z)S4*P zD95dmpHMdD=@RJ~FNiq?ltV$5yl!~>sC%p!vs^oBe6A?!wkef=z`n(QP836wG8jpn z>90|WJ=bJwb1Fz($6ax%OFIrTFj}f)zqIk%M>5(Vm$AD7II{Wz#V8hv&xetj8UmF) zbK2*)-HP3cMuzA2$|ZGu@nF2&&@hQr`1EF^(BJMPLdGs~xuyz^7tSFe2ck9=XCWyJThqobiPLjf9oyB<&rL?zNMruG zw7;weW+liV!?fz$H`cI7P!^QrtW{oB<|FJ{Lhk<9L0OeJGiB0!s(k6}JugYoYZaB^ zd((X-6@A`lYH>y^u*X|wSl%4jO${Q_8@VZ$Dk+Cnjz9X=xY>d4&m@;8%>3Fh-ZHz}^;+u|UadoJE$lGs+G6hZv-S?h*>eaUfu3;qr*W!Dx_YXP-b1o% z%W=MYinM%TkSNPZUP6!ajI5;TZ2I-$q`@G;rtRj+-K(@!+3m}G9UJX-F zddmcYuv7_-{8nVU@HhZqG4tqfOXp3&zqk4iy0ALb|1apuV4Q}dP-e_ZFvQ>Ctk)(%~;>{ z8f=45T*!bypy63|lm|xda7FU5c2*{Z$t|s$jlFz=Y2OGj=lldK)2(;{z%gE1ombv4! zxF#O$cENJt-=L8IgZ#vbNB?$!16#ZF-1bsTBOtCC_wRI1#361|TveS1d`9~6>){*M zfI6^2HdD<5hBr?Vl5?@msak0+6vY4gA`~oAOI^ba9vqzvItF41_6HcgH(Ra(uE?&pD-ehM)wU+sy8A=1mya3 zfI8%eVUl+9t^>s&_RvazKQHoOpPQ0Zl2arc_xI6eBDKh>vYQ~ga%U34J!6X5zF>p9 zxKAArY!hQwsVC6H6aoAo@TZd?Y@VzI3hjinS4Mr(WyPYP3*uf@TKux}yYs5fW$k#Z zihriewZ314iw;Y0OjQbRAvkG-94;t84#-PQGMK6N=i<*L*-n=n_@9g5ekM6EaecLx z^P#E1h1}SXGydt*Ju()8~OP=VF{EErL=p-tjdS=Fkzxsm-29*SE>M@d~!jQ zR5T`SE>GHq*i2YAF6mj=Bm}Jn0eypffu)I#vplt8NLsvNqc6q&;CvIZuT@oAg{HCG zIxD}T1-@%A5pbNto_XbTa(HX*-$7IXK8~$|Wh!^8_fZ-Ku}3Njly@xCmZ~SBJs4>E zmOMXQ4?K$@#U3g=m&vcRl3y@g}%mA{7v;l$Z>Tl-@gz3KQY&c|T;G*WV5|lY* z*cbDMq?(XjH5Zv9}3GVKid6RRx z`}Eg6cjnf;H8nH;P;BN=vT-gs{YIjCm`HKCZNo17ph^$nEc>m+Al!ep%I=< zb1mw)43O-?rxA?WlvC`0^6(KLB>@TdkY{xGY}CDv>3zyDC-v(1k`&!UL^_Z-3L9c8 z!4}Tw4-*QUN*TW#s!G-47w+gnKig04`3)o5Y;3G3)sU^6Va#2;8<6XQKQc|2kKI}z zQf{kIkYK>NEHt-byk~Rx1=s$<@{heV)lE-R-s8cLbfy?wj$_1I?9#VDko45W%TZT( zS?dPARSjL-*XdU5ykh_^^T6oyCPUcCv1w}&slejXs*l@Dha>AxF6teh zf=o?oRCtY=DmP}&wUlzaN?~=56(9H}1WlAd%JVgXXupH1r>w=JV#S`d%^?I)(-?U z7V*4RMmp}Yr!%WT@})Y7={yiyJ#Y0;v7D>^a++@Qhwfhj5{ZYynMaWMO3?z#P1b^9 zP#L^LkC05hFwG7WFUtTgbJ1p^n?G6C9t{sW7W+%v1q>l&o5C80)6#SQB8~!yTOaae z8ykqkhNahF=*s9x^EeUW+u^uwfdfHonp{HLGZEwT#AJhN+p~mL-pE=tCbWSzN+*q2 zO1Fx6rxlzM_6YLLNmQ*Dg56`vwW_Uf{BAneQ0S*&fW0O$oQdTQ^P??s9$b~4b0D7q z?zn&hyqa@OIG~~CSU{ztX*T`ss;QQ(@CTz&c;K)lpz2C)$9tR#yNp=wZk3DO1^#2y zj&j6?{4DQ>Y`Q$(1*luf{rrB&peOm+^Wj4J(tZxViAs1^;RDO08iOFJNoM6aKMjk@ zd4Gy>brU8LXD}Uji2hM94 zzA8|W>lV@(?5Qtw-(8JG2OGd6spYkyCemW-g;|SqoMn1I|Lu3SOZr710dHBQ1a&Y? zWn)d8(-6F(xzXOUYPIT5?8}yE39lm-7=kqC!&MA4Qy^2D;zjmZjqU9qJF*L=JEkl! zMH#3n#KYtZtv((fuRx;H+}jK-Dd{?5~ezoq96K!j2SBKcYTy1glWdJ22^gv~*IxBrD`wS&b zxPg4Wn{ffD%I{wKy}xV&ow@^*YRZw8QJki+VAel49R<7$E9IQZ+q4S(^|lVBu_oUg7B;94Cv>O)8?gRn`{*x7K)p}09NXC%#E0U;`|`Xpm$poq|Qu09Eqll zrf^Mo2jit_nOh@frpVkox`l%CxQ6935&Ix8uwA-?hMJolKOOd$IZ8Zh&Fh%M*9!?e zc|qL(HN!g@QTm`j5{Ekt#k__A4D-LHB%ImzwD zyaF+IU6ZolVa#U_XXA*rX8v%i(v}k4%BOsL)BEnz58R}Y^cktQJoA7; z%w8&+Te-%wBOEn0~0I`R;V%o&QnyO12~mbYsg7CK-4KsOfuCA2O6= zScmE8-8{NLVeT}3*RRv)tzVH<;2kz@GC+^SdyO8^9#LNT=w#4*wve9)#hE3LkNVvb zL*+3!&*~u^028~$L~((k$Nq;W=C7yoH~t;ugC#yaY{&W!(#a#=+zRi}`=4L(6@T{r z&So)@$s%}qeOpm@aklNw0{l?#@8r>sGatL}hu|_cxGi!zOevg;=RzuY@U9ZN;5dV{ zos5PmWcrDmW11Ve$8_lxqvrymJqig=tPya(y(Qq{+fC*OcYINtPbm;%_sluZv|(F! ze#ez1A#+MyppZZLH}BYI6XlGTCEi1~d1g_sJopT?K*Pt_LHMElmf2It@kdik<(@m| z6w5JC|7WcjfM zC3QuB)61V`B!?Y-59W6RzX$UpCLXiXMG@-0$ z@;hbSxXC*nlqAeUxMRLmB${OiNM6Q-w>URbBBJ&l^b%^P`2Fo_;S3@DI9NzTblyTfp9?q=} zxGn2-BdD13B>G!{%Uc+Fdad4l8aoTdY29g^Xxp$T8HJRDyFhORDFNNY8XQ#^&*)7u z3gS^y(KXMaHD!Q!ykjKCF6e-9zMyT1o5I?&RY(Xx#c7JJ;-sgoXiYe5Eu?P8u*{r# zh?E5dYEb#55iF1TZt1e(i&2)~LEpjCGEY*man>_zb1fr}X}sU=Sca6SKtaFU&&xs z*`0E%It*P$+EQq11FEdc*yz^+B1fDLwK0sSBzwll`faTBOHt;dSaTJJiu1~)*y(Gd z`%aDhk}jO|j3N`o9EQm%ROsmex%dp@u!$1)&5&&r(Q{;(2H?hXq0Z1TJr7QR9K==M zGh9s8tT}~MaWZN=)*K_Q;QoCHt|bqWo}Ed#d&`a1Xl3Ly#|K`>aDVfnI)@rbaCJFx ziu-aUkyBX(TRz0HlSu06u=LE7@^TK6`Mh$^7QP7x@|-JSu? zc676ycwVB2p@w~Za=*|y|UAbEV;&2CaT?ZOtuQQWzVSdqpgwI=jt6Zkb^Q2 zV9^KvSVH6I1FOhu}M$tAG){Z>Ok zcWwJ-$Wl#1Ar)#_y1-5vh zml9xd_5i<~qWX4X3P?dbmdn1JKv0e%ppLbU>T+wcf}ku7#n;J5CThDwL;rg`Ud{8b z;=!Gtce43^U@}f8soPjK7~ZHX;8kBZnT$QL#71Naw_38GE?jSFfc-rUlautF63a>9 zI{0r%FAIIoWi9kthrDArEgeIQe3f3lohoOm9^?0)tU~jaIJd~C*A1eYnh;pk3)aDf;5~-X z8Us}Y?-4xVU;D#Oe76)eu^`-2THjjhqihN9nVR1vRHVLm6H)<`1v;HpzTD+#be`}Z zv(2&94#@BDin+RbsRhlR`<)Q)jrT97J=^<$6j>DZr2@CL^cWb`E?m89kxI9tpadK*v22RbaL#y2)?iqw)fZ zpQT92%WxO!3pXSF(_FAouU|U|^|!;~Eqgt9VVti0CGIUThXeX@k7D!l#S+o)8u2Qh zE>J8lg!HvaK8)H_O3SB~^AvolI!e0L@?B$y9L>KJ@qW;+&GD{Vh$bJIudfQ3EYkR- zjIfV+m@SjB;G8OR!hj(A|M(oJ?v<+#x!PdKbP^{*w;PGFA9=Y7J#3fecDpb)*U61= zqX)a+&eGTgVMjVG7FKPCQ^(cfxPQpnnld45D3zBiJTdkeMcbXyKrG+*HdtQEN>R%* z*0OOYtBgPV;;-dXGQ?GR zPO!*Jz`f6bqqGmqoX0^R4^tl{Sne{MUR+71ek~Bf;Wk0O?-26~v%%W9%l4?-5pBqb zw67FDBSGLN8Ixxm*Y2uHD#ZS-jzhvvIbYg}@$Qihg|PA;86sdTgvc0|TpX?qNc8i@x^sVh$lVUF7g4fOIl48a&rEguk!uEMh)JYpyyzLbV zEYgWQHR#`HdX699@%Zf0)*~U5)gUvkp&CvsDJk4Z?Furb&9QU+fiKD~`^C;;fe~Jy zi<}m}kc)4=?mNCJuKKA(((6rzBxG7lRaA6jxn>KSz2U#RXXZ05(l^CBe>_4f?xH~q z#rqOt4`Ozq^eJ1ZKoX4ZM<3=B9Nk! zfKHKIg!e$3mKsA>?{$hXVL!IMrV3%NY38XpA~hbOfNR-%3uu?-j(g2YqO4U$o{d7T zOhk5F(iY_saOBn85j5Q~I^vfmAMSAd?)H{TEGYomCYhpspxL=@B|IjH>v`Q4i8g_A zK6!yU)V?^_p4F;G6+1D!s2OBuVthOAIa4HuPKnVQPNN|OK?#htVh^&JxNjOkGQ zl_XIQ8>PB*R>{F=K`RlS#k^~m2W+!mQGk}MuR&eA6|>NNk0oh>qLh4ug`S?wG5tV>j#=Q`j(Vu+$5vJ}a6BXcm0b7^@L=$Pt5N{`euyC3 z7lio_evdr6E;9E4e%ZWr0G&H4djvQN+z(y;5?=D(Wa}XJc}2WY|0}c+IzA8(+USEo znn7Ifszi-k$mFnWq55Fd! zG$}eGt-t-Y2A_=}1EkV??&81T;FiCz!-BnnoBq1~xb-KW%Hk!(^Y=e|_3u$JtqBDs zNOGa{Wx{C=Chif=NAos@Df_q>?&{;q?BsBLy&aI~4|^wkC>X|T`Lo+p<1U@a+LLh{RPqE5~BVE z(K7%&%;|GhATBm7b_U%HKqpR@DIP@uHU&5fB&RJ5zq}3BfzwRk+aHCUvfh6J zoCRpLan|YYSgVm-EHJ2TdUx-dXuh0{v;q^4o6K`&^=_z)kAS(l_*?e@tASg@U>}Ax zg-bizcC};6wt{8#EIwOqK?r@5r^YwK6?dc2rgt0x;OP~7KPihYEiX#hf>uJgu7R~ej7DcD&2!4L!hWmO-_xk{#=+*!L#sz0{%vDP2pq-JTd+mBy zHIEca&2`pn$0F0utWlLK2j}g@6_r=)LhFeD4%6>VAZCK~{W;Z^;H%2HRiyXrG=Kwu zN7D44U$Rul)_T7@B_IJvpfpNGNG07?TOU7oX#$jXO4s~vlB|AXOSh1XUzuxhb7fH74M;|$vUbHL5ZcbV$4Q`VfOoS*ET7NF6p7V&IyRtRNiTZdY!==T}@ z^h&!RROTgw0dFoTS?bG(wX$B)V}k7S%zuW<8`qnM>Cz@yiNOQqVE+v+|3o_Q*Ky!u ztfhqPw>EhUXc3@IR#0rx(5PQYC z)z-}gbFTPZR)m1WIobbE`s+{-gZ4?h$WP_E;nVkp`~^{Ja_s+!LqS1WdtIB9=spp3 ztGaKUdZdSkTi`pyg85hnk?0QxqUtOHdl(b zGNHVPJ42X6^oxg0P>nsP+D6LYwaQczEMZ~!Mil)dy&Wqtv6e^JJBd%n+^lPE&?Q=U zRD`B8=MjpC3(a-tqHfdjP46w=4m-h!Cyqrekn zxcS;_a)r8xr_X(!0yprAMGEubPbHJJkQg*pt)sFffFc=xll7s9nXSmO79q8gV2@Dz zEn3Y;(2>NPGn|3v|6`E(wHlvXnogchl@1)Bw8f}D8fOEr*+g#&G^Gv6j#s*|CN#qM9Cxa%ih4Ju7=b%y34eRf+DD8nO5)@`TYu-myko-czaf{*^K!a z3mgJ{D)#(w8Dq)8_@}8F_;7khO~{FW&CO?s2}n-@JToXP6(M2ne8Y^~f?@usj2E|h z%z=Ykj4cSg-X}y+ZKKbWCa!hCeICHh4n--d-5|jZ61mZYRYH)l-S1h;5@Kn`Y=f;K&R2`vA1ma^PH zM%b_VXXjd|eK5b&zwT;vbi1R_k4}TEV?Q39e^iLfg&Wg&3qs1&1dq#a79laXlRD&@ z32!@uftd2;b3lpo3&-IaMEC{lNo4Fnc;7HWPUX}(bx2NUx62IG^!U1Q@Z%Hup|Wc^ zD-mY5XpL2$g@145D^hY3@p1&cWX0YUw)k}qmZJ0&{NT)z(t#vxR4NW85{fI|X( zzQ_`PCq2d7a+mW(Pk3EH#8>%tOJ||?o%KK#xs}$_S(2(uAM5wA0=o?*zXId)jNMge zf5-(h#Oy$GDr3wd5-uJau=*~9>9tER^Gbr9f^roci>^RHN>9k%3J@c0v}I(xkUPna zeO(B%K*(|NT%I_&uQiA7{F;Uxl_;Blfdap~c~}KADv41Lc2vJZeOdLAtq*BSlp_r~PXJ7X7QaT}+l2as9QR_G^LRpsGZoQrXzQq(sHny`po>QFe~RkH*i>sA>H^WGRclSbshhH za1%Fm4)o83!(2%wS;?P^wVpF(em39VTf%D>L!L161Mc7z&w(x!H~d*3kptNIbO3N; zDSQgB3LCJ>jUMp)QJNg5lx#7i`PXy6J^yJlKWkgiW58w+>wr&D>j7^8stmY|>IQgI zrLhdMlEnETGrx;~^^`f#M#K)lhYj98-_d!I46sB4jpO%rf4xB-B-IvV&1r8=9gDLf zxK=jIVH*tF0*GOSB*v!z;J7EOVvd`iUS{IPrPkOTH`!Yg;6&*pYDjwn=e_3V$(D+} z$&!)ZIRc*MB0wi8aCFyM#QjV{B<$GVMnERmXPbzfxFK9q_5I>&EML~u+l9udQckIIaiY15j#mLRY>)aLY!v_rtkCzaH`z* zOW#7cAfFYUee_4=BQBDf~CS*Bb5?X<1B|J_+<;}3g zK$U~fjBbk8)eG8Ta0_^7N-jvHDp=%sDLD3+0 z4sj1EI_iW^6hxR~9-s;VN1t$gMe#GPHFjP`oAFEAeG~(={8JD5P-*vB7+;xnL zn-rOuk(He@o}dSyd;y$IHwC_kYt@U%fBV!><8CFP$u=EHA>k-_$(3Ipr}yEQ_O4E{ z6?&UElOfG&!tm&R$s_i&o*w7+OWkgEHN70Yqk5T$j>TNRZWtYn&cM}y=ndkxIi*Q`Qm|lnTV>Y60 z23>xr)L>xek*-0v`qG47(I2+}9A{GM^6ipLgy`YAsf*XCy|R(K4cg2=&N8O9w4-|0 z9C}MNt$c(_9nt{XRj;2FOQDP`hC{kXGQ*^kkgiD=Nlhz(gk%Phfe~1w`=UjN(TNKY z{i@V`IpT15=4Ck6C|>;pQF&qvI{FY1df8VQO%$T~p)H?eBygU*iF({WK$5#Ix1*H1ZcN%1CNPx0Y;Gx9**F&wMXFbjw%3(pPv`=Gv ztLk3<1zTnv?420tuw2p$a~wSANcCsw!wxfyN8T8AUrFrq~04!34wtpnFaYOPZ%eGVcPL zXCHOHE{p;0ikz2`^sdHZ3c(EKOKv)re6Pn%ZJ#UPfPiWD0%$AK6~&r+l8siw_Oya#O*pf}wWMxJ zHvNIheVN|(`)xUTD;s6$q<&*q2bHAeMi)_%(!>Il72CP3ZPzrmv-rMfbQ)b#>e3LWeW}8 z8QpD5#Z=o?{A0@-NlRhs?KgSl&!J@EcBt{wWPflNJ;7!@q}`yQ5x^vwzBSp1X8V7+ zca-9jU}(0kt^wC^Y_5ZfcV7-{s>NHgZ_9;kDW_aLF}C9Z)Qfj8dZEH8EO%*b|C{u% z0{bt}B%10sXp+GE7ibb{rV?BGH)!GneUxDEPtXKz+}@n=KZ7PJ-8sJI0MLXnla$5z zH)vv92F1my=TG*8@_(B))m;3qw5k6pS*$s@aVwl`UqN&dfxp%QFq2CI$O;#eC3o}+ zDXRS6)M;RU;cw~`$*qrHyYeMrYO(TF^lK>{SawPP?5yp!8jFG&r)50`#*A{93*U~b z0$DV>`tJahMoPYW-4BXu8Gi z4pC(G3jD#{0dfEi{tXO@f|6}HR=fAgUL<+L?#X-BiFfI~~QJw5#$wsA@_ zs!Jb5+5b6@`gK;Ct~o52R`vM;ZlZmPF>QKpmwj%L-dS zx%-JQ_vYY0;f(y#S!U8CG>b>Gs)ONP>l}YEdoQ5Nq5-UaAPGI|7vj(-v5VdA^!=T| z$e?7}6rD+3Dc<`${Ob%C&0t>$jYA9Qn|hMW&Is&4E&Ha=<<>G*^)bzXbrVQ~rxUEh zA4$0;#Jqi9r^PE)^1$p|e(JqCjept@x}A(2vdFQN0Ie7aCYUEI7E z&AmnNbO_D%`N$?{QAZkKEr|*B4DRx=sJCAXn=R6`*c*otp!@^M!G& zp}v(F(u18MW@0(uRcYcD|LPQ>Q1qODBFLSxhQaV1A8at)WbJrxBMm5kMX@SR>yX{h z^9>R$R~;z27tT@ki;e~z;{BF#>uRvB!4BSiz z%&nz&Qa`CM}Xsm>o3H`5T_-80O)22#h2ZKYD^JK1>^nLH1P`Lpmx)sGh$< z1kjH$GT4dwZ~=n3{=5XvsG~F98N}iT6;2V;up09KoS~WT84sZ9(xvYg9Qz?Nqy587 zGc)Ii`803mQ57MBw$TY8gaN-enHr3lz8wk>80k$ouus_?7z+kK@Jhs8y_B_|nswX~ zR`_w|<&Z}_IL>(H%G6pR}(%FRL_a*~lB#xOMm0X^p zYObrhS4;Wu_1Aj8mhwfe+|h2g#KiIa5xF_t2)$PHsk5O5eIP1-VZqFHD2nwkDV+c}5 zKw=u0dBlAS?Z3T7csM$AD%vgYU~#UA5t5@4{kAF?c{en?uVc+F@$hFh>&uM>)4DIO^58_Av z!7ECJJ^j1LkcSo4)GK_4twYz1nrg>kfu0}OC5DeD%E2fB^FiKQ-zB<1nEMi5je1~* zDXP|tUltqU_Np}^5-s_X3pyXH2kw^ohnwuh9Ii!i9a37nMm#7zuFlx7>9x`sWlPIByani@Ne64D(k~| z)|AuS_jmDS-5FoE%q8mth98()Q`9oZNP^GUD|3k^ZX4B!2M~_Oy_zxNE<#vnSm+2o z?*xjQ%1}e(1@exQ4FlRM&GE|4G-S&ksM-J{@{ilO<&E?N#qYIl1KOx$RTs_(V-*J{ z2prXmbT7kni4b;$FRC2NPPJl@6;n2}uH8&;guzuU)(XTWL1pWEJ%Eldn>z~M=Ahae zRvc-wF{Zw(3Tg(HOSFde0C$Fzcvz&`ptf{$&2vjw`xZOJUMRRV5tWTL;tKkNM-VZU z9;Ri^>~ri~2r)C#f(pUXupzd;d^(G4b>PWq0gdTA7(cKS<3<^%56_7gSU!;hv?+fC zh6&qjE~^%!8mh!hs(IIIorIonlk-a~?=(H*m#}Ct_ULU_O3uw?3_pUkOl9=qxJYOR zZCVphJb3I@%zioPQdWdS8`QULib|Z75e< z4&(|I*>2H&rE(ZWX{@$t*&md0YKAITHqqx`fhs?1=~qK!iO=9z^KG!R`N3~61J_Wg zk1JvBrm7FAb*_lYZTUY(ExHu`S8CC?R?2VYAJiiDkAG5&JO4&4N)y>Z{-zd5Chh4b z%ayWkR$3kLAt^eXvt=ZEm2VgZ`TsE{Yy2LQgTnuHOa>IaP1;fYUk=JixU0#ZlEI%V z`#fO7>Hf`&b5G9nJNoFi8|POOy2nsG!GLYoS26AvC17iXywkf;06d;Ce-$@V%R^<9CQDq zdvO!3=E(n%)bM{Zt2i=a|F%$XB{Tk4-)pnD9m}TszmR9ikr9bSQ zk~}F6!8xhd{Lg|CEvw{AGA2!eEvZ8NS6Br@GHYTlIu}!mZkHj$H_7#6)8%;70I^14 z%jl3g_m+QRjov9u_`YIzc_MYSnQn5-vRl_KW7vgj)Q)m#8WOJxEStvK9g5o*k% z>BBAv-tn9vQ~lGdReO@^aGHHPA~g(1&f>I6?O%F0yzYr_yPs#fI=Y3 zn8UsgiM{w4T)$VKFN%g|=6bRaKbz0BGCzjtXpITE<8-6pr^y`{zA6^ylzwZu@;Yct z#wR4H3~7*N)mUrQ1Ivt3z7CeMa0@8}+hc4m!;}CyaV9s5HnvpaQO~X$LLy`KW%rC` zIdR7sYKY52nfhsd%?=(2ze-3HcObna81hrwk!SUD(`M#vTo;^D^ki(2ILA!HTBtEi zdIG$4DL>)i8#)Oq;g;6jp$d3XsI=0nYX*C@!Fh%%I(Rs=r|r*cPHj2!{ZdFgs%k?gdh%#>x2m-7_&9fa-$$Nv{BS;h+xV(|%u?Mq zt|8M*Kh)q0r{hZpVw?Hq>3nl3X5V(9_4_B=OibJ3d{}cl8zad-oxNNxW*WCeu0u*wK(My!mZ6v%#@vVAP$B!1K@p%UMx!B z4s+rG*VsYKeUJj5f)N_n4xBGH4C3-9u@g1;Q35y&qhG%O;;sn&rUGeW;G}hKVQM`r zfVJ-7$|(pcLGRN99Tg9n6pJR!kbP%<#1nA?BYx8=fWGE5BsNHIIJeb9OD;@6wDi@y<8rIia_j}IEdbxGh%vI4nGTw zpgp!6c%0~Rz@LxHx*yaj#Kxh>5wqGwN~VDmOZ{uPffLj9b@e;T9EWEF_D@?dg*zV{ zjW+tG148u$ObO^+pRm0F1Mx-a&FmZsy)su+e{5u9q&8O;Pta^c{J8}|kzQUtB;|v8 z1MMhRrSa2ep%C$eK_M7FJd7YE zr5t9Q0~34sF986U8E{!=e1ZUwd?eaLCL1ZbXZO8$DhmLTL(f!i>%_+55d231z*GeP zzj}*&IRM_GRy%np%yaIHn1>j2j#VXmT8d90NhpBwXZ8Wc;gH%TRTNolRm!Qq{Qs`O zS=0oAWb#+9UP+KA_IsfV19*;?Tf9kO^uvr&cGBi2{SseFf`oWayyhs=`LY$GaEwZ2 zh@Zd4ys7KXB1`tQJo@${`h-p|&H5ZPQ+Ulm7d7V*NvpgA@CWecg`N|cG%m_G$n&{VIXZ4g+|)Dvpt^ro6%wec zI_Co{MnqwvU{O!VhsFXX;{ykx`Du_mb=?GIynyyaxZkS6hF`x`g%F=I^O$`>4O~|M z)_*dJDk^s+)Yd=Ff8T#N|J{E(|82U#3PT*a0T!e0L?b}|$zn8H40RGXSBpd(@xrB4 zN$~N0UBDJTl-c=4MQe)+nQ)Z!m&J&uK>YfT#c101UoA%N8h=3Yps#;hjJCoWEvxI| z-;qkVR2a_y#(y=0a*f}zLh)Y;G<{fRY8;n~wC-aXaY{QiR1>NF|O zF}I!I{gio5-$>hups2Y)>^9`#r+j>kQ$6^uJ3SN#fhg1XsOzh!qg1!pzX0fq*uu-Y zp@TNBL3bSN3OY-7_5aDp|K;C}{0wcl|H;U&xf?*vWjjL6O3FL40G9z>Jk1qeq*nQF zp8Y^}D6A(^oi8EzL;>u zXzvh6)^5?@g$3i9R+DX8q754G%Cn-zEb1ny3aCf`qEc7LET=)Uch;fvB?Bp4Rsxif$kFNlgz-sn(k*l-|0T zQ7$NG`S>3^v4|#W++JGZloqcWXBern{dg`knIYk+fITl*Px;=)@2*ezN#T+AOA4%3uTSE@V6 zl|7cV`+ph(j(|yd|vf?qY*2n-xbzN z&amn!TT@u0*|W;EtPi+$tB0-YGCEobnPNa_K(c5m@zo@2piOGDhOk+%2B-tVJ)jRGIZzQ(% zI%W$m_@*UZMY5{9f_Wa2*^jHbP_?~HSie18Xu8<+crL7-Cb2{n$^yMhminq0vVUbm z&e*ZY$a9tV_{$ys>8YEx`)=-X64psh2Q)98L|?R+o#1*OGRQZ$q@_Ql^N2b8{HDX>7%?#NOCMv83C1CWQd}@Ea+@L7Gq9q?B3uUx1V%*cqz&|n z{6&u-T@nWUkSGE67C~aYZJ`B=Y8e61RfZYXvX$3)TvXA_26F>Tb+p3DMQ(^x$@P(cM_YvnK~;zWA{Z z;mq0n1+nN~0T#(HoIqklv@E6^WG6%-RbLPX6(pxmBcT>d<7!G-LKTnYVRh{;w+9Pl zSkzfJwM7x4YF@0tgHM(8LU)Bqi$mwTShtlY|?4FiPvo z9~R|y<$#;FQ^@89ZRKS>hX3RapmsN&_|X^>FP!^=|E}>zGNPT@6aMY7E6S_nZue(t zK3;j$-DU4rtXeDI5E?e;ZPO8e)+L|xkeK&b0TGGwGpO05aeE&Q1(a-(8}BJfbUV@L zMnDW1u!u%dKJA41`Eqzx2TiJcRR6M=KAr}v_s*VurshTFo;_cixAW{TEA5x+cj5An z%U$wl@YiUg_bva!scg>ot;n~w{Euoy;Eapvx%Y+B5AlILG`FtGf$`%v&P<)+TX*ox zt;N+wm6ahc4o{s1paU&>X@{3i;V&7T)pY3Q+81}8m#9DH9vxpgrMH|rS^!`EbD^x~ z^wRn0vv~Yk1)eG+k?Q>XZ{eCYVj^Pckj&jO?pz$&*|PS36T zo$r8EL4Z}8(17RLj1#1{02f%YfF14$0I!aX!w*;nD4~1l)EGDeyoK+=@vC~^=JBib z0#os&1?j!rOD7j0?$Mp6)wfH)hvuo@-*GFmapd^*B1!1ac7NW0`t+5`q|8}!Nu^fU z+utcYiynW#LXadgzdHYot1t5Ua?-p1_It~NEIQC8?xBQsW2c{DO^-vFYk&`C9-?Pa zUPqxceHRK}Kc=X8Cs(z$d%#1`=V1ih>RG|&%!as9`8kfl+sD?qdB>k`f@e4U*5#moXsHM=0bPuCkD^f9;MWd@MN*7YN18@3>LY5O&EJ~;yWVY_V=%Hk` z`UKYW<$KJ7{K~8|J2lUfeG*n~(QTlRn&oWw!QAnsysSnUp=XyWFzN$$1g_pDLg#Ci zE~E;CfAj#jKe!L`WcEm&Gn)jUr4H!Zd`8Qdd&d4NouP-tl9YQQH-ybi;SEUT-fMR}LP zdZ}mXl0caim?*2~D_-Iaq|X{B7>kFdaK6vpA~fyc)9Q1EA1UBYfN>=Fbi5od&!?@R zWIjIng=0U9e?Fhd10or%WSVJZ1jpK}o`8O?t3pd>BdoJ(qzWlO729?yd}74+pROXLzqXV}er$$lGPc12I3sCb$%ikOCN71J zz{u06B!=R;HVljQ^?7mrx;-55{oVd&jhWVw8U3LucFRgAo{KC@na+aVHh5EY=ROq@m z`;GUDx`wl#97n^>!j#xzbViwNsK8jNoFrLadNQIZftlN}LVTM3!`$1_K|IvlpG&+^ zz{_dE1leA9xhoV&Zc#xrqyQ3!a1D)6ejR)`;6ciy)WHs=B(>j3KF4}vAl5WrG44Uqyw4^+>dzMWxvIt|+7#|g5 z$djI83w;TM5G`7gDpFm$tGppimuJ=JJWMahzoWNwRl}Y9(4&y(^xh`}^EZhn!CRazl5-y|8@cZ?>0+=&=RF z##{dVQ?Q`!+3ImIwSJ6VoWIUqO$qD-Xzb>(m6D!z2r78j7}x!N9#{Y~RQJtJ%34|~ zmZS!aLV3tqs3u0v11~2OO2L-&hfO1LRFv@|B3qW@a%;5) z5_M^;E$I0YsJSi2R+vs}Y0X>XBx1#xzN2$bW4Yh$^+Q_dRI(n)RF zM75ye2GY3H;)cTRed6a)(WlKIiupC=xH!DKIp{v3_WivKjCnGZV-n~A@?r6%P99NY z^g<@bLsR_3jFXm8g<29MI*>n3Z;&d>SEmzhg zz3GttSJc{c+6&9bH>}FEiDRzDXigcA;jre4m7Y`qT6cH#F)Xr_(UuOtMr1=Gt|DX} zkD#om+T+y9KW3IJR$9lJjZ@n%nevp+1ZjR8;)CmRQ9ig9^sr|QQV^}@*CW=c_Ts>* zSH=>=7)6lnFsHWQk2*=*s>x5-#0`~8d`sAYbdH%{9}}+Ae@P&wd$LF;1S4j^yQwwZ zhbh0p+D`Ih6yV%djm~=;1!iuhZ9XwADIJ~9;zxZCes*7M{gR$nxb2s4feh!C{J)& z5>@T55=bJ=E_dVpQvWh_i+c+xqW?)4Du-ZHKa$QE%Aq4n`NWV5RI1M<0Gh7HW%Jqt z_ZwY{Q)Qo4uhS_*cv=muNDf=Y)ZN{ zeE~bX=WinvGEps@vgeacm|PwpYnpK$I^ZeiE0~AACbIUhI;b&M(zXMyl~)wwW%u+eawS%F*Xm(D{vPWK*)V3 z%#pJ|3>E6nEwCyv6V>pIqTeM%GuvV6nID=YWf{>( zo(v)!{h7urQb&go%P*12MMwN$B`|SSo@O-E!YtMZln=GYqyp9Pzdds85B<*2BIw5TU(f527bMj^fZ3L_xPo6FTa)+=ehda?GiyI5#(`CxF)(NWL zj!O5HBxN}^Gj&plHm?k@>c@9>Tb7erlbPblWD5d!9A{t!<^*cQ%1lc>iyf{aa6dKZ zcbkl%fWB{`LUfYZ6DRKtqRJ}Sq@8|E9T|<5EwhXq{XG*hkk;6){^Yz`AxE@`DU|Ct z;EnR!JU;q}eGtb z@{^OawKGrmc17!eI0)QW5m1cCioh%v&f6?tc+l-gs2YUQqIQ51)3hT zgc@!PSbC|iw08#tMkJrNWQ`#lE3<`LByMfmrZU^5BKvVk=fMOLABe*QSxOrZgL}>? z!V1gBlP4^os5#QLP)EMM!MY)kr@fpEQF=rwP<917k{lC1+>e)wGQD~5^iyDlUKZcw4)e&j=o-X4`8l~lBU&*mn=wb zKN|;_wO&_oXcjrQ&yVFI%#x`fXt)`RqN8`!ek`bX#XAtYnUisJyAj9Y^!0P?kW=om z*OR~jVkx}-!*Yj(1P94A3=ND#8{e|siPW+^^+o;uEou-2{#Ob2O%V$bu2?zc< z&`NmG3Mkh{&5uEPr@zW&C4jd0QfVMp!O;IjmIEBe(lmh8cIm9GNAB z;oZK|enPU-$mu?&ak|xtZJI$MufA6js5ec^fbZ*B5&wo790g5sg-6Kx@s&Q_QTVP$ zpR7ZSVB6A)MM3n7Ayl+G;w*UNIDhkn2M=eh!|M3^1Y*_P>5D3fwE$)_WMp~mS(Q<` z@-WhdUrDmh{JX7%u^vxp2awYhZwOM^<0WCprv#8!V+23Vu`FJbBi zLABj?ws8?K7<=*XgGCy7N$@L4T8&A?1I2UlW8&&+3%aC zw8xB~Ri=rtn5ZX@-Ud-^Qrt_1*(}t#@!2f(Um|*3GZ>RLH>5UM#aCf$Ai_8K>spX1 zaX4uG;A*hJ6Fe6#<5;fHrV_R?tnIx=tWAsIG`GF=I}=MoZYO_S3dq^Y7KNQIfYOre zmN8Ti4Rv3aXffLDY8{)4$b@aIKS0}>&PkXqtymFJv{rG585rW4K+7mXG@M)=cSwjE zanpGNq3frL3mURXDPKCpI@w;HXg%+>9~i94s#($tAdcSd8lMj7b#xS8`=5~ND4re zUm`NGxH^M=@insRvFCVzh+?Is_dzhR&Lll6JZ`I%-Ipr>dE$Ot$@; z46En2(*#%&H0$JrSW)&Bh>oH$1+g>X7XBw{JII1h*4se?8X&$7!WW|>7o#js3f8Ys zs~TH8SdGydfMdomb_ioSNl%Ew86x_w@5T%KFy#?$wLXyn=^83a(-aRmohpIye;3TEw;E}|8V zIb+Oq_jVMD?TUHDS8{|#7it(V-ys&pHgd)EaE3*^xv)~cNKeeg`qoxFt0HlOAR*TF zJ%_||?jxWO`7N{)=9hCJ9|vzBNQCV0z>{Tt;Fk4XCg&7LG@OZ@py89FxUD=@(i#4# zKS-04d`klu791Ga!_21v9RW?qw|4G@2u01qalB()1Up2+zC+M)V8N!URaju=GS(|gKx1CSTk zK_*l&*nTSvpr!Rgu)NA6)~p|VRxi6j_~+U{t%A?qk{}lNUaC$=CpFqabsGDIgZwXd zTBm!3t|!TbGLY4E^Z)qvm16|%m_x)p{|%uv;RoIhN5xT6LlY=)P(05uOm$y>07yI; z|LxlsH_jN+8XyTWQcSN2j>?BD{EY&bff)L4z8*OS=nfo+{}k@`3g(_5en)Hryah30 z_^pD;6H@=*3iqMXi+B{n>?8m2^}s?;bIZ5iQ&M7Tw|Z-D@hW?}@$VV4U1#5<7k@9@ zCBqhm|8wK+i$n!YOZKmgA)D~?ut_%q222*WtKZJ`y|L`+b}x`S9?TOy@4B~>&lCPN zFR#np#i_y`gA3QnHoiw7c)FMm5piSK|2}Igvh$6kVSvXb1;Q4=lNZ$QPeS6J;b2Pq z$Rh>S+(VS%Cl5tH!OH0TNrP=(`yW!zt=zoqZD$|EZzk=00lQ`d*<8haq0{?awahjN z2U+*FU@_Ch6kOUYHo9#)A-Thdrxb;KOg>xW&X?e|vFEgd6?T6M0!j1-S>F=f|HR{y z{a-ykr$jE8YzCST-%?K+F=)TiT>5F~q}n;Xdr#w0J+e-&+<}U$_K|p@PBzdH~*#b z;e#oJB0(8%|5o{+%i1cfmQIA=2HjSS1pb`ouOGR;B?%ol7EAjVndX_LOYpQI|{?KuJRwceV5lm7?qripA5SMV|xOr~fhgX!g8+*#BSI0)xYiq(CIJ$Jk#<*7M8jWqF4P#KWW zz7iNMqwF=7{vTmpVWR&Y=JiAqX&Hi&b=t{GuhM4VzQ@WwF@unisgBaUmQ9(S-Y0m- zt@gpv-naT^A3t_iy5MtXhBB_F$GeZMEA{#2lLnC5u&DTorvH!p+c>wy&$<7@#vT%~ zaKJOo%Sor`{0Fntn+X(vEtZJDUz9VZlemBA9s^A`QA(N1f^XajD^xPosp^%)Hp$)g zze8}kLl+P{3{b&;`Y<5=pNaM#{w>;nF2>vibx?{StjezJcf)%Zmk|B_(N-D~c68|0 zmK8}9!6!DT2mV*_Ua3Vd?EjkX1){n6zq^Bcz*LHP<8lQ>SRKTpm3NE8D2FX-{-qM# zo-*b**jNP|plq809{XAfUM@x@@?@)D4oL95^qcr&#v_kV>XDa zhAlzYR5S4do;W!2n z@gzO+m{Vw)I&MCq+2F+N@FBLS(OIpSIxKoW?7+?MO3^<D;n2w&@sj;RmM&1Cd|QY2;vcP;)TH z6ym!@b1o6j9Vk|{qIhYws_q|FJa?1XqtJ{j*I^x`-PtpW!mhyClCPY3a8FPL^JV1o z<15crWNab|*Tfrb)3h46`*?oqd!DCLy$qcmoMA`b;zb=>nJu63y-ts7G7>0ca&}oD zCW&}cQ|=#h-hKs2Jd^;GzQ=80aD}$$9U?dRNc$&Yx7!cA+i9bfU@$V5ZNZwyB+#^3 z3GEm+#X-zD?kFz>YWrQ`Q*&$Vf80TZmzMS9m7JOgDP~HJ$OVua++k||}CHI4tg#CVO%p~jA=H6}hxEHax*vr5B-=M{c*c|5_p#|rxf36mn*9^_$L#D+5i z;mJegeG(hWFKMhJvZ33N0cE~Rvqfh}pu0N*tT*Tr>HWcFmEQy9>`@}y@A%;7Uap%m ztqVb?iNHH~JxM$W46yNVS zz@;D%agDEj&}CNA0y3@w8K~}IjqE)E09gA2WI*EMOgmd2X1Ly-CbC)ZNrw#crzFR7 zL~j^I?)QKG_iMot*OlL zNVApnRT8P0g+opUbyfAo+es-@YAd4shV=BNvJ?Yjczd^pBgqY(_)dIr6zEy0e3&=Q zP95`RBDyoNUnPTe3`~>8%F(&luDZ%KJyx9%I15DS1lS(sBXC}DkuZ4KZ2%;haMZ~Z zumD;SW6T8}DJ3Y3LW9cOu#fgKbUQ5I&(Kf^$?F#a@e~)LCOjzBPrqjpfO-_hS1n3;b1bHQHEn{k#*W%`x<*dWet#p;#aN^B`{Upin=^r^EYyn87hMK zd*mye!Wt!Nne8j!lnhPhz)k1sV++OIe%ksQHJ~N`hNov(Ond)ynTzXa7E4GHU&XU7 zox>`f+b#kPk&&Mx@=B9%UT4D|(+ggNwCbs)vPIESd;uV#r*Ek^KFG~}9jmA$@rh%4 z^n#W>?Tt5EYqJj0V8c=y&)FAoCTcL6x?v8x6$(lwvWO>UX_OU^BbFNcdi5F*8#N7Q z5=$hoZ2tVC7+T2Yyb9X~Z6d=(X$rl*3#1H~Mz%gHdWd7>xfAhKNn16NJBboc;qZ!? z5_IPGa1vI(A$^i*wJbo$=XM)@Z8}g5_tS3G#R3^UYds|&s*y+9>$GZ~@F|_AAyh)m z-yO7;Y$$-Co>jLCS((J}R7g7OFtmNQSPvy7?Z_BNtS&${8$6~tES z$Q`P<>R&mCXcAjN`Iz%BG&e6YSN#%OJ}Cs!nsHCivc(GefE4?d26;s-*A7Srh+}LQ z2_EBUoy1PlVx_F>i+ZqQrP!2I(m<5CMjOd>B*{RHcFD|b-@R~h(MN2|@Y7AeJz*7v z1~EEapEU1}$7g4LC8qs|@b1QyEb?qHpeYYS>*%zriL@Vv`rrX82w(tjiJW#=+iAo* z56G68);@~GNBSV?Y#NFLmUf~0%w|=g_Vov^S()x$$A)`^xe#918RWa|PZ&=bV-iLZuU(z~<#h^`iYnehtFyPSN{K!9| z8Wrp^fi#i?0aB;;3$)svV4uRV6;i4T;J5lv2tYbVOE&q$SpsH!SE-+L?g*Dr8e5dF2}#U-A27a{qJkd2uFh+@+0i<>)N<;ylZ7mmftT;` zH>(96nm9bBLXOB7Mry@ycogN`dbs+7pubb1n01P=p&nbvL%WWC{W?NZ-Q~v04SU8} z5Rlt!wK)cn0%iRKw1H|knPC~2btDcR@*)!L4eA5P z;sVi|whXghi02wdmd}dKHcfy#eQ#JX@!T33C8wUFS<;VrDv?FhdFl4|Xr@2qlWPK| z(DYQYXjUOQn2zx&$0V`!;=bHaRbhaab>5j(LqaJ?&zp5afq|{#t$)^TZg`Wd!y%c#5@plga+B^&0rtg}>x<5Zdhd zmMA|EbXb8X_RpUjVk`irp~Za>IJeKfADnN|_07fC-d!GtHCwI$-Z%%eGl!VkJZXK@ z1MjSd_u`-%CUNim%P{;=3Wa~6n5W$5$85)0eUx0jyqbTDDeU|hAi zR$~3n*ID5?!e%lxO*&I0@;HZg7J!!~`ke%~8C(FlG*{Yawa-Cw21)oXbx2UR03J_R zh*=Di?st!&_dK+;b)aiP#TzO04|H>rk=UvT0IAiUH1?LiT>A1~MC?g5tw;@%2Ev8l zkfY3cBHlHfu4_6=^)YjWvFNc%Dv!7pA1sEOy%|bxIPiOtl-3io8UrG$!^E&({RDTT z#$64GFEGw@KLib_VzEL4pwtroRaYkLM~ipu}V`&s^X z(9a}l9XBujA=CB5%>XO-hMmIlEo=XtA?tk%7;YaShdW-m zS!&Qbm8KC7W)r2Bv)?3xEo{-jcHg9R>m-$*)2a+fK$rI!nb*8lGs_yrflIzx@0t#U z-uOwtm%-^v&CPwq#U{f_TgoOhKP*DqY%%iDmRKF9DmYf~9g-}GJdHA%A-LX!{M;%W zSE_%xdVpaHI|gswTt@m}=uZXEYrIk`NVZ61yTe_CGPq(GZ^44rypG}gQ*d!6+jew= zY=85#^E2BZog?G!$9bLl8%OpA7KlqsJgAy_SLxBQZ;>evyufJ}9Z#z7x!#dh{Bkdw zZM<-(EF3ckd9ez)O9Z|_c=*WhxwEYwcUKW;uC!qS4%>ETu#B)J=29Ztfoi=?`Ej1( zVZ3tpIp<)fl;#jd#q)wTKqShUWU}8awqA!Zri)mLp=^nZ3ehO15(C8CjG%H9CN?0; zO(N#BUVOy{l4rk5nu@-VA|9c;GcrN>H+Wh=T^moLpmg7BlnY5qDY^-w6`C@O>SAr3 zO?-`3XB!tg@jik1$)81+_!@7a^@xo#LDXg(V{jukxZiyR(Ln_L?pR2GT}jj95uTp9 zTY9<#o9sAZlMIq5-vA zfJd5~njV>6?49WN{1sag1 zieVU09FTxc5{T$`PaVLUK;(Cj7S(E+EC|93R9mFvhpL+L3MdqmKy6D9&Hq>P;L?gP z_lm)RiH?$g1_bs$%_`xu6gvF3tMRcy*=a4`%_`o=PB1z+({!KqNo%Cug<)-F(pr`e za2g?S&q_x|ty;Q4!kE6#GG4!(Be5`V#|I**(s-CgP&|%Z50)*&Rfwc|#~R&rgnE+H zdNo3sfa+6bB?^c}Ks`zXY*NYZ*(y&^Z}^busYDaaepL!%1~hY&QT3ATRAk5~b0p9% zfi4WT8Z^2r+Qi2+VV`cZOW0z)zFdU4xC)q&uE+G@JRIwKXbgty9uZKx#dldOs@i`y z52gjx&2X7L9|C(3VQaRw%JI(5e?742=vqK)L>w9*zmd7Wa&KnnoLJX{^KdFy{qvy#wcFbs|?QTs^%uY2Js5eTyW*MHt4<+I ziH{HJw(+>I7(({JKXSjVV!e$L4xagk<~C?drQNs}v=a2(z*1JPq{Yk;&Hf+!nQ}dz z3x;x4D_@39a{?r;lmKqBj=8`E0U&>Ao@vq+0zo)C%yuKmFc2Txam^LYm3k9uJfD*F zGvTZ_1M$R_CQ;7zyWFx!ja6qg#39pDU-nS4DII%7+&ggI)Ezw~H4e3fEZ3 z%fxQ`yID^|bz26_TUKmFw?|>Az1K$b8s?$u$SzF0JfSVaz_4ORzB|Z-_b8q1uGuq@ z>ET+qWD}mCcru){Oiv?pxJodY&{rS2MV`7iWPWR{_sY_?jE8Zbf$L}WfF|3@Vl$pqun~42mLOfXbjcQDu`1qSAiqeL`0Hn2 zu9oxfP1rj?BqIIXvS%RlD}-Y_x}_0MdDa=VuR+-Vp1uXZ;j3rDHAK2`{cQ+%9eHkl zwPoAqQd^aJ@1u+(j5j+J)D~cE&_~MYZAi$}QV>6=A9Cis5-zCW83DDGl)I5)&dec3 zrSfA?kv@w3NX_lD6f@CUhN8P%vE`1QU^K=7@q+)!+><9Rlvvn+R7QK7BDysYAe85%@Mm{p3HIXY(xo zquljS)ojZ15~L&{Zc4~OzHB}+E;T2-Oc`IK-QGB`@m8ANJ>cWkdM1+!^>I%ot765? z(t9SQG)0+Zchsy^EV8EpyS$Nu(=e;}4^F4G7)nmAO0ff8g2!=B3j~ynL#wS|--mpz z#_x-V4QUSrCD*fhV&Yo^|6g=}k0q=_2gQqNw{GM5|6ZMt^ohsJcu=qk2`-+bhVrOJ zKcvAZ>$v(Wb%F|CR;_`!>Glv~Dy5h@UgURioU%4Hl6IMxh*v;;svj+)c4V+5fx8`@ zD*n{=gU-*hWJ2-ns^U!6sh7=vYz!Kb*baiufAW>ufR;&)(8qjq88Q3;=)@S#USAg( z$^d67?qL#l2bS8SlbjptO)xM}wnjBr+8q=D&MQ)nYD{OVTqG;h=b0QV>)o$s063Xm ziu9k1q2gxrlgO%6b;ccnAd8ht#t>Fi$_r?*wUKofSfdZl@<$vRf>WwvLk%>uGKu+E zIt${S;Evvr*zx40kC1Abcu8&Q$F18i=pd8YFsw=!sx*ua&3W3ujjOu9&YzRZPTVOP z-Id9b&P4pRG9WGaoRLupcAHf}>Zu}HZVBr^I2ZmS-Zyi2)8-&E*b&D7QR@LeT`eu@ zeimjEEyLAN6*M(UlJ8}tiz{Kf>!)aEGw$>-XPObrvrd`OnjI2<1eG}~A2(ZC-dtwC z_VmQA&2`s`ruMax{4hF@MG9H-BrCJeRG!vV6+BAcQmo?OB2Wxd=oTBz8Ijn}G-ciz zT8&I}lo53JX0!Gy<8@W3>E1?pwey{}{;NjP)b+VlT_nql(FL2-o>gP${1X(5iuJATkO3dLQ=kb1UR}F}Pjd`qI8!PiwCHVo6CKtKG3s z(xAC20YwsPlvX{K1?HV)`6Lwou04a%*@2;gul!n@A zLKFshGWryG-O8^<>!Ar+1hd_pNn&FG8jwr&8H!+SkN&;+xqj>4n7l?JvLpKfAV*|k z_N+qEl)(3JS%vn6weaXNbm?txx#N?%557U6!)MTnEOv}>b1Xk2W$=n$m@MRp>#)xO zstT-2*^%JY*|=+yk43mgcR`Ih5ka_<4tX<13x1VHFIyzlGy`UWUaE})5 z*v23d=zHrUn2gwP3FIvmNKY9W3k3mqJpCy+sK3{pi?4GUpzu?{w-n_>s!Xhp>>K_B z!*`aMl^Wg6#vg30HI5VvolSxKz1MovQ)az@Z#Ca+F{N3TTuoC~-8tV1e;?KkUUi05 z8|(bkV$n_G@vQuESpRFZdVE24JeHmz30=KDwZ69A*YtcKb=W&i192sQ%UYyScY)o$ zHzvs>kyOx-v1WJXXn)pzvLH6dUrS->c=E86FIsQNoR+niKkJCnPQ+j%JXaxF?;)<2 zjB5r|d!&iKOB_Y{+qE4R@{wff8Ulhsbt{bhLV4l6G{4OY|ifrJ~|DwYtJ zgSX#~h-e}TQd8mvj8ijZU^F5tZP-l=R-2C*D#d}? z%)$BgUFf=+OU21uUa#-ywBX>pu)6CXySRD^H-C0faayrAEel@#^)Zp9qS$;T(dAf7 z94grq-Mo@~xB5{l2-ZA-dAaJ#&8gbVGo|U;ku>ytHMRf928oR;Xb$)&=mI+#Pw zd!$;?777PC5}j{TyVeA?>FAJ)39%KI85!JktJ(iPp8oWyRPNlbz7v_wWL1mVP^@;2 z@m2oi@b!|$l-BXdTONO3ybO_loOGZ(npgK|%bQhh)QDQ9!GEpvyhO9B`6i_hw z$KXGTc%?R?DDN$x$DB6~^EU>?%=vf|_vLqTKA&VL3>QP=go)+ENl)3Y={eRm#_YFI*iDB#4UItP@LRvOxfZAq%d-&d6|i4zWCWa98%&ui zs&D%qrVqw6SeCeuQ^{2;O#v$w3YlZ_Nsn@9?WqdHKr;wr^yG+Nc@FRPyx{qhw!Z>I z=)!3i<}w}ARx)=Gv7F%@1#wshPVIn%$b^!0_#Eb3L{Pfr<4Lk=?O7kFmD)P>o?S91 zeSNW}Kl~z$$5rFYR{G2q`QeqC6_D8P*`)n##cB)%^re1dgLFx-E9cVXuY2wN1Uw~m zCiFImp+4F-QI-3NV2UoEAL&if0m}&_<{P40n2b8^+v4XeO7_dKzpD^k^<6&fXBOJI zQ8f#gR!&@8{T^Sm{=2-UN+492M9_phAlP2Kc*=6-d6G-kT^ZAV)oez?@aJua>Rsm` z2|%OV6%j~C9RJY+%>L_XP-jIvcPnN|STLAD()f(1T*$j>E5Ri@=0>TmkVn(^47E$= zdByp~^H#5WQkwFsU%lE$XEZy(clN+~o~i0-D>(cNp%x2&9u}Ytz-}kKDkck>8(QE< z)@PJ8FOiUJ!_r!ZJFRQCqcIY_5^NNr)gV-LQ=m+eqVd!Ra~=^M{n>>wh)gZC zuF+@ip38XcqL2a`qBZz)n+>_q7*j6R*H8#s!FrjMCsQPPjjf%c&AjIY= zZm!)w?%fUBr_lP)TqD;y`Z7x`@@HUeIQsk5@K%^qlfV|J-rs)tW@h>3ZfPj``hig7 z1M@XTF(&sEawyP1=-_4k&w&I@wrQ*VgZS?XYQT$NnNO$3`;((W#z~H!P8~rc438O)Z}!1H`z#M=ITm>Dk`tXRrv~L1?uM^*b^>wLItUONGOa& z?clK}1>gg!c2bf$sd7Spx>QqB%!%~!coN%2)pg2bQ>MzPz^ z8vcQ=6Rj1J*!OlryK`eZC*n%m^HVddiDQ0;&Z*1>i7bsxiSn_0_+}~V@pMy4Ig=>R*poKdma_R##PJm$oR}+r}Z)!xP&H`Y0q*qqxD=? zB`7MOq?wA?nGB(*aBOH3YdkYS+|i5_nd6NIlxHph+*meKp6ub!psRwUYbFDo*QvIr z1`g!Hb_&NR#WQcB>yG0r3uZ4mQpOH80I0^(umi6TdK!MCxiuMqMoyeO&E9Y z{&N34cepfdG5HZzqGo0r_r!`-;Q3{s>bz+_zE*xRNsHSMb8h z;1G~0H%8X6(n>len4_eZOl*glCQ(>%$dI}=E+PSJq=`H;p#0(#ZLkL6SotZ9a)=Sj zlbmg`p_t(T`&k)oG^Oehg#?<^Rv->p_20N(exm(8aw(ZQP$|pg9W_wITtN__FLv;x zGs*NvrC{L%zc5OoDU@?z>4W=lk=tbVlmR!$P`-6Xg++AB)G}j!m2Q4#xq)A7x3iRr zctolw2Jn(O7TT&p7jRVfV1Aa)zbEQmoav2w&@Hi9l&ft6YgH3L&>v>8 zTX)KnlkJaxK1_h|KZ9P|`u5#erSy#@`q+~$VVhRO_m2MNb9a;hNrxPzLgCBZS}xpg zPT;nm%-6FR*JGwlt$JM)o(x>dUhH?*$in~3`P^UJ)+M*>SW97KzyR|A*ybiY72Fwe z1CYU$_Ex#{D?fusPWUCSL_6PJ9(k0@jHPlU!EFb{@SXXG>^i9H+RLW6m=L|*CN*@k z3Kv~hH7ncaxh~xl$95#OqMexghu2M4dq~C{mIDh%`e>=w(UUI08tZC1;T%n$FIc+< zKAw7L8L$6o&KI zVy9FhfK08N62usJd>+zdXyE~Q(|lM#;RX?Ton#22yk1P@v|bX*LKE@c%=AorIn&$m z{K>qOoBjilKRa^ji45cWG`EeX9_KosmE9Z0XSC&RqEbZ6S%mV8-o$~^(h*wu7Nj#I zZKa`WSU+I>>&}$n3w6lp1ZzIEcTc2FN^DYITOmj$5>sUAnxxn6*An+{BJve?Tg+vD zq{`GvGDHAIx2k`wNCVHwTo_y_rr|kB&hs>7b~GoW%`SJ#IfiZGw2@U^i;r&8f><&L zYI46rDvt5IF1&`96e8OBeHes0>%-lQp)#TFD5E{J?8vW53gx8Z1ZQMINyOjU_Nv8Q zcHrx(?mgQ(ZKI0z`@nkoB1u@uc-B?4IhvZRE0GaqjAfcEC&{pyVWqCKHi*nf&gQ5l zAm={3ytU^(h4o`t%D_bRmQ`Tt$HMJ+s&69Ck9^>$g5ZRsF_u4-qYWv=Iw2#;!wddCGi=VfXd9T???tPlFYc=;#Fu!K4hhrdNP2iWs^JHzIF)^`7GY3hkt^V%E zk&VZPFj^w$C`eV=KB`;DJ;USsX#N4>TsW&{CEdovq1xCUsf`bmB$fX*{hB zeA*mIEeUD4YH1u+fqnne0+t;am)BKql$8fi*Tz7sORITPTav1D^rC-!-UV};$|9S> z7bfs&9(tUJ5G;$@a$}wSK170D-$Yw2j1#j+b`*?yLGeN_pv$8FI2^K-!|<5q#iiY( zlo>@DP$>ZQcqP6jxK{n!pk9Xknxv=@)baJDf{O3#VRUFwR0hNR z2<9dSG`;_QXm3P-AhD1RFN5-5&4FoxvnJ~2PA@GW(4qa~Ok|hf(A=)Up0j!t8(cv4 zL+re|(d1#J>yWGe?o)bEm*a@9_Pe^Q;R%W(m46?Top4RG+AI|ftj*Uodru?v^Tp$+ zaJt0m6;##ppA~|-n}=Zz`jRD@@lD}uPix9(w!zaEL{%K_Q+nI5bg6dKnK@N;!Y;DI zg|MzxhLp=B(L5WpCrchy^vMz{;3xh6kf6%>W08HcT(8 zKtduIr&X=Lsi8FCX|Cz(sgc!hlrB&E+9BEjp#qOo6ZH+b0+DNCYO?`|ggm5?`U`e4 z{@bxC;G~dF$uaig5nk{J)Be<+auz20Rwpz3S)z;w9w>Kd!?EyuNL7$hsJcEM3?qAF zMBVOU-BPT>#|-wWF5D{N0_;rPK=qY?I;}}- z&Y|Bg``$vqOj2JrB$sBt`ip6Tr{{$;kn#A#e2`rtq8Ss}NFRZqPA;ohml_k?c9bA-flQzQr%i5|qosx~8L z`nT|?pz{%#nM8b`P|*SlsMLOQE-w7OVn)flhh99R3I=uW~AVmC{%bM@U-&4jQ zb@z%8om7DIU~=F?Ta!sS)O)&xf{eY|6c^FmNRu41wd+(hx=sO41okt?hD?RV*x(5; z^fLtiHL>EKh(R#b&RVMbym6?YBaHVcLhV_e8n2ix$anJX*e)kzUcR=9=PGx z?^frzcABTF5^S&%AbcA7TVx%H{Ta1jH-QdiM&N7GIknvI6HMX}5lA=2O(6yiqvm5H0&lvUXI2f4rz>FnGK2nf*NZsPv)w=<*ESKlK`iI!L z;o~HprEgh>4C^p%vSAnQUW?*DAs>z5_x3d)jF6KcV#7e;U<-745Db3#UD0L)q6hc* z)+0)*Uh(J!f-owHmF4d{@!e2iem!YqWWlYKp)n@0VZ@TC;y%xxT|V1SjYwE_Yy0?G z@fN3$B+@Gn{aO*=8-P{xJH0Ya4O*2w11sW4sCYAM|06cS+D24v*7M^Hi=F%(&md=I zp=Z)lYK`U!(~|mBvq8R1ph8P7Rmjgk!?FEnfg`@B3 zck!~^P(l4-kY4vpO*!eJCbknfiw8ho3=U$sgSWZ~py6&s?yTrwdhaDW_$J)WcF(i& z|4hcXqTUe|Qphv4i_)2+fUTvsjij6k>rga9)l_nyMnRBJTA>Iwxhf|B4rOM6p&WW9 z<^+Xd-O1xCYG!CCHnI+AOT3^C66D==O}HleFTk)^;Gv8(zNzJ)Etgo55I={oWU(p$ z>-apnP^+YTN_XiWO5MtWW?LlfKU1gp=-p;`%QV$Z9d6FfHVbMqcBe-gY`79*cgADc z@LkN|y!e;Lxme2Xtw;o(tttU6;%F{}$A0o}RABl~03p&Jgl|~V&)&y4QE*w3plC*y zvY!%;HGRWpC!DG2f8sCR|I+E7ki`H9cb`2e^x}E~#<{d7Pb~lrGCD1?HHZZ!;{GJ8 z1Na=<9U|S7uN$HeD0C;w5D@vjyC<;==07&I1NP%@^`N*)8+&jNr=GkWy}vwbQK+O3 zKi=`bKAw619&SVgZNp^~SUpV7eQ>|vd=AlvBzx`Pk_}MLfk?uD7|-84%0afgBxY z2TkJiM5pUVch>zri|`!aRJ%#=CJ$8jfa7iJFsA%WUVa_y=7-R)*9A;k%Y8`GF?FII z$<>`D*ZlZXQB5e?1{h0d31zi(fd{AELW^4Q8M-suaLt9)UGcSXuUM-1IbxQCD>mnHt4#eWb#{bx`k?W)yX6GKtK zbSjxGEamZ7et(7-2Sz6-l(-uhCewiZHxVeSVGZqjlq5M(n53e$A-6q>kiDu&GH%KA zgp2e(0uO|t?6&_meg(VYH{wgVg&V>`K93<}yFnlo47@DfR4~&{KmJpY`=`-zA`S@r zA(b20z_qq)@cl_!cXd~obag@M&s_UMyBJdAPKY+e>be%Z{k~<%yVVvU)iL!UmIk`5 zl7d@hz8KO68^^LS5&sgGs2J-(ttDi;I_U|OdO1gPKPE){4F1CTyTj^Q{mX4nMq`Wu; zYCMbJrnkNDWwJ*vK7!(^0NW}xkqE(0V%(2r>scT zy@$3gQ$k)2uJ$ z{Gywo666N1fnM)USQDb%hxIXVKf`RKHX)y5OF^gme^K|AL6NQNmTn=16%GZ3ySux) zySqCS?(XjH?(XjHE`_^OxI<^Hwb$w0yU*>o5qb@NZ0m<&L%ISq|ZxAfP02SNvS8-zUmluan#U6&;Y+?l$ z@F7aAUw&OZ+DDaBy@N(M*wE!#u8tY;s=IG3yc{q~D+#Firw#c-PMD<_0l zC{p%Bk0YIZ_2`*yM$2g407-C~Z~S~Y5@#<=-JsAuIQG={l|73hpoY?jIFO_E$C=V8 z5X2XzH}ML!79*8M$9203vzEnPDHs;0Gp(2S5qj-KSfX#uxb z*P=faXlC%&DJv{%$_$Kli1j+%99`{%hxnFeTFb79^*$ji!XOdF178>RCVC{Nfy7hp zX5kH8hbEo1}>6;h;#D9;9=KX6U z4x8bV1!x!kdn0~na(VaPEW}w{j^&eVu1(41O{;i%)t$)usrsOY-WY7-p$wtvzt_(B z6~gcR)+Vk6w-C#Am-Q>J$I&~9kq@Lkm?d3DCOb%Ba*~5%Mtgo8 z)C~S-BW_|1{~bA-3r*}!N2qmWrFSa;3*^V}E!kAq?x;@b8g&zJ<&79xXFp0_|76vi zIbA&|!Edm;Lx!!WA`^9bL#YbLl30Xp$@P-F69Iq8Ugs>4V=GCk=0pgE8oLYZ9|$!@ z%DJMSi}LZ8H(=TK9-@;p@!8`i2vc##C6-?W@o~al2b_;mD_Z2j z>A&8Vvt^BvSU(Y{@eW9BkJmWX7UA+l$FG)`EUhH!D%6}hn4d*0N$nD&9YkRQyJsEpQ2Y>#5OFrft;54AE- zKH=t?FK1XwMk~^^4<~^0)ARm8s@8O7bP>^}#G}z2MRG>GMtbRiFenU=uTK|j=amy* z$2Hm?6L-OM8ZbY|iJJhyK&v#B=o04wVKnOvng@#;DLI6PvP|=9^iWyfd@O=BnU>IM|?f z&L%c7^=9w_TI&P*I`EPPq4#Wxogl?TFM9 zP|vp~;)=JHX2w@f)f8PmnFQH&UUV|BV6FzO(FI#Mu@ja7!v|yGlIfwWt@o}mx=mi3-E%gzVoFY&-9IZ%UF+(6q&%*v zLCFNq`F9nlMIf74-C);p`JOH^p-4UYxC4f zbN(7p2dwfrvW{6~w1PWYl5M7oIGZPhehpXvo0XoTmy+9Gq}(vIwS~(Q1SNrrqghUf z;1bx14yTo<@5D3ax6M(wAZBd0w@Eh|+EvAOwfpPzUxpJK8;0alL^9NK=LqXQ;*pxhW5;UanwCPDF-E}|HLE|Yl`>4Y_ z-Y*U)ApPwMLBc3%W%AIR=kNp1e9$2hC?k#8OUSX2iw1(>35~fjWdP$t41yp7G z)ddf%Gpd}|Z4>hdO;Tqf+@qR)bk!&?p|@X^_yK)6^n3b;TUd8#;Wl{}*isYa9V6m$ zagn*J(L~oJ^H}j{-PM{nZ&KkhZneriY(31V%C%B`*F#QX!}2C3dzRZmaFpZyJ5OJz z<`H=viG%ZI|7@g_#d=?BKg8zsz>D!{N;~->QNFpeB9_RI()EVk`B~JnFV5T=7Ei44 z8HZOQ(7v9{(@s(*KKy0>4l~xz z(kVYN-Z%NhWErx~ASzbdxq$}Xlc-(fBz!_9bJf~m9=PMDqvzi3dwX|KhiH3PXY8Nf z3^Z8ZXT2tB{Bb;eD=3q=F4gvIr_+CkFSLftK?i}k*~hIV^~YnjX@}YnWODaq*-OwA z57eU#&E#impEhjqA7B84a&Q z54u@9fa#7X? z8$HxiM43OUw!O^GvkP;(t1nds|C*;C&Pu9$ZkQ;bl63!3L|hlFClq(D+{y{Z{pMD! zX}BW*yfwyGuRK^Jvt*3^Z7w3o z4!o2kmF^E1+nIoC=0LR7SevvYRLNAJ$v$x-ae9&wH-$KOc0O>l=_Hu#Ff_s7#WH^p z5(nPwVX{WapbO+QW5jJxc)=Jzg|=?A^w-qGLrR9w)HMSXGJh*H{B|k7p^YeEfBhNK zy<@k;GF21Pr_9rIA0Xaih~A5JoMs}~sUIq6u1S4mUyb4>DcNJWPE6(2{rXFyu} zOQR$W+u@P?nVIUrYo!;3w7@mLjst~U)|qZBG{Ds~Q#?iNG|+e6HENf8xgCn|a< z3>E~$<>(yXx>a-wA7-?wzyfEl_~LGHC3KL5TVsJ0`fn%&cvFM9o2SqGNg-dDf#Wjh zBz6ajSZ8)veGzJgyQI1$Q<-B-PCr12^0jC*Rrx86et$*WRn~vq@qx1HD7Y&er} zz#^wgx6-YDB*eia9rWSu6(a^lO( z4&}#gX#7c;-w-iJKc<9sFsC;oFUFPFq0y@bYepH&*??&`8Yyr&8KN~$wm!dkm1iW7 z^ouxxs*j1c;q9ja$v!Q2{!!(&D&YMsB+)OpEehTy(zV-nNX?MQcN8W`DlMAH2U zEn1Rbi1auP!=i*=t-0dzM)DHZ@)+~6J;h3udEDQr7$_N5RD;%-JE7|R%V~`?+*i^j?y#XBm&Lws*r&LYq;5)px-IT^#y<%Z2WyAfUP>Pg z2!P1WsJ2eain7w62Pzpd|Ezpiq1|#6d37xbS_HraaOi}hbv+d1GU7Ug=axDOija5y z)txR~Pg87|Se(g80($VCrz+&ZN?(T;zX= zg<$-je)|5cB%twu>TXQL#wIyTL|m(g~o&Fy(}Uw<9@Xg}gv`ti3M!()U! zGym>P7*aG z;`Ow@I$sP=#~#ov(`6_8i_`~m$rq9rO{clo-!NWGf)i=zKLwdHxj%voAiz+eDUBenDfO35z z#Yc2at9hmh>plrAYVP9{SAIuC@d^LVxc{du0g>gp2oJ*$@}QE8i1`2vhg&SZ`F~*yM)~n|44*TRP~L1NP7weL@fjm_eFKiD?j~%&1x{fGtGw@mY$DQ1NQ3jX) zP8sa?6J0Bj7EvVoQ?i}m%$T{PBL~tB5y;Yvn(QI!ky)Vqn(1=Mj}uk|;!B$8?-W#G zMi(5k5AYaoQ<8xg@)G-o5>4mVYvs4RUik676|MCUi1wy!NZC6yV#E*5Fh`ijdQi^vu>%n?f{RzX~7%evy1 zo_4Ob=wLG>c^4qN2#6Z-vrD-PAP6=N_c- zGy&0EWO$&;@G~1c*DwI#|3QvXtbzO^$K+4Hq>z^_MQE5Spb>#jIbY=}WP%gkSv(~I z=!9xx(1%*e2&0F*{`E`L?5k0Z7-{*L0^0&%##M-jU%Hzw%8s#~k-ria#Wxnn zv&Hi9cm{gdx}YhgNEXOf5mg1r7+Lc5Vr&zzLt=(kFx-9)YD9VuMvztV!w#p&Br~K@ zlN95u=YfS{`Tx{m2GR-n1U+gM)IiVc&=~Uyi&KkhWxNQ#{qJCcTFC}Q$${+cPwy-c zlAK~cXxnE?%%$*9M`|tjO9@9Me`6YPt#BD-1e5!lOZZeu2#>^ilUkwkvE|I(tsu>M zOFTW%r*xPC$ep-NV2F$af`c3{Zjm8%xY{45DB}CH`lA*uWtet#GCK}*^a0CpPIr@`zQER z?}$BD%W4mEmhzckj0(L&Y3<>?dft!71<_4mg`bb*bgu4^g{yD_RV<=(IMbT~6xVIC zHMKkPQ5+QPggaJ5Hp~vXWT~8jr9_0P+OZTLe{7~rAgd|g|FQ-?RI%rbms$TUQs)zr z-jl3%rZ2_kg-uegB3D^U(Oaauc(SmB;i^GCPpH??r3S{dNqc8GxLgCzh-lGf>2n^p zhCHgCC~%hNC~h5LDVZDtzUTn$+7i1UVsTgFt@%f2VftlGIjsz35gCU5F9@N1aP&r8 zQO~QUfoB!|5qCeYQ8rATn;YV;<*c+ELF&mr=BT@Rvx^J`hP_pN7bdaVY1$7`9dc=O zEo(s5cJY+*P<9H=LB5H^^@n_2r*P)awiIwe1wPC)BMZ@MT*HF3W%gMI1UUXYl=_*W z>#keQ8^b=5EGYvwa@n$MyAP0}ox}K+i#(xERiu`FsBJ`qa(A+Fc+*)$jH7 z?x9l;Zz}fhLR@i@n$^8Fe#Pxv<<5|~%{9?%9j*G8WNoVz%WIKKpeR+R$jcg?RH zFt6G8X-YOms8w<^^z6@6BxXT45;KirCprZ`7tZTB4BRI^TzlSb1{JLr?REI;IQg0# zW2h!!tt@Up5D&}XHZ_00*#PX<*ry57H?*3p49g@@8XgYEnubxyB#>`GBRYEDkAJc- zldV}BZ$3S}E5FnnMchJXp2~rHv*F@FtHQhLMY)Q6W9$~U);#oB6B39$HvXNI^VyXx z0ZwC2DtCY+U|e~3jPd%JM@8c3*$2rJXljRa$tArKkVaOzzkL*(?JO} za)y<8QevfhIhh-fPI#x-gFN&fO~K2yOs zW*G{|Qt}yI`G$?T#j}IGon!Y{SGUa~&6=;dUdpjdHC%SeL4e6JAw>#T-#gPC@Cf?W zyJo)f?HcRZ+)i~~ji6Dr64Y0*jol2uEfa5j)9QdkLo-z!g@_!xGX+PFTR>^)Mwy!BzA!R&=|IQ=e1UY1^hl~T8T4qp;r%h zk^kI_?>eaR893mv!3*~)dg8A~!1Gr5fI}*AL;>bm;d#=D3|mZxV+BX zUzcA6Y6RSicEu9hzS}k67BTuQ0M`Qj^GD-^zhB|A_UCT+0jGsi{5f-c1aM}iKH$t| z-^CYSMyO7}ixoyIa6}18qwhhUaWy3Y2NCBrd*MnYPycmMoC-<61^VMg{<(!S@VHms z3ax|nPLh$$4Nbl!Lb@R|!=1HW$0EWE)F%8)u?W~!e4Otd83Fl6AGq?D4!#`mygV9# z&)$dJ`1xI3PaN^IT~wG}xhBCH4zVeNl+Ja_<1^0rERlQ2T8v@KDJ(P&Tzn<=!i*y# zTGZ0GS*`rYNSMP6XCA8RvkVstI8;{mw40i(fk^=A2wSj5I zvLLYF1hJ5g(7C*yxOil097>MH*c7xj^1X(?5Y=;~vZua=(#FRfbI0+X50wL_pv> z#tW&5LsP9i!TKY=5QHrDqtHgpqK$Y&P5N%Ppgfb^-=vV>IS$e}={*E_98ZdO|BeZ@ zc^V8-ysEyY%8jDTE!7npG((RNP!7I_@<$fw#`-oO^4g7cl{h!CE)?Ac9I7A2E)tCw zc@rugg2fVim;l<1G#YNaN;tzqvP9*Pzfn6%UvC!&C!-wKKu}mR?28jwB^GwbVCFba zJ-gQ>UAxM=th$}<3)h+}Ax(-kt6lQckyT=&u8vb^8Hf@2M=Ev*ekO(2FxST+HdYuJEmX_L*4X z_uz|(`k{M$p-Y>q-kM;i8fu1?7VDz)myf%bUm*1vtQT4K3mdB9oGzKzYzLOjywXV{ zi+)o#DUqxflE;VwxinJWcvQ8i)Sf#-8O%~Kl+(AKPMzD66aVQ>QSfusmhWa@@DDHVg%UqO1H1+hnL)_jb zXbs^y&#pTXpcyTfpfc#5VubUemdMZw;S@Ps)<|!>i(jkN5BeY|Ofkitexz*QD0)3-pO2Jk%L1te`~H>KEFo3NO$aUMgATJT*Yw6;_uralXqx`l-J@WU&s zYn~+o{(uY`RXMg3kOeSU*pdD0&rwyyk$IqDyIj1%xUmhsi*bUferq6-j1qzSxp;ls zzL9b+(cHCupKV(ruD~ulX&cGk&~2}x1s%A2xtyAKO2zK6{ zq~O_sG*}DmcfZE-Qo_`(pQKhE2ZM;w=^l3sBK7>j4IKNKySy2OWbMSgrc4CqjB%ms zK@{K(g&V6u9JS(w(AXDH6i7IdsM zdn@e`USmkYkDRhfB0CjXN+CpU368`#748o&o!{n8Kz^l~w2iJo)@BwjvC3%a`4-pR zkjrZ*wbwY6;lm0;35j)mPAl4w1sh`tVs=7o@PD|$MeB#vf0?R7)7Z>kGme?AOz*j2 z8G-UtshVbPn&2 z&syaYL5Hi!18{8zDMoEp+Wx{4P;{++yAnPu)niSW9Pjz&qmouELFq<(H+{!Om5S-R znl3A$MGXH4Yz5at6D?cqCaT;SP6uA6+*2<9Ia_1vgmyjO(UU=zjvR`YP4~M_{_oAh z=x|sw4ni~BBj4W(NfgBjBcu=QpD)bY_Yzey`VVehC)!;0@xKX>sgdM+hM*FE1Umxb zJbt6np)9P9zia0FpuTwCC;mNxt>PfWWUId91&xN9u5kN|8xEe5@9+d^wRwNdNfY>- z%>=~>H5vc&xZ)WiWfNRC5f7H5SoO#^k5#1tpxjedmx2*tK7nBo$YrK4LM}qqiNvKr zGY@UrUVRe7z9qUm7kIDxN>j2Gmf-Afcm`hY@V}nC;&3GqSd*-F1^6>@%B1y#R9An~ znl~k_C~6xDEx(4h9E39CuC_3xfB0QWH@OszlXmu^ha-&ZSs6oDAfc%l%BFhsJwS3{`8Gm-)ex9_-^oH6Vq_d=X-qs~iptVdfdfvtjiP>Jm z;-dFyX^8q@6}~ctx7wC;xoFwk#acZI_@bn)X|C%TnwQmVtRap#V{jG1;J7MKI;qms@wlkJ-j&jyf%ek!QoY^>!Vhv-}nflLr@2D_0#vPFTH0le@)~}^V!ON z)g;-&9L$*N`K8hv#%X6>Z)d)8p=(~7KbviD+L z22))IL(`E|e$nN}if;}`dlqM;Y%2% z@{}vN_Q3v@ewAO~UQ1e4ypKI@*Q92lP2sVcK^-x5~&AI^WMWD z8KRaKYH?3qH3#s;ty1gj#hBqpiD5o=xy^j43jBDfO^&ntOhB8FdfY;=hVcBPe7He_ z;TX >;2wL&CUW5ze2jCy~K?dwp9~cyV?Z$r8!;?;oDd=5d6@208Qk+Zxw$(nqr2tAwMEw?j+0u_BhBZ`I*026NDH$5uv|yTT1^NkcqD+jTBKb;_m_B zFg%#8Zg*<^2W9)T*onfSG6hV+zmi^7ip05&u~OrS|FXv2Xh_Em{zMV%*TI9s5fU_@ z`EQb5C@lXy>4h(vC5V9eM_mWHidO?3B^F(pN`TNq!@I|pPU8+)t0dVK>9W-mp;Uu8 zDCHD?@f+KZiFn<^yy`f+G-rxxMUPz2SQ&163o%5sZ8u)psv<;#m>*Hw(DtRS#|W@s zv^;~cIzT~(Pne_#e&s?HlibZP{I;P`RqBdxd2E+#01(l{8ms6p4YnAd!Dhp+yo>_* zZNmzd$BV)LFG(*UW{a#I|E0mw;Qm|Ei=`Wpn9_01-x@5>OsQL<=Wn{S$cH!&W@?0_ zx};i|i*Oclvw`pMhLBvE6J>R?xa3&``x=eu_W?QQ$qilG#LwW(kP*;!-r<_D#E4$r z`@$8rWQEF`Z5vv)CIUcYZ(4~!MQk19u^09>%3C!kze5D711@I>5&$S^acav)Zc&qr^k4U)je1pZAarBA9* z%yjzaYbFO@i9nLUWKSgbxkSd3Ay`#-s=Jgn_}+jN3K2Kk0(3@(cII}dO$-$^K91x4 zE~vXlXggJ+oZYs^BR2b@D=&X{kWMJmH)l*Kzq5?Y+hyDF+M*q0a2BR@(h5t+TtMY< ztOY=K9p*T7DFDm(n(o`+RI<6vH38i)9*y`aF`W(_TQJMzNA@S^g&-9p!0dYwvJv8L zb93w*)EIBPtnzZPU5Oa$R&D!wBQRCpWZzgP`(n+1m-G_ABxEa85T+5u0K&ipP6}wM z6^O}ostbU|ndE%{N{U29$Qn{6Z$;DtRxgSq%r;ANJw#F%FGyv*C(DZDc$D+mjar5C zFhEpF_YZl}FRp`FF=8+kl#pSNG01)sMFFnGG{rQBx+HPParxWVMp^ayA3b&N;)^BH zKYD6AJlFq?o*FUb=zp9R)nS<~2EzbVU#8%PsG0c=ArYKF?m!kT{8#F2MQylS&FIMN za3L5Q95XcApfk$!IxaaWw>y2@ad((qZLNPdBnKF6)R98Q_rdsX`A#j%uj&W!^lrga zg2At0FQCi%#&W{jFeOZIU071n4Td9W0OgZ_z$>*yPG~+DEY%MX3gSV^(YOIf#`!z( zCFfA6p^QhU05WATLK*)%AMv)pcfWDY)L}EBY9H`4A33%%MGZ5mG2D(tIVDJDpyDZQ znZ4CQI<7L-vL|CgyvZ0moT+N|wS zUoXOhjQ?e7b7+Bu3@y`lZt~t-ZF&$#8S%~uIwqmk4p~qeerQ|2S@=b}{5su_88~XQz$zoF>I@L&5KE>7x~TR8agw4LQFJZsc{wrVJVow z3CSeG1g(H?8e!tVDlOXN7!-o*a68@o7@B1yC3=(2mu9dzhFgErz2y_4HGh-q3)S?omv+dCPG?C0gLe26mqY0Vu4-lViwVDV7O`aNm-%bKJ%3Vt3? zQcp!>`AMT5d4mm$t2%(~>|s`~hPyY>9#2`ZTqM-09mMP+`PdQ!a-vhye+GKsOC$F% zE>`UPl?E!Fg#&_}AJh#dy`Y6?L(S{(AjnzNCVj`f!B5ST zN!y<7?Oh=pw(~329}^Is!Er#02Iq%*!Z;t7F0OvU5~wtJxXAwBY_KUKU}*sqi>rriOWeuT z4e*X;YvXV;jO&Hw-hB~qyr+E}>_qdYp4N(msPvE`rCL-aSZsmc2TtZfpd=1Jnj!io zeh6}havEHPTcu|lp21d5zN4Ga#z5fFs2DC;%A(ZGYS;vwGqH_F|AqT=vE5RDdhig0 zDul^**;1pz_+BdAcAe*AIx%dw$eZ&@9yAG+Nzq{$c)>m+IK>C8bFM z7sOH)m0~9;7&oUG5aBPJMEyjW)jjJw8slI6kt@GLUSC84A?m)qtB_$*(}tU6l~C_kC&O)A3L>rt?8!PbnTy~S(8|>XVRpMwOLPDqd(Cqd^hZ; zUMPUZ9^$W5aW1L2n3tk-S17MlvJ9@aGCDLPtXj6M?4dWNwa56nU|42vC4@UJ&m~dm zx_JolHkRkVe!dy4{lKCkI+%BMzgP~{uuLdxl&9XT3FEkSxMgl7l!IESLIZrU-fZ;k8(Ob)vC18Fyl? zG$BD;a9NThMI70a(3ZRkn}>RE%D&k#0jq)2fZj4$?ImJw0z z&%0>w?s8F#h;Wt5j%H>&&IV@cUkM|9LxD!41ld^28z&Uk3`j zh28s&@u;sZTZd;YxXp~ZP3Wtbx8e*>m+gHLGu0Pve1{!m zUlKR$=X}!CM@oPaOWpfrk+L-ea*2o5Ynt+v3P+F`?T$o!7OsCnO_$9Ays46rC}_P> z6-PN%ENG2;1H?*0OZwB+j!G*;d7cP_i&r=@HzV`Q@~bGy%h(!A*6g+`Qq0g?B7uR^ zk8Y;e4JWvoOJfywQ?Lp4V@(e=a3IINY!zffv_iX-nftMZB^6C1i74}|fV9zR+O0j% ztf^2`NfZ}sA(ryv0UGL>AC4i0kDsey7pu8y6isDD5`Y=Fa>o~RVv1<%2gSUK*HP(uQv-E;+0LJ9CyRG}P zOBE`y$nFD>bov1R#O$nv`)z_{;2*Km6fNJdJ)*n}ehf(P{Dwu+Pipaw6l}yqNnmzp zn0_It=1P&#ec`(FykAtQVEo661P1-bi&Q9_Gyh({GH${sDerHDl6OM*v3TSCzgdw8 zN&ut&p2<|N!PE7>tVkYEdVr`?Sl6vr9oVxJ(42_sU-Nu*qXk4+Pz-hhTi`cW$2?P; zSzVvcH;Mge0|+0sG0XfM2IaN+WYE4Ha&njIYY@(+=|4APA^8qyj}s|@BqFHN8&?=L z0zi}U2+tHI=dNB&Np-g*6h^^lIcvR`3U*$dr-fvVm`GAsbC;zy2nVSXP2zi--}Omv zb1)30(_9$ib$~`~*u+r!)!<>g135jA5zt7bR^Ctsx9<4oHT1BF%Do`J^$ez=*%eUa zONOSq%m+Q{hHN)_4Ftg^sq8(VSwS4k%yj4|?+ajzJ-!bW6%c06iM6c9^pTk5$q|5Q zW3nGi_v&VWGN4WhCC_JQxEAV1v4?ovq+aDo#1mmqV*Nl=FdIrRcA+zwDui18gNJ!U z0r0ShvJK#T+!mOi`*~+g_6P;dys@$&Q-9Me6Zzs}j@z00k%SkQVEMnCNaL&0;UGu_ z9Pk&S#6TgtEqp1kU#sFR#d4kX%#_;Ode7V947PJMg(QNX-p@{cVrxA<~B@#;I z3RG#r*6mk_@UrY!$s_muh$j5cyi|>p)i_oC zlXvRwYiF^Ta;0Knwo&!9MeorExj6}tcbf4n0g!ikK1~Dv~ZtGO+nKpiXBEh>+ zv40Q1ht13{4!f={c!CeA6u^-JV$JFb|D>D}iF(k3t29E4)7sN|IrM)KwaF-<75aS{ z%iK!xXZ*GLEt40{sFJ|pqE44{|D~mFlgCUBo4S-$i7OvjUav8#9R6r1MYT#y`d( zBJi!ugh`m#0?w8M&5g7GnBZ-OxK_Rt<^N9@u609`=`V&Z7y^F*TpEK_>s7P#k$BI) z=O!4kQ__;A21;eFE!SJ4ffHW34l&|ge&L0L&^VEY`)D!y3pY$~xShx2jPm0qfkX;O z^}d5DE_R~iQ0N)!qm=DH0Sx+_>)A)9p76gw1vI%ag75Kfb_1&VxU=f4$jEv$8*FY? zQ*4S<`k)6q{DY~Do>8KU@BDTcmbSHR_SW0<^a1{_Js8pfoV6Ti2-DyQY zXPK~ESDE9{jggI&ib085*k2KnV9At@<*_6Cq+;cx)C^GXb>n0AzOusDVO##N3%jDs zYUNXu^>{EOob~>Gpl<;FuN>22R*EnZ??R}y6{vIyswK`5 z7Jj3*%?~SrgQ5Sr<%<0*>txqQaynzMQ8F_ zlH0Z)XLL92SvX1e|Gj(YO#ZCv&s@7&1dWP;hcQpI&&Px%fNf29KZ|~NhV$1jJNW=Q zUZ2>Pmy;JHuOhjsM{sKWy|x2UDP@GhijaAL3!>GODj_c+8V;E2((Tk-5a|PV|M{xC z*(OZLU%D#EMc|-(qh8lf+0U`AiG)s3vyoj1)udEJ`L2HNy>Z`zgL*@?qOW_Ky21(IL5I6c3!bW zw;eB24TM2e3TZ+n7FVnV7ozbfL2N8k6?lv>h<@OMy6&-BMgh))o%c!SIFm5$YK%KY-#DmbfmFhGBj|H9`WKnwjtV?58S!o>~TN&-9Bx` zFzKC|y8g0hxw9<1#<*G{6ZL7_^Cwj;Wi``P1te!0PB(#lgWJRfTONb@@u&wK>AJ(j zDt0WApjndaS#(q~y!k^)J0?+}mISHr&PSCocYDK3NA!^2R5^I7M?{z!`3d}{d z5&6A&i>p+?06H)`Tg4rnsDS;#X71=&@0cyxz>Xj~M6P%ASW7Vrv>16-f?%5?tY& z$K*!Bj{}s2A!K`4qh#KagS8%6_eD#(e?@_ve7B#~)A;gh3r8-i-||ecEM~3_9*e!3 z0*m8NfM6lVnHb{q*xNqB4Kjjry^89S0J#UgYBQfaV8p~2$k5LF%qoJ6ZbXYVRD9I? z+RX7}9>dg8C+*DvH^>CqOmSVj91ZZrfaserEO=axWajcey{~iLax$|>iLtKga41x+ z#xqbTgKvg)@)~7DV6L6;j_GPhC)hsdG{YSnqAHQtNySTEbh4-ne&u~vzv00ErF6SV zK7*^;ptH4jW^8vTR~$a<`0AZY?JI$DZ8DA@wz`@>9zwC(o3`(z$v7QMyjCqb0#TzC}+~;FdRX2ao}Q$fqk?>Hc#eQ`V>k@ z$rMXpvmlsD%o-uGTrQ8~NLvFcBqPh7AkQErM?MsnAQhWHB10vHfW*zA&`QFylWLii zhAjFFCn35dD*C}p6f4M^p}|5G^@}n-hQ3CUUk}klG1XHDTh2j80uP;3&;p359=w#E z(s>2h*@eAsoo`~q)sGq-^^p)xh&tT}4%p&){3h7Z#`L#eBRFxAgr$uN|DCY}3Hq_1 zJLKv{h!z7>I|iQd37|h>Gg@i}lX;Br$580zp|o5@65qPm4nBApywUpaFn=RWwjZ@` zxq#vPHdq)Nm%_YC_oa-CV@ZmNX-2_6Y0j+Z>sbZfII8l|x9M}(fRu27A7myA?0ufB z{v$^D9k~PQZ*^~aog_bckPu0vF*~$lr2G}_Q+7aO6_C4$kmSLtSo>je5j~&X4^%=2x&jlFlr32?Y@z@+R(KtvZod1}#AzNnFJQW!p zSFwM{=WM4e2jQuyrNPP0+}6d(T-)*9t$+m1H*u6LyCQq%%aOVjQrmsfJus0wp;`5@ z7ILG6bvcep)+vTD7&A81VoAq*2B&z@u^vPGCdbG`uz36mg6=_OB`zpe4TlpYR~Vdc zl%=!rX-&H)PEn4{FZJwn7zR|+R2F1Uy!@QN{kL49;ea=Gz3|Ul0BtM)O^k=Pu|K9i zrWtlqB+ejk6o90kSt_woC{etL03`bIEb4JETU0;~ATa9jY)dUO(vu)Vjr0jIDp zqR9O9`AfqAtUQw3LQu!B`b$nRoYkN`$;Z!N^*U&MM=)F3I(KM& zyDmI2+MT7=%VENV3}$gs#fh8vLeyV!voYfx^=V+{W+OD}!uUqNW6(yOn3%Z7q)O=3 zyecBTmYZ9a7=#jWyY0^BCR~=Z+6K2ZqGMw0iGeRsW^QA0`>Jtv6vK+djtZ~F@{W0{ zN;h188y?&o&v0QC#FK!kThMzQPXeTYsYVfW7SnCcr51%`S)qkx2-G*Edk9rk24}Ur35S*{aEy(3BSbW=y0VbfJZuRni zfu%UXI#C1Ti4XyXNq>7VSK$K_`cRD4zpzp8+xTj7aXg70Y3rZ}XwNPV?BbMj$VZZOtJ$M<$PfW0!97ufP*XJP(-!97s%%rQa$xQA}h{14pY zd52u`3V?eGRNs<-8kLe^H*oFeWfqwizaYh%D<`s-q%@$Nex#SHh#`_})u?+9E*29R9=iP<#Ew_Z;gBSzd?aXf+{0=3edT z`Wui_)9T(p8NH6I0ist(2&KMP{HSqvXv+^k+Sg0I+>LYHdJZ+5Uook1q-#e74u2}d z@MQn5HT9T8ilWIsyiX}2A@~36A_3q&Z~rIUC(Hjo7uEJz#@CX3e+G6D7E&G)#}v*! z$_5jcefXY`>-MVu!hWED{tf%d`S9=gCxt~(2jUO*v$r_P`ahU^%h)*LHS04m+c7gU zGcz+YW6aFVY{$&Z%uI=ynVFfH+0J%y@0~j{??|g%jaK`m1o4TSp7Fbp63eYrMi~J=H}Fa+{$=>l@rp_dbpGWF zuT;A!;y#IdUZH-s%<~`RBSH_}kQlt_{^!8dSR@G$B!iMckY;HvabD5phiP)yMQK>Z zyYnS(te5LzU&Faf_^zWQ=I7uDcO$Y!3BRXI-;kt*~@cAt>KqFw@!LR zTJscu%jdNGQ?~IR9v>Apo2EZGEBfj-VslJ181bR^pDIGR0 za+wh0EraD6Ntr~FQ>vfBgn5yl!mcKnH0%pdjiLVS`1xt{I8D6Vs;(59^PBH+)A^S* zHVo3`RwqDxHWRA{TPmVNdk!!jtJ$zOBAV zO?i#c4G=zL>=zOZGI9ZnVj3X)=XQKpI9RV7a@;Ox%Oo8rR?v!5Y3q)7wj#y}K(EOI z>+nrTo+%UWgz&U@tUZ6cSErfG zz#6a&(V)cI6H&EaEwdOOx79AJMLzV#5lP~Ry6)s6QxoAc#E6F5lH;w4}Tg3K**iwdXx9bT)hsQ4LUOW+h{o*M4z6 zGz1izP*PXw#czk^QwQSvA*p6)M+5Bdmm#ppaQaat9N|b$)_#c4(ITzU7zp^=g}Qpz`beIZ}%CBS18qP6}hip`kZ9p z9wklJ!@KuJM!2T4bEnLZv-$I{K?GEgIn;8==ZR7|#mlh$!4#+|V@X&j!qPfB)pXy2 z6C1JecqF|m$wN_Mlg;O;SE8Y#Sx1L#~b?O8e-~qOnsz ztVj=c54-`rugEDfiezX-7T@Z7(y}2vNa@|Q?$#NEyMo|8^0kbmho3GcG87NqSO3)2P zd0qvndY+ku8X%8~uq{Z@M+GdL3DHQbDu2gv(RoQRTnaJx$#DNj;Hy7A3X(P=X`d|XpT0`@%4+v?c|SRkT54}#K=|DJgO4{XJ5Uo& z87Xn+f0^)Ar>!%f?HNnT@hK|NcU1JpZDn|Tzh}7RU)*6J{21xK=@|M!94=nIY{LL} zU$q(yb-_bgBO@NIBz~j^F{4fMm<=o1jw{9=kca6k%12$!Z_s${HbRq(Fs&eyQ1IX3 zCC69B$FGZAd?_Keygxmp2>=ofa_(pEA>irDxqX0pp3w8tftWF>9gFNwO-K=;Y7rKZ zQBMChoZZPB8vOnpO;j1!LlO$lk*;k_0fC}K<^}M>7QxVFytH>E;>G*nDq79=>$?QbLV2iTd15j4a>m2*w7y|y& zu{O-3Awb%5 z3SIp5G5Qsucg6Y^1zx=%PdST3hOez-i z{dmdg`h2Hry>Rw9miNVoiJQCTzGZ)njK-Vr>SiGhqV9>&I1w*Z4UKO57|zH(ziAN@ zOI={$M7fxpR#3kChg#^&YWBt+;4ECGK5-^$x0g~FE-wm#UFAJO*NiVB4Uqg__7{^<1MjE!wo~T`CQz_Kf_B2(L%jh6$ z$VgAuH+8T(c!*n zQLQ}7Lp16(ib10dNz{%lP+awu(zkgnVHuCht~_raP4*x;oK5T0-H*;6k~;Vy>&Ja; z7{3aLg-UEv*!AfG#F{lDy=b1=SJof94BPV5ZKVo?Z$QXon1+Ysc1gxeP~Nzb+7BeBF`-G=-e~8e zXWU^|uwq#f>{iYPS^^BkMni~j&ixMXG^W;p%;>sg5rW5k>kCm0_Fcm2tD1urr)V|G zg0`Cc@H9^P?)=SwCCi<>zMf;jD%H3_SCBg(vtzY0LIMj-OYIohyth}bLERXIw);S> z$>M2$oue`4PUV!bn;HCoq@MPP_cONRN(|eB#3=%|9kdiBW*vLocAm)=#&PIe7>7iEB9 zg3#_=SWdf59exw_O{a7{i}5{O+)>6Id`O!mnS8g|Ry-weF3S0VU5MWCgYWB~lt;b1 z9@XFxqH#e_*ot@F6Nb)GN!3UeU^X*YsDR;5Rp(ex?V7rxjtWGGN>8cn5vm2HH9b?LZ^Vs{sjD=#r+9DX(H?__Ykuvy%agll5;fOR8D_Err zjVGtPQNcxfkNDfE$Yj6-zvdj?M4c+(IR6@XD^Ce)3qi8kft_>@Db8^zUOx?T;JARc z4NMDVTQF%}<)qwze1e^>A=+EZ1JFbt0D|SL;8aDmL0rs8Q7bvxz80GM`8V8={}34% zKN0b%Y$(k??GiYV{-lUtcze0o51JML!DdTi=>^w5X}XUjK_E@nD+%wy7N>dgA|z~4 zxp?1N?mc=F=PL81&`I~s*zxu2)+wfeTQy*s%`gTZ4ENRCH1bmedM5$Vj!E(=rs{vY z4%22)Gk4VmX+qLNvDV!HeQTeDdVnFJ%CRUzRQk! z1bN`Cg;M{e!?qmM2>NgLTzafnxn?YV2A+o2v{MF-|^_SYBEe z0{RU{RaBu_fDRO+1IPJ&5rkb;+Tl%Ld)ryc##EzOz?(3u%*m-PD*hxldaD03xe>Vq zcj2ldyLT94Uj@4;4htotcc95!X&4CoxA-w884}~%z|nFPH#--NH=T0ChQUHyTtz1= z=g?PNNw0i{G>YbSyLCDCdvW_5k4a)cp59-?)d9%!whpO%Pzllg%#+Yc1%SBH<-5Hz zR;svA01(%5rltqU&BRe=DfF79HT)p};yUrnj0EU4ByHdvc2~?W(Ae9VZZ&r#VH;$1 zNd^Q7Orqb~5tYH!>N-V(`y9`SIKuwzHB{^^#?m?1lr+5`Yg=7OeC=5!iD=>6KKsR8h}m+MeO_ZWX< zib`ih;*WEZ8;ph9%?h|1Rzcs=mmr1bO#JTzcIwq^5S$=h^g-IQYc^Y?AYOZrmS z91p~74vXxL$UrB-WnADp#-EIN1Xlp0%{T1r92;aGGC*aDai0+ zvILbp|FrB{HC+XO@E@2P)Vo?7L--=hkNH5{OoT3Yb|mEc4gq%J2^mBWv~E2I9d7aq z@O1+v`^rr9StocC6QdBKO$J?nTz8^HFT%^UeVT9s7PmNcs@`N-;Ex0HL{>oljTIU_!27+Ttvq&Of z$=MK3I-C3{Sg>dZ*zGTxgLx*{faSvx)@(&BvOx!OZ?*mK9^+cBZiv7%_M#jEmsE&#P+;)l- z-g&IUD)!y??g6SXuEi;?^AR`|uw=)|SV!$uBz#Bt=n%#F$Ucz4oB3*&Qt-=)1G%7K z4eMw}yW`m+W1KTnoX6oGq`*?#s^Z+$=QDBcsbWeD8mIao5A;@b1*dm1_IJ`T8vQ_r zU!zG7XVr%41dxk*zu^~*0<)z{`-*~he348$YxuMV`ax#<|Pib{MNFb3= z7-DnV?o1J1O+z}c$dE6?a*`zMqEqqw9*;<1C|NiiNjlrU{WvIO6c_WXQnyE_AoNwyGwJ_#)B1Bw>>70j?K9~ArRjj9-e$(Pw?~BB~J&t z=ljyo$DDJ%Ks_f-J6k61bJ%4LMg%chz19m7AmCfX5ODqa}gsW6F@q>%71odJHCXfr`NrgkpBYPo&zh^ zNH`0&;hc?CMLVU%RG#EC_d_w+A>^A{FF%b~ zthtrnXwJnW@#7FIdp?bMfYPs`-Qz_#p7*qzXM|y}GhT!fVkCci2PIaBP-}hu4uKpr8cWH zrdiLz{N#(K*o8W0(DzrBI@Uzgo)^)YQ5;~tNL)tss18_dK@>+|_;5OJkRwsm!UL>f z`XO2aqxs|f&@$y9kZOn9<*51?Ca{BWvfD_fSObjXgl=!*DmvX7$a`35t@6LPjGtNJ z4%2U8SuL3VyBfCU|EC(B`VTey@SoK1F#?pq$fqhx{QswFg8$j(QLA1uWL-&3wQD!|1ktnQB^%q3oYy_eZ>ip*fucc5C%$9lap1|-qq>^4|} zUHme1nM#%N&d*vEm`1a>6WjfnB^&j}0RNu6l3f>K`6=|b=_Gn42Bp;iC2XnEfxih` z@Ur}_pcuQitL&9Ef^6X@)aQK|TFHoj=5J4lE|<8k4fMbaTfN0n8l5jiW#SUfA4%iJ zVub750AvoY4oMAPD7NfJ5hisIdgv2nv^JyY^G@tzyH%P5EWi@xRSZJ?lfzf07#5Oe znnVXPID@bVyJ3*_w1ghmdEYa-)hP{Z1>|h-i*r1jNfOXqPmQKwg&l7n)0K zraaL63(YmDCH;ZsRfQRs?2}HBlt9;KEjAu&Oy2S{a%Gn!qn2|C++SoQWK{ zZHMyeFduDK^b{iykXW_Os9aV#iFUPDWXY7_Nv{}?%xVb?3&H=&iSG^BO(?w~?!NEy z{88gYOEPc~q;pS`Se%%`<&Ue%qhc$J(24Z;es*|a%xf;cvH)*e>fLljotl^QJ*jF! z0-8n5C+h`$^u>R4^pLnspG3=28KWe8g&@OWH@8J5!GO%Fu%t$%xD4>&=EKEZC7B?r ziQWP}U?-7YHSLVSd!yWYuh9Xz*pN24-Oh;ODkPC@)QTw77B^(7ryWA9nZ#b<2+Ggg zV{p8B5g7{AY3}~zJ=(hbpWC>8j=($6N*QfjmXNsFNA^~9FE%DOf~ttiGd>^Rm=IN) z9Bhtm9l3t%j(2c55A)e+SGsIpP|<`{ z%kIS)C!p?Dcw^HHgPyxk|k(CgHn?dHG%XK3;r6Piu#p4~w$tQn@D?)HE zl-7iHfcGSNZ-%`)Av+=U>vHXH?<8ZdA?NhHMo)=OsjwN8+FI1H!(MkL{d|HRv>ms$ zJ2Sd094{fG3*xb^o8NG&X?KRAFlQ6C#A`@{EFQ9rQK2?uc3tL||MFLWO!c zgXGXVrkJo%YFw@uufpVVNpZmuDpK?}z8KLD zP)Ppc7VgDENhA6?b#$Jx%?g?)$5|VPug>w-!nf~v1c7NkMre%nx3&`}Wy)YcS^{md z@D1ttf@gGouyY3lqDzmf^r*jh;)_2TWSZCy=a8n|@fJ>xDvZSIW%m>ZeYp}b6!5V$ zoPX-1^y|_QB_M~hkZ9*NQfI6r?Yl#s%cS&A-mlKu=Y5%p*LGKT7`$FNb2v{vs{5*$ zQDE##6Q@HE$0L$Jexv^^a_vVDJ)$?LWj-dOIJv$~p Jd#tmW=Izt--~ce=FmJe z>6#b%lj)pWwCnuI=N$niKb5|=>vQV&#+CE%K@bk8_x#G3+N&9qYFiH(XqgL!SLTQ~ zlG;Z@g})%!7B+!qV5Y-mwJ`%>(v!#*tv|qd^J)J~R3d@h@xvox0Gzg2M z!!Z1zm!h3iq#~ZKKJdA`hhE>ncxJyyfI!bHNyP*~Q}bwM<8Ihym7Pm>>IBS>`Q2(4}p^jZH^cS+s;HK7w8neN;H<09`(83`|`vocX)n%A&~AvGCj1%X>(< zw)6Gb{u@JeA_qke>~GO#9OkFpKnU12l7&-N)SeVfwNwIQH6U4UjQ}^p+JI`{=w(kl zHp@twf}lmd5aDOZDHuL~$F2863Q! ztEm`uR4jZkY|BCfl!=Iy*?bZ6IDDEPnLdd{PS#<`j-Au}a;P(Rm-b+MT*qq7wZeQd z(FVwOL}GTl-hzC;rXV~il1qz`JZAyyAY!RCBKc;7`eUJqoXmh>*&LgAR`vt6bGaAh zu&Yw?dp^UIF)&EEF!ou~uRFpPW(x&O74jNVP_+D`C_lafP}!CqNipbal-$~wBQi6& zk@8)Z)=2{wbG>%G4Ef^$5BWo?@QuAR62O!P zvhX|tooE}o>|kAP>J93XaF5S! z!5l`A*3M(K*vSK6>aauU=JPOj2F=u_3dur0zU?qD+%5NqLAu5-ga%V6?%oHspnI_& zfDgY|mgeA_mg#FiT>1&^=j(lCC-6avs%tzGyCMtQf%_STn6sKgs90ZHBL3}^VYLnG z#V&7#r&F?UG0x#c>!xCa=2!8D1BX)ZU z`x1rsxsGA+d-7uL8ex)` z7*&--@-uL>WV5N+-06*;!8i#DvAhO<`9%y-ZP7BLfwuA?$h`SMjd%yfsD@MqlhZQ7 zCxNeeZJj<{RdTbtPZ+b>66U^U5J zW#z@{oKUql+kFQzrzgHB7&^sMQRq0A1BKFhDEwf8deNoIk_mxCKQmdNrX0kYnJgmSH*DYNn_EOQ6FEXfZ z^(6ySP0h2&x4?=lm)V6R9wkfQFxx|D;;+-OEcSVp#i4g!-?hiT z3nd`+UQrg(rW9rgCs4=gRLbriCrjIM7k?x$qr666dY(UJH*K9?t;J-Qe|z^i74=cq z%A88!^6fPof=gaMOufU%Se{BN@FW#^wyI;-Dkp?oA zq!M||$I6v^H>$rN<{P4hTJj+>H=DvKQZ_~9|8nY~e)}~{#z%int zYdyDe`K^K$8b++94S8xf4Q(`(&b=S{SanDH+tTfzk^oI}bDnYEO*b-O5QPn)P3JIC zam{%0l<}xXAme?gb)d5H?U(F%64N=8L(_VEF=ZDFwI1b!yno$T{F!cYkiq6;I<3VE z#yd$AdAt;h;h2;eE@{Rqr$%a?ZmTuMO`!|<8`&_~Auq_mN`$F*efPvtK_>+2;oQ=@ zf&H?u8s{dYp#~$qQA+(}E-vb6sxTky>Fje+zQ5bX9ogvDw9D0#873!nmv}rsz&$zE zvbt|E>yMFD-PcIFJ}16S`MgpsFmvswdc9VhfWmNY+$DM6za@F!Sn@qJNioCljN0Vj z)o;D7+IrtD+uF07VR5t>bv=j-`0f2C8?&~< z?!ow3K-4xyKzEeTatZRJ5q-tAQ*yw{ne25B_Q;t`lSv}e$c1aUc>@vW`+0jm;ljpk zhNI!sCS*TH%EqN$w^9XL7QRvy{kkG(3~n~fE7sRlWA)7lLCV$B74V3r7n22u;j&3Q zJpV<##_m^(-gPklW%iO`V%-q&)uFBL9_EVvBxhqDa`}R~EsKSzqi!t4g=@^lbmgLw zaiygr%hz>4n5}NG zLrN%f(BjpoacAFF=eyfeehm?HphgubU_N*&KC0)RxHNlkE)4R zHSKhtnR}iF46UFCW8c|{44VW$`lf2PS78;s$twx~V*(Dr@PRa2X*UG!iCfSrgyS3kDMOt4b+C5B|fuyWp z$d`Y!-M!AWmEvq8%U;^;O;kX+MEJP29Q%4L`Z!K=)oR@*Z5;iGy={Dav3xnO?Br{A zz$+i)aYw?s8$+3J09(CyZn7PkTWUC{atqhrv348K!P*EgB{AirNw!Ga@Kw9$qI&BV zah+YfwYP^kQ@azn7-gkrqZy^{Sy$39$SMuLdeK_XN8wELJfFh64?Y|0;?x<7&UY^0 zbS>N%PmEu=l4U{l>ZnM6bQFH$*llTimoc5}HE{7+?0JuwX}(?Tx`~mml2Q?=+;~*C zSlipqT_XMMZqUNB-}I4)%+1@?V}rW43gz9oOhLOqN5k#YMP~CoV=r68o-gpcd9byG zB|CG=%2h6KF``)v_X`WrR*~B-iQ|>+_-M~*b_LTjCL4UZ2L@3y!tHEL)vr6;>1PpF zjFQoxHLfLvI}a?S*%<~pz@lvl^p0eCn+@lWKE0K&rVD3p8CzXuX7Nv+$s7E&SP)Ih zU^e*ZO_+^YpgZ}FYaePlnMH_;Z?QSKyreuR1`RlHFL~Z)Th~4al#daQ=ROLKjK{d- zEXyC9x2NsPgoLOPXY5RlwVq!cPTwv;r{kaOPM>?!ei2=R@CLD;ui$)j$5@Aa7tCyP zC-5w@_5;Oj@NfDp5~=&8Rp&tOiPBfF)WB~|BVdNYn}%Eub89f3uL2{&XE3*QjP{~} zY5Ak*WA!zom5ae#M(>HWbGPWzT_)T0#x~BOiudSK#pU7+!sVCu&VftaueD$oVAR!% z-4>nq>Z1CHEz)Y6l>yr-6um30mWZvkmgf$sih`0SO&nvgqOM-!nF2EF+Z>`cYRVdT zSyl&$b{OJZF;12e4?jjn7P-x2l&#~N82Gn`-|Z+aPp6isP`Tp!olbZT_nI$DoC zFAN?Cr!3E3RX=JMzLhgWI4m2x8Kvx0jGQxip}a1&;lI()_7#LuxZRKIcwcsS`9=*( zzn)GU6xeq1Ugz07Q310QPH)tDa6cGrMPDO&pda8`o^!Qm*-g^0mZ5r4y;aUM29iq#Kk-wJ{HGDbrt)@Zj^-*& zFsh_~R>`0F12DMaAiLXUZ;r%f;g-qW1mp(Uajw$r+K@aPVmxKfKWUuM>t9y80wnKY zyd51|mU#EViel3rz@hBLC{27>U*$^agSf%=F0Uq2=;qP@sdV>CIlo`drhezI=^lkn z5^VcKW`-Qa4b7N3y_+2ZR}&BzLCQdD>a8>uayqRW<49fdba6@k89lTBU^oEi0Th!3sakuL^)|HJTMjm*CTxbe5q@0FgNxdI}@ z87{Zi`{NbY(iYl+0be6{2LqrYJ}X(Vco;C4oB32+%FoN;uD!0TE*{UPn^O{lhja8# ze06S;q!jBuoEUM_QA(tv2!d6XkRMREuU@e+LlZ&Kevg46-<_^|Ab(6SD$up0XJ+zkqMbhZ5F53@@x&$2}JwoEgRnVz7`fU+O}O5#DjErpG4k3Af(UhVTwoE_yM*=Sh5M_#9| zvqt*~nk?)k8)FR~S~u3*xUr}+tFlbptwmp{wXW%Ml08cC{#J=v%_I;WEY4l0AjGN( z4+6Z$W*U;`bY5>^K&1B99CG@`a)6zn@3!GD;}b1do(azb`sxh2)i6_qd|kHH4{ zE}Bt**Ql!Jm;oxl@}E|NOHq5cwn>T~LaGwLUC?PJ-J?R&%Q%i5iI>?;w$B!BoGNnt z7+2ov*FZkVM(dR4;5vG3NjSlBfK!=aNv+Uty%kFfUV?RYY9I1_5>7c$-2I2f^Kt(E zQ6p@ESZeSiHfoFatf7}eQYE@2*yT6AZW7s_jKE73bxi%X?>^`KbBH!~axxQ~#P+LzS zoR4*su83hg#3Eat`wut4(mTFzm4`Bb`SE1BB}3xFzD=vI4qzr_>PI|0t`E}oIx&G_ zJr0=qr8EpBO)yH_Z+j(JhMMUAmjF5tx;WfUWZlqus8VmJt)DE9P72NldN@2-IN`W_ zD=W5F*^}x0^lvS&qxxGUV$upH-&>dxf*&Y%18QVv4p#qUwE9dLbg?ulRV|$Amz+h8 z$OaIHcVWH6&b^Jx4L^onHYrH3afFX@eFyAbzI063s`1TK3}Mv$~{_3|FUANFoFyAbUI zFaP^PkKF&C4Lu-JnyQm3NddJYbOFcJ;b?%wyVMp^=ao@Ft%&O1S`lv)z!by_?rcis z2f$7lxw}~K`X>dCBd|TZfZ3tIKN=Yduw zC!@o{lE4vrw@{cI;7@HJ87=w^G8C8MQfVr!aJT0lX#uj|<#=5JmfSoBuzMkDRRGV5a9>m*Z@0$`2kvv89NGlOvqi1BusCFfjZ=~*Rn`pMm4&I&DY#Oz zdf2@x{4KojWl3Re-ZQZUHzfVXHSR7|j+BHwmp+>Jw<3yz1KHeA6}bg0g`le-p5LwR zo@sKJ$}TMZSQdI0T;EL0NYsrj9T9~llJrb@Lje7*_4OPhHtHjbm@0#11}?+Jne4~b zbA`*0SSKfzN#^B0vTBco_C1R*29o01uL!^C#9gB-6*KT)kn`j?+oN9xEN{JVAEcwo(-qW_`JUJLU1_AotU>D%d}ANi@EDeVxYR3&``t zXj*2S$TcggSoEzDDuQdItfEpj|3Eh$cK&M*SONvu0}^U@%`<*DK~xq~aB^dA3dDk@ zF#Zs9@J#-G3)~-pO=-?V5C~(Y6I%%&gd_yEL!R0M*<8R%O}!&0b4EU%mpnj6SSvcq zu{Kw!RP~G>{-8k=wSMx1>!)YL52_S#Kb7KP4pJ@w<^XnjscQYRf<>d(A7{iHmfM6z z<^g+7s}oEbzqd&UT^eaw0QW$Nmh*|wQ6>|L8lWzR*^R+FfMHl}`F<1v(OKD1g1U(p z;FuC*4(mH9&z=x0LBjGt+(Y6`2*&Iqugr)Ie~%kk2x{pO5hJj}h6OQXNK)kV;Mf;= zz3gQhMI5<<4Bb?dVMq1|wN+#M>FjV;S~9EL(o*MlS;1aW5&Aoavukk#zT)V7Kl}Gq zJgR(pePNO4*V4u_j3noWmYBxLju05? zlLYqB>qOlFnL;+B$?j&UL)Zg_M|epoh8V-G7{f?yR{0ox?!%Jg;&Dr09O7Ymoz2un zS=2#vrSh2hn&0ah3&*=>+Q94XZxj05)(*B58;v8nDcR#1y;RP`h$*|6b$0` zQfg=zG{_k8*4SNPvC#|$bT-=S=7op56%$Yt6WZOiEM}!;Fvms|kqk>m^7Ji97YZiA zGfcCANKk77C#mCNJ2_in^2w8!=jCvJ&KSKiaUNgrA(i?|7Gxyxv`3*z>Ic(%Z@yN^ zVNyz9>}|V$^Cfi;jowH5C&3Q>{a(^e8p7*e%noj*@bkYkGcM#sa_$>AY)=kRMm$>| z66Lp(%s~4m*Q2qN6X{aGEi-^%eg{xHGuAbCLPzj+e4?^_cf)(fOq@QHs zDk-M!7EY(_TkzcH5_mozhilWLB_^J2%6!+gy8glIoR8ZAcpWPdqLXY#>t~~ocCr6c zDPsn}=5TWezsWu3;QR--E|BJ)4>vAx!$d8AUP4LRvFWrNf7XI|1%2(39Rg``1>$t{<_tysvOx#@Xm)|Lb= zZYl&G)O65m8@bO0Olw;JbtIZMBC;Q_ZE0T|Z6srl?0GcvQ=D!{*N5TaTWxzIle{Lv zsZNj&So)C|)%e}wcsa=iYd)|$2TBl?{&_snuooTw!IX<9;+r8juK=Z(Y>9)^0TLPC z{k5qNz81Q#23fecS{g)PEk9%iAwu%#+#kzt76hTu(8y{x zP!(Iw&pX6Y!J@N*3ElQLKVD%-i~a&Sdn^60aSTi5Xb+P6D1N)bhU3_v)%8}Qc~gD& z2kYmeF~7IT`;s3WdCZ+D&Lb9ydos)mD zuF{?l^=3Za6I>{Ppugx_K-5U_O?r*(xcv*QXYg)Il_t@#aQxglM$6#19%L5vxfn0| zx5N!l4ZM~i`o<^#B)ykm8*;`A(6c+5kQIl9!7v3>ofW9bJ9k%IBx-ul&6Fl@qRK%) ziHKhZ^D4sw7yrUJl8<_}u+IM}t;{fVwR^s=lK{u^C2$6q7-N4O@}{#&@(T#JyMIi>oaEi7Z~ zvib12?3#zkL9+mpm8g}}KAo4$spWy|$%!&FKBtqZ{)KYhq1ikMSiiXcLew*@+6@}UUH^lIR$ltF#&U;dEprNoAp|ACbD-xVtD=rOazdFp?n z)7u;VgH8vH@&AV(b|s9^9%*iz2Tx-8r?a9qR?Ahve6&emht#Y=je6NQF!WqRH96%z z=hDLeO9*ESHh#?SuJ2$_zcW}SrQYjKN+~Y>^pz@YEL!-ddumTAp8;7le+VGAN{U4t z0+3s!g8j=V^16@U!hMA?0UMB8^&$6B^6EC+ns+fIPZcyYV10rXw6w-r#fR`tqST|^z*+q>pIN;SbB1%_GHB%VCL;lznYA&T1fJzTV_gp7YMMhhv zv9ZC=)VFYSHKpmfyW!^DCdnD3)*Y4v;#yVn{w5+=;W7zms<4?_j^N-c**pV}j#${N z(m7z$vDlimfLn?kIDom^sCMN4#25Ene8#847OXM3(0V}rLN9%EZ&>Yg_HS7^r){^g zqbLZsyB|aSilI&D=<5x<99QXalXC*-Yjai;m*D!kiZ}21>LCAxB}&vi#G1mk*1`KY z2Crw@o2~;!G@{KqU0_C0jjmoHSQ5_+g+;Zr^oC(H_AE$0kx+HH2l?fEzd~-6ln@7~ z!aN){Cd3uqs3&P2knU{^De9>(%(D0aA~S3TJbO+|_t$h7Yi@w}+3JWmuU7`rkpVO|Thx0{HIVwSj5x^-HDH9ft|pc3+acXPFc{b`m= z*|!*4HFA$I_v-HZVZu>W%9!yG^PTZ@w*+TYl^RxL6xpd>Kmq9S$X^3hSTQj;KhZI^ zHwGb_kc`N8_{R|=r(`%CX#whnaHC;ltUpRD;$>TV9*rBr19{$w)(&}--FzkCtflD5 zRh@%E1u3amXmYA@=yMS6fp&D#H8-oEghPASC4`0UdUE7?Xk@KHa2nm*_+iu#VmM=< z4k@yx0e-aw^~+7bC4zfI6Sm+40p^&P9RA|RA@z=WfZcLZ?CO{7fgT4dV8&&LgV5BA&i&{|BoLW&f=Zoz}-jC->&MVFAG)Vgy4txggui~4*z z?6!G*pgT8d&FJO{W5a3mU4z^(yv;zUh zssYPe0N>h%o&}s5{TJXzN)x~fApe}2{2uVCie$j40Tpn7Es!S)fNLQ106esM|Gl)U zN*TZ|E!2O1K`+)ztO~eKnv=k#E~-`Qtm{@Di3O< z=%|45uPQG4v|hia?G!GxP5Z{AvdX00c&mQMa*G6#i(Wgxdvj@raMy+JJ*0XyF ztpe6ne&TQ`O8W*HRyIad3UhoeW?FT;Xn!2nLRjVr!KkHu(eDMZK1Igha0I{=O(g5C z?!X_8?AppU5p2d(KZ{V;Ehuq2_LJ`^D^C}Tp9d4N53pL}+OC3fmM`BK6AJ)=R+R<) z*}v=84F}c(=OV%FZ^ckQGV#gHKt#+jLSy}nv8lde8)G#W3dwMqB*q@#6yLzMP3GaW zozwzlB#uo-b0#j)kYJKDEq0s>NhU|1(+ zilaiHB^Oq@>kE@xjtKzBC~%Fh;BlDs2Lu+ljBT;hXbe#i%b zwloA~2h9qqiY-N$1}`JwFA|w4R-KZ)QkmKA*@eqO9~9~FY$5B~mD97yjKES_s{C4~ zQR@z9EUsw{h1C8Gk=@uU1Bn`epKoVuRC%^0O2J}9gg^dS-l~j)$sj}u<^{o2OUMHt2 zcmF^9#X|B|BMrE#zV*M)x35oT5W(FY2htHthF#@ryscg)ks%cM9|svdFTgUTT@kxW8@X*%!@X`Z zWCCB=uah~kPkPCb&igOL9q~?f-C+K&_TDqcki9N?>Xn5^WDB*S9e$c)m7B4y_j>2ITsYv9`kv|Z*Z9D;*Uym9~Phr zuE`#dce-cR&G6WbtM=z>izlciFe^48K`3wr$gqD@dHd2xUd`|Ni^qi1i#t)9>g>zQ zRBzTJ`Xwlo0WKBMni&xTh<`JRjscMh*zYtglKXQ`1rvk9wWtGFf8V-xgbYiL7sZb) zRW)AQKY7}~-+7vqNE}kpJz>oK{fkSS{{}EklO|#Rw=_+dyKF-Em^`ibHR&@a}SB$jNIS|@COW0f#Nwpr~{wX@G zksG?wL8uEa$G$MX4cnc5E}Qg6V1U*?QT+oe+OJAFi^toJC^hK^_9zd$^D7^Z?Xa_E>e_P4WEcSFa{7>ZbK4Vlho#YWJdGne^pH!9b5pbCU#H%OVz}( zkl;0I=7K4!QE`k&c~8UNlDk2)M+UWk{y8= z<68Wr4|NF9gvzJ{0)}v4vpt*`@$l+D(lr#`|47%`ME_3LzES-%T`MO3yO3D_n`U*@ z$4|29m$$hq&aRQ6K=@l53X}QmwL=#G4&`WTyGgYGPJ~E%a(+HMyrL0_6)` zlN|98xgU**kjhn8v%LA@eyN)O$lDSnB7l9#yMb-7Xfj14cXdDzSU~dXR4Er{v=Rir zmbI6nd;y&pIWs8`EHRQ5$T*i)i%^GWhbqxA?N=aHKx>VYpRlV+>u*x4Nk!Sq?u5*3 zrP2cy6dSIm&Y4mV0^8_B{cfXkry7(Jc)?rFuTD54;KUHF9dmTACvUg|TN4|-{}5q4 zTNq0{)wH4X|5p?Lzfeu=h)-AZKU5QEvHz=@INTkN{RR+k`nObY+%ZYWsH(kx_s-Xt zeAdrXrA+?xu_*Sw`0KK3{RUP^hF)2_tuR|M`&d}p1m;s9!K>yrLi>eEdn&8_yz+-G zhK$+DmYK;qqKmJNL|$zlGv!L;cUgqsjo{s3N(Qv2-8MeBl9vHMnb#C6+wfp0EkgvJ zzj;*Z!y^)$O&6n8;}RlPuk+mu#u!j^Cck{j8(#Y@71Wn4yejk-Ak+)tQ=>dR{8K78 z{w)>ER`IDmL%K)JI{UHw2qZ`|K{53Y5r_l*lhcJNaycsPkXs0e5h@@NK5kC>2%&Df zo73D_n}6_LP(OOfp*Tv$8+X|?R26qN*7H=Xk7Ixqd>1ad?52u}Q1%GQR>aTuDeHu~ zoy!2k#PYkny^U|im`RFbFh{~Attt-?>p$P~JGC3; z-`AFbm!3w~P^GD-T4)n3Kp!k^BPolmhYB}NRnq*RZ$J+DJn#@zS=1AxLZHL7RFW_Aepx zS2~PZz+uiWz+qkrU0dOOScbdN+sJWI67uNSSgt`jc|zB|d<9qBn~C}$Ai{>jZaI`0)vW#jNw1@Tig`_!2kfZUI>g&AbpJtbnGobeHul3EN;;32`xHF^$`i2c-vFovXL`o#kNw7S8oOGIVr9k@J4V@ zHFe7pl^8n-xM1Ilx7V~l?^-a0hW<3NS@G3fE*$?4cjzAGiVP9EV@Rg6JI!oN^9J9z zR)N(m*VKAr#rg@%IneppK)A#R1J}XYki1EzpayDRE%a(-2kC%=!PQQX@`wNunQWSn z7>%+t*9a_I0gM~4Xet`oB6w54#4?Ynq0@gsDRqL-Od6&>wf|YY4UMkQyzJPa!*cyb z+GV)7aAko+yipV{yKixvrdM6c6 z=zdK0cZtrhmpTn?M+Zcbmr`3ztZMQ#EayT2DL>+&tl*|aH1L{~@FbcLjm36C;^Qs>Q^?7gVFVR144+yK zF^%b+B=4mqvyf%Pe#&uA@s!eRnX=~n->v!t1*~M8s=h-Evu_9Lj@mPB6^*o(V3z7-C3Zo%e{7fM# zGxqZ=Qdy^5VJd-)%M{Xu4KjsKj3_Fh@qHp&WBtIX?#sr5)*@a^v2H4 z;^WQ^-I4lIC$nqRk~M9WIS6HqbX~ME+zBnpnAyD+IkF;lQFP;_)#Ztl3cw^((TK!E zghPwuucogeyX-XewR2}>*{)A#V}RD(m}pIpMvZ*;o3kOh8C7|miiEX8CSCI8S*+Z! zsyW-<){H<7tV$#0Yag197b!n`!B61RxH*m|H&};?WQr0)+r|UT{_pNSpvDd2mf5>* zLJ+RTPH$1NHjCG%GgXgrVHHV6OS0ppj{sfxQE~i1my!=XGdPlC78z|4pfoxfZ?#(m zv}z5d{WNo8!1{61U264L8reJsL)#{aEeykk*hB&C?PGQ4*I|%--~J9$teo7u`Wv9I zOUJ)v_h_k_AaP{ap_^KJV>Nr?SO+5$PGtaT=wXHa-SN#onym zvfm^O?G#jpa)7X$I9PZj_2-&#x}OZ0p%kMNsbN@btUsyH3aOCMzM=b6yZh9bQ5}nf z;zyYrLDw~kebhk6wtaeGKMVNdd_GvBm&KV3)LC2#6^+`sB;SD5k7`L(^dClh}@t-XXhx=z##78VE%6O4XE=QEIQI)fSe7i5J9eH=w zP>TG}KU1(dI&78{6@!v+PuaKut!SfwvrasgRsve>QgsmJp8#FNkrMHZFgpPYN6tc( zof^3$6`^roP1iajR}{3;=FkMjWCGF?2(Sl{M=U`BdO>82en=98C}M;Ot@GQWo1okA zN9zZ_A1DWTcoPx2tO&@=1Nr4VR}2RFJ0&&mCA^BRMHht~rGYCj&5!%6BLGg|A6qQv z)gu142tb*qau;c|Z6^g6sY`eV&b#c@4>Kj!yr5J_RpU+Vt2(Kxn_gt;%&VAoBXSvF zjx{9daV_oBP&n$6u_I*{PB#FkLnhD`BCbU-@Wy2N`P9Bkcqf7|7=I;%AZJ8VY0 zAx;9XURf9p@TsGr$WrKy(C}%j7&FV@5&xk5QYT|Jzwv9tp*<#rA! zo)-8<#Ob4vUu63gffZ%e_Txuyg3ocu4ZJ?}$uQ zFUGcSgg1~$zQvD&5A7?(w#LeX!o8X00qkbGFRFLrnYl|q(u?DoX+?APz)~i??W+V#tc6c23ctE z6~Q7Cj9hXeAb;KCR zB4gd=ex9uJEq8Tm8T+eo zViKh9pSMWPP$5LeQ7??USbV*IYfiAO%1ANG=yGtQ992c)^r8Y1|s;Npu7ChXE!C##ZnB&UBy$MC1S?)pBRsaHT9OE zcq$-8C$qEK_LrtSuG$L9B$SRmoAT{?Vf_eF)Q={J-}{irzhXnzMZ{3&NU?L+_c<;h z7T@E6`E->;YtTbVzY;2sjEYWBAA$2gE5M@0@KN9U99k+N_g2< z!^DzZ!(5w{*wd?)77WM)NsvjZ}#eRx8Ds!G2 zExos;BKJ&uDQBT9`B)h5f%s&2pe?ADY8~Uya2s!2l~C8+bO~QP2Y9s0uFUYe!LK*e zqP!vFDpkf6cF^#LVC4ToF9Fj0V*f?+Bb8|SS7R@G(2bAv9{=Ywzby6t#o`NK!IJ*V z;~TL3Pmk}y%fGA=|D(s(FnLYBsPbnBfg&tzN8efk@C?qN%~Kp}9$Z3W;X=CFY%{vY zpMUJ~g9wU0D z9K-z4>F_G}kI$Dny1Xv@8s;ysNu|(Fmx{KX-)!+EOG1b9nK9lh3K;>EivRTaM#l&8 z7aA2XA^bFBoyzqdX2JY7n{SGq415cc8JU@sc9(8)kQOW}!u>wfCYZB&EFoQGRPPg& zbKduf9=`NyQ%XW$Kd|Jbrb+Z!YC{O4{|CMb4ST1zR2f_(k8J4{7HD=+DNeH}-MK(n zu{T>TMZ*2=Z-hk;6M5C!A)Ni@>S9Q*$%bk)CtZId|4__#e+}~=KI#;MkMsf?g8gRx z-OC>3r#yARMlgX^;)CrvvaHP_5mEz>)Zii?L{EYe5y^JxL|Tx}5DkHO*$4fiiXc~1;#BYYDBDG0qdHPwhh~bnZdFMIp5|9u z!>wtlPzp3{>^}qMw-S40g{agu8RsAq`fYdOudz?e82`Vu`l3ydb?1nOKhHUlm3+1T z!x&FS{uv*W@ryMR5URa_Y*=O_E9mpNe>>T*qDH#A&_Fe#q(c3wP^D0_=WF{q1m`-# z&6k0q6iBQv)|7d{iTGudQ7nXz1=%#}X2yo<+900dznvF;x4BL{7s6R|sZJO32D72D zNNj5dRQGCJdHU<~6NPgKgFQ!9m%)yQl!vx`)-DnRGVbjZ-X6mvK=vHON7S_{!8^$%HN z4<-cRC@s=`#Hw97}S*|YTkazmniH8RlxiIVE3AWXxUV81TDpBEXSKxse3m&B(8KQ~CvE|s^ZEpJ)eQ@!&l4LN2}w`OEjm^4<3_q+>J+d@ zIoN)rfmWX9@cV#`ZRr6hBkSE(SORm!HFGq=BV+jnt@6tih{2b$j)SJ|t_n$6`DP-j zJXG%nW$yI8G-o%0lv31{6cT@0b_jTCT3|8{+o$G;N(cfb zvh!3_Rkg>g9!bquCw&GPHtLD;R{K@fBK;)17~+}l;hFuD+FXR|D}e|+zn;6aRPnXU z0-IQvz#{^;LWRm0jMHbw0dUNFlU_v3E(L%XBP^c}fE;EzVaiwpT*-*)7r1aj7HB69 zcNW8K4}Tw2l;b0s*o$Et z8y!f$_Q>7E{KKSHrJ==YCPl{Tp4mg1sSN`{sr5Xnb&MS7988+Q@UwM~pe!-*1f4X< zLktjg>mv%=6lmR=CXJvCAv3dxC{`Q;;TO)%?Z;RrW<#$b9lC=7kS$yC-$eqHe?f@W z_3_$zf8v~Rf>h5LgqlheZW0B1*_|+tVA9d?roZ_(N*o01nj(H+Hx}S$1E3$^XIT-m zQcV>_7uKLR9*#(DV@Zh4Y+Bv-R&{#EPkJo>_K0()z1M3g+Ubl|hXaDdtVNCh_;8Qy zGIj;pSbo4)4mpCxS#G~55^*LGPu3>k1xSS<91Y%qr9n>}58hMc(@DUT#EmAEunJ&l zjYZp&glUr=OIo#Z_bmGpz_`vx=i)5 z%K>tM1%up=|1v+@B>XWyTe7EQ-2Vm^x&*Ow8mzvqJzkk|Aydf)17U^yK!~@#^UCqd z6erl~{|fN_j45Z3ew47U&=0H{1R@k}Ncd%?#N?Q2fedfkwD+c5WE}T?ptkO9m*`yS zAjEGk-LfB-7G?RJfmcaV?J#Tl_%;&{kLcm~!1|Ai`no5!Z z0pwVu1JqbEVjrP7ejWfdcCRloKQv~~{?gb7zW%8c^nl>?SIhWKDtw&2>LWcR{O=`p z!!!B+hE$mQUrB`?ly6Tln&yp*y7LqqXg457)Rq@N_he_oS@ zE%aIq$uQn62?Q0kC-az`{{<>6R8xSe-V-vNP> zPez{Fw;}??SDQS&{k4ok-Pgr`gS$J4%RBac0!Wgp{<1)iwf35!jFg6Y(T>3O9U<$P z{f#CR`vHymKX3^fxc-w%cpY;Np3l=q;}wjsNF{@3h_>vc0e&wTb1AA?V+3s8+ihN5 zzHj#5E9>y}f0Xrub&=ox=Ru#p5Zx51^HgJhA-el_GetymawA#c8dsZ#H^mH9k7UP+ zqzn^q7deIlJmP8%m}3`SlCA5|#({|LWyYe05W=LXjLFh6`9B}wC*+38oYCDABttjW zgOzA0KFSJdW@LrukZraN(B0V`gQte11t+?waebDKuUc5nquCfQRQVyY27YzJQ$5S!t5chx63+X%89@R%h~US=U=KMce#`pC-QFk9TkTA0=w1**ba!VUz77I&@cbSy8BOXw`n!@ z)i`u{b0Fil%xo#W_Fn;sBIh~8XIpzo3`3X;-r zHtL6?T>ZrtnIQ$}`YG0q-j{aIQaOB6gufnHg-sat~6<}pwY~+lJo3DD`6@rVe&o&B7t+usYi!oH}{V z=#7bUxtIZ|gZ1c_Q>wm!xp&ePcad=JI_nJh=UnQ$e_Hi4UX7;JS}@V7Zdf-0X@j~+ z)a_hmq0OP)eDlNO-RMME}k6C8JbTZtwjq zeg74MbcRif}*65|Toy6~&;Sxm3iE|p=`IQTG zY(<<30`|x#^{~S_33_U3|AZ&Gq;;FX6ewF#wA$aH1}$6`AarDqkGB_vq&tleqg4rj zf$3G{Vx*qSo&J_ql#Z4ZlC~}TLw-G2gjDTORKcgj8{-`)8=9M0c42hyAh~xsb5f~~ ze__`7VJ1Y{RnzQJ(@d38I@64`q%_sSD|MV?;?kzRF`8w}nX&8KI(ca2okHqjrNpi; zsHx_bB@wT=7B5_@k)e85JK{4y^*nxm&iCY7;8gjTIbHnT=-br!exfP*etvP-oiqQw z(%1QX_|B+HrA1i2mo@*Ahw6V1bA9|mNgX$TSG(+^wqoaC!*6N~?2KX9S)PfX3gV*x=z~Ent27q82!M^k~x$ zU$)=qunL^h>#D)qiJDjM;gi;DcKfmrI0FpvvFslq+)dObCyyRAc{^qEfFb@|*nFy; zzg__|1BSqB`+Jz5RjzEmh|aQX-~9GvPrwGaP{cei5*l!QZEQW@RJ1wZYW)-yzjrj7 z4UAPLXmR_(#t~TO;e#z^d;8K5z69JEC~#?J=yu=&rKZ5x5=X|jFRnsVLr0G(q3ggG z+rJ)&+d3XNg*M_J52!X7bM$zLKRCh)MRxjO!)P6y@iVV4PuLbq z&hiIFIVBXh1G_Vj^SzgP)PS-<8VY=&(W@M8pM+ltuz_-D`E&ekOac81i(j8++xvtu zwol%4v#h5j)C!20Vn{uB)Z|Qp9f{aEOplV`}HmbKDG=X)6e@h(2BJ6Z?L+ zSKggr!vBigNA#(U);L7umYM&8%d=VDNtd-siK<2L{v1ZK*pIHCHid6&iZpI;0|Yfn z;ZB!J5jMj|8i?4B%8lo5Zu3{uKByZjvdr!GUg1g^3%pC4;=0r#zbVo}3+jW1gi`NJ z?%(JC%e{D*E@y_ zL0G4KoZE$39P8C4PhBuw0-7fui25HDDp)1;jGnt0ULSoTpM1Xn6tN{B;oank?B8y; zte9Gc7n`hfBCj4Z0cLdzv;Np>u%-}B%zj&{zVtl0s;PP8^QJBh!zml0Vt(YMGioP< zC9ddW`lfCf7i7mVuXPt%PvYO=ots5nZ3>U`>^->aENJ4i3FDscL)$!Y@+izA`m5fK zH?=qVLth*-pbDI({fmqkG**RD zv^U@Ol(SD{$Wp@dN%RxA8jQpN$gFbZaVBm|8PT7#0=CFTbv>#R#+;uByo2v5o=A8< zb)A8F5>sA+j{Gt)qV?JnvmI`dZZkKD5n!?Nti<{g%@b*t#+D_vx6y5L0lN zt-RAvlz>)H#iIP4zj5L!^u9=YzO!p&&e*>61j6m&KpgMl7M z=FwuHuyY}=A8io}WwWbEGRwHqO~{61OlzwfLMWGB(Is2JUi_oT>N(j9beT((7cXws z@9Px~&-+o1rNeWpd^#FA3&CvHD>lltJi|Pk<@fYE!d3hSV9jfImzTaqMl^d-(Dfz| z)q}*^rOwgSg$UM;G$6AZ=;yC=0uo{<%XU=bE8Bt}lrd~M#B?5TVR>N-->6&QFFUQU*zu z0iD^EqD=n+aoAx^s(CqN7;cYrTj zRS9W|v!KB}*fT(&-rFAj+pG9QH$&&6u2n+WJx2n6vmv^ODCVjn(tf_ZT=?Xa}9KY)!O*G|k%Z1UBN5+h_!Djd65N;Qn$&+SN zgI&5>M-emfGC!797jEVwYGN8!Vqu4Yd0Y+sr{}fa)d^$ZW<7MM#8& zk&h;z78Vw$d4R8K%-Gd-aCIl0TCuOkKn%1y9bus_Mve{dfYjv~j%m0^D*oi~6HhKoj+teF-7?n#k zf3BwXBQ4TIhr1zIFT(cLk=VhBfwP;i%ar#8%=}`+XO9m7D<$^MF>UknfRnw|lvg$I z`L*YQa%@e?O{C8w#|&`*MkqM3v>@=Br+T4P!j&h2@xX{jiE2IZ)i|gnoR@zroStFi z^+QaWP)T(5QOz;oiwKRGd2w*85q}<%_`zLGRD%G#Z!EFWQTxmjV;Q14aezVUs1FrA z@SsJxQAdFZO0e$xtRDeAh>t>2=z|hfvjVcRi~_8q#&i;UrXlrBFO=t?VS>ngXO>LX zCf}RH58h%B7Tp0mT`>{^6lhZv5DX7gSpX`5R$x*QGo(^c@i;TE}=1p%t zpkgBDDv>q{&f?P+U~t0FO3398>~)V29V>xe9?9l0Zf2!J@{^^;1gQ|u^elm-(r%YkSA~ORH%4q=QThWsE zLH;6~xT%rP9ASL)-eRNXd1~MOV%%gO6pAD-O(ws9Uh4%|V^wz*Vs;gb9#ymv`?}Wt zaUA&RYc=uw(Jnq{V3Eds`pq7knLR&J^CEYgPjHWX#{E=x($8gI7VSuCkB3x=atDc^T*F62@P(YO2a z_m}gHcT)D&waV6*&-d`Q$>pzjUUFV}$KuTV_R&y`(sd(>IpeJf)88`hccyZ!5T4k- ze+;SMZ`v^PwNe4oj;zghBasza=Qh`g9lu(yu7P)#k7IvAET&-ZOtAAM{nGkm=jU>N zb7>s#j>qFo^tQH^Jc)4&`9|y+a|eHi&+mN&M&x>*g?GaD_;E>B97Kkr&fd?_Wi1{4 z4>wK;1Mu2P+PUw`H1P@vrgMj!jQR4hnut??|QbBEh3 zCT(>GJcV;$cFSNN@=HFLi3~=70^XMnBaQLZFIY2Zv(QyrKuLe#-z|~vipTw2`5z6($x;cTc=6Ip5XNyL7`Ckg%Ix9$ya3j~vO++jBA|zkg{PtX(EiU0G5>$sY^!%c(d0_njhctuy zSEMM|e5yV=uO8+{O3Gf9&#pPV0|g)O#UeM#q|{>SKi*sO8*s{b)qGq$4ArY;ckEP( zmPe@nSfo@rqw8OEbrwW1fS0vxD`lF9!?B?&RD{GXk#K=s?YgO^?z)3L0lVr^Zqqd0 zJr3IlUDm>qZ<}fTd+L6qe1K!zr~!9uW^D&PbLA=z^k>&>S{)VTMFFgMO`M6WTVqfc#+$`LhCmn$n%7U1sLvJ??_KxYo}gi~`txk|QWldi_Df$9KNuT77K zgX7)Ncil%x*?p>km7rJNpC})_YumqR$JBnT)%Y}I7%nayyNSsShsn3>4~u}8v4>u@ zivjbQEjw`~{6ISZ0iS`WR6#v5Z4% zePS>RLgl@lWRoS&oAns(1!=>uwa~TAMPQ^&9B-dxKGCr`W5%d$qDcftYtGP(bh8n6 zrbm~>mKlu3!gvi%hdvpWZjF*tqrS%512|nT?8uTq%4e^^Cwd0r@%!X-zknyE$zL77 zHN;Y_qC?4&&10LHB%pq!K9gA_P+u?ZaGxvw?2A5IRW&OPwiIxFOL8K-lycgDXb7WL z-}*@m>`MxGTd)K+gE_NSGz&}(2)->LM_S)@DEb|0u>dv$mUN;SHLa*-P$NevRyW%( znsPZbE)~^sxZ+utVWZ2`O*TT-v~oNv@R2X9SJRi^*JO;;iC<))J*PV1b61G;U~4}a zE~k}_E=1OUa$(h4Q9yfAM>9j{aXav(6GHL7Gnh-pD?4sa?~#JJqKO6!MbwCHo-DB; zGkpa1_{m`AgOEmQ@e*&}(D)g$ z3JHffCmeUUDi(ej)(6G7^|3oWS^|Ts|YNJfF z0Z6oW=s_^AGu_N=l`(=<^o^Lq#a`z(h}H~@=a^3KN!dnyaiq_IraEO**;Fg#E4~F7 zvt00t zJtOIHl9{#|gyVMeP9o6lEvDsP2l|e8Mc}ZY2+8)lYlFyWrT;v{s+g%5UJ&l|u_r*rZgN z5TtM(7)Y(8s)NpQ2KmnYQI-N*^f*uv?-^X?T+D4wx9;5^f+Ib1P?yv)6G2>?)H_yT zdcu_^WX%}aH@k$Kk?6tcXZ$?MpVocoTXVlKu0x$_NHF^fUz5JfuNtG`IBuhm86JWs z>P%6%GX^5TRYDH$*j)#=-J$A&}9sXuBjAGJ@b z^I-ZS?!IA#YbUu{ajnMqRxoat^V5cT+1UDH8FH@In_m4etTe-soSX5X_iQ-%nV|E` zPBX{Nv7VNCd!CZGGREw5#K z$J0X*yQe$?j=8ehOLXn916%XPlaJfBZ>sEvY~Q?;_d|pG!*1jF_rqztm)(b~h09jt zcV**SZZ?WR2-R+g`JZNcd*8I`b~y_v22pmu=c1W~Yt^OIGYRhMN3(~I`MGbvaN^jh zRA5B2mzJWD&0{NpRf3%p!HTl3(iye6hWvh=Of2u`$hoeCe3FrrLRt$ zdhVZ0aXlhMKDKpgdNq-hLXt{~h_PILGl8C^x7?IXJ*=i7;sbk^<-nHd!##>Ui1_ZC zF0vuO8+nO$tl))4qUIuSz3viZYTwyfuaxjL%5(culG8f(YdSuWyoBlWA$_QX__%7c zW@Ks^N7Vyh8alP^K>dDe=jc19Y40>ZqRC8{9fYH$f^^14w<;(CgnsPEPiI;KPC*C% zlVL({koUl45d0gjk(F2LZJ^&&_lHMP23hGzp#~F-tu8J2+%Hr4hWes{TcbuN9MJ=? zW|jkPkiiHHFMc9NhFmy_{mJ&m-d$YA@5nHanE}KqMor-W60Cwl0iK6Q<4?0p8Uio} zG%O{={!?(@Io)y|q&(emYn5p2)KQ3B)NyUp$0OC<$lNW*^dtjmvS4x+Wk!Bry6CCz z;#*0!q)N4CiXGe9>_nFy>C_+ntd__lG9fX}t6OhOLxC};CWMr0GGP71A3%{~lzIk$ z*PuPY9A2?JHq8=@zXqEg=cd~zRd_~kUTK!p#+DCmAVVBIOW)z``#xG^fkYB{$4^aH zDYLYKW22fg@>Z_SaHVnj-cN^B2A3vh7SR#78`Z-fcO8zum>8Vi6CGI>b#8#g^BRZ!TF}!SGsQRif3Q=@_bQf76t;>sVQ1# zwSB(QLU%cNgwTjksi}nCZ=Flf>RT~8vReleases

    If you’re reading this on GitHub.com, please make sure you are looking at the tagged version that corresponds to the release you have installed. Otherwise, the instructions and example code may be mismatched with your copy. You can read the latest tagged version of this README and browse the associated code on GitHub using this link.

    Requirements

    -

    The Stripe iOS SDK is compatible with apps supporting iOS 8 and above and requires Xcode 8 to build from source.

    +

    The Stripe iOS SDK is compatible with apps supporting iOS 8 and above and requires Xcode 8 or Xcode 9 to build from source.

    Getting Started

    Integration

    @@ -441,7 +441,7 @@

    Examples

  • Execute ./setup.sh from the root of the repository to build the necessary dependencies.
  • If you haven’t already, sign up for a Stripe account (it takes seconds). Then go to https://dashboard.stripe.com/account/apikeys.
  • Replace the stripePublishableKey constant in CheckoutViewController.swift (for the Standard Integration app) or Constants.m (for the Custom Integration app) with your Test Publishable Key.
  • -
  • Head to https://github.com/stripe/example-ios-backend/tree/v11.0.0 and click Deploy to Heroku (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under ‘Env’. Click Deploy for Free.
  • +
  • Head to https://github.com/stripe/example-ios-backend and click Deploy to Heroku (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under ‘Env’. Click Deploy for Free.
  • Replace the backendBaseURL variable in the example iOS app with the app URL Heroku provides you with (e.g. https://my-example-app.herokuapp.com)
  • @@ -474,8 +474,8 @@

    Migrating from Older Vers diff --git a/docs/docs/search.json b/docs/docs/search.json index 76f2e61363b..97e29aa95a7 100644 --- a/docs/docs/search.json +++ b/docs/docs/search.json @@ -1 +1 @@ -{"Functions.html#/c:@F@linkSTPAPIClientApplePayCategory":{"name":"linkSTPAPIClientApplePayCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkNSErrorCategory":{"name":"linkNSErrorCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkUINavigationBarThemeCategory":{"name":"linkUINavigationBarThemeCategory","abstract":"

    This function should not be called directly.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPVoidBlock":{"name":"STPVoidBlock","abstract":"

    An empty block, called with no arguments, returning nothing.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPErrorBlock":{"name":"STPErrorBlock","abstract":"

    A block that may optionally be called with an error.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPJSONResponseCompletionBlock":{"name":"STPJSONResponseCompletionBlock","abstract":"

    A callback to be run with a JSON response.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPTokenCompletionBlock":{"name":"STPTokenCompletionBlock","abstract":"

    A callback to be run with a token response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceCompletionBlock":{"name":"STPSourceCompletionBlock","abstract":"

    A callback to be run with a source response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceProtocolCompletionBlock":{"name":"STPSourceProtocolCompletionBlock","abstract":"

    A callback to be run with a source or card response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPShippingMethodsCompletionBlock":{"name":"STPShippingMethodsCompletionBlock","abstract":"

    A callback to be run with a validation result and shipping methods for a"},"Type Definitions.html#/c:STPBlocks.h@T@STPFileCompletionBlock":{"name":"STPFileCompletionBlock","abstract":"

    A callback to be run with a file response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPCustomerCompletionBlock":{"name":"STPCustomerCompletionBlock","abstract":"

    A callback to be run with a customer response from the Stripe API.

    "},"Type Definitions.html#/c:STPRedirectContext.h@T@STPRedirectContextCompletionBlock":{"name":"STPRedirectContextCompletionBlock","abstract":"

    A callback run when the context believes the redirect action has been completed.

    "},"Type Definitions.html#/c:StripeError.h@T@STPCardErrorCode":{"name":"STPCardErrorCode","abstract":"

    Possible string values you may receive when there was an error tokenizing"},"Protocols/STPSourceProtocol.html#/c:objc(pl)STPSourceProtocol(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the source.

    ","parent_name":"STPSourceProtocol"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewControllerDidCancel:":{"name":"-shippingAddressViewControllerDidCancel:","abstract":"

    Called when the user cancels entering a shipping address. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didEnterAddress:completion:":{"name":"-shippingAddressViewController:didEnterAddress:completion:","abstract":"

    This is called when the user enters a shipping address and taps next. You should validate the address and determine what shipping methods are available, and call the completion block when finished. If an error occurrs, call the completion block with the error. Otherwise, call the completion block with a nil error and an array of available shipping methods. If you don’t need to collect a shipping method, you may pass an empty array.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didFinishWithAddress:shippingMethod:":{"name":"-shippingAddressViewController:didFinishWithAddress:shippingMethod:","abstract":"

    This is called when the user selects a shipping method. If no shipping methods are given, or if the shipping type doesn’t require a shipping method, this will be called after the user has a shipping address and your validation has succeeded. After updating your app with the user’s shipping info, you should dismiss (or pop) the view controller. Note that if shippingMethod is non-nil, there will be an additional shipping methods view controller on the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didFailToLoadWithError:":{"name":"-paymentMethodsViewController:didFailToLoadWithError:","abstract":"

    This is called when the view controller encounters an error fetching the user’s","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidFinish:":{"name":"-paymentMethodsViewControllerDidFinish:","abstract":"

    This is called when the user selects or adds a payment method, so it will often","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidCancel:":{"name":"-paymentMethodsViewControllerDidCancel:","abstract":"

    This is called when the user taps cancel.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didSelectPaymentMethod:":{"name":"-paymentMethodsViewController:didSelectPaymentMethod:","abstract":"

    This is called when the user either makes a selection, or adds a new card.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)image":{"name":"image","abstract":"

    A small (32 x 20 points) logo image representing the payment method. For","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)templateImage":{"name":"templateImage","abstract":"

    A small (32 x 20 points) logo image representing the payment method that can be","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)label":{"name":"label","abstract":"

    A string describing the payment method, such as Apple Pay or Visa 4242.

    ","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFailToLoadWithError:":{"name":"-paymentContext:didFailToLoadWithError:","abstract":"

    Called when the payment context encounters an error when fetching its initial set of data. A few ways to handle this are:

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContextDidChange:":{"name":"-paymentContextDidChange:","abstract":"

    This is called every time the contents of the payment context change. When this is called, you should update your app’s UI to reflect the current state of the payment context. For example, if you have a checkout page with a selected payment method row, you should update its payment method with paymentContext.selectedPaymentMethod.label. If that checkout page has a buy button, you should enable/disable it depending on the result of [paymentContext isReadyForPayment].

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didCreatePaymentResult:completion:":{"name":"-paymentContext:didCreatePaymentResult:completion:","abstract":"

    Inside this method, you should make a call to your backend API to make a charge with that Customer + source, and invoke the completion block when that is done.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFinishWithStatus:error:":{"name":"-paymentContext:didFinishWithStatus:error:","abstract":"

    This is invoked by an STPPaymentContext when it is finished. This will be called after the payment is done and all necessary UI has been dismissed. You should inspect the returned status and behave appropriately. For example: if it’s STPPaymentStatusSuccess, show the user a receipt. If it’s STPPaymentStatusError, inform the user of the error. If it’s STPPaymentStatusUserCanceled, do nothing.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didUpdateShippingAddress:completion:":{"name":"-paymentContext:didUpdateShippingAddress:completion:","abstract":"

    Inside this method, you should verify that you can ship to the given address.","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidChange:":{"name":"-paymentCardTextFieldDidChange:","abstract":"

    Called when either the card number, expiration, or CVC changes. At this point,","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditing:":{"name":"-paymentCardTextFieldDidBeginEditing:","abstract":"

    Called when editing begins in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditing:":{"name":"-paymentCardTextFieldDidEndEditing:","abstract":"

    Called when editing ends in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingNumber:":{"name":"-paymentCardTextFieldDidBeginEditingNumber:","abstract":"

    Called when editing begins in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingNumber:":{"name":"-paymentCardTextFieldDidEndEditingNumber:","abstract":"

    Called when editing ends in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingCVC:":{"name":"-paymentCardTextFieldDidBeginEditingCVC:","abstract":"

    Called when editing begins in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingCVC:":{"name":"-paymentCardTextFieldDidEndEditingCVC:","abstract":"

    Called when editing ends in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingExpiration:":{"name":"-paymentCardTextFieldDidBeginEditingExpiration:","abstract":"

    Called when editing begins in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingExpiration:":{"name":"-paymentCardTextFieldDidEndEditingExpiration:","abstract":"

    Called when editing ends in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingPostalCode:":{"name":"-paymentCardTextFieldDidBeginEditingPostalCode:","abstract":"

    Called when editing begins in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingPostalCode:":{"name":"-paymentCardTextFieldDidEndEditingPostalCode:","abstract":"

    Called when editing ends in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)rootObjectName":{"name":"+rootObjectName","abstract":"

    The root object name to be used when converting this object to a form-encoded string. For example, if this returns @card, then the form-encoded output will resemble @card[foo]=bar (where ‘foo’ and ‘bar’ are specified by propertyNamesToFormFieldNamesMapping below.

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)propertyNamesToFormFieldNamesMapping":{"name":"+propertyNamesToFormFieldNamesMapping","abstract":"

    This maps properties on an object that is being form-encoded into parameter names in the Stripe API. For example, STPCardParams has a field called expMonth, but the Stripe API expects a field called exp_month. This dictionary represents a mapping from the former to the latter (in other words, [STPCardParams propertyNamesToFormFieldNamesMapping][@expMonth] == @exp_month.)

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(py)additionalAPIParameters":{"name":"additionalAPIParameters","abstract":"

    You can use this property to add additional fields to an API request that are not explicitly defined by the object’s interface. This can be useful when using beta features that haven’t been added to the Stripe SDK yet. For example, if the /v1/tokens API began to accept a beta field called test_field, you might do the following:","parent_name":"STPFormEncodable"},"Protocols/STPEphemeralKeyProvider.html#/c:objc(pl)STPEphemeralKeyProvider(im)createCustomerKeyWithAPIVersion:completion:":{"name":"-createCustomerKeyWithAPIVersion:completion:","abstract":"

    Creates a new ephemeral key for retrieving and updating a Stripe customer.","parent_name":"STPEphemeralKeyProvider"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)retrieveCustomer:":{"name":"-retrieveCustomer:","abstract":"

    Retrieve the cards to be displayed inside a payment context.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)attachSourceToCustomer:completion:":{"name":"-attachSourceToCustomer:completion:","abstract":"

    Adds a payment source to a customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)selectDefaultCustomerSource:completion:":{"name":"-selectDefaultCustomerSource:completion:","abstract":"

    Change a customer’s default_source to be the provided card.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)detachSourceFromCustomer:completion:":{"name":"-detachSourceFromCustomer:completion:","abstract":"

    Deletes the given source from the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)updateCustomerWithShippingAddress:completion:":{"name":"-updateCustomerWithShippingAddress:completion:","abstract":"

    Sets the given shipping address on the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewControllerDidCancel:":{"name":"-addCardViewControllerDidCancel:","abstract":"

    Called when the user cancels adding a card. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewController:didCreateToken:completion:":{"name":"-addCardViewController:didCreateToken:completion:","abstract":"

    This is called when the user successfully adds a card and tokenizes it with Stripe. You should send the token to your backend to store it on a customer, and then call the provided completion block when that call is finished. If an error occurred while talking to your backend, call completion(error), otherwise, dismiss (or pop) the view controller.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)requiredFields":{"name":"+requiredFields","abstract":"

    These fields are required to be present in the API response. If any of them are","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)decodedObjectFromAPIResponse:":{"name":"+decodedObjectFromAPIResponse:","abstract":"

    Parses an response from the Stripe API (in JSON format; represented as","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(py)allResponseFields":{"name":"allResponseFields","abstract":"

    The raw JSON response used to create the object. This can be useful for accessing","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html":{"name":"STPAPIResponseDecodable","abstract":"

    Objects conforming to STPAPIResponseDecodable can be automatically converted"},"Protocols/STPAddCardViewControllerDelegate.html":{"name":"STPAddCardViewControllerDelegate","abstract":"

    An STPAddCardViewControllerDelegate is notified when an STPAddCardViewController successfully creates a card token or is cancelled. It has internal error-handling logic, so there’s no error case to deal with.

    "},"Protocols/STPBackendAPIAdapter.html":{"name":"STPBackendAPIAdapter","abstract":"

    Typically, you will not need to implement this protocol yourself. You"},"Protocols/STPEphemeralKeyProvider.html":{"name":"STPEphemeralKeyProvider","abstract":"

    You should make your application’s API client conform to this interface."},"Protocols/STPFormEncodable.html":{"name":"STPFormEncodable","abstract":"

    Objects conforming to STPFormEncodable can be automatically converted to a form-encoded string, which can then be used when making requests to the Stripe API.

    "},"Protocols/STPPaymentCardTextFieldDelegate.html":{"name":"STPPaymentCardTextFieldDelegate","abstract":"

    This protocol allows a delegate to be notified when a payment text field’s"},"Protocols/STPPaymentContextDelegate.html":{"name":"STPPaymentContextDelegate","abstract":"

    Implement STPPaymentContextDelegate to get notified when a payment context changes, finishes, encounters errors, etc. In practice, if your app has a checkout screen view controller, that is a good candidate to implement this protocol.

    "},"Protocols/STPPaymentMethod.html":{"name":"STPPaymentMethod","abstract":"

    This protocol represents a payment method that a user can select and use to"},"Protocols/STPPaymentMethodsViewControllerDelegate.html":{"name":"STPPaymentMethodsViewControllerDelegate","abstract":"

    An STPPaymentMethodsViewControllerDelegate responds when a user selects a"},"Protocols/STPShippingAddressViewControllerDelegate.html":{"name":"STPShippingAddressViewControllerDelegate","abstract":"

    An STPShippingAddressViewControllerDelegate is notified when an STPShippingAddressViewController receives an address, completes with an address, or is cancelled.

    "},"Protocols/STPSourceProtocol.html":{"name":"STPSourceProtocol","abstract":"

    Objects conforming to this protocol can be attached to a Stripe Customer object"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPConnectionError":{"name":"STPConnectionError","abstract":"

    Trouble connecting to Stripe.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPInvalidRequestError":{"name":"STPInvalidRequestError","abstract":"

    Your request had invalid parameters.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPAPIError":{"name":"STPAPIError","abstract":"

    General-purpose API error.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCardError":{"name":"STPCardError","abstract":"

    Something was wrong with the given card details.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCancellationError":{"name":"STPCancellationError","abstract":"

    The operation was cancelled.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPEphemeralKeyDecodingError":{"name":"STPEphemeralKeyDecodingError","abstract":"

    The ephemeral key could not be decoded. Make sure your backend is sending","parent_name":"STPErrorCode"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusPending":{"name":"STPSourceVerificationStatusPending","abstract":"

    The verification is pending.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusSucceeded":{"name":"STPSourceVerificationStatusSucceeded","abstract":"

    The verification has succeeeded.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusFailed":{"name":"STPSourceVerificationStatusFailed","abstract":"

    The verification has failed.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusUnknown":{"name":"STPSourceVerificationStatusUnknown","abstract":"

    The state of the verification is unknown.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusPending":{"name":"STPSourceRedirectStatusPending","abstract":"

    The redirect is pending.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusSucceeded":{"name":"STPSourceRedirectStatusSucceeded","abstract":"

    The redirect has succeeded.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusFailed":{"name":"STPSourceRedirectStatusFailed","abstract":"

    The redirect has failed.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusUnknown":{"name":"STPSourceRedirectStatusUnknown","abstract":"

    The state of the redirect is unknown.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBancontact":{"name":"STPSourceTypeBancontact","abstract":"

    A Bancontact source. - see: https://stripe.com/docs/sources/bancontact

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBitcoin":{"name":"STPSourceTypeBitcoin","abstract":"

    A Bitcoin source. - see: https://stripe.com/docs/sources/bitcoin

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeCard":{"name":"STPSourceTypeCard","abstract":"

    A card source. - see: https://stripe.com/docs/sources/cards

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeGiropay":{"name":"STPSourceTypeGiropay","abstract":"

    A Giropay source. - see: https://stripe.com/docs/sources/giropay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeIDEAL":{"name":"STPSourceTypeIDEAL","abstract":"

    An iDEAL source. - see: https://stripe.com/docs/sources/ideal

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSEPADebit":{"name":"STPSourceTypeSEPADebit","abstract":"

    A SEPA Direct Debit source. - see: https://stripe.com/docs/sources/sepa-debit

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSofort":{"name":"STPSourceTypeSofort","abstract":"

    A SOFORT source. - see: https://stripe.com/docs/sources/sofort

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeThreeDSecure":{"name":"STPSourceTypeThreeDSecure","abstract":"

    A 3DS card source. - see: https://stripe.com/docs/sources/three-d-secure

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeAlipay":{"name":"STPSourceTypeAlipay","abstract":"

    An Alipay source. - see: https://stripe.com/docs/sources/alipay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeP24":{"name":"STPSourceTypeP24","abstract":"

    A P24 source. - see: https://stripe.com/docs/sources/p24

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeUnknown":{"name":"STPSourceTypeUnknown","abstract":"

    An unknown type of source.

    ","parent_name":"STPSourceType"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusPending":{"name":"STPSourceStatusPending","abstract":"

    The source has been created and is awaiting customer action.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusChargeable":{"name":"STPSourceStatusChargeable","abstract":"

    The source is ready to use. The customer action has been completed or the","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusConsumed":{"name":"STPSourceStatusConsumed","abstract":"

    The source has been used. This status only applies to single-use sources.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusCanceled":{"name":"STPSourceStatusCanceled","abstract":"

    The source, which was chargeable, has expired because it was not used to","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusFailed":{"name":"STPSourceStatusFailed","abstract":"

    Your customer has not taken the required action or revoked your access","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusUnknown":{"name":"STPSourceStatusUnknown","abstract":"

    The source status is unknown.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageReusable":{"name":"STPSourceUsageReusable","abstract":"

    The source can be reused.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageSingleUse":{"name":"STPSourceUsageSingleUse","abstract":"

    The source can only be used once.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageUnknown":{"name":"STPSourceUsageUnknown","abstract":"

    The source’s usage is unknown.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowNone":{"name":"STPSourceFlowNone","abstract":"

    No action is required from your customer.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowRedirect":{"name":"STPSourceFlowRedirect","abstract":"

    Your customer must be redirected to their online banking service (either a website or mobile banking app) to approve the payment.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowCodeVerification":{"name":"STPSourceFlowCodeVerification","abstract":"

    Your customer must verify ownership of their account by providing a code that you post to the Stripe API for authentication.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowReceiver":{"name":"STPSourceFlowReceiver","abstract":"

    Your customer must push funds to the account information provided.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowUnknown":{"name":"STPSourceFlowUnknown","abstract":"

    The source’s flow is unknown.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusRequired":{"name":"STPSourceCard3DSecureStatusRequired","abstract":"

    3D Secure is required. This card must be converted into a 3D Secure","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusOptional":{"name":"STPSourceCard3DSecureStatusOptional","abstract":"

    3D Secure is optional. It is not required for successful charging,","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusNotSupported":{"name":"STPSourceCard3DSecureStatusNotSupported","abstract":"

    3D Secure is not supported on this card.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusUnknown":{"name":"STPSourceCard3DSecureStatusUnknown","abstract":"

    The status of 3D Secure support on this card is unknown.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateNotStarted":{"name":"STPRedirectContextStateNotStarted","abstract":"

    Initialized, but redirect not started.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateInProgress":{"name":"STPRedirectContextStateInProgress","abstract":"

    Redirect is in progress.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCancelled":{"name":"STPRedirectContextStateCancelled","abstract":"

    Redirect has been cancelled programmatically before completing.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCompleted":{"name":"STPRedirectContextStateCompleted","abstract":"

    Redirect has completed.

    ","parent_name":"STPRedirectContextState"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeNone":{"name":"STPPaymentMethodTypeNone","abstract":"

    Don’t allow any payment methods except for cards.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeApplePay":{"name":"STPPaymentMethodTypeApplePay","abstract":"

    The user is allowed to pay with Apple Pay if it’s configured and available","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeAll":{"name":"STPPaymentMethodTypeAll","abstract":"

    The user is allowed to use any available payment method to pay.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeIdentityDocument":{"name":"STPFilePurposeIdentityDocument","abstract":"

    Identity document file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeDisputeEvidence":{"name":"STPFilePurposeDisputeEvidence","abstract":"

    Dispute evidence file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeUnknown":{"name":"STPFilePurposeUnknown","abstract":"

    A file of unknown purpose type

    ","parent_name":"STPFilePurpose"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateValid":{"name":"STPCardValidationStateValid","abstract":"

    The field’s contents are valid. For example, a valid, 16-digit card number.","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateInvalid":{"name":"STPCardValidationStateInvalid","abstract":"

    The field’s contents are invalid. For example, an expiration date","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateIncomplete":{"name":"STPCardValidationStateIncomplete","abstract":"

    The field’s contents are not currently valid, but could be by typing","parent_name":"STPCardValidationState"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandVisa":{"name":"STPCardBrandVisa","abstract":"

    Visa card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandAmex":{"name":"STPCardBrandAmex","abstract":"

    American Express card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandMasterCard":{"name":"STPCardBrandMasterCard","abstract":"

    MasterCard card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDiscover":{"name":"STPCardBrandDiscover","abstract":"

    Discover card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandJCB":{"name":"STPCardBrandJCB","abstract":"

    JCB card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDinersClub":{"name":"STPCardBrandDinersClub","abstract":"

    Diners Club card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandUnknown":{"name":"STPCardBrandUnknown","abstract":"

    An unknown card brand type

    ","parent_name":"STPCardBrand"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeDebit":{"name":"STPCardFundingTypeDebit","abstract":"

    Debit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeCredit":{"name":"STPCardFundingTypeCredit","abstract":"

    Credit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypePrepaid":{"name":"STPCardFundingTypePrepaid","abstract":"

    Prepaid card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeOther":{"name":"STPCardFundingTypeOther","abstract":"

    An other or unknown type of funding source.

    ","parent_name":"STPCardFundingType"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusSuccess":{"name":"STPPaymentStatusSuccess","abstract":"

    The payment succeeded.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusError":{"name":"STPPaymentStatusError","abstract":"

    The payment failed due to an unforeseen error, such as the user’s Internet connection being offline.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusUserCancellation":{"name":"STPPaymentStatusUserCancellation","abstract":"

    The user cancelled the payment (for example, by hitting cancel in the Apple Pay dialog).

    ","parent_name":"STPPaymentStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusValid":{"name":"STPShippingStatusValid","abstract":"

    The shipping address is valid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusInvalid":{"name":"STPShippingStatusInvalid","abstract":"

    The shipping address is invalid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeShipping":{"name":"STPShippingTypeShipping","abstract":"

    Shipping the purchase to the provided address using a third-party","parent_name":"STPShippingType"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeDelivery":{"name":"STPShippingTypeDelivery","abstract":"

    Delivering the purchase by the seller.

    ","parent_name":"STPShippingType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeIndividual":{"name":"STPBankAccountHolderTypeIndividual","abstract":"

    An individual holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeCompany":{"name":"STPBankAccountHolderTypeCompany","abstract":"

    A company holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusNew":{"name":"STPBankAccountStatusNew","abstract":"

    The account has had no activity or validation performed

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusValidated":{"name":"STPBankAccountStatusValidated","abstract":"

    Stripe has determined this bank account exists.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerified":{"name":"STPBankAccountStatusVerified","abstract":"

    Bank account verification has succeeded.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerificationFailed":{"name":"STPBankAccountStatusVerificationFailed","abstract":"

    Verification for this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusErrored":{"name":"STPBankAccountStatusErrored","abstract":"

    A transfer sent to this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsNone":{"name":"STPBillingAddressFieldsNone","abstract":"

    No billing address information

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsZip":{"name":"STPBillingAddressFieldsZip","abstract":"

    Just request the user’s billing ZIP code

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsFull":{"name":"STPBillingAddressFieldsFull","abstract":"

    Request the user’s full billing address

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html":{"name":"STPBillingAddressFields","abstract":"

    What set of billing address information you need to collect from your user.

    "},"Enums/STPBankAccountStatus.html":{"name":"STPBankAccountStatus","abstract":"

    Possible validation states for a bank account.

    "},"Enums/STPBankAccountHolderType.html":{"name":"STPBankAccountHolderType","abstract":"

    The type of entity that holds a bank account.

    "},"Enums/STPShippingType.html":{"name":"STPShippingType","abstract":"

    These values control the labels used in the shipping info collection form.

    "},"Enums/STPShippingStatus.html":{"name":"STPShippingStatus","abstract":"

    An enum representing the status of a shipping address validation.

    "},"Enums/STPPaymentStatus.html":{"name":"STPPaymentStatus","abstract":"

    An enum representing the status of a payment requested from the user.

    "},"Enums/STPCardFundingType.html":{"name":"STPCardFundingType","abstract":"

    The various funding sources for a payment card.

    "},"Enums/STPCardBrand.html":{"name":"STPCardBrand","abstract":"

    The various card brands to which a payment card can belong.

    "},"Enums/STPCardValidationState.html":{"name":"STPCardValidationState","abstract":"

    These fields indicate whether a card field represents a valid value, invalid"},"Enums/STPFilePurpose.html":{"name":"STPFilePurpose","abstract":"

    The purpose of the uploaded file.

    "},"Enums/STPPaymentMethodType.html":{"name":"STPPaymentMethodType","abstract":"

    This represents all of the payment methods available to your user when"},"Enums/STPRedirectContextState.html":{"name":"STPRedirectContextState","abstract":"

    Possible states for the redirect context to be in

    "},"Enums/STPSourceCard3DSecureStatus.html":{"name":"STPSourceCard3DSecureStatus","abstract":"

    The status of this card’s 3D Secure support.

    "},"Enums/STPSourceFlow.html":{"name":"STPSourceFlow","abstract":"

    Authentication flows for a Source

    "},"Enums/STPSourceUsage.html":{"name":"STPSourceUsage","abstract":"

    Usage types for a Source

    "},"Enums/STPSourceStatus.html":{"name":"STPSourceStatus","abstract":"

    Status types for a Source

    "},"Enums/STPSourceType.html":{"name":"STPSourceType","abstract":"

    Types for a Source

    "},"Enums/STPSourceRedirectStatus.html":{"name":"STPSourceRedirectStatus","abstract":"

    Redirect status types for a Source.

    "},"Enums/STPSourceVerificationStatus.html":{"name":"STPSourceVerificationStatus","abstract":"

    Verification status types for a Source.

    "},"Enums/STPErrorCode.html":{"name":"STPErrorCode","abstract":"

    Possible error code values for NSError’s with the StripeDomain domain

    "},"Constants.html#/c:STPAPIClient.h@STPSDKVersion":{"name":"STPSDKVersion","abstract":"

    The current version of this library.

    "},"Constants.html#/c:@StripeDomain":{"name":"StripeDomain","abstract":"

    All Stripe iOS errors will be under this domain.

    "},"Constants.html#/c:@STPErrorMessageKey":{"name":"STPErrorMessageKey","abstract":"

    A developer-friendly error message that explains what went wrong. You probably"},"Constants.html#/c:@STPCardErrorCodeKey":{"name":"STPCardErrorCodeKey","abstract":"

    What went wrong with your STPCard (e.g., STPInvalidCVC. See below for full list).

    "},"Constants.html#/c:@STPErrorParameterKey":{"name":"STPErrorParameterKey","abstract":"

    Which parameter on the STPCard had an error (e.g., cvc). Useful for marking up the"},"Constants.html#/c:@STPStripeErrorCodeKey":{"name":"STPStripeErrorCodeKey","abstract":"

    The error code returned by the Stripe API.

    "},"Constants.html#/c:@STPStripeErrorTypeKey":{"name":"STPStripeErrorTypeKey","abstract":"

    The error type returned by the Stripe API.

    "},"Constants.html#/c:@STPInvalidNumber":{"name":"STPInvalidNumber","abstract":"

    The card number is not a valid credit card number.

    "},"Constants.html#/c:@STPInvalidExpMonth":{"name":"STPInvalidExpMonth","abstract":"

    The card has an invalid expiration month.

    "},"Constants.html#/c:@STPInvalidExpYear":{"name":"STPInvalidExpYear","abstract":"

    The card has an invalid expiration year.

    "},"Constants.html#/c:@STPInvalidCVC":{"name":"STPInvalidCVC","abstract":"

    The card has an invalid CVC.

    "},"Constants.html#/c:@STPIncorrectNumber":{"name":"STPIncorrectNumber","abstract":"

    The card number is incorrect.

    "},"Constants.html#/c:@STPExpiredCard":{"name":"STPExpiredCard","abstract":"

    The card is expired.

    "},"Constants.html#/c:@STPCardDeclined":{"name":"STPCardDeclined","abstract":"

    The card was declined.

    "},"Constants.html#/c:@STPIncorrectCVC":{"name":"STPIncorrectCVC","abstract":"

    The card has an incorrect CVC.

    "},"Constants.html#/c:@STPProcessingError":{"name":"STPProcessingError","abstract":"

    An error occured while processing this card.

    "},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)billingAddress":{"name":"billingAddress","abstract":"

    The user’s billing address. When set, the add card form will be filled with","parent_name":"STPUserInformation"},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. When set, the shipping address form will be filled","parent_name":"STPUserInformation"},"Classes/STPToken.html#/c:objc(cs)STPToken(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPToken. You should only use one that has been returned from an STPAPIClient callback.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)tokenId":{"name":"tokenId","abstract":"

    The value of the token. You can store this value on your server and use it to make charges and customers.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)livemode":{"name":"livemode","abstract":"

    Whether or not this token was created in livemode. Will be YES if you used your Live Publishable Key, and NO if you used your Test Publishable Key.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)card":{"name":"card","abstract":"

    The credit card details that were used to create the token. Will only be set if the token was created via a credit card or Apple Pay, otherwise it will be","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)bankAccount":{"name":"bankAccount","abstract":"

    The bank account details that were used to create the token. Will only be set if the token was created with a bank account, otherwise it will be nil.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)created":{"name":"created","abstract":"

    When the token was created.

    ","parent_name":"STPToken"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(cm)defaultTheme":{"name":"+defaultTheme","abstract":"

    The default theme used by all Stripe UI. All themable UI classes, such as STPAddCardViewController, have one initializer that takes a theme and one that does not. If you use the one that does not, the default theme will be used to customize that view controller’s appearance.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryBackgroundColor":{"name":"primaryBackgroundColor","abstract":"

    The primary background color of the theme. This will be used as the backgroundColor for any views with this theme.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryBackgroundColor":{"name":"secondaryBackgroundColor","abstract":"

    The secondary background color of this theme. This will be used as the backgroundColor for any supplemental views inside a view with this theme - for example, a UITableView will set it’s cells’ background color to this value.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryBackgroundColor":{"name":"tertiaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the alpha of the primaryBackgroundColor and is used as a section border color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)quaternaryBackgroundColor":{"name":"quaternaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the brightness of the primaryBackgroundColor and is used as a separator color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryForegroundColor":{"name":"primaryForegroundColor","abstract":"

    The primary foreground color of this theme. This will be used as the text color for any important labels in a view with this theme (such as the text color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryForegroundColor":{"name":"secondaryForegroundColor","abstract":"

    The secondary foreground color of this theme. This will be used as the text color for any supplementary labels in a view with this theme (such as the placeholder color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryForegroundColor":{"name":"tertiaryForegroundColor","abstract":"

    This color is automatically derived from the secondaryForegroundColor with a lower alpha component, used for disabled text.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)accentColor":{"name":"accentColor","abstract":"

    The accent color of this theme - it will be used for any buttons and other elements on a view that are important to highlight.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)errorColor":{"name":"errorColor","abstract":"

    The error color of this theme - it will be used for rendering any error messages or views.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)font":{"name":"font","abstract":"

    The font to be used for all views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)emphasisFont":{"name":"emphasisFont","abstract":"

    The medium-weight font to be used for all bold text in views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)barStyle":{"name":"barStyle","abstract":"

    The navigation bar style to use for any view controllers presented modally","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)translucentNavigationBar":{"name":"translucentNavigationBar","abstract":"

    A Boolean value indicating whether the navigation bar for any view controllers","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)smallFont":{"name":"smallFont","abstract":"

    This font is automatically derived from the font, with a slightly lower point size, and will be used for supplementary labels.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)largeFont":{"name":"largeFont","abstract":"

    This font is automatically derived from the font, with a larger point size, and will be used for large labels such as SMS code entry.

    ","parent_name":"STPTheme"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceVerification. You should only use","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)attemptsRemaining":{"name":"attemptsRemaining","abstract":"

    The number of attempts remaining to authenticate the source object with a","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)status":{"name":"status","abstract":"

    The status of the verification.

    ","parent_name":"STPSourceVerification"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceSEPADebitDetails.","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)bankCode":{"name":"bankCode","abstract":"

    The account’s bank code.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country of the bank account.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)fingerprint":{"name":"fingerprint","abstract":"

    The account’s fingerprint.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateReference":{"name":"mandateReference","abstract":"

    The reference of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateURL":{"name":"mandateURL","abstract":"

    The details of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceRedirect. You should only use","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)returnURL":{"name":"returnURL","abstract":"

    The URL you provide to redirect the customer to after they authenticated their payment.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)status":{"name":"status","abstract":"

    The status of the redirect.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)url":{"name":"url","abstract":"

    The URL provided to you to redirect a customer to as part of a redirect authentication flow.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceReceiver. You should only use one that is part of an existing STPSource object.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)address":{"name":"address","abstract":"

    The address of the receiver source. This is the value that should be communicated to the customer to send their funds to.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountCharged":{"name":"amountCharged","abstract":"

    The total amount charged by you.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReceived":{"name":"amountReceived","abstract":"

    The total amount received by the receiver source.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReturned":{"name":"amountReturned","abstract":"

    The total amount that was returned to the customer.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)type":{"name":"type","abstract":"

    The type of the source to create. Required.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)rawTypeString":{"name":"rawTypeString","abstract":"

    The raw underlying type string sent to the server.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)amount":{"name":"amount","abstract":"

    A positive integer in the smallest currency unit representing the","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)currency":{"name":"currency","abstract":"

    The currency associated with the source. This is the currency for which the source","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source to create. flow may be redirect,","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs that you can attach to a source object.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument. May be used or required","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)redirect":{"name":"redirect","abstract":"

    Parameters required for the redirect flow. Required if the source is","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)token":{"name":"token","abstract":"

    An optional token used to create the source. When passed, token properties will","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not. usage may be reusable or","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bancontactParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+bancontactParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Bancontact source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bitcoinParamsWithAmount:currency:email:":{"name":"+bitcoinParamsWithAmount:currency:email:","abstract":"

    Creates params for a Bitcoin source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)cardParamsWithCard:":{"name":"+cardParamsWithCard:","abstract":"

    Creates params for a Card source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)giropayParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+giropayParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Giropay source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)idealParamsWithAmount:name:returnURL:statementDescriptor:bank:":{"name":"+idealParamsWithAmount:name:returnURL:statementDescriptor:bank:","abstract":"

    Creates params for an iDEAL source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:":{"name":"+sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:","abstract":"

    Creates params for a SEPA Debit source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sofortParamsWithAmount:returnURL:country:statementDescriptor:":{"name":"+sofortParamsWithAmount:returnURL:country:statementDescriptor:","abstract":"

    Creates params for a Sofort source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)threeDSecureParamsWithAmount:currency:returnURL:card:":{"name":"+threeDSecureParamsWithAmount:currency:returnURL:card:","abstract":"

    Creates params for a 3DS source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)alipayParamsWithAmount:currency:returnURL:":{"name":"+alipayParamsWithAmount:currency:returnURL:","abstract":"

    Creates params for a single-use Alipay source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)p24ParamsWithAmount:currency:email:name:returnURL:":{"name":"+p24ParamsWithAmount:currency:email:name:returnURL:","abstract":"

    Creates params for a P24 source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceOwner. You should only use one","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)address":{"name":"address","abstract":"

    Owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)email":{"name":"email","abstract":"

    Owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)name":{"name":"name","abstract":"

    Owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)phone":{"name":"phone","abstract":"

    Owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedAddress":{"name":"verifiedAddress","abstract":"

    Verified owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedEmail":{"name":"verifiedEmail","abstract":"

    Verified owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedName":{"name":"verifiedName","abstract":"

    Verified owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedPhone":{"name":"verifiedPhone","abstract":"

    Verified owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceCardDetails. You should only","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)threeDSecure":{"name":"threeDSecure","abstract":"

    Whether 3D Secure is supported or required by the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    True if this card was created through Apple Pay, false otherwise.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSource.html#/c:objc(cs)STPSource(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSource. You should only use one that","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)amount":{"name":"amount","abstract":"

    The amount associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)clientSecret":{"name":"clientSecret","abstract":"

    The client secret of the source. Used for client-side fetching of a source","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)created":{"name":"created","abstract":"

    When the source was created.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)currency":{"name":"currency","abstract":"

    The currency associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)livemode":{"name":"livemode","abstract":"

    Whether or not this source was created in livemode.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the source object.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)receiver":{"name":"receiver","abstract":"

    Information related to the receiver flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)redirect":{"name":"redirect","abstract":"

    Information related to the redirect flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)status":{"name":"status","abstract":"

    The status of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)type":{"name":"type","abstract":"

    The type of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)verification":{"name":"verification","abstract":"

    Information related to the verification flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)details":{"name":"details","abstract":"

    Information about the source specific to its type

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)cardDetails":{"name":"cardDetails","abstract":"

    If this is a card source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)sepaDebitDetails":{"name":"sepaDebitDetails","abstract":"

    If this is a SEPA Debit source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme] currency:nil shippingAddress:nil selectedShippingMethod:nil prefilledInformation:nil.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Initializes a new STPShippingAddressViewController with the given payment context and sets the payment context as its delegate.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:":{"name":"-initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:","abstract":"

    Initializes a new STPShippingAddressCardViewController with the provided parameters.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPShippingAddressViewControllerDelegate

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPShippingAddressViewController onto an existing UINavigationController‘s stack, you should use this method to dismiss it, since it may have pushed an additional shipping method view controller onto the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(py)state":{"name":"state","abstract":"

    The current state of the context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)initWithSource:completion:":{"name":"-initWithSource:completion:","abstract":"

    Initializer for context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)init":{"name":"-init","abstract":"

    Use initWithSource:completion:

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startRedirectFlowFromViewController:":{"name":"-startRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariViewControllerRedirectFlowFromViewController:":{"name":"-startSafariViewControllerRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow by presenting an SFSafariViewController in your app","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariAppRedirectFlow":{"name":"-startSafariAppRedirectFlow","abstract":"

    Starts a redirect flow by calling openURL to bounce the user out to","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)cancel":{"name":"-cancel","abstract":"

    Dismisses any presented views and stops listening for any","parent_name":"STPRedirectContext"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(py)source":{"name":"source","abstract":"

    The returned source that the user has selected. This may come from a variety of different payment methods, such as an Apple Pay payment or a stored credit card. - see: STPSource.h

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(im)initWithSource:":{"name":"-initWithSource:","abstract":"

    Initializes the payment result with a given source. This is invoked by STPPaymentContext internally; you shouldn’t have to call it directly.

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)delegate":{"name":"delegate","abstract":"

    The delegate for the view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Creates a new payment methods view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:customerContext:delegate:":{"name":"-initWithConfiguration:theme:customerContext:delegate:","abstract":"

    Initializes a new payment methods view controller without using a","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:apiAdapter:delegate:":{"name":"-initWithConfiguration:theme:apiAdapter:delegate:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPPaymentMethodsViewController onto an existing","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:":{"name":"-initWithCustomerContext:","abstract":"

    This is a convenience initializer; it is equivalent to calling","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:configuration:theme:":{"name":"-initWithCustomerContext:configuration:theme:","abstract":"

    Initializes a new Payment Context with the provided customer context, configuration,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:":{"name":"-initWithAPIAdapter:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:configuration:theme:":{"name":"-initWithAPIAdapter:configuration:theme:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)apiAdapter":{"name":"apiAdapter","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)configuration":{"name":"configuration","abstract":"

    The configuration for the payment context to use internally. - see: STPPaymentConfiguration.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)theme":{"name":"theme","abstract":"

    The visual appearance that will be used by any views that the context generates. - see: STPTheme.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it here and it’ll be automatically filled out when possible/appropriate in any UI that the payment context creates.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)hostViewController":{"name":"hostViewController","abstract":"

    The view controller that any additional UI will be presented on. If you have a checkout view controller in your app, that should be used as the host view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)delegate":{"name":"delegate","abstract":"

    This delegate will be notified when the payment context’s contents change. - see: STPPaymentContextDelegate

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)loading":{"name":"loading","abstract":"

    Whether or not the payment context is currently loading information from the network.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedPaymentMethod":{"name":"selectedPaymentMethod","abstract":"

    The user’s currently selected payment method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethods":{"name":"paymentMethods","abstract":"

    The available payment methods the user can choose between. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedShippingMethod":{"name":"selectedShippingMethod","abstract":"

    The user’s currently selected shipping method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingMethods":{"name":"shippingMethods","abstract":"

    An array of STPShippingMethod objects that describe the supported shipping methods. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. May be nil.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentAmount":{"name":"paymentAmount","abstract":"

    The amount of money you’re requesting from the user, in the smallest currency","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCurrency":{"name":"paymentCurrency","abstract":"

    The three-letter currency code for the currency of the payment (i.e. USD, GBP,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCountry":{"name":"paymentCountry","abstract":"

    The two-letter country code for the country where the payment will be processed.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentSummaryItems":{"name":"paymentSummaryItems","abstract":"

    If you support Apple Pay, you can optionally set the PKPaymentSummaryItems","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)modalPresentationStyle":{"name":"modalPresentationStyle","abstract":"

    The presentation style used for all view controllers presented modally by the context.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the payment methods selection","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the add card view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)retryLoading":{"name":"-retryLoading","abstract":"

    If paymentContext:didFailToLoadWithError: is called on your delegate, you","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentPaymentMethodsViewController":{"name":"-presentPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately presents an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushPaymentMethodsViewController":{"name":"-pushPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately pushes an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentShippingViewController":{"name":"-presentShippingViewController","abstract":"

    This creates, configures, and appropriately presents a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushShippingViewController":{"name":"-pushShippingViewController","abstract":"

    This creates, configures, and appropriately pushes a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)requestPayment":{"name":"-requestPayment","abstract":"

    Requests payment from the user. This may need to present some supplemental UI","parent_name":"STPPaymentContext"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(cm)sharedConfiguration":{"name":"+sharedConfiguration","abstract":"

    This is a convenience singleton configuration that uses the default values for","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)publishableKey":{"name":"publishableKey","abstract":"

    Your Stripe publishable key

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)additionalPaymentMethods":{"name":"additionalPaymentMethods","abstract":"

    An enum value representing which payment methods you will accept from your user","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredBillingAddressFields":{"name":"requiredBillingAddressFields","abstract":"

    The billing address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredShippingAddressFields":{"name":"requiredShippingAddressFields","abstract":"

    The shipping address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)verifyPrefilledShippingAddress":{"name":"verifyPrefilledShippingAddress","abstract":"

    Whether the user should be prompted to verify prefilled shipping information.

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)shippingType":{"name":"shippingType","abstract":"

    The type of shipping for this purchase. This property sets the labels displayed","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)companyName":{"name":"companyName","abstract":"

    The name of your company, for displaying to the user during payment flows. For","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)appleMerchantIdentifier":{"name":"appleMerchantIdentifier","abstract":"

    The Apple Merchant Identifier to use during Apple Pay transactions. To create","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)canDeletePaymentMethods":{"name":"canDeletePaymentMethods","abstract":"

    Determines whether or not the user is able to delete payment methods

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)delegate":{"name":"delegate","abstract":"
    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)font":{"name":"font","abstract":"

    The font used in each child field. Default is [UIFont systemFontOfSize:18].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textColor":{"name":"textColor","abstract":"

    The text color to be used when entering valid text. Default is [UIColor blackColor].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textErrorColor":{"name":"textErrorColor","abstract":"

    The text color to be used when the user has entered invalid information,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)placeholderColor":{"name":"placeholderColor","abstract":"

    The text placeholder color used in each child field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)numberPlaceholder":{"name":"numberPlaceholder","abstract":"

    The placeholder for the card number field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationPlaceholder":{"name":"expirationPlaceholder","abstract":"

    The placeholder for the expiration field. Defaults to @MM/YY.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvcPlaceholder":{"name":"cvcPlaceholder","abstract":"

    The placeholder for the cvc field. Defaults to @CVC.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodePlaceholder":{"name":"postalCodePlaceholder","abstract":"

    The placeholder for the postal code field. Defaults to @ZIP for United States","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cursorColor":{"name":"cursorColor","abstract":"

    The cursor color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderColor":{"name":"borderColor","abstract":"

    The border color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderWidth":{"name":"borderWidth","abstract":"

    The width of the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cornerRadius":{"name":"cornerRadius","abstract":"

    The corner radius for the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)keyboardAppearance":{"name":"keyboardAppearance","abstract":"

    The keyboard appearance for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputView":{"name":"inputView","abstract":"

    This behaves identically to setting the inputView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputAccessoryView":{"name":"inputAccessoryView","abstract":"

    This behaves identically to setting the inputAccessoryView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)brandImage":{"name":"brandImage","abstract":"

    The curent brand image displayed in the receiver.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)isValid":{"name":"isValid","abstract":"

    Whether or not the form currently contains a valid card number,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)enabled":{"name":"enabled","abstract":"

    Enable/disable selecting or editing the field. Useful when submitting card details to Stripe.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardNumber":{"name":"cardNumber","abstract":"

    The current card number displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationMonth":{"name":"expirationMonth","abstract":"

    The current expiration month displayed by the field (1 = January, etc).

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationMonth":{"name":"formattedExpirationMonth","abstract":"

    The current expiration month displayed by the field, as a string. T

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationYear":{"name":"expirationYear","abstract":"

    The current expiration year displayed by the field, modulo 100","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationYear":{"name":"formattedExpirationYear","abstract":"

    The current expiration year displayed by the field, as a string.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvc":{"name":"cvc","abstract":"

    The current card CVC displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCode":{"name":"postalCode","abstract":"

    The current card ZIP or postal code displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodeEntryEnabled":{"name":"postalCodeEntryEnabled","abstract":"

    Controls if a postal code entry field can be displayed to the user.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)countryCode":{"name":"countryCode","abstract":"

    The two-letter ISO country code that corresponds to the user’s billing address.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardParams":{"name":"cardParams","abstract":"

    Convenience property for creating an STPCardParams from the currently entered information","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)becomeFirstResponder":{"name":"-becomeFirstResponder","abstract":"

    Causes the text field to begin editing. Presents the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)resignFirstResponder":{"name":"-resignFirstResponder","abstract":"

    Causes the text field to stop editing. Dismisses the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)clear":{"name":"-clear","abstract":"

    Resets all of the contents of all of the fields. If the field is currently being edited, the number field will become selected.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    Returns the cvc image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    Returns the brand image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    Returns the error image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)brandImageRectForBounds:":{"name":"-brandImageRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws its brand image.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)fieldsRectForBounds:":{"name":"-fieldsRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws the text fields.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(im)setAnimating:animated:":{"name":"-setAnimating:animated:","abstract":"

    Tell the view to start or stop spinning. If hidesWhenStopped is true, it will fade in/out if animated is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)animating":{"name":"animating","abstract":"

    Whether or not the view is animating.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)hidesWhenStopped":{"name":"hidesWhenStopped","abstract":"

    If true, the view will hide when it is not spinning. Default is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)applePayCardImage":{"name":"+applePayCardImage","abstract":"

    An icon representing Apple Pay.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)amexCardImage":{"name":"+amexCardImage","abstract":"

    An icon representing American Express.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)dinersClubCardImage":{"name":"+dinersClubCardImage","abstract":"

    An icon representing Diners Club.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)discoverCardImage":{"name":"+discoverCardImage","abstract":"

    An icon representing Discover.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)jcbCardImage":{"name":"+jcbCardImage","abstract":"

    An icon representing JCB.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)masterCardCardImage":{"name":"+masterCardCardImage","abstract":"

    An icon representing MasterCard.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)visaCardImage":{"name":"+visaCardImage","abstract":"

    An icon representing Visa.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)unknownCardCardImage":{"name":"+unknownCardCardImage","abstract":"

    An icon to use when the type of the card is unknown.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)templatedBrandImageForCardBrand:":{"name":"+templatedBrandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand as a","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    This returns a small icon indicating the CVC location for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    This returns a small icon indicating a card number error for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)fileId":{"name":"fileId","abstract":"

    The token for this file.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)created":{"name":"created","abstract":"

    The date this file was created.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)purpose":{"name":"purpose","abstract":"

    The purpose of this file. This can be either an identifing document or an evidence dispute.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)size":{"name":"size","abstract":"

    The file size in bytes.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)type":{"name":"type","abstract":"

    The file type. This can be jpg, png, or pdf.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(cm)stringFromPurpose:":{"name":"+stringFromPurpose:","abstract":"

    Returns the string value for a purpose.

    ","parent_name":"STPFile"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)initWithKeyProvider:":{"name":"-initWithKeyProvider:","abstract":"

    Initializes a new STPCustomerContext with the specified key provider.","parent_name":"STPCustomerContext"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)clearCachedCustomer":{"name":"-clearCachedCustomer","abstract":"

    STPCustomerContext will cache its customer object for up to 60 seconds.","parent_name":"STPCustomerContext"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithData:urlResponse:error:":{"name":"-initWithData:urlResponse:error:","abstract":"

    Initialize a customer deserializer. The data, urlResponse, and error","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithJSONResponse:":{"name":"-initWithJSONResponse:","abstract":"

    Initializes a customer deserializer with a JSON dictionary. This JSON should be","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)customer":{"name":"customer","abstract":"

    If a customer was successfully parsed from the response, it will be set here. Otherwise, this value wil be nil (and the error property will explain what went wrong).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)error":{"name":"error","abstract":"

    If the deserializer failed to parse a customer, this property will explain why (and the customer property will be nil).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(cm)customerWithStripeID:defaultSource:sources:":{"name":"+customerWithStripeID:defaultSource:sources:","abstract":"

    Initialize a customer object with the provided values.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the customer, e.g. cus_1234

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)defaultSource":{"name":"defaultSource","abstract":"

    The default source used to charge the customer.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)sources":{"name":"sources","abstract":"

    The available payment sources the customer has (this may be an empty array).

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The customer’s shipping address.

    ","parent_name":"STPCustomer"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithTheme:[STPTheme defaultTheme].

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithTheme:":{"name":"-initWithTheme:","abstract":"

    Initializes a new view controller with the specified theme

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithNibName:bundle:":{"name":"-initWithNibName:bundle:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithCoder:":{"name":"-initWithCoder:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)sanitizedNumericStringForString:":{"name":"+sanitizedNumericStringForString:","abstract":"

    Returns a copy of the passed string with all non-numeric characters removed.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)stringIsNumeric:":{"name":"+stringIsNumeric:","abstract":"

    Whether or not the target string contains only numeric characters.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForNumber:validatingCardBrand:":{"name":"+validationStateForNumber:validatingCardBrand:","abstract":"

    Validates a card number, passed as a string. This will return","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)brandForNumber:":{"name":"+brandForNumber:","abstract":"

    The card brand for a card number or substring thereof.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)lengthsForCardBrand:":{"name":"+lengthsForCardBrand:","abstract":"

    The possible number lengths for cards associated with a card brand. For","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxLengthForCardBrand:":{"name":"+maxLengthForCardBrand:","abstract":"

    The maximum possible length the number of a card associated with the specified","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)fragmentLengthForCardBrand:":{"name":"+fragmentLengthForCardBrand:","abstract":"

    The length of the final grouping of digits to use when formatting a card number","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationMonth:":{"name":"+validationStateForExpirationMonth:","abstract":"

    Validates an expiration month, passed as an (optionally 0-padded) string.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationYear:inMonth:":{"name":"+validationStateForExpirationYear:inMonth:","abstract":"

    Validates an expiration year, passed as a string representing the final","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxCVCLengthForCardBrand:":{"name":"+maxCVCLengthForCardBrand:","abstract":"

    The max CVC length for a card brand (for example, American Express CVCs are","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCVC:cardBrand:":{"name":"+validationStateForCVC:cardBrand:","abstract":"

    Validates a card’s CVC, passed as a numeric string, for the given card brand.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCard:":{"name":"+validationStateForCard:","abstract":"

    Validates the given card details.

    ","parent_name":"STPCardValidator"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)number":{"name":"number","abstract":"

    The card’s number.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(im)last4":{"name":"-last4","abstract":"

    The last 4 digits of the card’s number, if it’s been set, otherwise nil.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)cvc":{"name":"cvc","abstract":"

    The card’s security code, found on the back.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)currency":{"name":"currency","abstract":"

    Three-letter ISO currency code representing the currency paid out to the bank","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPCard. You should only use one that has","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)dynamicLast4":{"name":"dynamicLast4","abstract":"

    For cards made with Apple Pay, this refers to the last 4 digits of the","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    Whether or not the card originated from Apple Pay.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)currency":{"name":"currency","abstract":"

    This is only applicable when tokenizing debit cards to issue payouts to managed","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the card object.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)stringFromBrand:":{"name":"+stringFromBrand:","abstract":"

    Returns a string representation for the provided card brand;","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)brandFromString:":{"name":"+brandFromString:","abstract":"

    This parses a string representing a card’s brand into the appropriate","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)cardId":{"name":"cardId","abstract":"

    The Stripe ID for the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)initWithID:brand:last4:expMonth:expYear:funding:":{"name":"-initWithID:brand:last4:expMonth:expYear:funding:","abstract":"

    Create an STPCard from a Stripe API response.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)fundingFromString:":{"name":"+fundingFromString:","abstract":"

    This parses a string representing a card’s funding type into the appropriate","parent_name":"STPCard"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountNumber":{"name":"accountNumber","abstract":"

    The account number for the bank account. Currently must be a checking account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the bank account’s account number, if it’s been set,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPBankAccount. You should only use one","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankName":{"name":"bankName","abstract":"

    The name of the bank that owns the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)fingerprint":{"name":"fingerprint","abstract":"

    A proxy for the account number, this uniquely identifies the account and can be","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the bank account object.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)status":{"name":"status","abstract":"

    The validation status of the bank account. - see: STPBankAccountStatus

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankAccountId":{"name":"bankAccountId","abstract":"

    The Stripe ID for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)name":{"name":"name","abstract":"

    The user’s full name (e.g. Jane Doe)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line1":{"name":"line1","abstract":"

    The first line of the user’s street address (e.g. 123 Fake St)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line2":{"name":"line2","abstract":"

    The apartment, floor number, etc of the user’s street address (e.g. Apartment 1A)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)city":{"name":"city","abstract":"

    The city in which the user resides (e.g. San Francisco)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)state":{"name":"state","abstract":"

    The state in which the user resides (e.g. CA)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)postalCode":{"name":"postalCode","abstract":"

    The postal code in which the user resides (e.g. 90210)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)country":{"name":"country","abstract":"

    The ISO country code of the address (e.g. US)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)phone":{"name":"phone","abstract":"

    The phone number of the address (e.g. 8885551212)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)email":{"name":"email","abstract":"

    The email of the address (e.g. jane@doe.com)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)shippingInfoForChargeWithAddress:shippingMethod:":{"name":"+shippingInfoForChargeWithAddress:shippingMethod:","abstract":"

    When creating a charge on your backend, you can attach shipping information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithABRecord:":{"name":"-initWithABRecord:","abstract":"

    Initializes a new STPAddress with data from an Address Book record.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)ABRecordValue":{"name":"-ABRecordValue","abstract":"

    Generates an Address Book record representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithPKContact:":{"name":"-initWithPKContact:","abstract":"

    Initializes a new STPAddress with data from an PassKit contact.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)PKContactValue":{"name":"-PKContactValue","abstract":"

    Generates a PassKit contact representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithCNContact:":{"name":"-initWithCNContact:","abstract":"

    Initializes a new STPAddress with a contact from the Contacts framework.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredFields:":{"name":"-containsRequiredFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredShippingAddressFields:":{"name":"-containsRequiredShippingAddressFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)applePayAddressFieldsFromBillingAddressFields:":{"name":"+applePayAddressFieldsFromBillingAddressFields:","abstract":"

    Converts an STPBillingAddressFields enum value into the closest equivalent","parent_name":"STPAddress"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme].

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)initWithConfiguration:theme:":{"name":"-initWithConfiguration:theme:","abstract":"

    Initializes a new STPAddCardViewController with the provided configuration and theme. Don’t forget to set the delegate property after initialization.

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPAddCardViewControllerDelegate

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    You can set this property to pre-fill any information you’ve already collected from your user. - see: STPUserInformation.h

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)managedAccountCurrency":{"name":"managedAccountCurrency","abstract":"

    If you’re using the token generated from STPAddCardViewController to make a Managed Account, you should set this property to the currency that account will use. Otherwise, you should leave it empty. For more information, see https://stripe.com/docs/api#create_card_token-card-currency

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)customFooterView":{"name":"customFooterView","abstract":"

    Provide this view controller with a footer view.

    ","parent_name":"STPAddCardViewController"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)setDefaultPublishableKey:":{"name":"+setDefaultPublishableKey:","abstract":"

    Set your Stripe API key with this method. New instances of STPAPIClient will be initialized with this value. You should call this method as early as","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)defaultPublishableKey":{"name":"+defaultPublishableKey","abstract":"

    The current default publishable key.

    ","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)canSubmitPaymentRequest:":{"name":"+canSubmitPaymentRequest:","abstract":"

    Whether or not this device is capable of using Apple Pay. This checks both","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)deviceSupportsApplePay":{"name":"+deviceSupportsApplePay","abstract":"

    Whether or not this can make Apple Pay payments via a card network supported","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:":{"name":"+paymentRequestWithMerchantIdentifier:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:country:currency:":{"name":"+paymentRequestWithMerchantIdentifier:country:currency:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)handleStripeURLCallbackWithURL:":{"name":"+handleStripeURLCallbackWithURL:","abstract":"

    Call this method in your app delegate whenever you receive an URL in your","parent_name":"Stripe"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(cm)sharedClient":{"name":"+sharedClient","abstract":"

    A shared singleton API client. Its API key will be initially equal to [Stripe defaultPublishableKey].

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithConfiguration:":{"name":"-initWithConfiguration:","abstract":"

    Initializes an API client with the given configuration. Its API key will be","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithPublishableKey:":{"name":"-initWithPublishableKey:","abstract":"

    Initializes an API client with the given publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)publishableKey":{"name":"publishableKey","abstract":"

    The client’s publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)configuration":{"name":"configuration","abstract":"

    The client’s configuration.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)stripeAccount":{"name":"stripeAccount","abstract":"

    In order to perform API requests on behalf of a connected account, e.g. to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPayment:completion:":{"name":"-createTokenWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithPayment:completion:":{"name":"-createSourceWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe source using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithBankAccount:completion:":{"name":"-createTokenWithBankAccount:completion:","abstract":"

    Converts an STPBankAccount object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPersonalIDNumber:completion:":{"name":"-createTokenWithPersonalIDNumber:completion:","abstract":"

    Converts a personal identification number into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)uploadImage:purpose:completion:":{"name":"-uploadImage:purpose:completion:","abstract":"

    Uses the Stripe file upload API to upload an image. This can be used for","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithCard:completion:":{"name":"-createTokenWithCard:completion:","abstract":"

    Converts an STPCardParams object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithParams:completion:":{"name":"-createSourceWithParams:completion:","abstract":"

    Creates a Source object using the provided details.","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)retrieveSourceWithId:clientSecret:completion:":{"name":"-retrieveSourceWithId:clientSecret:completion:","abstract":"

    Retrieves the Source object with the given ID. - see: https://stripe.com/docs/api#retrieve_source

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)startPollingSourceWithId:clientSecret:timeout:completion:":{"name":"-startPollingSourceWithId:clientSecret:timeout:completion:","abstract":"

    Starts polling the Source object with the given ID. For payment methods that require","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)stopPollingSourceWithId:":{"name":"-stopPollingSourceWithId:","abstract":"

    Stops polling the Source object with the given ID. Note that the completion block passed to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html":{"name":"STPAPIClient","abstract":"

    A client for making connections to the Stripe API.

    "},"Classes/Stripe.html":{"name":"Stripe","abstract":"

    A top-level class that imports the rest of the Stripe SDK.

    "},"Classes/STPAddCardViewController.html":{"name":"STPAddCardViewController","abstract":"

    This view controller contains a credit card entry form that the user can fill out. On submission, it will use the Stripe API to convert the user’s card details to a Stripe token. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController.

    "},"Classes/STPAddress.html":{"name":"STPAddress","abstract":"

    STPAddress Contains an address as represented by the Stripe API.

    "},"Classes.html#/c:objc(cs)STPApplePayPaymentMethod":{"name":"STPApplePayPaymentMethod","abstract":"

    An empty class representing that the user wishes to pay via Apple Pay. This can"},"Classes/STPBankAccount.html":{"name":"STPBankAccount","abstract":"

    Representation of a user’s bank account details that have been tokenized with"},"Classes/STPBankAccountParams.html":{"name":"STPBankAccountParams","abstract":"

    Representation of a user’s bank account details. You can assemble these with"},"Classes/STPCard.html":{"name":"STPCard","abstract":"

    Representation of a user’s credit card details that have been tokenized with"},"Classes/STPCardParams.html":{"name":"STPCardParams","abstract":"

    Representation of a user’s credit card details. You can assemble these with"},"Classes/STPCardValidator.html":{"name":"STPCardValidator","abstract":"

    This class contains static methods to validate card numbers, expiration dates,"},"Classes.html#/c:objc(cs)STPCoreScrollViewController":{"name":"STPCoreScrollViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes.html#/c:objc(cs)STPCoreTableViewController":{"name":"STPCoreTableViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes/STPCoreViewController.html":{"name":"STPCoreViewController","abstract":"

    This is the base class for all Stripe view controllers. It is intended for use"},"Classes/STPCustomer.html":{"name":"STPCustomer","abstract":"

    An STPCustomer represents a deserialized Customer object from the Stripe API."},"Classes/STPCustomerDeserializer.html":{"name":"STPCustomerDeserializer","abstract":"

    Use STPCustomerDeserializer to convert a response from the Stripe API into an STPCustomer object. STPCustomerDeserializer expects the JSON response to be in the exact same format as the Stripe API.

    "},"Classes/STPCustomerContext.html":{"name":"STPCustomerContext","abstract":"

    An STPCustomerContext retrieves and updates a Stripe customer using"},"Classes/STPFile.html":{"name":"STPFile","abstract":"

    Representation of a file upload object in the Stripe API.

    "},"Classes/STPImageLibrary.html":{"name":"STPImageLibrary","abstract":"

    This class lets you access card icons used by the Stripe SDK. All icons are 32 x 20 points.

    "},"Classes/STPPaymentActivityIndicatorView.html":{"name":"STPPaymentActivityIndicatorView","abstract":"

    This class can be used wherever you’d use a UIActivityIndicatorView and is intended to have a similar API. It renders as a spinning circle with a gap in it, similar to what you see in the App Store app or in the Apple Pay dialog when making a purchase. To change its color, set the tintColor property.

    "},"Classes/STPPaymentCardTextField.html":{"name":"STPPaymentCardTextField","abstract":"

    STPPaymentCardTextField is a text field with similar properties to UITextField,"},"Classes/STPPaymentConfiguration.html":{"name":"STPPaymentConfiguration","abstract":"

    An STPPaymentConfiguration represents all the options you can set or change"},"Classes/STPPaymentContext.html":{"name":"STPPaymentContext","abstract":"

    An STPPaymentContext keeps track of all of the state around a payment. It will manage fetching a user’s saved payment methods, tracking any information they select, and prompting them for required additional information before completing their purchase. It can be used to power your application’s payment confirmation page with just a few lines of code.

    "},"Classes/STPPaymentMethodsViewController.html":{"name":"STPPaymentMethodsViewController","abstract":"

    This view controller presents a list of payment method options to the user,"},"Classes/STPPaymentResult.html":{"name":"STPPaymentResult","abstract":"

    When you’re using STPPaymentContext to request your user’s payment details, this is the object that will be returned to your application when they’ve successfully made a payment. It currently just contains a source, but in the future will include any relevant metadata as well. You should pass source.stripeID to your server, and call the charge creation endpoint. This assumes you are charging a Customer, so you should specify the customer parameter to be that customer’s ID and the source parameter to the value returned here. For more information, see https://stripe.com/docs/api#create_charge

    "},"Classes/STPRedirectContext.html":{"name":"STPRedirectContext","abstract":"

    This is a helper class for handling redirect sources.

    "},"Classes/STPShippingAddressViewController.html":{"name":"STPShippingAddressViewController","abstract":"

    This view controller contains a shipping address collection form. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController. Depending on your configuration’s shippingType, the view controller may present a shipping method selection form after the user enters an address.

    "},"Classes/STPSource.html":{"name":"STPSource","abstract":"

    Representation of a customer’s payment instrument created with the Stripe API. - see: https://stripe.com/docs/api#sources

    "},"Classes/STPSourceCardDetails.html":{"name":"STPSourceCardDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceOwner.html":{"name":"STPSourceOwner","abstract":"

    Information about a source’s owner.

    "},"Classes/STPSourceParams.html":{"name":"STPSourceParams","abstract":"

    An object representing parameters used to create a Source object.

    "},"Classes/STPSourceReceiver.html":{"name":"STPSourceReceiver","abstract":"

    Information related to a source’s receiver flow.

    "},"Classes/STPSourceRedirect.html":{"name":"STPSourceRedirect","abstract":"

    Information related to a source’s redirect flow.

    "},"Classes/STPSourceSEPADebitDetails.html":{"name":"STPSourceSEPADebitDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceVerification.html":{"name":"STPSourceVerification","abstract":"

    Information related to a source’s verification flow.

    "},"Classes/STPTheme.html":{"name":"STPTheme","abstract":"

    STPTheme objects can be used to visually style Stripe-provided UI. See https://stripe.com/docs/mobile/ios/standard#theming for more information.

    "},"Classes/STPToken.html":{"name":"STPToken","abstract":"

    A token returned from submitting payment details to the Stripe API. You should not have to instantiate one of these directly.

    "},"Classes/STPUserInformation.html":{"name":"STPUserInformation","abstract":"

    You can use this class to specify information that you’ve already collected"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(im)stp_setTheme:":{"name":"-stp_setTheme:","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(py)stp_theme":{"name":"stp_theme","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the bar’s tintColor and barTintColor properties, as well as the color of the single-pixel line at the bottom of the navbar.","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/NSError(Stripe).html#/c:objc(cs)NSError(cm)stp_errorFromStripeResponse:":{"name":"+stp_errorFromStripeResponse:","abstract":"

    Creates an NSError object from a given Stripe API json response.

    ","parent_name":"NSError(Stripe)"},"Categories/NSError(Stripe).html":{"name":"NSError(Stripe)","abstract":"

    NSError extensions for creating error objects from Stripe API responses.

    "},"Categories/UINavigationBar(Stripe_Theme).html":{"name":"UINavigationBar(Stripe_Theme)","abstract":"

    This allows quickly setting the appearance of a UINavigationBar to match your"},"Categories.html":{"name":"Categories","abstract":"

    The following categories are available globally.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "}} \ No newline at end of file +{"Functions.html#/c:@F@linkSTPAPIClientApplePayCategory":{"name":"linkSTPAPIClientApplePayCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkNSErrorCategory":{"name":"linkNSErrorCategory","abstract":"

    This function should not be called directly.

    "},"Functions.html#/c:@F@linkUINavigationBarThemeCategory":{"name":"linkUINavigationBarThemeCategory","abstract":"

    This function should not be called directly.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPVoidBlock":{"name":"STPVoidBlock","abstract":"

    An empty block, called with no arguments, returning nothing.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPErrorBlock":{"name":"STPErrorBlock","abstract":"

    A block that may optionally be called with an error.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPJSONResponseCompletionBlock":{"name":"STPJSONResponseCompletionBlock","abstract":"

    A callback to be run with a JSON response.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPTokenCompletionBlock":{"name":"STPTokenCompletionBlock","abstract":"

    A callback to be run with a token response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceCompletionBlock":{"name":"STPSourceCompletionBlock","abstract":"

    A callback to be run with a source response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPSourceProtocolCompletionBlock":{"name":"STPSourceProtocolCompletionBlock","abstract":"

    A callback to be run with a source or card response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPShippingMethodsCompletionBlock":{"name":"STPShippingMethodsCompletionBlock","abstract":"

    A callback to be run with a validation result and shipping methods for a"},"Type Definitions.html#/c:STPBlocks.h@T@STPFileCompletionBlock":{"name":"STPFileCompletionBlock","abstract":"

    A callback to be run with a file response from the Stripe API.

    "},"Type Definitions.html#/c:STPBlocks.h@T@STPCustomerCompletionBlock":{"name":"STPCustomerCompletionBlock","abstract":"

    A callback to be run with a customer response from the Stripe API.

    "},"Type Definitions.html#/c:STPRedirectContext.h@T@STPRedirectContextCompletionBlock":{"name":"STPRedirectContextCompletionBlock","abstract":"

    A callback run when the context believes the redirect action has been completed.

    "},"Type Definitions.html#/c:StripeError.h@T@STPCardErrorCode":{"name":"STPCardErrorCode","abstract":"

    Possible string values you may receive when there was an error tokenizing"},"Protocols/STPSourceProtocol.html#/c:objc(pl)STPSourceProtocol(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the source.

    ","parent_name":"STPSourceProtocol"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewControllerDidCancel:":{"name":"-shippingAddressViewControllerDidCancel:","abstract":"

    Called when the user cancels entering a shipping address. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didEnterAddress:completion:":{"name":"-shippingAddressViewController:didEnterAddress:completion:","abstract":"

    This is called when the user enters a shipping address and taps next. You should validate the address and determine what shipping methods are available, and call the completion block when finished. If an error occurrs, call the completion block with the error. Otherwise, call the completion block with a nil error and an array of available shipping methods. If you don’t need to collect a shipping method, you may pass an empty array.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPShippingAddressViewControllerDelegate.html#/c:objc(pl)STPShippingAddressViewControllerDelegate(im)shippingAddressViewController:didFinishWithAddress:shippingMethod:":{"name":"-shippingAddressViewController:didFinishWithAddress:shippingMethod:","abstract":"

    This is called when the user selects a shipping method. If no shipping methods are given, or if the shipping type doesn’t require a shipping method, this will be called after the user has a shipping address and your validation has succeeded. After updating your app with the user’s shipping info, you should dismiss (or pop) the view controller. Note that if shippingMethod is non-nil, there will be an additional shipping methods view controller on the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didFailToLoadWithError:":{"name":"-paymentMethodsViewController:didFailToLoadWithError:","abstract":"

    This is called when the view controller encounters an error fetching the user’s","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidFinish:":{"name":"-paymentMethodsViewControllerDidFinish:","abstract":"

    This is called when the user selects or adds a payment method, so it will often","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewControllerDidCancel:":{"name":"-paymentMethodsViewControllerDidCancel:","abstract":"

    This is called when the user taps cancel.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethodsViewControllerDelegate.html#/c:objc(pl)STPPaymentMethodsViewControllerDelegate(im)paymentMethodsViewController:didSelectPaymentMethod:":{"name":"-paymentMethodsViewController:didSelectPaymentMethod:","abstract":"

    This is called when the user either makes a selection, or adds a new card.","parent_name":"STPPaymentMethodsViewControllerDelegate"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)image":{"name":"image","abstract":"

    A small (32 x 20 points) logo image representing the payment method. For","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)templateImage":{"name":"templateImage","abstract":"

    A small (32 x 20 points) logo image representing the payment method that can be","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentMethod.html#/c:objc(pl)STPPaymentMethod(py)label":{"name":"label","abstract":"

    A string describing the payment method, such as Apple Pay or Visa 4242.

    ","parent_name":"STPPaymentMethod"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFailToLoadWithError:":{"name":"-paymentContext:didFailToLoadWithError:","abstract":"

    Called when the payment context encounters an error when fetching its initial set of data. A few ways to handle this are:

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContextDidChange:":{"name":"-paymentContextDidChange:","abstract":"

    This is called every time the contents of the payment context change. When this is called, you should update your app’s UI to reflect the current state of the payment context. For example, if you have a checkout page with a selected payment method row, you should update its payment method with paymentContext.selectedPaymentMethod.label. If that checkout page has a buy button, you should enable/disable it depending on the result of [paymentContext isReadyForPayment].

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didCreatePaymentResult:completion:":{"name":"-paymentContext:didCreatePaymentResult:completion:","abstract":"

    Inside this method, you should make a call to your backend API to make a charge with that Customer + source, and invoke the completion block when that is done.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didFinishWithStatus:error:":{"name":"-paymentContext:didFinishWithStatus:error:","abstract":"

    This is invoked by an STPPaymentContext when it is finished. This will be called after the payment is done and all necessary UI has been dismissed. You should inspect the returned status and behave appropriately. For example: if it’s STPPaymentStatusSuccess, show the user a receipt. If it’s STPPaymentStatusError, inform the user of the error. If it’s STPPaymentStatusUserCanceled, do nothing.

    ","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentContextDelegate.html#/c:objc(pl)STPPaymentContextDelegate(im)paymentContext:didUpdateShippingAddress:completion:":{"name":"-paymentContext:didUpdateShippingAddress:completion:","abstract":"

    Inside this method, you should verify that you can ship to the given address.","parent_name":"STPPaymentContextDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidChange:":{"name":"-paymentCardTextFieldDidChange:","abstract":"

    Called when either the card number, expiration, or CVC changes. At this point,","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditing:":{"name":"-paymentCardTextFieldDidBeginEditing:","abstract":"

    Called when editing begins in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditing:":{"name":"-paymentCardTextFieldDidEndEditing:","abstract":"

    Called when editing ends in the text field as a whole.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingNumber:":{"name":"-paymentCardTextFieldDidBeginEditingNumber:","abstract":"

    Called when editing begins in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingNumber:":{"name":"-paymentCardTextFieldDidEndEditingNumber:","abstract":"

    Called when editing ends in the payment card field’s number field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingCVC:":{"name":"-paymentCardTextFieldDidBeginEditingCVC:","abstract":"

    Called when editing begins in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingCVC:":{"name":"-paymentCardTextFieldDidEndEditingCVC:","abstract":"

    Called when editing ends in the payment card field’s CVC field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingExpiration:":{"name":"-paymentCardTextFieldDidBeginEditingExpiration:","abstract":"

    Called when editing begins in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingExpiration:":{"name":"-paymentCardTextFieldDidEndEditingExpiration:","abstract":"

    Called when editing ends in the payment card field’s expiration field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidBeginEditingPostalCode:":{"name":"-paymentCardTextFieldDidBeginEditingPostalCode:","abstract":"

    Called when editing begins in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPPaymentCardTextFieldDelegate.html#/c:objc(pl)STPPaymentCardTextFieldDelegate(im)paymentCardTextFieldDidEndEditingPostalCode:":{"name":"-paymentCardTextFieldDidEndEditingPostalCode:","abstract":"

    Called when editing ends in the payment card field’s ZIP/postal code field.

    ","parent_name":"STPPaymentCardTextFieldDelegate"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)rootObjectName":{"name":"+rootObjectName","abstract":"

    The root object name to be used when converting this object to a form-encoded string. For example, if this returns @card, then the form-encoded output will resemble @card[foo]=bar (where ‘foo’ and ‘bar’ are specified by propertyNamesToFormFieldNamesMapping below.

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(cm)propertyNamesToFormFieldNamesMapping":{"name":"+propertyNamesToFormFieldNamesMapping","abstract":"

    This maps properties on an object that is being form-encoded into parameter names in the Stripe API. For example, STPCardParams has a field called expMonth, but the Stripe API expects a field called exp_month. This dictionary represents a mapping from the former to the latter (in other words, [STPCardParams propertyNamesToFormFieldNamesMapping][@expMonth] == @exp_month.)

    ","parent_name":"STPFormEncodable"},"Protocols/STPFormEncodable.html#/c:objc(pl)STPFormEncodable(py)additionalAPIParameters":{"name":"additionalAPIParameters","abstract":"

    You can use this property to add additional fields to an API request that are not explicitly defined by the object’s interface. This can be useful when using beta features that haven’t been added to the Stripe SDK yet. For example, if the /v1/tokens API began to accept a beta field called test_field, you might do the following:","parent_name":"STPFormEncodable"},"Protocols/STPEphemeralKeyProvider.html#/c:objc(pl)STPEphemeralKeyProvider(im)createCustomerKeyWithAPIVersion:completion:":{"name":"-createCustomerKeyWithAPIVersion:completion:","abstract":"

    Creates a new ephemeral key for retrieving and updating a Stripe customer.","parent_name":"STPEphemeralKeyProvider"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)retrieveCustomer:":{"name":"-retrieveCustomer:","abstract":"

    Retrieve the cards to be displayed inside a payment context.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)attachSourceToCustomer:completion:":{"name":"-attachSourceToCustomer:completion:","abstract":"

    Adds a payment source to a customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)selectDefaultCustomerSource:completion:":{"name":"-selectDefaultCustomerSource:completion:","abstract":"

    Change a customer’s default_source to be the provided card.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)detachSourceFromCustomer:completion:":{"name":"-detachSourceFromCustomer:completion:","abstract":"

    Deletes the given source from the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPBackendAPIAdapter.html#/c:objc(pl)STPBackendAPIAdapter(im)updateCustomerWithShippingAddress:completion:":{"name":"-updateCustomerWithShippingAddress:completion:","abstract":"

    Sets the given shipping address on the customer.

    ","parent_name":"STPBackendAPIAdapter"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewControllerDidCancel:":{"name":"-addCardViewControllerDidCancel:","abstract":"

    Called when the user cancels adding a card. You should dismiss (or pop) the view controller at this point.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAddCardViewControllerDelegate.html#/c:objc(pl)STPAddCardViewControllerDelegate(im)addCardViewController:didCreateToken:completion:":{"name":"-addCardViewController:didCreateToken:completion:","abstract":"

    This is called when the user successfully adds a card and tokenizes it with Stripe. You should send the token to your backend to store it on a customer, and then call the provided completion block when that call is finished. If an error occurred while talking to your backend, call completion(error), otherwise, dismiss (or pop) the view controller.

    ","parent_name":"STPAddCardViewControllerDelegate"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)requiredFields":{"name":"+requiredFields","abstract":"

    These fields are required to be present in the API response. If any of them are","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(cm)decodedObjectFromAPIResponse:":{"name":"+decodedObjectFromAPIResponse:","abstract":"

    Parses an response from the Stripe API (in JSON format; represented as","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html#/c:objc(pl)STPAPIResponseDecodable(py)allResponseFields":{"name":"allResponseFields","abstract":"

    The raw JSON response used to create the object. This can be useful for accessing","parent_name":"STPAPIResponseDecodable"},"Protocols/STPAPIResponseDecodable.html":{"name":"STPAPIResponseDecodable","abstract":"

    Objects conforming to STPAPIResponseDecodable can be automatically converted"},"Protocols/STPAddCardViewControllerDelegate.html":{"name":"STPAddCardViewControllerDelegate","abstract":"

    An STPAddCardViewControllerDelegate is notified when an STPAddCardViewController successfully creates a card token or is cancelled. It has internal error-handling logic, so there’s no error case to deal with.

    "},"Protocols/STPBackendAPIAdapter.html":{"name":"STPBackendAPIAdapter","abstract":"

    Typically, you will not need to implement this protocol yourself. You"},"Protocols/STPEphemeralKeyProvider.html":{"name":"STPEphemeralKeyProvider","abstract":"

    You should make your application’s API client conform to this interface."},"Protocols/STPFormEncodable.html":{"name":"STPFormEncodable","abstract":"

    Objects conforming to STPFormEncodable can be automatically converted to a form-encoded string, which can then be used when making requests to the Stripe API.

    "},"Protocols/STPPaymentCardTextFieldDelegate.html":{"name":"STPPaymentCardTextFieldDelegate","abstract":"

    This protocol allows a delegate to be notified when a payment text field’s"},"Protocols/STPPaymentContextDelegate.html":{"name":"STPPaymentContextDelegate","abstract":"

    Implement STPPaymentContextDelegate to get notified when a payment context changes, finishes, encounters errors, etc. In practice, if your app has a checkout screen view controller, that is a good candidate to implement this protocol.

    "},"Protocols/STPPaymentMethod.html":{"name":"STPPaymentMethod","abstract":"

    This protocol represents a payment method that a user can select and use to"},"Protocols/STPPaymentMethodsViewControllerDelegate.html":{"name":"STPPaymentMethodsViewControllerDelegate","abstract":"

    An STPPaymentMethodsViewControllerDelegate responds when a user selects a"},"Protocols/STPShippingAddressViewControllerDelegate.html":{"name":"STPShippingAddressViewControllerDelegate","abstract":"

    An STPShippingAddressViewControllerDelegate is notified when an STPShippingAddressViewController receives an address, completes with an address, or is cancelled.

    "},"Protocols/STPSourceProtocol.html":{"name":"STPSourceProtocol","abstract":"

    Objects conforming to this protocol can be attached to a Stripe Customer object"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPConnectionError":{"name":"STPConnectionError","abstract":"

    Trouble connecting to Stripe.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPInvalidRequestError":{"name":"STPInvalidRequestError","abstract":"

    Your request had invalid parameters.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPAPIError":{"name":"STPAPIError","abstract":"

    General-purpose API error.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCardError":{"name":"STPCardError","abstract":"

    Something was wrong with the given card details.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPCancellationError":{"name":"STPCancellationError","abstract":"

    The operation was cancelled.

    ","parent_name":"STPErrorCode"},"Enums/STPErrorCode.html#/c:@E@STPErrorCode@STPEphemeralKeyDecodingError":{"name":"STPEphemeralKeyDecodingError","abstract":"

    The ephemeral key could not be decoded. Make sure your backend is sending","parent_name":"STPErrorCode"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusPending":{"name":"STPSourceVerificationStatusPending","abstract":"

    The verification is pending.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusSucceeded":{"name":"STPSourceVerificationStatusSucceeded","abstract":"

    The verification has succeeeded.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusFailed":{"name":"STPSourceVerificationStatusFailed","abstract":"

    The verification has failed.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceVerificationStatus.html#/c:@E@STPSourceVerificationStatus@STPSourceVerificationStatusUnknown":{"name":"STPSourceVerificationStatusUnknown","abstract":"

    The state of the verification is unknown.

    ","parent_name":"STPSourceVerificationStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusPending":{"name":"STPSourceRedirectStatusPending","abstract":"

    The redirect is pending.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusSucceeded":{"name":"STPSourceRedirectStatusSucceeded","abstract":"

    The redirect has succeeded.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusFailed":{"name":"STPSourceRedirectStatusFailed","abstract":"

    The redirect has failed.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceRedirectStatus.html#/c:@E@STPSourceRedirectStatus@STPSourceRedirectStatusUnknown":{"name":"STPSourceRedirectStatusUnknown","abstract":"

    The state of the redirect is unknown.

    ","parent_name":"STPSourceRedirectStatus"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBancontact":{"name":"STPSourceTypeBancontact","abstract":"

    A Bancontact source. - see: https://stripe.com/docs/sources/bancontact

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeBitcoin":{"name":"STPSourceTypeBitcoin","abstract":"

    A Bitcoin source. - see: https://stripe.com/docs/sources/bitcoin

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeCard":{"name":"STPSourceTypeCard","abstract":"

    A card source. - see: https://stripe.com/docs/sources/cards

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeGiropay":{"name":"STPSourceTypeGiropay","abstract":"

    A Giropay source. - see: https://stripe.com/docs/sources/giropay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeIDEAL":{"name":"STPSourceTypeIDEAL","abstract":"

    An iDEAL source. - see: https://stripe.com/docs/sources/ideal

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSEPADebit":{"name":"STPSourceTypeSEPADebit","abstract":"

    A SEPA Direct Debit source. - see: https://stripe.com/docs/sources/sepa-debit

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeSofort":{"name":"STPSourceTypeSofort","abstract":"

    A SOFORT source. - see: https://stripe.com/docs/sources/sofort

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeThreeDSecure":{"name":"STPSourceTypeThreeDSecure","abstract":"

    A 3DS card source. - see: https://stripe.com/docs/sources/three-d-secure

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeAlipay":{"name":"STPSourceTypeAlipay","abstract":"

    An Alipay source. - see: https://stripe.com/docs/sources/alipay

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeP24":{"name":"STPSourceTypeP24","abstract":"

    A P24 source. - see: https://stripe.com/docs/sources/p24

    ","parent_name":"STPSourceType"},"Enums/STPSourceType.html#/c:@E@STPSourceType@STPSourceTypeUnknown":{"name":"STPSourceTypeUnknown","abstract":"

    An unknown type of source.

    ","parent_name":"STPSourceType"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusPending":{"name":"STPSourceStatusPending","abstract":"

    The source has been created and is awaiting customer action.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusChargeable":{"name":"STPSourceStatusChargeable","abstract":"

    The source is ready to use. The customer action has been completed or the","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusConsumed":{"name":"STPSourceStatusConsumed","abstract":"

    The source has been used. This status only applies to single-use sources.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusCanceled":{"name":"STPSourceStatusCanceled","abstract":"

    The source, which was chargeable, has expired because it was not used to","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusFailed":{"name":"STPSourceStatusFailed","abstract":"

    Your customer has not taken the required action or revoked your access","parent_name":"STPSourceStatus"},"Enums/STPSourceStatus.html#/c:@E@STPSourceStatus@STPSourceStatusUnknown":{"name":"STPSourceStatusUnknown","abstract":"

    The source status is unknown.

    ","parent_name":"STPSourceStatus"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageReusable":{"name":"STPSourceUsageReusable","abstract":"

    The source can be reused.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageSingleUse":{"name":"STPSourceUsageSingleUse","abstract":"

    The source can only be used once.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceUsage.html#/c:@E@STPSourceUsage@STPSourceUsageUnknown":{"name":"STPSourceUsageUnknown","abstract":"

    The source’s usage is unknown.

    ","parent_name":"STPSourceUsage"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowNone":{"name":"STPSourceFlowNone","abstract":"

    No action is required from your customer.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowRedirect":{"name":"STPSourceFlowRedirect","abstract":"

    Your customer must be redirected to their online banking service (either a website or mobile banking app) to approve the payment.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowCodeVerification":{"name":"STPSourceFlowCodeVerification","abstract":"

    Your customer must verify ownership of their account by providing a code that you post to the Stripe API for authentication.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowReceiver":{"name":"STPSourceFlowReceiver","abstract":"

    Your customer must push funds to the account information provided.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceFlow.html#/c:@E@STPSourceFlow@STPSourceFlowUnknown":{"name":"STPSourceFlowUnknown","abstract":"

    The source’s flow is unknown.

    ","parent_name":"STPSourceFlow"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusRequired":{"name":"STPSourceCard3DSecureStatusRequired","abstract":"

    3D Secure is required. This card must be converted into a 3D Secure","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusOptional":{"name":"STPSourceCard3DSecureStatusOptional","abstract":"

    3D Secure is optional. It is not required for successful charging,","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusNotSupported":{"name":"STPSourceCard3DSecureStatusNotSupported","abstract":"

    3D Secure is not supported on this card.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPSourceCard3DSecureStatus.html#/c:@E@STPSourceCard3DSecureStatus@STPSourceCard3DSecureStatusUnknown":{"name":"STPSourceCard3DSecureStatusUnknown","abstract":"

    The status of 3D Secure support on this card is unknown.

    ","parent_name":"STPSourceCard3DSecureStatus"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateNotStarted":{"name":"STPRedirectContextStateNotStarted","abstract":"

    Initialized, but redirect not started.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateInProgress":{"name":"STPRedirectContextStateInProgress","abstract":"

    Redirect is in progress.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCancelled":{"name":"STPRedirectContextStateCancelled","abstract":"

    Redirect has been cancelled programmatically before completing.

    ","parent_name":"STPRedirectContextState"},"Enums/STPRedirectContextState.html#/c:@E@STPRedirectContextState@STPRedirectContextStateCompleted":{"name":"STPRedirectContextStateCompleted","abstract":"

    Redirect has completed.

    ","parent_name":"STPRedirectContextState"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeNone":{"name":"STPPaymentMethodTypeNone","abstract":"

    Don’t allow any payment methods except for cards.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeApplePay":{"name":"STPPaymentMethodTypeApplePay","abstract":"

    The user is allowed to pay with Apple Pay if it’s configured and available","parent_name":"STPPaymentMethodType"},"Enums/STPPaymentMethodType.html#/c:@E@STPPaymentMethodType@STPPaymentMethodTypeAll":{"name":"STPPaymentMethodTypeAll","abstract":"

    The user is allowed to use any available payment method to pay.

    ","parent_name":"STPPaymentMethodType"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeIdentityDocument":{"name":"STPFilePurposeIdentityDocument","abstract":"

    Identity document file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeDisputeEvidence":{"name":"STPFilePurposeDisputeEvidence","abstract":"

    Dispute evidence file

    ","parent_name":"STPFilePurpose"},"Enums/STPFilePurpose.html#/c:@E@STPFilePurpose@STPFilePurposeUnknown":{"name":"STPFilePurposeUnknown","abstract":"

    A file of unknown purpose type

    ","parent_name":"STPFilePurpose"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateValid":{"name":"STPCardValidationStateValid","abstract":"

    The field’s contents are valid. For example, a valid, 16-digit card number.","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateInvalid":{"name":"STPCardValidationStateInvalid","abstract":"

    The field’s contents are invalid. For example, an expiration date","parent_name":"STPCardValidationState"},"Enums/STPCardValidationState.html#/c:@E@STPCardValidationState@STPCardValidationStateIncomplete":{"name":"STPCardValidationStateIncomplete","abstract":"

    The field’s contents are not currently valid, but could be by typing","parent_name":"STPCardValidationState"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandVisa":{"name":"STPCardBrandVisa","abstract":"

    Visa card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandAmex":{"name":"STPCardBrandAmex","abstract":"

    American Express card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandMasterCard":{"name":"STPCardBrandMasterCard","abstract":"

    MasterCard card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDiscover":{"name":"STPCardBrandDiscover","abstract":"

    Discover card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandJCB":{"name":"STPCardBrandJCB","abstract":"

    JCB card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandDinersClub":{"name":"STPCardBrandDinersClub","abstract":"

    Diners Club card

    ","parent_name":"STPCardBrand"},"Enums/STPCardBrand.html#/c:@E@STPCardBrand@STPCardBrandUnknown":{"name":"STPCardBrandUnknown","abstract":"

    An unknown card brand type

    ","parent_name":"STPCardBrand"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeDebit":{"name":"STPCardFundingTypeDebit","abstract":"

    Debit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeCredit":{"name":"STPCardFundingTypeCredit","abstract":"

    Credit card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypePrepaid":{"name":"STPCardFundingTypePrepaid","abstract":"

    Prepaid card funding

    ","parent_name":"STPCardFundingType"},"Enums/STPCardFundingType.html#/c:@E@STPCardFundingType@STPCardFundingTypeOther":{"name":"STPCardFundingTypeOther","abstract":"

    An other or unknown type of funding source.

    ","parent_name":"STPCardFundingType"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusSuccess":{"name":"STPPaymentStatusSuccess","abstract":"

    The payment succeeded.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusError":{"name":"STPPaymentStatusError","abstract":"

    The payment failed due to an unforeseen error, such as the user’s Internet connection being offline.

    ","parent_name":"STPPaymentStatus"},"Enums/STPPaymentStatus.html#/c:@E@STPPaymentStatus@STPPaymentStatusUserCancellation":{"name":"STPPaymentStatusUserCancellation","abstract":"

    The user cancelled the payment (for example, by hitting cancel in the Apple Pay dialog).

    ","parent_name":"STPPaymentStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusValid":{"name":"STPShippingStatusValid","abstract":"

    The shipping address is valid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingStatus.html#/c:@E@STPShippingStatus@STPShippingStatusInvalid":{"name":"STPShippingStatusInvalid","abstract":"

    The shipping address is invalid.

    ","parent_name":"STPShippingStatus"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeShipping":{"name":"STPShippingTypeShipping","abstract":"

    Shipping the purchase to the provided address using a third-party","parent_name":"STPShippingType"},"Enums/STPShippingType.html#/c:@E@STPShippingType@STPShippingTypeDelivery":{"name":"STPShippingTypeDelivery","abstract":"

    Delivering the purchase by the seller.

    ","parent_name":"STPShippingType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeIndividual":{"name":"STPBankAccountHolderTypeIndividual","abstract":"

    An individual holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountHolderType.html#/c:@E@STPBankAccountHolderType@STPBankAccountHolderTypeCompany":{"name":"STPBankAccountHolderTypeCompany","abstract":"

    A company holds this bank account.

    ","parent_name":"STPBankAccountHolderType"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusNew":{"name":"STPBankAccountStatusNew","abstract":"

    The account has had no activity or validation performed

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusValidated":{"name":"STPBankAccountStatusValidated","abstract":"

    Stripe has determined this bank account exists.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerified":{"name":"STPBankAccountStatusVerified","abstract":"

    Bank account verification has succeeded.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusVerificationFailed":{"name":"STPBankAccountStatusVerificationFailed","abstract":"

    Verification for this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBankAccountStatus.html#/c:@E@STPBankAccountStatus@STPBankAccountStatusErrored":{"name":"STPBankAccountStatusErrored","abstract":"

    A transfer sent to this bank account has failed.

    ","parent_name":"STPBankAccountStatus"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsNone":{"name":"STPBillingAddressFieldsNone","abstract":"

    No billing address information

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsZip":{"name":"STPBillingAddressFieldsZip","abstract":"

    Just request the user’s billing ZIP code

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html#/c:@E@STPBillingAddressFields@STPBillingAddressFieldsFull":{"name":"STPBillingAddressFieldsFull","abstract":"

    Request the user’s full billing address

    ","parent_name":"STPBillingAddressFields"},"Enums/STPBillingAddressFields.html":{"name":"STPBillingAddressFields","abstract":"

    What set of billing address information you need to collect from your user.

    "},"Enums/STPBankAccountStatus.html":{"name":"STPBankAccountStatus","abstract":"

    Possible validation states for a bank account.

    "},"Enums/STPBankAccountHolderType.html":{"name":"STPBankAccountHolderType","abstract":"

    The type of entity that holds a bank account.

    "},"Enums/STPShippingType.html":{"name":"STPShippingType","abstract":"

    These values control the labels used in the shipping info collection form.

    "},"Enums/STPShippingStatus.html":{"name":"STPShippingStatus","abstract":"

    An enum representing the status of a shipping address validation.

    "},"Enums/STPPaymentStatus.html":{"name":"STPPaymentStatus","abstract":"

    An enum representing the status of a payment requested from the user.

    "},"Enums/STPCardFundingType.html":{"name":"STPCardFundingType","abstract":"

    The various funding sources for a payment card.

    "},"Enums/STPCardBrand.html":{"name":"STPCardBrand","abstract":"

    The various card brands to which a payment card can belong.

    "},"Enums/STPCardValidationState.html":{"name":"STPCardValidationState","abstract":"

    These fields indicate whether a card field represents a valid value, invalid"},"Enums/STPFilePurpose.html":{"name":"STPFilePurpose","abstract":"

    The purpose of the uploaded file.

    "},"Enums/STPPaymentMethodType.html":{"name":"STPPaymentMethodType","abstract":"

    This represents all of the payment methods available to your user when"},"Enums/STPRedirectContextState.html":{"name":"STPRedirectContextState","abstract":"

    Possible states for the redirect context to be in

    "},"Enums/STPSourceCard3DSecureStatus.html":{"name":"STPSourceCard3DSecureStatus","abstract":"

    The status of this card’s 3D Secure support.

    "},"Enums/STPSourceFlow.html":{"name":"STPSourceFlow","abstract":"

    Authentication flows for a Source

    "},"Enums/STPSourceUsage.html":{"name":"STPSourceUsage","abstract":"

    Usage types for a Source

    "},"Enums/STPSourceStatus.html":{"name":"STPSourceStatus","abstract":"

    Status types for a Source

    "},"Enums/STPSourceType.html":{"name":"STPSourceType","abstract":"

    Types for a Source

    "},"Enums/STPSourceRedirectStatus.html":{"name":"STPSourceRedirectStatus","abstract":"

    Redirect status types for a Source.

    "},"Enums/STPSourceVerificationStatus.html":{"name":"STPSourceVerificationStatus","abstract":"

    Verification status types for a Source.

    "},"Enums/STPErrorCode.html":{"name":"STPErrorCode","abstract":"

    Possible error code values for NSError’s with the StripeDomain domain

    "},"Constants.html#/c:STPAPIClient.h@STPSDKVersion":{"name":"STPSDKVersion","abstract":"

    The current version of this library.

    "},"Constants.html#/c:@StripeDomain":{"name":"StripeDomain","abstract":"

    All Stripe iOS errors will be under this domain.

    "},"Constants.html#/c:@STPErrorMessageKey":{"name":"STPErrorMessageKey","abstract":"

    A developer-friendly error message that explains what went wrong. You probably"},"Constants.html#/c:@STPCardErrorCodeKey":{"name":"STPCardErrorCodeKey","abstract":"

    What went wrong with your STPCard (e.g., STPInvalidCVC. See below for full list).

    "},"Constants.html#/c:@STPErrorParameterKey":{"name":"STPErrorParameterKey","abstract":"

    Which parameter on the STPCard had an error (e.g., cvc). Useful for marking up the"},"Constants.html#/c:@STPStripeErrorCodeKey":{"name":"STPStripeErrorCodeKey","abstract":"

    The error code returned by the Stripe API.

    "},"Constants.html#/c:@STPStripeErrorTypeKey":{"name":"STPStripeErrorTypeKey","abstract":"

    The error type returned by the Stripe API.

    "},"Constants.html#/c:@STPInvalidNumber":{"name":"STPInvalidNumber","abstract":"

    The card number is not a valid credit card number.

    "},"Constants.html#/c:@STPInvalidExpMonth":{"name":"STPInvalidExpMonth","abstract":"

    The card has an invalid expiration month.

    "},"Constants.html#/c:@STPInvalidExpYear":{"name":"STPInvalidExpYear","abstract":"

    The card has an invalid expiration year.

    "},"Constants.html#/c:@STPInvalidCVC":{"name":"STPInvalidCVC","abstract":"

    The card has an invalid CVC.

    "},"Constants.html#/c:@STPIncorrectNumber":{"name":"STPIncorrectNumber","abstract":"

    The card number is incorrect.

    "},"Constants.html#/c:@STPExpiredCard":{"name":"STPExpiredCard","abstract":"

    The card is expired.

    "},"Constants.html#/c:@STPCardDeclined":{"name":"STPCardDeclined","abstract":"

    The card was declined.

    "},"Constants.html#/c:@STPIncorrectCVC":{"name":"STPIncorrectCVC","abstract":"

    The card has an incorrect CVC.

    "},"Constants.html#/c:@STPProcessingError":{"name":"STPProcessingError","abstract":"

    An error occured while processing this card.

    "},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)billingAddress":{"name":"billingAddress","abstract":"

    The user’s billing address. When set, the add card form will be filled with","parent_name":"STPUserInformation"},"Classes/STPUserInformation.html#/c:objc(cs)STPUserInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. When set, the shipping address form will be filled","parent_name":"STPUserInformation"},"Classes/STPToken.html#/c:objc(cs)STPToken(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPToken. You should only use one that has been returned from an STPAPIClient callback.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)tokenId":{"name":"tokenId","abstract":"

    The value of the token. You can store this value on your server and use it to make charges and customers.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)livemode":{"name":"livemode","abstract":"

    Whether or not this token was created in livemode. Will be YES if you used your Live Publishable Key, and NO if you used your Test Publishable Key.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)card":{"name":"card","abstract":"

    The credit card details that were used to create the token. Will only be set if the token was created via a credit card or Apple Pay, otherwise it will be","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)bankAccount":{"name":"bankAccount","abstract":"

    The bank account details that were used to create the token. Will only be set if the token was created with a bank account, otherwise it will be nil.

    ","parent_name":"STPToken"},"Classes/STPToken.html#/c:objc(cs)STPToken(py)created":{"name":"created","abstract":"

    When the token was created.

    ","parent_name":"STPToken"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(cm)defaultTheme":{"name":"+defaultTheme","abstract":"

    The default theme used by all Stripe UI. All themable UI classes, such as STPAddCardViewController, have one initializer that takes a theme and one that does not. If you use the one that does not, the default theme will be used to customize that view controller’s appearance.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryBackgroundColor":{"name":"primaryBackgroundColor","abstract":"

    The primary background color of the theme. This will be used as the backgroundColor for any views with this theme.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryBackgroundColor":{"name":"secondaryBackgroundColor","abstract":"

    The secondary background color of this theme. This will be used as the backgroundColor for any supplemental views inside a view with this theme - for example, a UITableView will set it’s cells’ background color to this value.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryBackgroundColor":{"name":"tertiaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the alpha of the primaryBackgroundColor and is used as a section border color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)quaternaryBackgroundColor":{"name":"quaternaryBackgroundColor","abstract":"

    This color is automatically derived by reducing the brightness of the primaryBackgroundColor and is used as a separator color in table view cells.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)primaryForegroundColor":{"name":"primaryForegroundColor","abstract":"

    The primary foreground color of this theme. This will be used as the text color for any important labels in a view with this theme (such as the text color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)secondaryForegroundColor":{"name":"secondaryForegroundColor","abstract":"

    The secondary foreground color of this theme. This will be used as the text color for any supplementary labels in a view with this theme (such as the placeholder color for a text field that the user needs to fill out).

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)tertiaryForegroundColor":{"name":"tertiaryForegroundColor","abstract":"

    This color is automatically derived from the secondaryForegroundColor with a lower alpha component, used for disabled text.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)accentColor":{"name":"accentColor","abstract":"

    The accent color of this theme - it will be used for any buttons and other elements on a view that are important to highlight.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)errorColor":{"name":"errorColor","abstract":"

    The error color of this theme - it will be used for rendering any error messages or views.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)font":{"name":"font","abstract":"

    The font to be used for all views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)emphasisFont":{"name":"emphasisFont","abstract":"

    The medium-weight font to be used for all bold text in views using this theme. Make sure to select an appropriate size.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)barStyle":{"name":"barStyle","abstract":"

    The navigation bar style to use for any view controllers presented modally","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)translucentNavigationBar":{"name":"translucentNavigationBar","abstract":"

    A Boolean value indicating whether the navigation bar for any view controllers","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)smallFont":{"name":"smallFont","abstract":"

    This font is automatically derived from the font, with a slightly lower point size, and will be used for supplementary labels.

    ","parent_name":"STPTheme"},"Classes/STPTheme.html#/c:objc(cs)STPTheme(py)largeFont":{"name":"largeFont","abstract":"

    This font is automatically derived from the font, with a larger point size, and will be used for large labels such as SMS code entry.

    ","parent_name":"STPTheme"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceVerification. You should only use","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)attemptsRemaining":{"name":"attemptsRemaining","abstract":"

    The number of attempts remaining to authenticate the source object with a","parent_name":"STPSourceVerification"},"Classes/STPSourceVerification.html#/c:objc(cs)STPSourceVerification(py)status":{"name":"status","abstract":"

    The status of the verification.

    ","parent_name":"STPSourceVerification"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceSEPADebitDetails.","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)bankCode":{"name":"bankCode","abstract":"

    The account’s bank code.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country of the bank account.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)fingerprint":{"name":"fingerprint","abstract":"

    The account’s fingerprint.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateReference":{"name":"mandateReference","abstract":"

    The reference of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceSEPADebitDetails.html#/c:objc(cs)STPSourceSEPADebitDetails(py)mandateURL":{"name":"mandateURL","abstract":"

    The details of the mandate accepted by your customer.

    ","parent_name":"STPSourceSEPADebitDetails"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceRedirect. You should only use","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)returnURL":{"name":"returnURL","abstract":"

    The URL you provide to redirect the customer to after they authenticated their payment.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)status":{"name":"status","abstract":"

    The status of the redirect.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceRedirect.html#/c:objc(cs)STPSourceRedirect(py)url":{"name":"url","abstract":"

    The URL provided to you to redirect a customer to as part of a redirect authentication flow.

    ","parent_name":"STPSourceRedirect"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceReceiver. You should only use one that is part of an existing STPSource object.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)address":{"name":"address","abstract":"

    The address of the receiver source. This is the value that should be communicated to the customer to send their funds to.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountCharged":{"name":"amountCharged","abstract":"

    The total amount charged by you.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReceived":{"name":"amountReceived","abstract":"

    The total amount received by the receiver source.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceReceiver.html#/c:objc(cs)STPSourceReceiver(py)amountReturned":{"name":"amountReturned","abstract":"

    The total amount that was returned to the customer.

    ","parent_name":"STPSourceReceiver"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)type":{"name":"type","abstract":"

    The type of the source to create. Required.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)rawTypeString":{"name":"rawTypeString","abstract":"

    The raw underlying type string sent to the server.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)amount":{"name":"amount","abstract":"

    A positive integer in the smallest currency unit representing the","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)currency":{"name":"currency","abstract":"

    The currency associated with the source. This is the currency for which the source","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source to create. flow may be redirect,","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs that you can attach to a source object.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument. May be used or required","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)redirect":{"name":"redirect","abstract":"

    Parameters required for the redirect flow. Required if the source is","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)token":{"name":"token","abstract":"

    An optional token used to create the source. When passed, token properties will","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not. usage may be reusable or","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bancontactParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+bancontactParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Bancontact source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)bitcoinParamsWithAmount:currency:email:":{"name":"+bitcoinParamsWithAmount:currency:email:","abstract":"

    Creates params for a Bitcoin source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)cardParamsWithCard:":{"name":"+cardParamsWithCard:","abstract":"

    Creates params for a Card source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)giropayParamsWithAmount:name:returnURL:statementDescriptor:":{"name":"+giropayParamsWithAmount:name:returnURL:statementDescriptor:","abstract":"

    Creates params for a Giropay source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)idealParamsWithAmount:name:returnURL:statementDescriptor:bank:":{"name":"+idealParamsWithAmount:name:returnURL:statementDescriptor:bank:","abstract":"

    Creates params for an iDEAL source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:":{"name":"+sepaDebitParamsWithName:iban:addressLine1:city:postalCode:country:","abstract":"

    Creates params for a SEPA Debit source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)sofortParamsWithAmount:returnURL:country:statementDescriptor:":{"name":"+sofortParamsWithAmount:returnURL:country:statementDescriptor:","abstract":"

    Creates params for a Sofort source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)threeDSecureParamsWithAmount:currency:returnURL:card:":{"name":"+threeDSecureParamsWithAmount:currency:returnURL:card:","abstract":"

    Creates params for a 3DS source.

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)alipayParamsWithAmount:currency:returnURL:":{"name":"+alipayParamsWithAmount:currency:returnURL:","abstract":"

    Creates params for a single-use Alipay source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)alipayReusableParamsWithCurrency:returnURL:":{"name":"+alipayReusableParamsWithCurrency:returnURL:","abstract":"

    Creates params for a reusable Alipay source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceParams.html#/c:objc(cs)STPSourceParams(cm)p24ParamsWithAmount:currency:email:name:returnURL:":{"name":"+p24ParamsWithAmount:currency:email:name:returnURL:","abstract":"

    Creates params for a P24 source

    ","parent_name":"STPSourceParams"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceOwner. You should only use one","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)address":{"name":"address","abstract":"

    Owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)email":{"name":"email","abstract":"

    Owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)name":{"name":"name","abstract":"

    Owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)phone":{"name":"phone","abstract":"

    Owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedAddress":{"name":"verifiedAddress","abstract":"

    Verified owner’s address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedEmail":{"name":"verifiedEmail","abstract":"

    Verified owner’s email address.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedName":{"name":"verifiedName","abstract":"

    Verified owner’s full name.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceOwner.html#/c:objc(cs)STPSourceOwner(py)verifiedPhone":{"name":"verifiedPhone","abstract":"

    Verified owner’s phone number.

    ","parent_name":"STPSourceOwner"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSourceCardDetails. You should only","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)threeDSecure":{"name":"threeDSecure","abstract":"

    Whether 3D Secure is supported or required by the card.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSourceCardDetails.html#/c:objc(cs)STPSourceCardDetails(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    True if this card was created through Apple Pay, false otherwise.

    ","parent_name":"STPSourceCardDetails"},"Classes/STPSource.html#/c:objc(cs)STPSource(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPSource. You should only use one that","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)amount":{"name":"amount","abstract":"

    The amount associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)clientSecret":{"name":"clientSecret","abstract":"

    The client secret of the source. Used for client-side fetching of a source","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)created":{"name":"created","abstract":"

    When the source was created.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)currency":{"name":"currency","abstract":"

    The currency associated with the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)flow":{"name":"flow","abstract":"

    The authentication flow of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)livemode":{"name":"livemode","abstract":"

    Whether or not this source was created in livemode.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the source object.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)owner":{"name":"owner","abstract":"

    Information about the owner of the payment instrument.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)receiver":{"name":"receiver","abstract":"

    Information related to the receiver flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)redirect":{"name":"redirect","abstract":"

    Information related to the redirect flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)status":{"name":"status","abstract":"

    The status of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)type":{"name":"type","abstract":"

    The type of the source.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)usage":{"name":"usage","abstract":"

    Whether this source should be reusable or not.

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)verification":{"name":"verification","abstract":"

    Information related to the verification flow. Present if the source’s flow","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)details":{"name":"details","abstract":"

    Information about the source specific to its type

    ","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)cardDetails":{"name":"cardDetails","abstract":"

    If this is a card source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPSource.html#/c:objc(cs)STPSource(py)sepaDebitDetails":{"name":"sepaDebitDetails","abstract":"

    If this is a SEPA Debit source, this property provides typed access to the","parent_name":"STPSource"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme] currency:nil shippingAddress:nil selectedShippingMethod:nil prefilledInformation:nil.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Initializes a new STPShippingAddressViewController with the given payment context and sets the payment context as its delegate.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:":{"name":"-initWithConfiguration:theme:currency:shippingAddress:selectedShippingMethod:prefilledInformation:","abstract":"

    Initializes a new STPShippingAddressCardViewController with the provided parameters.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPShippingAddressViewControllerDelegate

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPShippingAddressViewController.html#/c:objc(cs)STPShippingAddressViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPShippingAddressViewController onto an existing UINavigationController‘s stack, you should use this method to dismiss it, since it may have pushed an additional shipping method view controller onto the navigation controller’s stack.

    ","parent_name":"STPShippingAddressViewController"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(py)state":{"name":"state","abstract":"

    The current state of the context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)initWithSource:completion:":{"name":"-initWithSource:completion:","abstract":"

    Initializer for context.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)init":{"name":"-init","abstract":"

    Use initWithSource:completion:

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startRedirectFlowFromViewController:":{"name":"-startRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow.

    ","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariViewControllerRedirectFlowFromViewController:":{"name":"-startSafariViewControllerRedirectFlowFromViewController:","abstract":"

    Starts a redirect flow by presenting an SFSafariViewController in your app","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)startSafariAppRedirectFlow":{"name":"-startSafariAppRedirectFlow","abstract":"

    Starts a redirect flow by calling openURL to bounce the user out to","parent_name":"STPRedirectContext"},"Classes/STPRedirectContext.html#/c:objc(cs)STPRedirectContext(im)cancel":{"name":"-cancel","abstract":"

    Dismisses any presented views and stops listening for any","parent_name":"STPRedirectContext"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(py)source":{"name":"source","abstract":"

    The returned source that the user has selected. This may come from a variety of different payment methods, such as an Apple Pay payment or a stored credit card. - see: STPSource.h

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentResult.html#/c:objc(cs)STPPaymentResult(im)initWithSource:":{"name":"-initWithSource:","abstract":"

    Initializes the payment result with a given source. This is invoked by STPPaymentContext internally; you shouldn’t have to call it directly.

    ","parent_name":"STPPaymentResult"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)delegate":{"name":"delegate","abstract":"

    The delegate for the view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithPaymentContext:":{"name":"-initWithPaymentContext:","abstract":"

    Creates a new payment methods view controller.

    ","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:customerContext:delegate:":{"name":"-initWithConfiguration:theme:customerContext:delegate:","abstract":"

    Initializes a new payment methods view controller without using a","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)initWithConfiguration:theme:apiAdapter:delegate:":{"name":"-initWithConfiguration:theme:apiAdapter:delegate:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the view controller when it is","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentMethodsViewController.html#/c:objc(cs)STPPaymentMethodsViewController(im)dismissWithCompletion:":{"name":"-dismissWithCompletion:","abstract":"

    If you’re pushing STPPaymentMethodsViewController onto an existing","parent_name":"STPPaymentMethodsViewController"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:":{"name":"-initWithCustomerContext:","abstract":"

    This is a convenience initializer; it is equivalent to calling","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithCustomerContext:configuration:theme:":{"name":"-initWithCustomerContext:configuration:theme:","abstract":"

    Initializes a new Payment Context with the provided customer context, configuration,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:":{"name":"-initWithAPIAdapter:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)initWithAPIAdapter:configuration:theme:":{"name":"-initWithAPIAdapter:configuration:theme:","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)apiAdapter":{"name":"apiAdapter","abstract":"

    Note: Instead of providing your own backend API adapter, we recommend using","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)configuration":{"name":"configuration","abstract":"

    The configuration for the payment context to use internally. - see: STPPaymentConfiguration.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)theme":{"name":"theme","abstract":"

    The visual appearance that will be used by any views that the context generates. - see: STPTheme.h

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    If you’ve already collected some information from your user, you can set it here and it’ll be automatically filled out when possible/appropriate in any UI that the payment context creates.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)hostViewController":{"name":"hostViewController","abstract":"

    The view controller that any additional UI will be presented on. If you have a checkout view controller in your app, that should be used as the host view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)delegate":{"name":"delegate","abstract":"

    This delegate will be notified when the payment context’s contents change. - see: STPPaymentContextDelegate

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)loading":{"name":"loading","abstract":"

    Whether or not the payment context is currently loading information from the network.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedPaymentMethod":{"name":"selectedPaymentMethod","abstract":"

    The user’s currently selected payment method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethods":{"name":"paymentMethods","abstract":"

    The available payment methods the user can choose between. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)selectedShippingMethod":{"name":"selectedShippingMethod","abstract":"

    The user’s currently selected shipping method. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingMethods":{"name":"shippingMethods","abstract":"

    An array of STPShippingMethod objects that describe the supported shipping methods. May be nil.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The user’s shipping address. May be nil.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentAmount":{"name":"paymentAmount","abstract":"

    The amount of money you’re requesting from the user, in the smallest currency","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCurrency":{"name":"paymentCurrency","abstract":"

    The three-letter currency code for the currency of the payment (i.e. USD, GBP,","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentCountry":{"name":"paymentCountry","abstract":"

    The two-letter country code for the country where the payment will be processed.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentSummaryItems":{"name":"paymentSummaryItems","abstract":"

    If you support Apple Pay, you can optionally set the PKPaymentSummaryItems","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)modalPresentationStyle":{"name":"modalPresentationStyle","abstract":"

    The presentation style used for all view controllers presented modally by the context.","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)paymentMethodsViewControllerFooterView":{"name":"paymentMethodsViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the payment methods selection","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(py)addCardViewControllerFooterView":{"name":"addCardViewControllerFooterView","abstract":"

    A view that will be placed as the footer of the add card view controller.

    ","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)retryLoading":{"name":"-retryLoading","abstract":"

    If paymentContext:didFailToLoadWithError: is called on your delegate, you","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentPaymentMethodsViewController":{"name":"-presentPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately presents an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushPaymentMethodsViewController":{"name":"-pushPaymentMethodsViewController","abstract":"

    This creates, configures, and appropriately pushes an STPPaymentMethodsViewController","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)presentShippingViewController":{"name":"-presentShippingViewController","abstract":"

    This creates, configures, and appropriately presents a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)pushShippingViewController":{"name":"-pushShippingViewController","abstract":"

    This creates, configures, and appropriately pushes a view controller for","parent_name":"STPPaymentContext"},"Classes/STPPaymentContext.html#/c:objc(cs)STPPaymentContext(im)requestPayment":{"name":"-requestPayment","abstract":"

    Requests payment from the user. This may need to present some supplemental UI","parent_name":"STPPaymentContext"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(cm)sharedConfiguration":{"name":"+sharedConfiguration","abstract":"

    This is a convenience singleton configuration that uses the default values for","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)publishableKey":{"name":"publishableKey","abstract":"

    Your Stripe publishable key

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)additionalPaymentMethods":{"name":"additionalPaymentMethods","abstract":"

    An enum value representing which payment methods you will accept from your user","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredBillingAddressFields":{"name":"requiredBillingAddressFields","abstract":"

    The billing address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)requiredShippingAddressFields":{"name":"requiredShippingAddressFields","abstract":"

    The shipping address fields the user must fill out when prompted for their","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)verifyPrefilledShippingAddress":{"name":"verifyPrefilledShippingAddress","abstract":"

    Whether the user should be prompted to verify prefilled shipping information.

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)shippingType":{"name":"shippingType","abstract":"

    The type of shipping for this purchase. This property sets the labels displayed","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)companyName":{"name":"companyName","abstract":"

    The name of your company, for displaying to the user during payment flows. For","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)appleMerchantIdentifier":{"name":"appleMerchantIdentifier","abstract":"

    The Apple Merchant Identifier to use during Apple Pay transactions. To create","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentConfiguration.html#/c:objc(cs)STPPaymentConfiguration(py)canDeletePaymentMethods":{"name":"canDeletePaymentMethods","abstract":"

    Determines whether or not the user is able to delete payment methods

    ","parent_name":"STPPaymentConfiguration"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)delegate":{"name":"delegate","abstract":"
    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)font":{"name":"font","abstract":"

    The font used in each child field. Default is [UIFont systemFontOfSize:18].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textColor":{"name":"textColor","abstract":"

    The text color to be used when entering valid text. Default is [UIColor blackColor].

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)textErrorColor":{"name":"textErrorColor","abstract":"

    The text color to be used when the user has entered invalid information,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)placeholderColor":{"name":"placeholderColor","abstract":"

    The text placeholder color used in each child field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)numberPlaceholder":{"name":"numberPlaceholder","abstract":"

    The placeholder for the card number field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationPlaceholder":{"name":"expirationPlaceholder","abstract":"

    The placeholder for the expiration field. Defaults to @MM/YY.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvcPlaceholder":{"name":"cvcPlaceholder","abstract":"

    The placeholder for the cvc field. Defaults to @CVC.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodePlaceholder":{"name":"postalCodePlaceholder","abstract":"

    The placeholder for the postal code field. Defaults to @ZIP for United States","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cursorColor":{"name":"cursorColor","abstract":"

    The cursor color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderColor":{"name":"borderColor","abstract":"

    The border color for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)borderWidth":{"name":"borderWidth","abstract":"

    The width of the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cornerRadius":{"name":"cornerRadius","abstract":"

    The corner radius for the field’s border.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)keyboardAppearance":{"name":"keyboardAppearance","abstract":"

    The keyboard appearance for the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputView":{"name":"inputView","abstract":"

    This behaves identically to setting the inputView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)inputAccessoryView":{"name":"inputAccessoryView","abstract":"

    This behaves identically to setting the inputAccessoryView for each child text field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)brandImage":{"name":"brandImage","abstract":"

    The curent brand image displayed in the receiver.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)isValid":{"name":"isValid","abstract":"

    Whether or not the form currently contains a valid card number,","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)enabled":{"name":"enabled","abstract":"

    Enable/disable selecting or editing the field. Useful when submitting card details to Stripe.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardNumber":{"name":"cardNumber","abstract":"

    The current card number displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationMonth":{"name":"expirationMonth","abstract":"

    The current expiration month displayed by the field (1 = January, etc).

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationMonth":{"name":"formattedExpirationMonth","abstract":"

    The current expiration month displayed by the field, as a string. T

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)expirationYear":{"name":"expirationYear","abstract":"

    The current expiration year displayed by the field, modulo 100","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)formattedExpirationYear":{"name":"formattedExpirationYear","abstract":"

    The current expiration year displayed by the field, as a string.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cvc":{"name":"cvc","abstract":"

    The current card CVC displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCode":{"name":"postalCode","abstract":"

    The current card ZIP or postal code displayed by the field.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)postalCodeEntryEnabled":{"name":"postalCodeEntryEnabled","abstract":"

    Controls if a postal code entry field can be displayed to the user.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)countryCode":{"name":"countryCode","abstract":"

    The two-letter ISO country code that corresponds to the user’s billing address.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(py)cardParams":{"name":"cardParams","abstract":"

    Convenience property for creating an STPCardParams from the currently entered information","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)becomeFirstResponder":{"name":"-becomeFirstResponder","abstract":"

    Causes the text field to begin editing. Presents the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)resignFirstResponder":{"name":"-resignFirstResponder","abstract":"

    Causes the text field to stop editing. Dismisses the keyboard.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)clear":{"name":"-clear","abstract":"

    Resets all of the contents of all of the fields. If the field is currently being edited, the number field will become selected.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    Returns the cvc image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    Returns the brand image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    Returns the error image used for a card brand.","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)brandImageRectForBounds:":{"name":"-brandImageRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws its brand image.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentCardTextField.html#/c:objc(cs)STPPaymentCardTextField(im)fieldsRectForBounds:":{"name":"-fieldsRectForBounds:","abstract":"

    Returns the rectangle in which the receiver draws the text fields.

    ","parent_name":"STPPaymentCardTextField"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(im)setAnimating:animated:":{"name":"-setAnimating:animated:","abstract":"

    Tell the view to start or stop spinning. If hidesWhenStopped is true, it will fade in/out if animated is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)animating":{"name":"animating","abstract":"

    Whether or not the view is animating.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPPaymentActivityIndicatorView.html#/c:objc(cs)STPPaymentActivityIndicatorView(py)hidesWhenStopped":{"name":"hidesWhenStopped","abstract":"

    If true, the view will hide when it is not spinning. Default is true.

    ","parent_name":"STPPaymentActivityIndicatorView"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)applePayCardImage":{"name":"+applePayCardImage","abstract":"

    An icon representing Apple Pay.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)amexCardImage":{"name":"+amexCardImage","abstract":"

    An icon representing American Express.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)dinersClubCardImage":{"name":"+dinersClubCardImage","abstract":"

    An icon representing Diners Club.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)discoverCardImage":{"name":"+discoverCardImage","abstract":"

    An icon representing Discover.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)jcbCardImage":{"name":"+jcbCardImage","abstract":"

    An icon representing JCB.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)masterCardCardImage":{"name":"+masterCardCardImage","abstract":"

    An icon representing MasterCard.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)visaCardImage":{"name":"+visaCardImage","abstract":"

    An icon representing Visa.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)unknownCardCardImage":{"name":"+unknownCardCardImage","abstract":"

    An icon to use when the type of the card is unknown.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)brandImageForCardBrand:":{"name":"+brandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)templatedBrandImageForCardBrand:":{"name":"+templatedBrandImageForCardBrand:","abstract":"

    This returns the appropriate icon for the specified card brand as a","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)cvcImageForCardBrand:":{"name":"+cvcImageForCardBrand:","abstract":"

    This returns a small icon indicating the CVC location for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPImageLibrary.html#/c:objc(cs)STPImageLibrary(cm)errorImageForCardBrand:":{"name":"+errorImageForCardBrand:","abstract":"

    This returns a small icon indicating a card number error for the given card brand.

    ","parent_name":"STPImageLibrary"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)fileId":{"name":"fileId","abstract":"

    The token for this file.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)created":{"name":"created","abstract":"

    The date this file was created.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)purpose":{"name":"purpose","abstract":"

    The purpose of this file. This can be either an identifing document or an evidence dispute.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)size":{"name":"size","abstract":"

    The file size in bytes.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(py)type":{"name":"type","abstract":"

    The file type. This can be jpg, png, or pdf.

    ","parent_name":"STPFile"},"Classes/STPFile.html#/c:objc(cs)STPFile(cm)stringFromPurpose:":{"name":"+stringFromPurpose:","abstract":"

    Returns the string value for a purpose.

    ","parent_name":"STPFile"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)initWithKeyProvider:":{"name":"-initWithKeyProvider:","abstract":"

    Initializes a new STPCustomerContext with the specified key provider.","parent_name":"STPCustomerContext"},"Classes/STPCustomerContext.html#/c:objc(cs)STPCustomerContext(im)clearCachedCustomer":{"name":"-clearCachedCustomer","abstract":"

    STPCustomerContext will cache its customer object for up to 60 seconds.","parent_name":"STPCustomerContext"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithData:urlResponse:error:":{"name":"-initWithData:urlResponse:error:","abstract":"

    Initialize a customer deserializer. The data, urlResponse, and error","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(im)initWithJSONResponse:":{"name":"-initWithJSONResponse:","abstract":"

    Initializes a customer deserializer with a JSON dictionary. This JSON should be","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)customer":{"name":"customer","abstract":"

    If a customer was successfully parsed from the response, it will be set here. Otherwise, this value wil be nil (and the error property will explain what went wrong).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomerDeserializer.html#/c:objc(cs)STPCustomerDeserializer(py)error":{"name":"error","abstract":"

    If the deserializer failed to parse a customer, this property will explain why (and the customer property will be nil).

    ","parent_name":"STPCustomerDeserializer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(cm)customerWithStripeID:defaultSource:sources:":{"name":"+customerWithStripeID:defaultSource:sources:","abstract":"

    Initialize a customer object with the provided values.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)stripeID":{"name":"stripeID","abstract":"

    The Stripe ID of the customer, e.g. cus_1234

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)defaultSource":{"name":"defaultSource","abstract":"

    The default source used to charge the customer.

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)sources":{"name":"sources","abstract":"

    The available payment sources the customer has (this may be an empty array).

    ","parent_name":"STPCustomer"},"Classes/STPCustomer.html#/c:objc(cs)STPCustomer(py)shippingAddress":{"name":"shippingAddress","abstract":"

    The customer’s shipping address.

    ","parent_name":"STPCustomer"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithTheme:[STPTheme defaultTheme].

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithTheme:":{"name":"-initWithTheme:","abstract":"

    Initializes a new view controller with the specified theme

    ","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithNibName:bundle:":{"name":"-initWithNibName:bundle:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCoreViewController.html#/c:objc(cs)STPCoreViewController(im)initWithCoder:":{"name":"-initWithCoder:","abstract":"

    Passes through to the default UIViewController behavior for this initializer,","parent_name":"STPCoreViewController"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)sanitizedNumericStringForString:":{"name":"+sanitizedNumericStringForString:","abstract":"

    Returns a copy of the passed string with all non-numeric characters removed.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)stringIsNumeric:":{"name":"+stringIsNumeric:","abstract":"

    Whether or not the target string contains only numeric characters.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForNumber:validatingCardBrand:":{"name":"+validationStateForNumber:validatingCardBrand:","abstract":"

    Validates a card number, passed as a string. This will return","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)brandForNumber:":{"name":"+brandForNumber:","abstract":"

    The card brand for a card number or substring thereof.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)lengthsForCardBrand:":{"name":"+lengthsForCardBrand:","abstract":"

    The possible number lengths for cards associated with a card brand. For","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxLengthForCardBrand:":{"name":"+maxLengthForCardBrand:","abstract":"

    The maximum possible length the number of a card associated with the specified","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)fragmentLengthForCardBrand:":{"name":"+fragmentLengthForCardBrand:","abstract":"

    The length of the final grouping of digits to use when formatting a card number","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationMonth:":{"name":"+validationStateForExpirationMonth:","abstract":"

    Validates an expiration month, passed as an (optionally 0-padded) string.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForExpirationYear:inMonth:":{"name":"+validationStateForExpirationYear:inMonth:","abstract":"

    Validates an expiration year, passed as a string representing the final","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)maxCVCLengthForCardBrand:":{"name":"+maxCVCLengthForCardBrand:","abstract":"

    The max CVC length for a card brand (for example, American Express CVCs are","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCVC:cardBrand:":{"name":"+validationStateForCVC:cardBrand:","abstract":"

    Validates a card’s CVC, passed as a numeric string, for the given card brand.

    ","parent_name":"STPCardValidator"},"Classes/STPCardValidator.html#/c:objc(cs)STPCardValidator(cm)validationStateForCard:":{"name":"+validationStateForCard:","abstract":"

    Validates the given card details.

    ","parent_name":"STPCardValidator"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)number":{"name":"number","abstract":"

    The card’s number.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(im)last4":{"name":"-last4","abstract":"

    The last 4 digits of the card’s number, if it’s been set, otherwise nil.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)cvc":{"name":"cvc","abstract":"

    The card’s security code, found on the back.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)currency":{"name":"currency","abstract":"

    Three-letter ISO currency code representing the currency paid out to the bank","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCardParams.html#/c:objc(cs)STPCardParams(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCardParams"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPCard. You should only use one that has","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)dynamicLast4":{"name":"dynamicLast4","abstract":"

    For cards made with Apple Pay, this refers to the last 4 digits of the","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)isApplePayCard":{"name":"isApplePayCard","abstract":"

    Whether or not the card originated from Apple Pay.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expMonth":{"name":"expMonth","abstract":"

    The card’s expiration month. 1-indexed (i.e. 1 == January)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)expYear":{"name":"expYear","abstract":"

    The card’s expiration year.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)name":{"name":"name","abstract":"

    The cardholder’s name.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)address":{"name":"address","abstract":"

    The cardholder’s address.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)brand":{"name":"brand","abstract":"

    The issuer of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)funding":{"name":"funding","abstract":"

    The funding source for the card (credit, debit, prepaid, or other)

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the issuing country of the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)currency":{"name":"currency","abstract":"

    This is only applicable when tokenizing debit cards to issue payouts to managed","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the card object.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)stringFromBrand:":{"name":"+stringFromBrand:","abstract":"

    Returns a string representation for the provided card brand;","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)brandFromString:":{"name":"+brandFromString:","abstract":"

    This parses a string representing a card’s brand into the appropriate","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)cardId":{"name":"cardId","abstract":"

    The Stripe ID for the card.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine1":{"name":"addressLine1","abstract":"

    The first line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressLine2":{"name":"addressLine2","abstract":"

    The second line of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCity":{"name":"addressCity","abstract":"

    The city of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressState":{"name":"addressState","abstract":"

    The state of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressZip":{"name":"addressZip","abstract":"

    The zip code of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(py)addressCountry":{"name":"addressCountry","abstract":"

    The country of the cardholder’s address

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(im)initWithID:brand:last4:expMonth:expYear:funding:":{"name":"-initWithID:brand:last4:expMonth:expYear:funding:","abstract":"

    Create an STPCard from a Stripe API response.

    ","parent_name":"STPCard"},"Classes/STPCard.html#/c:objc(cs)STPCard(cm)fundingFromString:":{"name":"+fundingFromString:","abstract":"

    This parses a string representing a card’s funding type into the appropriate","parent_name":"STPCard"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountNumber":{"name":"accountNumber","abstract":"

    The account number for the bank account. Currently must be a checking account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the bank account’s account number, if it’s been set,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccountParams.html#/c:objc(cs)STPBankAccountParams(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccountParams"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(im)init":{"name":"-init","abstract":"

    You cannot directly instantiate an STPBankAccount. You should only use one","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)routingNumber":{"name":"routingNumber","abstract":"

    The routing number for the bank account. This should be the ACH routing number,","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)country":{"name":"country","abstract":"

    Two-letter ISO code representing the country the bank account is located in.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)currency":{"name":"currency","abstract":"

    The default currency for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)last4":{"name":"last4","abstract":"

    The last 4 digits of the account number.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankName":{"name":"bankName","abstract":"

    The name of the bank that owns the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderName":{"name":"accountHolderName","abstract":"

    The name of the person or business that owns the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)accountHolderType":{"name":"accountHolderType","abstract":"

    The type of entity that holds the account.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)fingerprint":{"name":"fingerprint","abstract":"

    A proxy for the account number, this uniquely identifies the account and can be","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)metadata":{"name":"metadata","abstract":"

    A set of key/value pairs associated with the bank account object.

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)status":{"name":"status","abstract":"

    The validation status of the bank account. - see: STPBankAccountStatus

    ","parent_name":"STPBankAccount"},"Classes/STPBankAccount.html#/c:objc(cs)STPBankAccount(py)bankAccountId":{"name":"bankAccountId","abstract":"

    The Stripe ID for the bank account.

    ","parent_name":"STPBankAccount"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)name":{"name":"name","abstract":"

    The user’s full name (e.g. Jane Doe)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line1":{"name":"line1","abstract":"

    The first line of the user’s street address (e.g. 123 Fake St)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)line2":{"name":"line2","abstract":"

    The apartment, floor number, etc of the user’s street address (e.g. Apartment 1A)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)city":{"name":"city","abstract":"

    The city in which the user resides (e.g. San Francisco)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)state":{"name":"state","abstract":"

    The state in which the user resides (e.g. CA)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)postalCode":{"name":"postalCode","abstract":"

    The postal code in which the user resides (e.g. 90210)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)country":{"name":"country","abstract":"

    The ISO country code of the address (e.g. US)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)phone":{"name":"phone","abstract":"

    The phone number of the address (e.g. 8885551212)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(py)email":{"name":"email","abstract":"

    The email of the address (e.g. jane@doe.com)

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)shippingInfoForChargeWithAddress:shippingMethod:":{"name":"+shippingInfoForChargeWithAddress:shippingMethod:","abstract":"

    When creating a charge on your backend, you can attach shipping information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithABRecord:":{"name":"-initWithABRecord:","abstract":"

    Initializes a new STPAddress with data from an Address Book record.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)ABRecordValue":{"name":"-ABRecordValue","abstract":"

    Generates an Address Book record representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithPKContact:":{"name":"-initWithPKContact:","abstract":"

    Initializes a new STPAddress with data from an PassKit contact.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)PKContactValue":{"name":"-PKContactValue","abstract":"

    Generates a PassKit contact representation of this STPAddress.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)initWithCNContact:":{"name":"-initWithCNContact:","abstract":"

    Initializes a new STPAddress with a contact from the Contacts framework.

    ","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredFields:":{"name":"-containsRequiredFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsContentForBillingAddressFields:":{"name":"-containsContentForBillingAddressFields:","abstract":"

    Checks if this STPAddress has any content (possibly invalid) in any of the","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsRequiredShippingAddressFields:":{"name":"-containsRequiredShippingAddressFields:","abstract":"

    Checks if this STPAddress has the level of valid address information","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(im)containsContentForShippingAddressFields:":{"name":"-containsContentForShippingAddressFields:","abstract":"

    Checks if this STPAddress has any content (possibly invalid) in any of the","parent_name":"STPAddress"},"Classes/STPAddress.html#/c:objc(cs)STPAddress(cm)applePayAddressFieldsFromBillingAddressFields:":{"name":"+applePayAddressFieldsFromBillingAddressFields:","abstract":"

    Converts an STPBillingAddressFields enum value into the closest equivalent","parent_name":"STPAddress"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)init":{"name":"-init","abstract":"

    A convenience initializer; equivalent to calling initWithConfiguration:[STPPaymentConfiguration sharedConfiguration] theme:[STPTheme defaultTheme].

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(im)initWithConfiguration:theme:":{"name":"-initWithConfiguration:theme:","abstract":"

    Initializes a new STPAddCardViewController with the provided configuration and theme. Don’t forget to set the delegate property after initialization.

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)delegate":{"name":"delegate","abstract":"

    The view controller’s delegate. This must be set before showing the view controller in order for it to work properly. - see: STPAddCardViewControllerDelegate

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)prefilledInformation":{"name":"prefilledInformation","abstract":"

    You can set this property to pre-fill any information you’ve already collected from your user. - see: STPUserInformation.h

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)managedAccountCurrency":{"name":"managedAccountCurrency","abstract":"

    If you’re using the token generated from STPAddCardViewController to make a Managed Account, you should set this property to the currency that account will use. Otherwise, you should leave it empty. For more information, see https://stripe.com/docs/api#create_card_token-card-currency

    ","parent_name":"STPAddCardViewController"},"Classes/STPAddCardViewController.html#/c:objc(cs)STPAddCardViewController(py)customFooterView":{"name":"customFooterView","abstract":"

    Provide this view controller with a footer view.

    ","parent_name":"STPAddCardViewController"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)setDefaultPublishableKey:":{"name":"+setDefaultPublishableKey:","abstract":"

    Set your Stripe API key with this method. New instances of STPAPIClient will be initialized with this value. You should call this method as early as","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)defaultPublishableKey":{"name":"+defaultPublishableKey","abstract":"

    The current default publishable key.

    ","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)canSubmitPaymentRequest:":{"name":"+canSubmitPaymentRequest:","abstract":"

    Whether or not this device is capable of using Apple Pay. This checks both","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)deviceSupportsApplePay":{"name":"+deviceSupportsApplePay","abstract":"

    Whether or not this can make Apple Pay payments via a card network supported","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:":{"name":"+paymentRequestWithMerchantIdentifier:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)paymentRequestWithMerchantIdentifier:country:currency:":{"name":"+paymentRequestWithMerchantIdentifier:country:currency:","abstract":"

    A convenience method to build a PKPaymentRequest with sane default values.","parent_name":"Stripe"},"Classes/Stripe.html#/c:objc(cs)Stripe(cm)handleStripeURLCallbackWithURL:":{"name":"+handleStripeURLCallbackWithURL:","abstract":"

    Call this method in your app delegate whenever you receive an URL in your","parent_name":"Stripe"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(cm)sharedClient":{"name":"+sharedClient","abstract":"

    A shared singleton API client. Its API key will be initially equal to [Stripe defaultPublishableKey].

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithConfiguration:":{"name":"-initWithConfiguration:","abstract":"

    Initializes an API client with the given configuration. Its API key will be","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)initWithPublishableKey:":{"name":"-initWithPublishableKey:","abstract":"

    Initializes an API client with the given publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)publishableKey":{"name":"publishableKey","abstract":"

    The client’s publishable key.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)configuration":{"name":"configuration","abstract":"

    The client’s configuration.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(py)stripeAccount":{"name":"stripeAccount","abstract":"

    In order to perform API requests on behalf of a connected account, e.g. to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPayment:completion:":{"name":"-createTokenWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithPayment:completion:":{"name":"-createSourceWithPayment:completion:","abstract":"

    Converts a PKPayment object into a Stripe source using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithBankAccount:completion:":{"name":"-createTokenWithBankAccount:completion:","abstract":"

    Converts an STPBankAccount object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithPersonalIDNumber:completion:":{"name":"-createTokenWithPersonalIDNumber:completion:","abstract":"

    Converts a personal identification number into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)uploadImage:purpose:completion:":{"name":"-uploadImage:purpose:completion:","abstract":"

    Uses the Stripe file upload API to upload an image. This can be used for","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createTokenWithCard:completion:":{"name":"-createTokenWithCard:completion:","abstract":"

    Converts an STPCardParams object into a Stripe token using the Stripe API.

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)createSourceWithParams:completion:":{"name":"-createSourceWithParams:completion:","abstract":"

    Creates a Source object using the provided details.","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)retrieveSourceWithId:clientSecret:completion:":{"name":"-retrieveSourceWithId:clientSecret:completion:","abstract":"

    Retrieves the Source object with the given ID. - see: https://stripe.com/docs/api#retrieve_source

    ","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)startPollingSourceWithId:clientSecret:timeout:completion:":{"name":"-startPollingSourceWithId:clientSecret:timeout:completion:","abstract":"

    Starts polling the Source object with the given ID. For payment methods that require","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html#/c:objc(cs)STPAPIClient(im)stopPollingSourceWithId:":{"name":"-stopPollingSourceWithId:","abstract":"

    Stops polling the Source object with the given ID. Note that the completion block passed to","parent_name":"STPAPIClient"},"Classes/STPAPIClient.html":{"name":"STPAPIClient","abstract":"

    A client for making connections to the Stripe API.

    "},"Classes/Stripe.html":{"name":"Stripe","abstract":"

    A top-level class that imports the rest of the Stripe SDK.

    "},"Classes/STPAddCardViewController.html":{"name":"STPAddCardViewController","abstract":"

    This view controller contains a credit card entry form that the user can fill out. On submission, it will use the Stripe API to convert the user’s card details to a Stripe token. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController.

    "},"Classes/STPAddress.html":{"name":"STPAddress","abstract":"

    STPAddress Contains an address as represented by the Stripe API.

    "},"Classes.html#/c:objc(cs)STPApplePayPaymentMethod":{"name":"STPApplePayPaymentMethod","abstract":"

    An empty class representing that the user wishes to pay via Apple Pay. This can"},"Classes/STPBankAccount.html":{"name":"STPBankAccount","abstract":"

    Representation of a user’s bank account details that have been tokenized with"},"Classes/STPBankAccountParams.html":{"name":"STPBankAccountParams","abstract":"

    Representation of a user’s bank account details. You can assemble these with"},"Classes/STPCard.html":{"name":"STPCard","abstract":"

    Representation of a user’s credit card details that have been tokenized with"},"Classes/STPCardParams.html":{"name":"STPCardParams","abstract":"

    Representation of a user’s credit card details. You can assemble these with"},"Classes/STPCardValidator.html":{"name":"STPCardValidator","abstract":"

    This class contains static methods to validate card numbers, expiration dates,"},"Classes.html#/c:objc(cs)STPCoreScrollViewController":{"name":"STPCoreScrollViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes.html#/c:objc(cs)STPCoreTableViewController":{"name":"STPCoreTableViewController","abstract":"

    This is the base class for all Stripe scroll view controllers. It is intended"},"Classes/STPCoreViewController.html":{"name":"STPCoreViewController","abstract":"

    This is the base class for all Stripe view controllers. It is intended for use"},"Classes/STPCustomer.html":{"name":"STPCustomer","abstract":"

    An STPCustomer represents a deserialized Customer object from the Stripe API."},"Classes/STPCustomerDeserializer.html":{"name":"STPCustomerDeserializer","abstract":"

    Use STPCustomerDeserializer to convert a response from the Stripe API into an STPCustomer object. STPCustomerDeserializer expects the JSON response to be in the exact same format as the Stripe API.

    "},"Classes/STPCustomerContext.html":{"name":"STPCustomerContext","abstract":"

    An STPCustomerContext retrieves and updates a Stripe customer using"},"Classes/STPFile.html":{"name":"STPFile","abstract":"

    Representation of a file upload object in the Stripe API.

    "},"Classes/STPImageLibrary.html":{"name":"STPImageLibrary","abstract":"

    This class lets you access card icons used by the Stripe SDK. All icons are 32 x 20 points.

    "},"Classes/STPPaymentActivityIndicatorView.html":{"name":"STPPaymentActivityIndicatorView","abstract":"

    This class can be used wherever you’d use a UIActivityIndicatorView and is intended to have a similar API. It renders as a spinning circle with a gap in it, similar to what you see in the App Store app or in the Apple Pay dialog when making a purchase. To change its color, set the tintColor property.

    "},"Classes/STPPaymentCardTextField.html":{"name":"STPPaymentCardTextField","abstract":"

    STPPaymentCardTextField is a text field with similar properties to UITextField,"},"Classes/STPPaymentConfiguration.html":{"name":"STPPaymentConfiguration","abstract":"

    An STPPaymentConfiguration represents all the options you can set or change"},"Classes/STPPaymentContext.html":{"name":"STPPaymentContext","abstract":"

    An STPPaymentContext keeps track of all of the state around a payment. It will manage fetching a user’s saved payment methods, tracking any information they select, and prompting them for required additional information before completing their purchase. It can be used to power your application’s payment confirmation page with just a few lines of code.

    "},"Classes/STPPaymentMethodsViewController.html":{"name":"STPPaymentMethodsViewController","abstract":"

    This view controller presents a list of payment method options to the user,"},"Classes/STPPaymentResult.html":{"name":"STPPaymentResult","abstract":"

    When you’re using STPPaymentContext to request your user’s payment details, this is the object that will be returned to your application when they’ve successfully made a payment. It currently just contains a source, but in the future will include any relevant metadata as well. You should pass source.stripeID to your server, and call the charge creation endpoint. This assumes you are charging a Customer, so you should specify the customer parameter to be that customer’s ID and the source parameter to the value returned here. For more information, see https://stripe.com/docs/api#create_charge

    "},"Classes/STPRedirectContext.html":{"name":"STPRedirectContext","abstract":"

    This is a helper class for handling redirect sources.

    "},"Classes/STPShippingAddressViewController.html":{"name":"STPShippingAddressViewController","abstract":"

    This view controller contains a shipping address collection form. It renders a right bar button item that submits the form, so it must be shown inside a UINavigationController. Depending on your configuration’s shippingType, the view controller may present a shipping method selection form after the user enters an address.

    "},"Classes/STPSource.html":{"name":"STPSource","abstract":"

    Representation of a customer’s payment instrument created with the Stripe API. - see: https://stripe.com/docs/api#sources

    "},"Classes/STPSourceCardDetails.html":{"name":"STPSourceCardDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceOwner.html":{"name":"STPSourceOwner","abstract":"

    Information about a source’s owner.

    "},"Classes/STPSourceParams.html":{"name":"STPSourceParams","abstract":"

    An object representing parameters used to create a Source object.

    "},"Classes/STPSourceReceiver.html":{"name":"STPSourceReceiver","abstract":"

    Information related to a source’s receiver flow.

    "},"Classes/STPSourceRedirect.html":{"name":"STPSourceRedirect","abstract":"

    Information related to a source’s redirect flow.

    "},"Classes/STPSourceSEPADebitDetails.html":{"name":"STPSourceSEPADebitDetails","abstract":"

    This class provides typed access to the contents of an STPSource details"},"Classes/STPSourceVerification.html":{"name":"STPSourceVerification","abstract":"

    Information related to a source’s verification flow.

    "},"Classes/STPTheme.html":{"name":"STPTheme","abstract":"

    STPTheme objects can be used to visually style Stripe-provided UI. See https://stripe.com/docs/mobile/ios/standard#theming for more information.

    "},"Classes/STPToken.html":{"name":"STPToken","abstract":"

    A token returned from submitting payment details to the Stripe API. You should not have to instantiate one of these directly.

    "},"Classes/STPUserInformation.html":{"name":"STPUserInformation","abstract":"

    You can use this class to specify information that you’ve already collected"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(im)stp_setTheme:":{"name":"-stp_setTheme:","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/UINavigationBar(Stripe_Theme).html#/c:objc(cs)UINavigationBar(py)stp_theme":{"name":"stp_theme","abstract":"

    Sets the navigation bar’s appearance to the desired theme. This will affect the bar’s tintColor and barTintColor properties, as well as the color of the single-pixel line at the bottom of the navbar.","parent_name":"UINavigationBar(Stripe_Theme)"},"Categories/NSError(Stripe).html#/c:objc(cs)NSError(cm)stp_errorFromStripeResponse:":{"name":"+stp_errorFromStripeResponse:","abstract":"

    Creates an NSError object from a given Stripe API json response.

    ","parent_name":"NSError(Stripe)"},"Categories/NSError(Stripe).html":{"name":"NSError(Stripe)","abstract":"

    NSError extensions for creating error objects from Stripe API responses.

    "},"Categories/UINavigationBar(Stripe_Theme).html":{"name":"UINavigationBar(Stripe_Theme)","abstract":"

    This allows quickly setting the appearance of a UINavigationBar to match your"},"Categories.html":{"name":"Categories","abstract":"

    The following categories are available globally.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "}} \ No newline at end of file From f8c09ed93f4d87a6e181927cf3dbd64403e4d774 Mon Sep 17 00:00:00 2001 From: Dan Jackson Date: Thu, 9 Nov 2017 13:03:21 -0800 Subject: [PATCH 3/4] Update link to latest version in README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b5b601a9e3f..ec6c56fccc0 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,8 @@ The Stripe iOS SDK makes it quick and easy to build an excellent payment experie We recommend that you install the Stripe iOS SDK using a package manager such as [Cocoapods or Carthage](https://stripe.com/docs/mobile/ios#getting-started). If you prefer to link the library manually, please use a version from our [releases](https://github.com/stripe/stripe-ios/releases) page because we consider the master branch to be unstable. -If you're reading this on GitHub.com, please make sure you are looking at the [tagged version](https://github.com/stripe/stripe-ios/tags) that corresponds to the release you have installed. Otherwise, the instructions and example code may be mismatched with your copy. You can read the latest tagged version of this README and browse the associated code on GitHub using [this link](https://github.com/stripe/stripe-ios/tree/v11.3.0). +If you're reading this on GitHub.com, please make sure you are looking at the [tagged version](https://github.com/stripe/stripe-ios/tags) that corresponds to the release you have installed. Otherwise, the instructions and example code may be mismatched with your copy. You can read the latest tagged version of this README and browse the associated code on GitHub using +[this link](https://github.com/stripe/stripe-ios/tree/v11.5.0). ## Requirements From b0719275f055384012d3d7e956756c531d7ec4ef Mon Sep 17 00:00:00 2001 From: Dan Jackson Date: Thu, 9 Nov 2017 13:45:44 -0800 Subject: [PATCH 4/4] Add `example-ios-backend` tag back into the URL for it. The latest changes were for Android support, and the iOS app continues to work fine with v11.0.0 of the backend. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ec6c56fccc0..2c2675e354d 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ To try out any of these examples, clone this repository, open `Stripe.xcworkspac 1. Execute `./setup.sh` from the root of the repository to build the necessary dependencies. 2. If you haven't already, sign up for a [Stripe account](https://dashboard.stripe.com/register) (it takes seconds). Then go to https://dashboard.stripe.com/account/apikeys. 3. Replace the `stripePublishableKey` constant in CheckoutViewController.swift (for the Standard Integration app) or Constants.m (for the Custom Integration app) with your Test Publishable Key. -4. Head to https://github.com/stripe/example-ios-backend and click "Deploy to Heroku" (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under 'Env'. Click "Deploy for Free". +4. Head to https://github.com/stripe/example-ios-backend/tree/v11.0.0 and click "Deploy to Heroku" (you may have to sign up for a Heroku account as part of this process). Provide your Stripe test secret key for the STRIPE_TEST_SECRET_KEY field under 'Env'. Click "Deploy for Free". 5. Replace the `backendBaseURL` variable in the example iOS app with the app URL Heroku provides you with (e.g. "https://my-example-app.herokuapp.com") After this is done, you can make test payments through the app and see them in your Stripe dashboard. Head to https://stripe.com/docs/testing#cards for a list of test card numbers.