From 09496aecd0be8f6f1c59f559af24606eb9acc440 Mon Sep 17 00:00:00 2001 From: braintreeps Date: Wed, 24 Jul 2024 20:52:26 +0000 Subject: [PATCH] Publish 6.23.1 docs to github pages --- 6.23.1/Classes.html | 2221 +++++++++++++++++ 6.23.1/Classes/BTAPIClient.html | 673 +++++ 6.23.1/Classes/BTAmericanExpressClient.html | 564 +++++ .../BTAmericanExpressRewardsBalance.html | 677 +++++ 6.23.1/Classes/BTAppContextSwitcher.html | 672 +++++ 6.23.1/Classes/BTApplePayCardNonce.html | 467 ++++ 6.23.1/Classes/BTApplePayClient.html | 727 ++++++ 6.23.1/Classes/BTAuthenticationInsight.html | 478 ++++ 6.23.1/Classes/BTBinData.html | 738 ++++++ 6.23.1/Classes/BTCard.html | 1096 ++++++++ 6.23.1/Classes/BTCardClient.html | 633 +++++ 6.23.1/Classes/BTCardNonce.html | 747 ++++++ 6.23.1/Classes/BTCardRequest.html | 516 ++++ 6.23.1/Classes/BTDataCollector.html | 659 +++++ 6.23.1/Classes/BTLocalPaymentClient.html | 630 +++++ 6.23.1/Classes/BTLocalPaymentRequest.html | 869 +++++++ 6.23.1/Classes/BTLocalPaymentResult.html | 736 ++++++ 6.23.1/Classes/BTPayPalAccountNonce.html | 709 ++++++ 6.23.1/Classes/BTPayPalCheckoutRequest.html | 795 ++++++ 6.23.1/Classes/BTPayPalClient.html | 864 +++++++ 6.23.1/Classes/BTPayPalCreditFinancing.html | 617 +++++ .../BTPayPalCreditFinancingAmount.html | 497 ++++ 6.23.1/Classes/BTPayPalLineItem.html | 875 +++++++ 6.23.1/Classes/BTPayPalMessagingView.html | 811 ++++++ .../BTPayPalMessagingView/Representable.html | 539 ++++ .../BTPayPalNativeCheckoutAccountNonce.html | 687 +++++ .../Classes/BTPayPalNativeCheckoutClient.html | 641 +++++ .../BTPayPalNativeCheckoutRequest.html | 578 +++++ .../Classes/BTPayPalNativeVaultRequest.html | 511 ++++ 6.23.1/Classes/BTPayPalRequest.html | 764 ++++++ 6.23.1/Classes/BTPayPalVaultBaseRequest.html | 538 ++++ 6.23.1/Classes/BTPayPalVaultRequest.html | 665 +++++ 6.23.1/Classes/BTPaymentMethodNonce.html | 733 ++++++ .../Classes/BTPaymentMethodNonceParser.html | 655 +++++ 6.23.1/Classes/BTPostalAddress.html | 648 +++++ 6.23.1/Classes/BTSEPADirectDebitClient.html | 635 +++++ 6.23.1/Classes/BTSEPADirectDebitNonce.html | 527 ++++ 6.23.1/Classes/BTSEPADirectDebitRequest.html | 780 ++++++ 6.23.1/Classes/BTShopperInsightsClient.html | 692 +++++ .../BTThreeDSecureAdditionalInformation.html | 1769 +++++++++++++ 6.23.1/Classes/BTThreeDSecureClient.html | 854 +++++++ 6.23.1/Classes/BTThreeDSecureInfo.html | 1004 ++++++++ 6.23.1/Classes/BTThreeDSecureLookup.html | 688 +++++ .../Classes/BTThreeDSecurePostalAddress.html | 752 ++++++ 6.23.1/Classes/BTThreeDSecureRenderType.html | 645 +++++ 6.23.1/Classes/BTThreeDSecureRequest.html | 1047 ++++++++ 6.23.1/Classes/BTThreeDSecureResult.html | 536 ++++ .../BTThreeDSecureV2BaseCustomization.html | 536 ++++ .../BTThreeDSecureV2ButtonCustomization.html | 548 ++++ .../BTThreeDSecureV2LabelCustomization.html | 578 +++++ .../BTThreeDSecureV2TextBoxCustomization.html | 578 +++++ .../BTThreeDSecureV2ToolbarCustomization.html | 578 +++++ .../BTThreeDSecureV2UICustomization.html | 611 +++++ 6.23.1/Classes/BTVenmoAccountNonce.html | 686 +++++ 6.23.1/Classes/BTVenmoClient.html | 697 ++++++ 6.23.1/Classes/BTVenmoLineItem.html | 785 ++++++ 6.23.1/Classes/BTVenmoRequest.html | 951 +++++++ 6.23.1/Enums.html | 1753 +++++++++++++ 6.23.1/Enums/BTAPIClientError.html | 655 +++++ 6.23.1/Enums/BTAmericanExpressError.html | 622 +++++ 6.23.1/Enums/BTAnalyticsServiceError.html | 556 +++++ 6.23.1/Enums/BTApplePayError.html | 655 +++++ 6.23.1/Enums/BTCardError.html | 729 ++++++ 6.23.1/Enums/BTCardNetwork.html | 887 +++++++ 6.23.1/Enums/BTClientTokenError.html | 688 +++++ 6.23.1/Enums/BTDataCollectorError.html | 622 +++++ 6.23.1/Enums/BTHTTPError.html | 994 ++++++++ 6.23.1/Enums/BTJSONError.html | 621 +++++ 6.23.1/Enums/BTLocalPaymentError.html | 928 +++++++ 6.23.1/Enums/BTPayPalError.html | 994 ++++++++ 6.23.1/Enums/BTPayPalLineItemKind.html | 497 ++++ 6.23.1/Enums/BTPayPalLineItemUPCType.html | 677 +++++ 6.23.1/Enums/BTPayPalLocaleCode.html | 1249 +++++++++ 6.23.1/Enums/BTPayPalMessagingColor.html | 561 +++++ 6.23.1/Enums/BTPayPalMessagingError.html | 594 +++++ 6.23.1/Enums/BTPayPalMessagingLogoType.html | 561 +++++ 6.23.1/Enums/BTPayPalMessagingOfferType.html | 561 +++++ 6.23.1/Enums/BTPayPalMessagingPageType.html | 621 +++++ .../Enums/BTPayPalMessagingTextAlignment.html | 531 ++++ 6.23.1/Enums/BTPayPalNativeCheckoutError.html | 994 ++++++++ 6.23.1/Enums/BTPayPalPaymentType.html | 496 ++++ 6.23.1/Enums/BTPayPalRequestIntent.html | 565 +++++ .../Enums/BTPayPalRequestLandingPageType.html | 527 ++++ 6.23.1/Enums/BTPayPalRequestUserAction.html | 504 ++++ 6.23.1/Enums/BTSEPADirectDebitError.html | 820 ++++++ .../Enums/BTSEPADirectDebitMandateType.html | 495 ++++ 6.23.1/Enums/BTShopperInsightsError.html | 588 +++++ 6.23.1/Enums/BTThreeDSecureAccountType.html | 527 ++++ .../Enums/BTThreeDSecureCardAddChallenge.html | 527 ++++ 6.23.1/Enums/BTThreeDSecureError.html | 894 +++++++ .../BTThreeDSecureRequestedExemptionType.html | 587 +++++ .../Enums/BTThreeDSecureShippingMethod.html | 647 +++++ 6.23.1/Enums/BTThreeDSecureUIType.html | 527 ++++ 6.23.1/Enums/BTThreeDSecureV2ButtonType.html | 587 +++++ 6.23.1/Enums/BTVenmoAppSwitchError.html | 556 +++++ 6.23.1/Enums/BTVenmoError.html | 919 +++++++ 6.23.1/Enums/BTVenmoLineItemKind.html | 497 ++++ 6.23.1/Enums/BTVenmoPaymentMethodUsage.html | 497 ++++ 6.23.1/Enums/TokenizationKeyError.html | 556 +++++ 6.23.1/Extensions.html | 493 ++++ .../Extensions/BTThreeDSecureV2Provider.html | 468 ++++ 6.23.1/Protocols.html | 523 ++++ .../BTLocalPaymentRequestDelegate.html | 469 ++++ .../Protocols/BTPayPalMessagingDelegate.html | 591 +++++ .../BTThreeDSecureRequestDelegate.html | 469 ++++ 6.23.1/Structs.html | 570 +++++ 6.23.1/Structs/BTPayPalMessagingRequest.html | 572 +++++ 6.23.1/Structs/BTShopperInsightsRequest.html | 624 +++++ 6.23.1/Structs/BTShopperInsightsResult.html | 531 ++++ 6.23.1/Structs/Phone.html | 507 ++++ 6.23.1/badge.svg | 28 + 6.23.1/css/highlight.css | 202 ++ 6.23.1/css/jazzy.css | 405 +++ .../Braintree.docset/Contents/Info.plist | 20 + .../Contents/Resources/Documents/Classes.html | 2221 +++++++++++++++++ .../Documents/Classes/BTAPIClient.html | 673 +++++ .../Classes/BTAmericanExpressClient.html | 564 +++++ .../BTAmericanExpressRewardsBalance.html | 677 +++++ .../Classes/BTAppContextSwitcher.html | 672 +++++ .../Classes/BTApplePayCardNonce.html | 467 ++++ .../Documents/Classes/BTApplePayClient.html | 727 ++++++ .../Classes/BTAuthenticationInsight.html | 478 ++++ .../Documents/Classes/BTBinData.html | 738 ++++++ .../Resources/Documents/Classes/BTCard.html | 1096 ++++++++ .../Documents/Classes/BTCardClient.html | 633 +++++ .../Documents/Classes/BTCardNonce.html | 747 ++++++ .../Documents/Classes/BTCardRequest.html | 516 ++++ .../Documents/Classes/BTDataCollector.html | 659 +++++ .../Classes/BTLocalPaymentClient.html | 630 +++++ .../Classes/BTLocalPaymentRequest.html | 869 +++++++ .../Classes/BTLocalPaymentResult.html | 736 ++++++ .../Classes/BTPayPalAccountNonce.html | 709 ++++++ .../Classes/BTPayPalCheckoutRequest.html | 795 ++++++ .../Documents/Classes/BTPayPalClient.html | 864 +++++++ .../Classes/BTPayPalCreditFinancing.html | 617 +++++ .../BTPayPalCreditFinancingAmount.html | 497 ++++ .../Documents/Classes/BTPayPalLineItem.html | 875 +++++++ .../Classes/BTPayPalMessagingView.html | 811 ++++++ .../BTPayPalMessagingView/Representable.html | 539 ++++ .../BTPayPalNativeCheckoutAccountNonce.html | 687 +++++ .../Classes/BTPayPalNativeCheckoutClient.html | 641 +++++ .../BTPayPalNativeCheckoutRequest.html | 578 +++++ .../Classes/BTPayPalNativeVaultRequest.html | 511 ++++ .../Documents/Classes/BTPayPalRequest.html | 764 ++++++ .../Classes/BTPayPalVaultBaseRequest.html | 538 ++++ .../Classes/BTPayPalVaultRequest.html | 665 +++++ .../Classes/BTPaymentMethodNonce.html | 733 ++++++ .../Classes/BTPaymentMethodNonceParser.html | 655 +++++ .../Documents/Classes/BTPostalAddress.html | 648 +++++ .../Classes/BTSEPADirectDebitClient.html | 635 +++++ .../Classes/BTSEPADirectDebitNonce.html | 527 ++++ .../Classes/BTSEPADirectDebitRequest.html | 780 ++++++ .../Classes/BTShopperInsightsClient.html | 692 +++++ .../BTThreeDSecureAdditionalInformation.html | 1769 +++++++++++++ .../Classes/BTThreeDSecureClient.html | 854 +++++++ .../Documents/Classes/BTThreeDSecureInfo.html | 1004 ++++++++ .../Classes/BTThreeDSecureLookup.html | 688 +++++ .../Classes/BTThreeDSecurePostalAddress.html | 752 ++++++ .../Classes/BTThreeDSecureRenderType.html | 645 +++++ .../Classes/BTThreeDSecureRequest.html | 1047 ++++++++ .../Classes/BTThreeDSecureResult.html | 536 ++++ .../BTThreeDSecureV2BaseCustomization.html | 536 ++++ .../BTThreeDSecureV2ButtonCustomization.html | 548 ++++ .../BTThreeDSecureV2LabelCustomization.html | 578 +++++ .../BTThreeDSecureV2TextBoxCustomization.html | 578 +++++ .../BTThreeDSecureV2ToolbarCustomization.html | 578 +++++ .../BTThreeDSecureV2UICustomization.html | 611 +++++ .../Classes/BTVenmoAccountNonce.html | 686 +++++ .../Documents/Classes/BTVenmoClient.html | 697 ++++++ .../Documents/Classes/BTVenmoLineItem.html | 785 ++++++ .../Documents/Classes/BTVenmoRequest.html | 951 +++++++ .../Contents/Resources/Documents/Enums.html | 1753 +++++++++++++ .../Documents/Enums/BTAPIClientError.html | 655 +++++ .../Enums/BTAmericanExpressError.html | 622 +++++ .../Enums/BTAnalyticsServiceError.html | 556 +++++ .../Documents/Enums/BTApplePayError.html | 655 +++++ .../Documents/Enums/BTCardError.html | 729 ++++++ .../Documents/Enums/BTCardNetwork.html | 887 +++++++ .../Documents/Enums/BTClientTokenError.html | 688 +++++ .../Documents/Enums/BTDataCollectorError.html | 622 +++++ .../Documents/Enums/BTHTTPError.html | 994 ++++++++ .../Documents/Enums/BTJSONError.html | 621 +++++ .../Documents/Enums/BTLocalPaymentError.html | 928 +++++++ .../Documents/Enums/BTPayPalError.html | 994 ++++++++ .../Documents/Enums/BTPayPalLineItemKind.html | 497 ++++ .../Enums/BTPayPalLineItemUPCType.html | 677 +++++ .../Documents/Enums/BTPayPalLocaleCode.html | 1249 +++++++++ .../Enums/BTPayPalMessagingColor.html | 561 +++++ .../Enums/BTPayPalMessagingError.html | 594 +++++ .../Enums/BTPayPalMessagingLogoType.html | 561 +++++ .../Enums/BTPayPalMessagingOfferType.html | 561 +++++ .../Enums/BTPayPalMessagingPageType.html | 621 +++++ .../Enums/BTPayPalMessagingTextAlignment.html | 531 ++++ .../Enums/BTPayPalNativeCheckoutError.html | 994 ++++++++ .../Documents/Enums/BTPayPalPaymentType.html | 496 ++++ .../Enums/BTPayPalRequestIntent.html | 565 +++++ .../Enums/BTPayPalRequestLandingPageType.html | 527 ++++ .../Enums/BTPayPalRequestUserAction.html | 504 ++++ .../Enums/BTSEPADirectDebitError.html | 820 ++++++ .../Enums/BTSEPADirectDebitMandateType.html | 495 ++++ .../Enums/BTShopperInsightsError.html | 588 +++++ .../Enums/BTThreeDSecureAccountType.html | 527 ++++ .../Enums/BTThreeDSecureCardAddChallenge.html | 527 ++++ .../Documents/Enums/BTThreeDSecureError.html | 894 +++++++ .../BTThreeDSecureRequestedExemptionType.html | 587 +++++ .../Enums/BTThreeDSecureShippingMethod.html | 647 +++++ .../Documents/Enums/BTThreeDSecureUIType.html | 527 ++++ .../Enums/BTThreeDSecureV2ButtonType.html | 587 +++++ .../Enums/BTVenmoAppSwitchError.html | 556 +++++ .../Documents/Enums/BTVenmoError.html | 919 +++++++ .../Documents/Enums/BTVenmoLineItemKind.html | 497 ++++ .../Enums/BTVenmoPaymentMethodUsage.html | 497 ++++ .../Documents/Enums/TokenizationKeyError.html | 556 +++++ .../Resources/Documents/Extensions.html | 493 ++++ .../Extensions/BTThreeDSecureV2Provider.html | 468 ++++ .../Resources/Documents/Protocols.html | 523 ++++ .../BTLocalPaymentRequestDelegate.html | 469 ++++ .../Protocols/BTPayPalMessagingDelegate.html | 591 +++++ .../BTThreeDSecureRequestDelegate.html | 469 ++++ .../Contents/Resources/Documents/Structs.html | 570 +++++ .../Structs/BTPayPalMessagingRequest.html | 572 +++++ .../Structs/BTShopperInsightsRequest.html | 624 +++++ .../Structs/BTShopperInsightsResult.html | 531 ++++ .../Resources/Documents/Structs/Phone.html | 507 ++++ .../Resources/Documents/css/highlight.css | 202 ++ .../Resources/Documents/css/jazzy.css | 405 +++ .../Resources/Documents/img/carat.png | Bin 0 -> 274 bytes .../Contents/Resources/Documents/img/dash.png | Bin 0 -> 1338 bytes .../Contents/Resources/Documents/img/gh.png | Bin 0 -> 1571 bytes .../Resources/Documents/img/spinner.gif | Bin 0 -> 1849 bytes .../Contents/Resources/Documents/index.html | 554 ++++ .../Contents/Resources/Documents/js/jazzy.js | 74 + .../Resources/Documents/js/jazzy.search.js | 74 + .../Resources/Documents/js/jquery.min.js | 2 + .../Resources/Documents/js/lunr.min.js | 6 + .../Documents/js/typeahead.jquery.js | 1695 +++++++++++++ .../Contents/Resources/Documents/search.json | 1 + .../Contents/Resources/docSet.dsidx | Bin 0 -> 253952 bytes 6.23.1/docsets/Braintree.tgz | Bin 0 -> 394510 bytes 6.23.1/img/carat.png | Bin 0 -> 274 bytes 6.23.1/img/dash.png | Bin 0 -> 1338 bytes 6.23.1/img/gh.png | Bin 0 -> 1571 bytes 6.23.1/img/spinner.gif | Bin 0 -> 1849 bytes 6.23.1/index.html | 554 ++++ 6.23.1/js/jazzy.js | 74 + 6.23.1/js/jazzy.search.js | 74 + 6.23.1/js/jquery.min.js | 2 + 6.23.1/js/lunr.min.js | 6 + 6.23.1/js/typeahead.jquery.js | 1695 +++++++++++++ 6.23.1/search.json | 1 + 6.23.1/undocumented.json | 6 + current | 2 +- 252 files changed, 158861 insertions(+), 1 deletion(-) create mode 100644 6.23.1/Classes.html create mode 100644 6.23.1/Classes/BTAPIClient.html create mode 100644 6.23.1/Classes/BTAmericanExpressClient.html create mode 100644 6.23.1/Classes/BTAmericanExpressRewardsBalance.html create mode 100644 6.23.1/Classes/BTAppContextSwitcher.html create mode 100644 6.23.1/Classes/BTApplePayCardNonce.html create mode 100644 6.23.1/Classes/BTApplePayClient.html create mode 100644 6.23.1/Classes/BTAuthenticationInsight.html create mode 100644 6.23.1/Classes/BTBinData.html create mode 100644 6.23.1/Classes/BTCard.html create mode 100644 6.23.1/Classes/BTCardClient.html create mode 100644 6.23.1/Classes/BTCardNonce.html create mode 100644 6.23.1/Classes/BTCardRequest.html create mode 100644 6.23.1/Classes/BTDataCollector.html create mode 100644 6.23.1/Classes/BTLocalPaymentClient.html create mode 100644 6.23.1/Classes/BTLocalPaymentRequest.html create mode 100644 6.23.1/Classes/BTLocalPaymentResult.html create mode 100644 6.23.1/Classes/BTPayPalAccountNonce.html create mode 100644 6.23.1/Classes/BTPayPalCheckoutRequest.html create mode 100644 6.23.1/Classes/BTPayPalClient.html create mode 100644 6.23.1/Classes/BTPayPalCreditFinancing.html create mode 100644 6.23.1/Classes/BTPayPalCreditFinancingAmount.html create mode 100644 6.23.1/Classes/BTPayPalLineItem.html create mode 100644 6.23.1/Classes/BTPayPalMessagingView.html create mode 100644 6.23.1/Classes/BTPayPalMessagingView/Representable.html create mode 100644 6.23.1/Classes/BTPayPalNativeCheckoutAccountNonce.html create mode 100644 6.23.1/Classes/BTPayPalNativeCheckoutClient.html create mode 100644 6.23.1/Classes/BTPayPalNativeCheckoutRequest.html create mode 100644 6.23.1/Classes/BTPayPalNativeVaultRequest.html create mode 100644 6.23.1/Classes/BTPayPalRequest.html create mode 100644 6.23.1/Classes/BTPayPalVaultBaseRequest.html create mode 100644 6.23.1/Classes/BTPayPalVaultRequest.html create mode 100644 6.23.1/Classes/BTPaymentMethodNonce.html create mode 100644 6.23.1/Classes/BTPaymentMethodNonceParser.html create mode 100644 6.23.1/Classes/BTPostalAddress.html create mode 100644 6.23.1/Classes/BTSEPADirectDebitClient.html create mode 100644 6.23.1/Classes/BTSEPADirectDebitNonce.html create mode 100644 6.23.1/Classes/BTSEPADirectDebitRequest.html create mode 100644 6.23.1/Classes/BTShopperInsightsClient.html create mode 100644 6.23.1/Classes/BTThreeDSecureAdditionalInformation.html create mode 100644 6.23.1/Classes/BTThreeDSecureClient.html create mode 100644 6.23.1/Classes/BTThreeDSecureInfo.html create mode 100644 6.23.1/Classes/BTThreeDSecureLookup.html create mode 100644 6.23.1/Classes/BTThreeDSecurePostalAddress.html create mode 100644 6.23.1/Classes/BTThreeDSecureRenderType.html create mode 100644 6.23.1/Classes/BTThreeDSecureRequest.html create mode 100644 6.23.1/Classes/BTThreeDSecureResult.html create mode 100644 6.23.1/Classes/BTThreeDSecureV2BaseCustomization.html create mode 100644 6.23.1/Classes/BTThreeDSecureV2ButtonCustomization.html create mode 100644 6.23.1/Classes/BTThreeDSecureV2LabelCustomization.html create mode 100644 6.23.1/Classes/BTThreeDSecureV2TextBoxCustomization.html create mode 100644 6.23.1/Classes/BTThreeDSecureV2ToolbarCustomization.html create mode 100644 6.23.1/Classes/BTThreeDSecureV2UICustomization.html create mode 100644 6.23.1/Classes/BTVenmoAccountNonce.html create mode 100644 6.23.1/Classes/BTVenmoClient.html create mode 100644 6.23.1/Classes/BTVenmoLineItem.html create mode 100644 6.23.1/Classes/BTVenmoRequest.html create mode 100644 6.23.1/Enums.html create mode 100644 6.23.1/Enums/BTAPIClientError.html create mode 100644 6.23.1/Enums/BTAmericanExpressError.html create mode 100644 6.23.1/Enums/BTAnalyticsServiceError.html create mode 100644 6.23.1/Enums/BTApplePayError.html create mode 100644 6.23.1/Enums/BTCardError.html create mode 100644 6.23.1/Enums/BTCardNetwork.html create mode 100644 6.23.1/Enums/BTClientTokenError.html create mode 100644 6.23.1/Enums/BTDataCollectorError.html create mode 100644 6.23.1/Enums/BTHTTPError.html create mode 100644 6.23.1/Enums/BTJSONError.html create mode 100644 6.23.1/Enums/BTLocalPaymentError.html create mode 100644 6.23.1/Enums/BTPayPalError.html create mode 100644 6.23.1/Enums/BTPayPalLineItemKind.html create mode 100644 6.23.1/Enums/BTPayPalLineItemUPCType.html create mode 100644 6.23.1/Enums/BTPayPalLocaleCode.html create mode 100644 6.23.1/Enums/BTPayPalMessagingColor.html create mode 100644 6.23.1/Enums/BTPayPalMessagingError.html create mode 100644 6.23.1/Enums/BTPayPalMessagingLogoType.html create mode 100644 6.23.1/Enums/BTPayPalMessagingOfferType.html create mode 100644 6.23.1/Enums/BTPayPalMessagingPageType.html create mode 100644 6.23.1/Enums/BTPayPalMessagingTextAlignment.html create mode 100644 6.23.1/Enums/BTPayPalNativeCheckoutError.html create mode 100644 6.23.1/Enums/BTPayPalPaymentType.html create mode 100644 6.23.1/Enums/BTPayPalRequestIntent.html create mode 100644 6.23.1/Enums/BTPayPalRequestLandingPageType.html create mode 100644 6.23.1/Enums/BTPayPalRequestUserAction.html create mode 100644 6.23.1/Enums/BTSEPADirectDebitError.html create mode 100644 6.23.1/Enums/BTSEPADirectDebitMandateType.html create mode 100644 6.23.1/Enums/BTShopperInsightsError.html create mode 100644 6.23.1/Enums/BTThreeDSecureAccountType.html create mode 100644 6.23.1/Enums/BTThreeDSecureCardAddChallenge.html create mode 100644 6.23.1/Enums/BTThreeDSecureError.html create mode 100644 6.23.1/Enums/BTThreeDSecureRequestedExemptionType.html create mode 100644 6.23.1/Enums/BTThreeDSecureShippingMethod.html create mode 100644 6.23.1/Enums/BTThreeDSecureUIType.html create mode 100644 6.23.1/Enums/BTThreeDSecureV2ButtonType.html create mode 100644 6.23.1/Enums/BTVenmoAppSwitchError.html create mode 100644 6.23.1/Enums/BTVenmoError.html create mode 100644 6.23.1/Enums/BTVenmoLineItemKind.html create mode 100644 6.23.1/Enums/BTVenmoPaymentMethodUsage.html create mode 100644 6.23.1/Enums/TokenizationKeyError.html create mode 100644 6.23.1/Extensions.html create mode 100644 6.23.1/Extensions/BTThreeDSecureV2Provider.html create mode 100644 6.23.1/Protocols.html create mode 100644 6.23.1/Protocols/BTLocalPaymentRequestDelegate.html create mode 100644 6.23.1/Protocols/BTPayPalMessagingDelegate.html create mode 100644 6.23.1/Protocols/BTThreeDSecureRequestDelegate.html create mode 100644 6.23.1/Structs.html create mode 100644 6.23.1/Structs/BTPayPalMessagingRequest.html create mode 100644 6.23.1/Structs/BTShopperInsightsRequest.html create mode 100644 6.23.1/Structs/BTShopperInsightsResult.html create mode 100644 6.23.1/Structs/Phone.html create mode 100644 6.23.1/badge.svg create mode 100644 6.23.1/css/highlight.css create mode 100644 6.23.1/css/jazzy.css create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Info.plist create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css create mode 100755 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png create mode 100755 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png create mode 100755 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/gh.png create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/spinner.gif create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/index.html create mode 100755 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/lunr.min.js create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/search.json create mode 100644 6.23.1/docsets/Braintree.docset/Contents/Resources/docSet.dsidx create mode 100644 6.23.1/docsets/Braintree.tgz create mode 100755 6.23.1/img/carat.png create mode 100755 6.23.1/img/dash.png create mode 100755 6.23.1/img/gh.png create mode 100644 6.23.1/img/spinner.gif create mode 100644 6.23.1/index.html create mode 100755 6.23.1/js/jazzy.js create mode 100644 6.23.1/js/jazzy.search.js create mode 100644 6.23.1/js/jquery.min.js create mode 100644 6.23.1/js/lunr.min.js create mode 100644 6.23.1/js/typeahead.jquery.js create mode 100644 6.23.1/search.json create mode 100644 6.23.1/undocumented.json diff --git a/6.23.1/Classes.html b/6.23.1/Classes.html new file mode 100644 index 0000000000..1a222e5372 --- /dev/null +++ b/6.23.1/Classes.html @@ -0,0 +1,2221 @@ + + + + Classes Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Classes

+

The following classes are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + BTAPIClient + +
    +
    +
    +
    +
    +
    +

    This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

    +
    +

    Note

    + It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAPIClient : NSObject, BTHTTPNetworkTiming
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAppContextSwitcher + +
    +
    +
    +
    +
    +
    +

    Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

    +
    +

    Note

    + returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAppContextSwitcher : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTBinData + +
    +
    +
    +
    +
    +
    +

    Contains the bin data associated with a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTBinData : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPaymentMethodNonce + +
    +
    +
    +
    +
    +
    +

    BTPaymentMethodNonce is for generic tokenized payment information.

    + +

    For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

    + +

    The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPaymentMethodNonce : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

    + +

    BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPaymentMethodNonceParser : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPostalAddress + +
    +
    +
    +
    +
    +
    +

    Generic postal address

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalNativeCheckoutClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Used to integrate with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A payment method nonce representing a SEPA Direct Debit payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Parameters for creating a SEPA Direct Debit tokenization request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTAmericanExpressClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about an American Express rewards balance.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAmericanExpressRewardsBalance : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollector + +
    +
    +
    +
    +
    +
    +

    Braintree’s advanced fraud protection solution.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTDataCollector : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized Apple Pay card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTApplePayCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayClient + +
    +
    +
    +
    +
    +
    +

    Used to process Apple Pay payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTApplePayClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a local payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentResult + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureAdditionalInformation : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureLookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3DS lookup. +Contains liability shift and challenge information.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureLookup : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Postal address for 3D Secure flows

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecurePostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRenderType : NSObject, OptionSet
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureResult + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Base customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2BaseCustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Label customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text box customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Toolbar customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    UI customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2UICustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAuthenticationInsight : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCard + +
    +
    +
    +
    +
    +
    +

    The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCard : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardClient + +
    +
    +
    +
    +
    +
    +

    Used to process cards

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTCardClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardRequest + +
    +
    +
    +
    +
    +
    +

    Contains information about a card to tokenize

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    Contains information about the 3D Secure status of a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureInfo : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalCheckoutRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalClient : BTWebAuthenticationSessionClient
    +
    extension BTPayPalClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit financing option

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancing : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit amount

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancingAmount : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItem + +
    +
    +
    +
    +
    +
    +

    A PayPal line item to be displayed in the PayPal checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequest + +
    +
    +
    +
    +
    +
    +

    Base options for PayPal Checkout and PayPal Vault flows.

    +
    +

    Note

    + Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalVaultBaseRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalVaultRequest + +
    +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a Venmo Account payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoClient + +
    +
    +
    +
    +
    +
    +

    Used to process Venmo payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTVenmoClient : NSObject
    +
    extension BTVenmoClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItem + +
    +
    +
    +
    +
    +
    +

    A Venmo line item to be displayed in the Venmo Paysheet.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoRequest + +
    +
    +
    +
    +
    +
    +

    A BTVenmoRequest specifies options that contribute to the Venmo flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalMessagingView + +
    +
    +
    +
    +
    +
    +

    Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTPayPalMessagingView : UIView
    +
    extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTShopperInsightsClient
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTAPIClient.html b/6.23.1/Classes/BTAPIClient.html new file mode 100644 index 0000000000..912fe0356c --- /dev/null +++ b/6.23.1/Classes/BTAPIClient.html @@ -0,0 +1,673 @@ + + + + BTAPIClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAPIClient

+
+
+ +
@objcMembers
+public class BTAPIClient : NSObject, BTHTTPNetworkTiming
+ +
+
+

This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

+
+

Note

+ It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + authorization + +
    +
    +
    +
    +
    +
    +

    The TokenizationKey or ClientToken used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authorization: ClientAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + metadata + +
    +
    +
    +
    +
    +
    +

    Client metadata that is used for tracking the client session

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public private(set) var metadata: BTClientMetadata { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(authorization:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new API client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAuthorization:)
    +public init?(authorization: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + authorization + + +
    +

    Your tokenization key or client token. Passing an invalid value may return nil.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    +
    +

    Note

    + Only the top level BTPaymentMethodNonce type is returned, fetching any additional details will need to be done on the server + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    Callback that returns either an array of payment method nonces or an error

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ defaultFirst: Bool, completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTAmericanExpressClient.html b/6.23.1/Classes/BTAmericanExpressClient.html new file mode 100644 index 0000000000..f37037da77 --- /dev/null +++ b/6.23.1/Classes/BTAmericanExpressClient.html @@ -0,0 +1,564 @@ + + + + BTAmericanExpressClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAmericanExpressClient

+
+
+ +
@objc
+public class BTAmericanExpressClient : NSObject
+ +
+
+

BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTAmericanExpressRewardsBalance.html b/6.23.1/Classes/BTAmericanExpressRewardsBalance.html new file mode 100644 index 0000000000..276dff7d3a --- /dev/null +++ b/6.23.1/Classes/BTAmericanExpressRewardsBalance.html @@ -0,0 +1,677 @@ + + + + BTAmericanExpressRewardsBalance Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAmericanExpressRewardsBalance

+
+
+ +
@objcMembers
+public class BTAmericanExpressRewardsBalance : NSObject
+ +
+
+

Contains information about an American Express rewards balance.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    +

    Optional. An error code when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    Optional. An error message when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + conversionRate + +
    +
    +
    +
    +
    +
    +

    Optional. The conversion rate associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var conversionRate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The currency amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyIsoCode + +
    +
    +
    +
    +
    +
    +

    Optional. The currency ISO code associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyIsoCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requestID + +
    +
    +
    +
    +
    +
    +

    Optional. The request ID used when fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsUnit + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards unit associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsUnit: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTAppContextSwitcher.html b/6.23.1/Classes/BTAppContextSwitcher.html new file mode 100644 index 0000000000..8eef1bcad2 --- /dev/null +++ b/6.23.1/Classes/BTAppContextSwitcher.html @@ -0,0 +1,672 @@ + + + + BTAppContextSwitcher Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAppContextSwitcher

+
+
+ +
@objcMembers
+public class BTAppContextSwitcher : NSObject
+ +
+
+

Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

+
+

Note

+ returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + sharedInstance + +
    +
    +
    +
    +
    +
    +

    Singleton for shared instance of BTAppContextSwitcher

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let sharedInstance: BTAppContextSwitcher
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + returnURLScheme + +
    +
    +
    +
    +
    +
    +

    The URL scheme to return to this app after switching to another app or opening a SFSafariViewController. +This URL scheme must be registered as a URL Type in the app’s info.plist, and it must start with the app’s bundle ID.

    +
    +

    Note

    + This property should only be used for the Venmo flow. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var returnURLScheme: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Determine whether the return URL can be handled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURLContext:)
    +public func handleOpenURL(context: UIOpenURLContext) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    true when the SDK can process the return URL

    +
    + +
    +
    +
  • +
  • +
    + + + + handleOpen(_:) + +
    +
    +
    +
    +
    +
    +

    Complete payment flow after returning from app or browser switch.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURL:)
    +public func handleOpen(_ url: URL) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + url + + +
    +

    The URL you receive in scene:openURLContexts: (or application:openURL:options: if not using SceneDelegate)

    +
    +
    +
    +
    +

    Return Value

    +

    true when the SDK has handled the URL successfully

    +
    + +
    +
    +
  • +
  • +
    + + + + register(_:) + +
    +
    +
    +
    +
    +
    +

    Registers a class Type that can handle a return from app context switch with a static method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(registerAppContextSwitchClient:)
    +public func register(_ client: BTAppContextSwitchClient.Type)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + client + + +
    +

    A class Type that implements BTAppContextSwitchClient, the methods of which will be invoked statically on the class.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTApplePayCardNonce.html b/6.23.1/Classes/BTApplePayCardNonce.html new file mode 100644 index 0000000000..302d4843aa --- /dev/null +++ b/6.23.1/Classes/BTApplePayCardNonce.html @@ -0,0 +1,467 @@ + + + + BTApplePayCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTApplePayCardNonce

+
+
+ +
@objcMembers
+public class BTApplePayCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized Apple Pay card.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTApplePayClient.html b/6.23.1/Classes/BTApplePayClient.html new file mode 100644 index 0000000000..90cd08ece8 --- /dev/null +++ b/6.23.1/Classes/BTApplePayClient.html @@ -0,0 +1,727 @@ + + + + BTApplePayClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTApplePayClient

+
+
+ +
@objc
+public class BTApplePayClient : NSObject
+ +
+
+

Used to process Apple Pay payments

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(makePaymentRequest:)
    +public func makePaymentRequest(completion: @escaping (PKPaymentRequest?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns the payment request or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + makePaymentRequest() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func makePaymentRequest() async throws -> PKPaymentRequest
    + +
    +
    +
    +

    Return Value

    +

    A PKPaymentRequest

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Tokenizes an Apple Pay payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeApplePayPayment:completion:)
    +public func tokenize(_ payment: PKPayment, completion: @escaping (BTApplePayCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when tokenization has completed. If tokenization succeeds, we will return a BTApplePayCardNonce +and error will be nil; if it fails, BTApplePayCardNonce will be nil and error will describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes an Apple Pay payment.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ payment: PKPayment) async throws -> BTApplePayCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    +
    +
    +

    Return Value

    +

    A BTApplePayCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTAuthenticationInsight.html b/6.23.1/Classes/BTAuthenticationInsight.html new file mode 100644 index 0000000000..382a76a529 --- /dev/null +++ b/6.23.1/Classes/BTAuthenticationInsight.html @@ -0,0 +1,478 @@ + + + + BTAuthenticationInsight Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAuthenticationInsight

+
+
+ +
@objcMembers
+public class BTAuthenticationInsight : NSObject
+ +
+
+

Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTBinData.html b/6.23.1/Classes/BTBinData.html new file mode 100644 index 0000000000..fbd281cf6d --- /dev/null +++ b/6.23.1/Classes/BTBinData.html @@ -0,0 +1,738 @@ + + + + BTBinData Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTBinData

+
+
+ +
@objcMembers
+public class BTBinData : NSObject
+ +
+
+

Contains the bin data associated with a payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + prepaid + +
    +
    +
    +
    +
    +
    +

    Whether the card is a prepaid card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let prepaid: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + healthcare + +
    +
    +
    +
    +
    +
    +

    Whether the card is a healthcare card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let healthcare: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Whether the card is a debit card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let debit: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + durbinRegulated + +
    +
    +
    +
    +
    +
    +

    A value indicating whether the issuing bank’s card range is regulated by the Durbin Amendment due to the bank’s assets. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let durbinRegulated: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + commercial + +
    +
    +
    +
    +
    +
    +

    Whether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let commercial: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payroll + +
    +
    +
    +
    +
    +
    +

    Whether the card is a payroll card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payroll: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + issuingBank + +
    +
    +
    +
    +
    +
    +

    The bank that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let issuingBank: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryOfIssuance + +
    +
    +
    +
    +
    +
    +

    The country that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let countryOfIssuance: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productID + +
    +
    +
    +
    +
    +
    +

    The code for the product type of the card (e.g. D (Visa Signature Preferred), G (Visa Business)), if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productID: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(json:) + +
    +
    +
    +
    +
    +
    +

    Create a BTBinData object from JSON.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithJSON:)
    +public init(json: BTJSON?)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTCard.html b/6.23.1/Classes/BTCard.html new file mode 100644 index 0000000000..58d260b583 --- /dev/null +++ b/6.23.1/Classes/BTCard.html @@ -0,0 +1,1096 @@ + + + + BTCard Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCard

+
+
+ +
@objcMembers
+public class BTCard : NSObject
+ +
+
+

The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + number + +
    +
    +
    +
    +
    +
    +

    The card number

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var number: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month as a one or two-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year as a two or four-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cvv + +
    +
    +
    +
    +
    +
    +

    The card verification code (like CVV or CID).

    +
    +

    Note

    + If you wish to create a CVV-only payment method nonce to verify a card already stored in your Vault, +omit all other properties to only collect CVV. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cvv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    The postal code associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    Optional: the cardholder’s name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Optional: first name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Optional: last name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + company + +
    +
    +
    +
    +
    +
    +

    Optional: company name associated with the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var company: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the street address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the extended address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional: the city associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryName + +
    +
    +
    +
    +
    +
    +

    Optional: the country name associated with the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific country names. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-2 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-2 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha3 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-3 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-3 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeNumeric + +
    +
    +
    +
    +
    +
    +

    Optional: The ISO 3166-1 numeric country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific numeric values. + + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeNumeric: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shouldValidate + +
    +
    +
    +
    +
    +
    +

    Controls whether or not to return validations and/or verification results. By default, this is not enabled.

    +
    +

    Note

    + Use this flag with caution. By enabling client-side validation, certain tokenize card requests may result in adding the card to the vault. +These semantics are not currently documented. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shouldValidate: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If authentication insight is requested. If this property is set to true, a merchantAccountID must be provided. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsightRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant account ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTCardClient.html b/6.23.1/Classes/BTCardClient.html new file mode 100644 index 0000000000..0085d2a5e6 --- /dev/null +++ b/6.23.1/Classes/BTCardClient.html @@ -0,0 +1,633 @@ + + + + BTCardClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardClient

+
+
+ +
@objc
+public class BTCardClient : NSObject
+ +
+
+

Used to process cards

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a card client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Tokenizes a card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeCard:completion:)
    +public func tokenize(_ card: BTCard, completion: @escaping (BTCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when card tokenization has completed. If tokenization succeeds, +tokenize will contain a nonce and error will be nil; if it fails, tokenize will be nil and errorwill describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes a card

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ card: BTCard) async throws -> BTCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTCardNonce.html b/6.23.1/Classes/BTCardNonce.html new file mode 100644 index 0000000000..9c7450cbb9 --- /dev/null +++ b/6.23.1/Classes/BTCardNonce.html @@ -0,0 +1,747 @@ + + + + BTCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardNonce

+
+
+ +
@objcMembers
+public class BTCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized card.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + cardNetwork + +
    +
    +
    +
    +
    +
    +

    The card network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardNetwork: BTCardNetwork
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    The name of the cardholder, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastTwo + +
    +
    +
    +
    +
    +
    +

    The last two digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastTwo: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastFour + +
    +
    +
    +
    +
    +
    +

    The last four digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastFour: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bin + +
    +
    +
    +
    +
    +
    +

    The BIN number of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bin: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    The 3D Secure info for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureInfo: BTThreeDSecureInfo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + authenticationInsight + +
    +
    +
    +
    +
    +
    +

    Details about the regulatory environment and applicable customer authentication regulation for a potential transaction. +This can be used to make an informed decision whether to perform 3D Secure authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsight: BTAuthenticationInsight?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTCardRequest.html b/6.23.1/Classes/BTCardRequest.html new file mode 100644 index 0000000000..91637458a3 --- /dev/null +++ b/6.23.1/Classes/BTCardRequest.html @@ -0,0 +1,516 @@ + + + + BTCardRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardRequest

+
+
+ +
@objcMembers
+public class BTCardRequest : NSObject
+ +
+
+

Contains information about a card to tokenize

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + card + +
    +
    +
    +
    +
    +
    +

    The BTCard associated with this instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var card: BTCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(card:) + +
    +
    +
    +
    +
    +
    +

    Initialize a Card request with a BTCard.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(card: BTCard)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The BTCard to initialize with.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTDataCollector.html b/6.23.1/Classes/BTDataCollector.html new file mode 100644 index 0000000000..a134b2a48c --- /dev/null +++ b/6.23.1/Classes/BTDataCollector.html @@ -0,0 +1,659 @@ + + + + BTDataCollector Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTDataCollector

+
+
+ +
@objc
+public class BTDataCollector : NSObject
+ +
+
+

Braintree’s advanced fraud protection solution.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTDataCollector instance with a BTAPIClient.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public methods +

+
+
+
    +
  • +
    + + + + clientMetadataID(_:) + +
    +
    +
    +
    +
    +
    +

    Returns a client metadata ID.

    +
    +

    Note

    + This returns a raw client metadata ID, which is not the correct format for device data when creating a transaction. Instead, it is recommended to use collectDeviceData. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func clientMetadataID(_ pairingID: String?) -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + pairingID + + +
    +

    A pairing ID to associate with this clientMetadataID must be 10-32 chars long or null

    +
    +
    +
    +
    +

    Return Value

    +

    A client metadata ID to send as a header

    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData(_:) + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func collectDeviceData(_ completion: @escaping (String?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns either a device data string that should be passed into server-side calls, such as Transaction.sale, or an error with the failure reason.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func collectDeviceData() async throws -> String
    + +
    +
    +
    +

    Return Value

    +

    A device data string that should be passed into server-side calls, such as Transaction.sale.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTLocalPaymentClient.html b/6.23.1/Classes/BTLocalPaymentClient.html new file mode 100644 index 0000000000..486eac0fce --- /dev/null +++ b/6.23.1/Classes/BTLocalPaymentClient.html @@ -0,0 +1,630 @@ + + + + BTLocalPaymentClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentClient

+
+
+ +
@objcMembers
+public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTLocalPaymentClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTLocalPaymentRequest.html b/6.23.1/Classes/BTLocalPaymentRequest.html new file mode 100644 index 0000000000..09334294be --- /dev/null +++ b/6.23.1/Classes/BTLocalPaymentRequest.html @@ -0,0 +1,869 @@ + + + + BTLocalPaymentRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentRequest

+
+
+ +
@objcMembers
+public class BTLocalPaymentRequest : NSObject
+ +
+
+

Used to initialize a local payment flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + paymentType + +
    +
    +
    +
    +
    +
    +

    The type of payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentType: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The country code of the local payment.

    + +

    This value must be one of the supported country codes for a given local payment type listed at the link below. For local payments supported in multiple countries, this value may determine which banks are presented to the customer.

    + +

    https://developer.paypal.com/braintree/docs/guides/local-payment-methods/client-side-custom/ios/v5#invoke-payment-flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentTypeCountryCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + address + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var address: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the local payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional: Payer email of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional: Given (first) name of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional: Surname (last name) of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Optional: Phone number of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phone: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bic + +
    +
    +
    +
    +
    +
    +

    Optional: Bank Identification Code of the customer (specific to iDEAL transactions).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bic: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var localPaymentFlowDelegate: BTLocalPaymentRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTLocalPaymentResult.html b/6.23.1/Classes/BTLocalPaymentResult.html new file mode 100644 index 0000000000..c13f0fd1fb --- /dev/null +++ b/6.23.1/Classes/BTLocalPaymentResult.html @@ -0,0 +1,736 @@ + + + + BTLocalPaymentResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentResult

+
+
+ +
@objcMembers
+public class BTLocalPaymentResult : NSObject
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client Metadata ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The one-time use payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Payer ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The type of the tokenized payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let type: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalAccountNonce.html b/6.23.1/Classes/BTPayPalAccountNonce.html new file mode 100644 index 0000000000..1847737345 --- /dev/null +++ b/6.23.1/Classes/BTPayPalAccountNonce.html @@ -0,0 +1,709 @@ + + + + BTPayPalAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + creditFinancing + +
    +
    +
    +
    +
    +
    +

    Optional. Credit financing details if the customer pays with PayPal Credit. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let creditFinancing: BTPayPalCreditFinancing?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalCheckoutRequest.html b/6.23.1/Classes/BTPayPalCheckoutRequest.html new file mode 100644 index 0000000000..69f4a2f8d4 --- /dev/null +++ b/6.23.1/Classes/BTPayPalCheckoutRequest.html @@ -0,0 +1,795 @@ + + + + BTPayPalCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalCheckoutRequest

+
+
+ +
@objcMembers
+open class BTPayPalCheckoutRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Checkout flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    Used for a one-time payment.

    + +

    Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’ and is limited to 7 digits before the decimal point.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + intent + +
    +
    +
    +
    +
    +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var intent: BTPayPalRequestIntent
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAction + +
    +
    +
    +
    +
    +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAction: BTPayPalRequestUserAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + offerPayLater + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerPayLater: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    +
    +

    Note

    + See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestBillingAgreement: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    userAction: BTPayPalRequestUserAction = .none,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + amount + + +
    +

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + userAction + + +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement +during checkout. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalClient.html b/6.23.1/Classes/BTPayPalClient.html new file mode 100644 index 0000000000..7e5e66051f --- /dev/null +++ b/6.23.1/Classes/BTPayPalClient.html @@ -0,0 +1,864 @@ + + + + BTPayPalClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalClient

+
+
+ +
@objc
+public class BTPayPalClient : BTWebAuthenticationSessionClient
+
extension BTPayPalClient: BTAppContextSwitchClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new PayPal client instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The API Client

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new PayPal client instance for the PayPal App Switch flow.

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:universalLink:)
    +public convenience init(apiClient: BTAPIClient, universalLink: URL)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + apiClient + + +
    +

    The API Client

    +
    +
    + + universalLink + + +
    +

    The URL to use for the PayPal app switch flow. Must be a valid HTTPS URL dedicated to Braintree app switch returns. This URL must be allow-listed in your Braintree Control Panel.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVaultRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalVaultRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalVaultRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithCheckoutRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalCheckoutRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalCheckoutRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalCreditFinancing.html b/6.23.1/Classes/BTPayPalCreditFinancing.html new file mode 100644 index 0000000000..f87a9dbfb3 --- /dev/null +++ b/6.23.1/Classes/BTPayPalCreditFinancing.html @@ -0,0 +1,617 @@ + + + + BTPayPalCreditFinancing Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalCreditFinancing

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancing : NSObject
+ +
+
+

Contains information about a PayPal credit financing option

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + cardAmountImmutable + +
    +
    +
    +
    +
    +
    +

    Indicates whether the card amount is editable after payer’s acceptance on PayPal side.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let cardAmountImmutable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monthlyPayment + +
    +
    +
    +
    +
    +
    +

    Estimated amount per month that the customer will need to pay including fees and interest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let monthlyPayment: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerAcceptance + +
    +
    +
    +
    +
    +
    +

    Status of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerAcceptance: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + term + +
    +
    +
    +
    +
    +
    +

    Length of financing terms in months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let term: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalCost + +
    +
    +
    +
    +
    +
    +

    Estimated total payment amount including interest and fees the user will pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalCost: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalInterest + +
    +
    +
    +
    +
    +
    +

    Estimated interest or fees amount the payer will have to pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalInterest: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalCreditFinancingAmount.html b/6.23.1/Classes/BTPayPalCreditFinancingAmount.html new file mode 100644 index 0000000000..8fde7e0e0f --- /dev/null +++ b/6.23.1/Classes/BTPayPalCreditFinancingAmount.html @@ -0,0 +1,497 @@ + + + + BTPayPalCreditFinancingAmount Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalCreditFinancingAmount

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancingAmount : NSObject
+ +
+
+

Contains information about a PayPal credit amount

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + currency + +
    +
    +
    +
    +
    +
    +

    3 letter currency code as defined by ISO 4217.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let currency: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + value + +
    +
    +
    +
    +
    +
    +

    An amount defined by ISO 4217 for the given currency.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let value: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalLineItem.html b/6.23.1/Classes/BTPayPalLineItem.html new file mode 100644 index 0000000000..7718fad254 --- /dev/null +++ b/6.23.1/Classes/BTPayPalLineItem.html @@ -0,0 +1,875 @@ + + + + BTPayPalLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLineItem

+
+
+ +
@objcMembers
+public class BTPayPalLineItem : NSObject
+ +
+
+

A PayPal line item to be displayed in the PayPal checkout flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let quantity: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let kind: BTPayPalLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let url: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + imageURL + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product image information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var imageURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcCode + +
    +
    +
    +
    +
    +
    +

    Optional: UPC code for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcType + +
    +
    +
    +
    +
    +
    +

    Optional: UPC type for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcType: BTPayPalLineItemUPCType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a PayPayLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: String, unitAmount: String, name: String, kind: BTPayPalLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalMessagingView.html b/6.23.1/Classes/BTPayPalMessagingView.html new file mode 100644 index 0000000000..c6df724d6b --- /dev/null +++ b/6.23.1/Classes/BTPayPalMessagingView.html @@ -0,0 +1,811 @@ + + + + BTPayPalMessagingView Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingView

+
+
+ +
public class BTPayPalMessagingView : UIView
+
extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
+ +
+
+

Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Properties +

+
+
+ +
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTPayPalMessagingView.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The Braintree API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Method +

+
+
+ +
+
+
+ + +
+ +

UIViewRepresentable protocol conformance +

+
+
+
    +
  • +
    + + + + Representable + +
    +
    +
    +
    +
    +
    +

    PayPal Messaging for SwiftUI

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    struct Representable : UIViewRepresentable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

PayPalMessageViewEventDelegate and PayPalMessageViewStateDelegate protocol conformance +

+
+
+
    +
  • +
    + + + + onClick(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onClick(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onApply(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onApply(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onLoading(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onLoading(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onSuccess(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onSuccess(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onError(_:error:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onError(_ paypalMessageView: PayPalMessages.PayPalMessageView, error: PayPalMessages.PayPalMessageError)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalMessagingView/Representable.html b/6.23.1/Classes/BTPayPalMessagingView/Representable.html new file mode 100644 index 0000000000..1463beee86 --- /dev/null +++ b/6.23.1/Classes/BTPayPalMessagingView/Representable.html @@ -0,0 +1,539 @@ + + + + Representable Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Representable

+
+
+ +
struct Representable : UIViewRepresentable
+ +
+
+

PayPal Messaging for SwiftUI

+ + +
+
+ +
+
+
+ +
+
+
+ + +
+ +

UIViewRepresentable Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalNativeCheckoutAccountNonce.html b/6.23.1/Classes/BTPayPalNativeCheckoutAccountNonce.html new file mode 100644 index 0000000000..52034b3497 --- /dev/null +++ b/6.23.1/Classes/BTPayPalNativeCheckoutAccountNonce.html @@ -0,0 +1,687 @@ + + + + BTPayPalNativeCheckoutAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalNativeCheckoutClient.html b/6.23.1/Classes/BTPayPalNativeCheckoutClient.html new file mode 100644 index 0000000000..68d48990f5 --- /dev/null +++ b/6.23.1/Classes/BTPayPalNativeCheckoutClient.html @@ -0,0 +1,641 @@ + + + + BTPayPalNativeCheckoutClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutClient

+
+
+ +
@objc
+public class BTPayPalNativeCheckoutClient : NSObject
+ +
+
+

Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public convenience init(apiClient: BTAPIClient)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalNativeCheckoutRequest.html b/6.23.1/Classes/BTPayPalNativeCheckoutRequest.html new file mode 100644 index 0000000000..2948cef647 --- /dev/null +++ b/6.23.1/Classes/BTPayPalNativeCheckoutRequest.html @@ -0,0 +1,578 @@ + + + + BTPayPalNativeCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
+ +
+
+

Options for the PayPal Checkout flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false,
    +    billingAgreementDescription: String? = nil,
    +    userAuthenticationEmail: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + amount + + +
    +

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also +set requestBillingAgreement to true on your BTPayPalNativeVaultRequest.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalNativeVaultRequest.html b/6.23.1/Classes/BTPayPalNativeVaultRequest.html new file mode 100644 index 0000000000..aea5a9dcef --- /dev/null +++ b/6.23.1/Classes/BTPayPalNativeVaultRequest.html @@ -0,0 +1,511 @@ + + + + BTPayPalNativeVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    offerCredit: Bool = false,
    +    billingAgreementDescription: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set +requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalRequest.html b/6.23.1/Classes/BTPayPalRequest.html new file mode 100644 index 0000000000..454318b3d7 --- /dev/null +++ b/6.23.1/Classes/BTPayPalRequest.html @@ -0,0 +1,764 @@ + + + + BTPayPalRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequest

+
+
+ +
@objcMembers
+open class BTPayPalRequest : NSObject
+ +
+
+

Base options for PayPal Checkout and PayPal Vault flows.

+
+

Note

+ Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Defaults to false. When set to true, the shipping address selector will be displayed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Defaults to false. Set to true to enable user editing of the shipping address.

    +
    +

    Note

    + Only applies when shippingAddressOverride is set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressEditable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + localeCode + +
    +
    +
    +
    +
    +
    +

    Optional: A locale code to use for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var localeCode: BTPayPalLocaleCode
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressOverride: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + landingPageType + +
    +
    +
    +
    +
    +
    +

    Optional: Landing page type. Defaults to .none.

    +
    +

    Note

    + Setting the BTPayPalRequest’s landingPageType changes the PayPal page to display when a user lands on the PayPal site to complete the payment. +.login specifies a PayPal account login page is used. +.billing specifies a non-PayPal account landing page is used. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var landingPageType: BTPayPalRequestLandingPageType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional: The line items for this transaction. It can include up to 249 line items.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTPayPalLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set + requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAgreementDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + riskCorrelationID + +
    +
    +
    +
    +
    +
    +

    Optional: A risk correlation ID created with Set Transaction Context on your server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var riskCorrelationID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalVaultBaseRequest.html b/6.23.1/Classes/BTPayPalVaultBaseRequest.html new file mode 100644 index 0000000000..f16db5b430 --- /dev/null +++ b/6.23.1/Classes/BTPayPalVaultBaseRequest.html @@ -0,0 +1,538 @@ + + + + BTPayPalVaultBaseRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalVaultBaseRequest

+
+
+ +
@objcMembers
+open class BTPayPalVaultBaseRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Vault flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + offerCredit + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerCredit: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(offerCredit:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPayPalVaultRequest.html b/6.23.1/Classes/BTPayPalVaultRequest.html new file mode 100644 index 0000000000..1a323cea57 --- /dev/null +++ b/6.23.1/Classes/BTPayPalVaultRequest.html @@ -0,0 +1,665 @@ + + + + BTPayPalVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Vault request for the PayPal App Switch flow

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    +

    Note

    + The PayPal App Switch flow currently only supports the production environment. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(
    +    userAuthenticationEmail: String,
    +    enablePayPalAppSwitch: Bool,
    +    offerCredit: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + userAuthenticationEmail + + +
    +

    Required: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    + + enablePayPalAppSwitch + + +
    +

    Required: Used to determine if the customer will use the PayPal app switch flow.

    +
    +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false, userAuthenticationEmail: String? = nil)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override func parameters(with configuration: BTConfiguration, universalLink: URL? = nil) -> [String : Any]
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPaymentMethodNonce.html b/6.23.1/Classes/BTPaymentMethodNonce.html new file mode 100644 index 0000000000..4f14475d91 --- /dev/null +++ b/6.23.1/Classes/BTPaymentMethodNonce.html @@ -0,0 +1,733 @@ + + + + BTPaymentMethodNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPaymentMethodNonce

+
+
+ +
@objcMembers
+open class BTPaymentMethodNonce : NSObject
+ +
+
+

BTPaymentMethodNonce is for generic tokenized payment information.

+ +

For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

+ +

The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The string identifying the type of the payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var type: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isDefault + +
    +
    +
    +
    +
    +
    +

    The boolean indicating whether this is a default payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isDefault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:)
    +public init(nonce: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:type:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:)
    +public init(nonce: String, type: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:isDefault:)
    +public init(nonce: String, type: String, isDefault: Bool)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    + + isDefault + + +
    +

    A boolean indicating whether this is a default payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPaymentMethodNonceParser.html b/6.23.1/Classes/BTPaymentMethodNonceParser.html new file mode 100644 index 0000000000..b98dd1a631 --- /dev/null +++ b/6.23.1/Classes/BTPaymentMethodNonceParser.html @@ -0,0 +1,655 @@ + + + + BTPaymentMethodNonceParser Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPaymentMethodNonceParser

+
+
+ +
@objcMembers
+public class BTPaymentMethodNonceParser : NSObject
+ +
+
+

A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

+ +

BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + shared + +
    +
    +
    +
    +
    +
    +

    The singleton instance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(sharedParser)
    +public static let shared: BTPaymentMethodNonceParser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + allTypes + +
    +
    +
    +
    +
    +
    +

    An array of the tokenization types currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var allTypes: [String] { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isTypeAvailable(_:) + +
    +
    +
    +
    +
    +
    +

    Indicates whether a tokenization type is currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func isTypeAvailable(_ type: String) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    +
    +
    +

    Return Value

    +

    A bool indicating if the payment method type is available.

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Registers a parsing block for a tokenization type.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func registerType(_ type: String?, withParsingBlock: @escaping (_ json: BTJSON?) -> BTPaymentMethodNonce?)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    + + withParsingBlock + + +
    +

    jsonParsingBlock The block to execute when parseJSON:type: is called for the tokenization type. +This block should return a BTPaymentMethodNonce object, or nil if the JSON cannot be parsed.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Parses tokenized payment information that has been serialized to JSON, and returns a BTPaymentMethodNonce object.

    + +

    The BTPaymentMethodNonce object is created by the JSON parsing block that has been registered for the tokenization type.

    + +

    If the type has not been registered, this method will attempt to read the nonce from the JSON and return + a basic object; if it fails, it will return nil.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func parseJSON(_ json: BTJSON?, withParsingBlockForType type: String?) -> BTPaymentMethodNonce?
    + +
    +
    +
    +

    Return Value

    +

    A BTPaymentMethodNonce object, or nil if the tokenized payment info JSON does not contain a nonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTPostalAddress.html b/6.23.1/Classes/BTPostalAddress.html new file mode 100644 index 0000000000..5ae4494add --- /dev/null +++ b/6.23.1/Classes/BTPostalAddress.html @@ -0,0 +1,648 @@ + + + + BTPostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPostalAddress

+
+
+ +
@objcMembers
+public class BTPostalAddress : NSObject
+ +
+
+

Generic postal address

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + recipientName + +
    +
    +
    +
    +
    +
    +

    Optional. Recipient name for shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recipientName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Line 1 of the Address (eg. number, street, etc).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional line 2 of the Address (eg. suite, apt #, etc.).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    2 letter country code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTSEPADirectDebitClient.html b/6.23.1/Classes/BTSEPADirectDebitClient.html new file mode 100644 index 0000000000..050ed6d087 --- /dev/null +++ b/6.23.1/Classes/BTSEPADirectDebitClient.html @@ -0,0 +1,635 @@ + + + + BTSEPADirectDebitClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitClient

+
+
+ +
@objc
+public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
+ +
+
+

Used to integrate with SEPA Direct Debit.

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a SEPA Direct Debit client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithSEPADirectDebitRequest:completion:)
    +public func tokenize(
    +    _ request: BTSEPADirectDebitRequest,
    +    completion:  @escaping (BTSEPADirectDebitNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTSEPADirectDebitRequest) async throws -> BTSEPADirectDebitNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    +
    +
    +

    Return Value

    +

    A BTSEPADirectDebitNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTSEPADirectDebitNonce.html b/6.23.1/Classes/BTSEPADirectDebitNonce.html new file mode 100644 index 0000000000..d95aad877c --- /dev/null +++ b/6.23.1/Classes/BTSEPADirectDebitNonce.html @@ -0,0 +1,527 @@ + + + + BTSEPADirectDebitNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitNonce

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
+ +
+
+

A payment method nonce representing a SEPA Direct Debit payment.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTSEPADirectDebitRequest.html b/6.23.1/Classes/BTSEPADirectDebitRequest.html new file mode 100644 index 0000000000..6d83761187 --- /dev/null +++ b/6.23.1/Classes/BTSEPADirectDebitRequest.html @@ -0,0 +1,780 @@ + + + + BTSEPADirectDebitRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitRequest

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitRequest : NSObject
+ +
+
+

Parameters for creating a SEPA Direct Debit tokenization request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + accountHolderName + +
    +
    +
    +
    +
    +
    +

    Required. The account holder name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountHolderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + iban + +
    +
    +
    +
    +
    +
    +

    Required. The full IBAN.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var iban: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customerID + +
    +
    +
    +
    +
    +
    +

    Required. The customer ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mandateType + +
    +
    +
    +
    +
    +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mandateType: BTSEPADirectDebitMandateType?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Required. The user’s billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional. A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locale + +
    +
    +
    +
    +
    +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locale: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new SEPA Direct Debit request.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    accountHolderName: String? = nil,
    +    iban: String? = nil,
    +    customerID: String? = nil,
    +    mandateType: BTSEPADirectDebitMandateType? = .oneOff,
    +    billingAddress: BTPostalAddress? = nil,
    +    merchantAccountID: String? = nil,
    +    locale: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + accountHolderName + + +
    +

    Required. The account holder name.

    +
    +
    + + iban + + +
    +

    Required. The full IBAN.

    +
    +
    + + customerID + + +
    +

    Required. The customer ID.

    +
    +
    + + mandateType + + +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    +
    +
    + + billingAddress + + +
    +

    Required. The user’s billing address.

    +
    +
    + + merchantAccountID + + +
    +

    Optional. A non-default merchant account to use for tokenization.

    +
    +
    + + locale + + +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTShopperInsightsClient.html b/6.23.1/Classes/BTShopperInsightsClient.html new file mode 100644 index 0000000000..0e163a586a --- /dev/null +++ b/6.23.1/Classes/BTShopperInsightsClient.html @@ -0,0 +1,692 @@ + + + + BTShopperInsightsClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsClient

+
+
+ +
public class BTShopperInsightsClient
+ +
+
+

Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Private Properties +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a BTShopperInsightsClient

    +
    +

    Warning

    + This features only works with a client token. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    A BTAPIClient instance.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + getRecommendedPaymentMethods(request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    This method confirms if the customer is a user of PayPal services using their email and phone number.

    +
    +

    Warning

    + This feature is in beta. Its public API may change or be removed in future releases. + PayPal recommendation is only available for US, AU, FR, DE, ITA, NED, ESP, Switzerland and UK merchants. + Venmo recommendation is only available for US merchants. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func getRecommendedPaymentMethods(request: BTShopperInsightsRequest) async throws -> BTShopperInsightsResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    A BTShopperInsightsRequest containing the buyer’s user information

    +
    +
    +
    +
    +

    Return Value

    +

    A BTShopperInsightsResult instance

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the PayPal button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the PayPal button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureAdditionalInformation.html b/6.23.1/Classes/BTThreeDSecureAdditionalInformation.html new file mode 100644 index 0000000000..2eadb8a9b5 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureAdditionalInformation.html @@ -0,0 +1,1769 @@ + + + + BTThreeDSecureAdditionalInformation Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureAdditionalInformation

+
+
+ +
@objcMembers
+public class BTThreeDSecureAdditionalInformation : NSObject
+ +
+
+

Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit string indicating the shipping method chosen for the transaction

    + +

    Possible Values:

    + +
      +
    • 01: Ship to cardholder billing address
    • +
    • 02: Ship to another verified address on file with merchant
    • +
    • 03: Ship to address that is different than billing address
    • +
    • 04: Ship to store (store address should be populated on request)
    • +
    • 05: Digital goods
    • +
    • 06: Travel and event tickets, not shipped
    • +
    • 07: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethodIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional. The 3-letter string representing the merchant product code

    + +

    Possible Values:

    + +
      +
    • AIR: Airline
    • +
    • GEN: General Retail
    • +
    • DIG: Digital Goods
    • +
    • SVC: Services
    • +
    • RES: Restaurant
    • +
    • TRA: Travel
    • +
    • DSP: Cash Dispensing
    • +
    • REN: Car Rental
    • +
    • GAS: Fueld
    • +
    • LUX: Luxury Retail
    • +
    • ACC: Accommodation Retail
    • +
    • TBD: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryTimeframe + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the delivery timeframe

    + +

    Possible values:

    + +
      +
    • 01: Electronic delivery
    • +
    • 02: Same day shipping
    • +
    • 03: Overnight shipping
    • +
    • 04: Two or more day shipping
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryTimeframe: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryEmail + +
    +
    +
    +
    +
    +
    +

    Optional. For electronic delivery, email address to which the merchandise was delivered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryEmail: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + reorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise

    + +

    Possible values:

    + +
      +
    • 01: First time ordered
    • +
    • 02: Reordered
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var reorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date

    + +

    Possible values:

    + +
      +
    • 01: Merchandise available
    • +
    • 02: Future availability
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The purchase amount total for prepaid gift cards in major units

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCurrencyCode + +
    +
    +
    +
    +
    +
    +

    Optional. ISO 4217 currency code for the gift card purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCurrencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCount + +
    +
    +
    +
    +
    +
    +

    Optional. Total count of individual prepaid gift cards purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountAgeIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountAgeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountCreateDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountCreateDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.

    + +

    Possible values:

    + +
      +
    • 01: No change
    • +
    • 02: Changed during transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPwdChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating when the shipping address used for transaction was first used.

    + +

    Possible values:

    + +
      +
    • 01: This transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountDay + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountDay: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountYear + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last year.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addCardAttempts + +
    +
    +
    +
    +
    +
    +

    Optional. Number of add card attempts in the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addCardAttempts: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPurchases + +
    +
    +
    +
    +
    +
    +

    Optional. Number of purchases with this cardholder account during the previous six months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPurchases: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fraudActivity + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.

    + +

    Possible values:

    + +
      +
    • 01: No suspicious activity
    • +
    • 02: Suspicious activity observed
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fraudActivity: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingNameIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.

    + +

    Possible values:

    + +
      +
    • 01: Account name identical to shipping name
    • +
    • 02: Account name different than shipping name
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingNameIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.

    + +

    Possible values:

    + +
      +
    • 01: No account (guest checkout)
    • +
    • 02: During the transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentAccountAge + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountAge: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addressMatch + +
    +
    +
    +
    +
    +
    +

    Optional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addressMatch: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountID + +
    +
    +
    +
    +
    +
    +

    Optional. Additional cardholder account information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ipAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The IP address of the consumer. IPv4 and IPv6 are supported.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var ipAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + orderDescription + +
    +
    +
    +
    +
    +
    +

    Optional. Brief description of items purchased.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var orderDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAgent + +
    +
    +
    +
    +
    +
    +

    Optional. The exact content of the HTTP user agent header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAgent: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the type of authentication request.

    + +

    Possible values:

    + +
      +
    • 02: Recurring transaction
    • +
    • 03: Installment transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + installment + +
    +
    +
    +
    +
    +
    +

    Optional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var installment: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + purchaseDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var purchaseDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringEnd + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringEnd: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringFrequency + +
    +
    +
    +
    +
    +
    +

    Optional. Integer value indicating the minimum number of days between recurring authorizations. +A frequency of monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months (ex. 6 months = 168).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringFrequency: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sdkMaxTimeout + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var sdkMaxTimeout: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + workPhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var workPhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureClient.html b/6.23.1/Classes/BTThreeDSecureClient.html new file mode 100644 index 0000000000..3466bf3c2c --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureClient.html @@ -0,0 +1,854 @@ + + + + BTThreeDSecureClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureClient

+
+
+ +
@objcMembers
+public class BTThreeDSecureClient : NSObject
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTThreeDSecureClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Starts the 3DS flow using a BTThreeDSecureRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func startPaymentFlow(_ request: BTThreeDSecureRequest, completion: @escaping (BTThreeDSecureResult?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A BTThreeDSecureRequest request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the 3DS flow is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(prepareLookup:completion:)
    +public func prepareLookup(
    +    _ request: BTThreeDSecureRequest,
    +    completion: @escaping (String?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once with the client payload string or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + prepareLookup(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func prepareLookup(_ request: BTThreeDSecureRequest) async throws -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive a client payload string

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a challenge from a server side lookup call.

    +
    +

    Note

    + Majority of 3DS integrations do not need to use this method. Only for server-side 3DS integrations. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initializeChallengeWithLookupResponse:request:completion:)
    +public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest,
    +    completion: @escaping (BTThreeDSecureResult?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the payment flow is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + initializeChallenge(lookupResponse:request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initialize a challenge from a server side lookup call.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest
    +) async throws -> BTThreeDSecureResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTThreeDSecureResult

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureInfo.html b/6.23.1/Classes/BTThreeDSecureInfo.html new file mode 100644 index 0000000000..36d2e3534d --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureInfo.html @@ -0,0 +1,1004 @@ + + + + BTThreeDSecureInfo Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureInfo

+
+
+ +
@objcMembers
+public class BTThreeDSecureInfo : NSObject
+ +
+
+

Contains information about the 3D Secure status of a payment method

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + acsTransactionID + +
    +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cavv + +
    +
    +
    +
    +
    +
    +

    Cardholder authentication verification value or “CAVV” is the main encrypted message issuers and card networks use to verify authentication has occured. +Mastercard uses an “AVV” message which will also be returned in the cavv parameter.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cavv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dsTransactionID + +
    +
    +
    +
    +
    +
    +

    Directory Server Transaction ID is an ID used by the card brand’s 3DS directory server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + eciFlag + +
    +
    +
    +
    +
    +
    +

    The ecommerce indicator flag indicates the outcome of the 3DS authentication. +Possible values are 00, 01, and 02 for Mastercard 05, 06, and 07 for all other cardbrands.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var eciFlag: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + enrolled + +
    +
    +
    +
    +
    +
    +

    Indicates whether a card is enrolled in a 3D Secure program or not. Possible values:

    + +
      +
    • Y = Yes
    • +
    • N = No
    • +
    • U = Unavailable
    • +
    • B = Bypass
    • +
    • E = RequestFailure
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var enrolled: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + liabilityShifted + +
    +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift has occurred.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShifted: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift is possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShiftPossible: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paresStatus + +
    +
    +
    +
    +
    +
    +

    The Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:

    + +
      +
    • Y – Successful Authentication
    • +
    • N – Failed Authentication
    • +
    • U – Unable to Complete Authentication
    • +
    • A– Successful Stand-In Attempts Transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paresStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + status + +
    +
    +
    +
    +
    +
    +

    The 3D Secure status value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var status: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique identifier assigned to the 3D Secure authentication performed for this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureAuthenticationID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the 3DS Server to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureServerTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The 3DS version used in the authentication, example “1.0.2” or “2.1.0”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + wasVerified + +
    +
    +
    +
    +
    +
    +

    Indicates if the 3D Secure lookup was performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var wasVerified: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + xid + +
    +
    +
    +
    +
    +
    +

    Transaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message. +This field will no longer be used in 3DS 2 authentications.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var xid: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureLookup.html b/6.23.1/Classes/BTThreeDSecureLookup.html new file mode 100644 index 0000000000..4efa20ea55 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureLookup.html @@ -0,0 +1,688 @@ + + + + BTThreeDSecureLookup Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureLookup

+
+
+ +
@objcMembers
+public class BTThreeDSecureLookup : NSObject
+ +
+
+

The result of a 3DS lookup. +Contains liability shift and challenge information.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + paReq + +
    +
    +
    +
    +
    +
    +

    The “PAReq” or “Payment Authentication Request” is the encoded request message used to initiate authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paReq: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + md + +
    +
    +
    +
    +
    +
    +

    The unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var md: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + acsURL + +
    +
    +
    +
    +
    +
    +

    The URL which the customer will be redirected to for a 3DS Interface. +In 3DS 2, the presence of an acsURL indicates there is a challenge as it would otherwise frictionlessly complete without an acsURL.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + termURL + +
    +
    +
    +
    +
    +
    +

    The termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var termURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The full version string of the 3DS lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates a 3DS 2 lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isThreeDSecureVersion2: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionID + +
    +
    +
    +
    +
    +
    +

    This a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates that a 3DS challenge is required.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requiresUserAuthentication: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecurePostalAddress.html b/6.23.1/Classes/BTThreeDSecurePostalAddress.html new file mode 100644 index 0000000000..9f208d5608 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecurePostalAddress.html @@ -0,0 +1,752 @@ + + + + BTThreeDSecurePostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecurePostalAddress

+
+
+ +
@objcMembers
+public class BTThreeDSecurePostalAddress : NSObject
+ +
+
+

Postal address for 3D Secure flows

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional. Given name associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional. Surname associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 1 of the Address (eg. number, street, etc)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 2 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + line3 + +
    +
    +
    +
    +
    +
    +

    Optional. Line 3 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var line3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional. City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Optional. Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional. 2 letter country code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The phone number associated with the address

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureRenderType.html b/6.23.1/Classes/BTThreeDSecureRenderType.html new file mode 100644 index 0000000000..a722a0f23d --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureRenderType.html @@ -0,0 +1,645 @@ + + + + BTThreeDSecureRenderType Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRenderType

+
+
+ +
@objcMembers
+public class BTThreeDSecureRenderType : NSObject, OptionSet
+ +
+
+

Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + rawValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let rawValue: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(rawValue:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    required public init(rawValue: Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + otp + +
    +
    +
    +
    +
    +
    +

    OTP

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let otp: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let html: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleSelect + +
    +
    +
    +
    +
    +
    +

    Single select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let singleSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + multiSelect + +
    +
    +
    +
    +
    +
    +

    Multi Select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let multiSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + oob + +
    +
    +
    +
    +
    +
    +

    OOB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let oob: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureRequest.html b/6.23.1/Classes/BTThreeDSecureRequest.html new file mode 100644 index 0000000000..1dda2c88f0 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureRequest.html @@ -0,0 +1,1047 @@ + + + + BTThreeDSecureRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRequest

+
+
+ +
@objcMembers
+public class BTThreeDSecureRequest : NSObject
+ +
+
+

Used to initialize a 3D Secure payment flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    A nonce to be verified by ThreeDSecure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customFields + +
    +
    +
    +
    +
    +
    +

    Object where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customFields: [String : String]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: NSDecimalNumber?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountType + +
    +
    +
    +
    +
    +
    +

    Optional. The account type selected by the cardholder

    +
    +

    Note

    + Some cards can be processed using either a credit or debit account and cardholders have the option to choose which account to use. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountType: BTThreeDSecureAccountType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The billing address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mobilePhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The mobile phone number used for verification

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mobilePhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional. The email used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingMethod + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping method chosen for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethod: BTThreeDSecureShippingMethod
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + additionalInformation + +
    +
    +
    +
    +
    +
    +

    Optional. The additional information used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var additionalInformation: BTThreeDSecureAdditionalInformation?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + challengeRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an authentication challenge will be forced if possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var challengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exemptionRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an exemption to the authentication challenge will be requested.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var exemptionRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The exemption type to be requested. If an exemption is requested and the exemption’s conditions are satisfied, then it will be applied.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestedExemptionType: BTThreeDSecureRequestedExemptionType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataOnlyRequested + +
    +
    +
    +
    +
    +
    +

    Optional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score +for the issuer to determine whether to approve. If data only is not supported by the processor, a validation error will be raised. +Non-Mastercard cardholders will fallback to a normal 3DS flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dataOnlyRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAddChallenge + +
    +
    +
    +
    +
    +
    +

    Optional. An authentication created using this property should only be used for adding a payment method to the merchant’s vault and not for creating transactions.

    + +

    Defaults to .unspecified.

    + +

    If set to .challengeRequested, the authentication challenge will be requested from the issuer to confirm adding new card to the merchant’s vault. +If set to .notRequested the authentication challenge will not be requested from the issuer. +If set to .unspecified, when the amount is 0, the authentication challenge will be requested from the issuer. +If set to .unspecified, when the amount is greater than 0, the authentication challenge will not be requested from the issuer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @available(*, deprecated, renamed: "cardAddChallengeRequested", message: "Use the `cardAddChallengeRequested` boolean property instead")
    +public var cardAddChallenge: BTThreeDSecureCardAddChallenge { get set }
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. An authentication created using this flag should only be used for vaulting operations (creation of customers’ credit cards or payment methods) and not for creating transactions. +If set to true, a card-add challenge will be requested from the issuer. +If set to false, a card-add challenge will not be requested. +If the parameter is missing, a card-add challenge will only be requested for $0 amount.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardAddChallengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + v2UICustomization + +
    +
    +
    +
    +
    +
    +

    Optional. UI Customization for 3DS2 challenge views.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var v2UICustomization: BTThreeDSecureV2UICustomization?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + uiType + +
    +
    +
    +
    +
    +
    +

    Optional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.

    + +

    Defaults to .both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var uiType: BTThreeDSecureUIType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + renderTypes + +
    +
    +
    +
    +
    +
    +

    Optional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    +
    +

    Note

    + When using BTThreeDSecureUIType.both or BTThreeDSecureUIType.html, all BTThreeDSecureRenderType options must be set. +When using BTThreeDSecureUIType.native, all BTThreeDSecureRenderType options except .html must be set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var renderTypes: [BTThreeDSecureRenderType]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A delegate for receiving information about the ThreeDSecure payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var threeDSecureRequestDelegate: BTThreeDSecureRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureResult.html b/6.23.1/Classes/BTThreeDSecureResult.html new file mode 100644 index 0000000000..041ddee0cc --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureResult.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureResult

+
+
+ +
@objcMembers
+public class BTThreeDSecureResult : NSObject
+ +
+
+

The result of a 3D Secure payment flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + tokenizedCard + +
    +
    +
    +
    +
    +
    +

    The BTCardNonce resulting from the 3D Secure flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var tokenizedCard: BTCardNonce?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure lookup. Contains liability shift and challenge information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookup: BTThreeDSecureLookup?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    The error message when the 3D Secure flow is unsuccessful

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureV2BaseCustomization.html b/6.23.1/Classes/BTThreeDSecureV2BaseCustomization.html new file mode 100644 index 0000000000..dc96feefbd --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureV2BaseCustomization.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureV2BaseCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2BaseCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2BaseCustomization : NSObject
+ +
+
+

Base customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + textFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureV2ButtonCustomization.html b/6.23.1/Classes/BTThreeDSecureV2ButtonCustomization.html new file mode 100644 index 0000000000..2b914e02be --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureV2ButtonCustomization.html @@ -0,0 +1,548 @@ + + + + BTThreeDSecureV2ButtonCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2ButtonCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Button customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the button corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureV2LabelCustomization.html b/6.23.1/Classes/BTThreeDSecureV2LabelCustomization.html new file mode 100644 index 0000000000..78865cb2d7 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureV2LabelCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2LabelCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2LabelCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Label customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + headingTextColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureV2TextBoxCustomization.html b/6.23.1/Classes/BTThreeDSecureV2TextBoxCustomization.html new file mode 100644 index 0000000000..de3ca0f316 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureV2TextBoxCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2TextBoxCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2TextBoxCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Text box customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + borderWidth + +
    +
    +
    +
    +
    +
    +

    Width (integer value) of the text box border.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderWidth: Int { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + borderColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the text box corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureV2ToolbarCustomization.html b/6.23.1/Classes/BTThreeDSecureV2ToolbarCustomization.html new file mode 100644 index 0000000000..8f33ca73f5 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureV2ToolbarCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2ToolbarCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2ToolbarCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Toolbar customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headerText + +
    +
    +
    +
    +
    +
    +

    Text for the header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headerText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + buttonText + +
    +
    +
    +
    +
    +
    +

    Text for the button. For example, “Cancel”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var buttonText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTThreeDSecureV2UICustomization.html b/6.23.1/Classes/BTThreeDSecureV2UICustomization.html new file mode 100644 index 0000000000..db633e3c94 --- /dev/null +++ b/6.23.1/Classes/BTThreeDSecureV2UICustomization.html @@ -0,0 +1,611 @@ + + + + BTThreeDSecureV2UICustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2UICustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2UICustomization : NSObject
+ +
+
+

UI customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+ +
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTVenmoAccountNonce.html b/6.23.1/Classes/BTVenmoAccountNonce.html new file mode 100644 index 0000000000..fbe15a4615 --- /dev/null +++ b/6.23.1/Classes/BTVenmoAccountNonce.html @@ -0,0 +1,686 @@ + + + + BTVenmoAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoAccountNonce

+
+
+ +
@objcMembers
+public class BTVenmoAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a Venmo Account payment method

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    The email associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + externalID + +
    +
    +
    +
    +
    +
    +

    The external ID associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var externalID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    The first name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    The last name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    The phone number associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + username + +
    +
    +
    +
    +
    +
    +

    The username associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var username: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The primary billing address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The primary shipping address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTVenmoClient.html b/6.23.1/Classes/BTVenmoClient.html new file mode 100644 index 0000000000..a9f2a9bbb9 --- /dev/null +++ b/6.23.1/Classes/BTVenmoClient.html @@ -0,0 +1,697 @@ + + + + BTVenmoClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoClient

+
+
+ +
@objc
+public class BTVenmoClient : NSObject
+
extension BTVenmoClient: BTAppContextSwitchClient
+ +
+
+

Used to process Venmo payments

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVenmoRequest:completion:)
    +public func tokenize(_ request: BTVenmoRequest, completion: @escaping (BTVenmoAccountNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A Venmo request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked when app switch is complete or an error occurs. On success, you will receive +an instance of BTVenmoAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    +
    +

    Throws

    + An Error describing the failure. If the user cancels out of the flow, the error code will be .canceled. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTVenmoRequest) async throws -> BTVenmoAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTVenmoAccountNonce

    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoAppInstalled() + +
    +
    +
    +
    +
    +
    +

    Returns true if the proper Venmo app is installed and configured correctly, returns false otherwise.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func isVenmoAppInstalled() -> Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Switches to the App Store to download the Venmo application.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func openVenmoAppPageInAppStore()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTVenmoLineItem.html b/6.23.1/Classes/BTVenmoLineItem.html new file mode 100644 index 0000000000..7d6532384d --- /dev/null +++ b/6.23.1/Classes/BTVenmoLineItem.html @@ -0,0 +1,785 @@ + + + + BTVenmoLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoLineItem

+
+
+ +
@objcMembers
+public class BTVenmoLineItem : NSObject
+ +
+
+

A Venmo line item to be displayed in the Venmo Paysheet.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var quantity: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var kind: BTVenmoLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var url: URL?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTVenmoLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: Int, unitAmount: String, name: String, kind: BTVenmoLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Classes/BTVenmoRequest.html b/6.23.1/Classes/BTVenmoRequest.html new file mode 100644 index 0000000000..29b19e59e6 --- /dev/null +++ b/6.23.1/Classes/BTVenmoRequest.html @@ -0,0 +1,951 @@ + + + + BTVenmoRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoRequest

+
+
+ +
@objcMembers
+public class BTVenmoRequest : NSObject
+ +
+
+

A BTVenmoRequest specifies options that contribute to the Venmo flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + profileID + +
    +
    +
    +
    +
    +
    +

    Optional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the +Venmo app as a “Connected Merchant”. Venmo profile IDs can be found in the Braintree Control Panel. Leaving this nil will use the default Venmo profile.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var profileID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Whether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID. +Also, paymentMethodUsage on the BTVenmoRequest must be set to .multiUse.

    + +

    If this property is set to false, you can still vault the Venmo account on your server, provided that paymentMethodUsage is not set to .singleUse. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var vault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentMethodUsage + +
    +
    +
    +
    +
    +
    +

    If set to .multiUse, the Venmo payment will be authorized for future payments and can be vaulted. + If set to .singleUse, the Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentMethodUsage: BTVenmoPaymentMethodUsage
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s billing address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerBillingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s shipping address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerShippingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isFinalAmount + +
    +
    +
    +
    +
    +
    +

    Indicates whether the purchase amount is the final amount. +Removes “subject to change” notice in Venmo app paysheet UI. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isFinalAmount: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + subTotalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var subTotalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discountAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total discount amount applied on the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var discountAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total tax amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The grand total amount on the transaction that should be displayed on the paysheet.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var totalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional. The line items for this transaction. It can include up to 249 line items.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTVenmoLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fallbackToWeb + +
    +
    +
    +
    +
    +
    +

    Optional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.

    + +

    Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fallbackToWeb: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums.html b/6.23.1/Enums.html new file mode 100644 index 0000000000..d7bd99d814 --- /dev/null +++ b/6.23.1/Enums.html @@ -0,0 +1,1753 @@ + + + + Enumerations Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Enumerations

+

The following enumerations are available globally.

+ +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientTokenError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a client token.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + TokenizationKeyError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a Tokenization Key.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAPIClientError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNetwork + +
    +
    +
    +
    +
    +
    +

    Card type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTCardNetwork : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTHTTPError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with BTHTTP

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTJSONError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error returned from the native PayPal flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Mandate type for the SEPA Direct Debit request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTSEPADirectDebitMandateType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with American Express.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollectorError + +
    +
    +
    +
    +
    +
    +

    Error details associated with Braintree Data Collector.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Apple Pay.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Payment Flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The account type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureAccountType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The card add challenge request

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureCardAddChallenge : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    3D Secure requested exemption type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureRequestedExemptionType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The shipping method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureShippingMethod : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureUIType + +
    +
    +
    +
    +
    +
    +

    The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureUIType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button types that can be customized in 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureV2ButtonType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequestIntent + +
    +
    +
    +
    +
    +
    +

    Payment intent.

    +
    +

    Note

    + Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
    + +

    Capture payments later reference

    + +

    Create and process orders reference

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestIntent : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The call-to-action in the PayPal Checkout flow.

    +
    +

    Note

    + By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestUserAction : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with PayPal.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the UPC type of the line item.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemUPCType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLocaleCode + +
    +
    +
    +
    +
    +
    +

    A locale code to use for a transaction.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLocaleCode : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalPaymentType + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalPaymentType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestLandingPageType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAppSwitchError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo App Switch

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Usage type for the tokenized Venmo account

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoPaymentMethodUsage : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text and logo color option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingColor
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with PayPal Messaging.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Logo type option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingLogoType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Preferred message offer to display

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingOfferType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Message location within an application

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingPageType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text alignment option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingTextAlignment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTAPIClientError.html b/6.23.1/Enums/BTAPIClientError.html new file mode 100644 index 0000000000..c000b2cf6c --- /dev/null +++ b/6.23.1/Enums/BTAPIClientError.html @@ -0,0 +1,655 @@ + + + + BTAPIClientError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAPIClientError

+
+
+ +
public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Configuration fetch failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configurationUnavailable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notAuthorized + +
    +
    +
    +
    +
    +
    + +
      +
    1. Not authorized
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notAuthorized
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAPIClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedBase64Encoding + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed to base64 encode an authorizationFingerprint or tokenizationKey, when used as a cacheKey
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedBase64Encoding
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTAmericanExpressError.html b/6.23.1/Enums/BTAmericanExpressError.html new file mode 100644 index 0000000000..2bf9f73348 --- /dev/null +++ b/6.23.1/Enums/BTAmericanExpressError.html @@ -0,0 +1,622 @@ + + + + BTAmericanExpressError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAmericanExpressError

+
+
+ +
public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with American Express.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noRewardsData + +
    +
    +
    +
    +
    +
    + +
      +
    1. An API response was received with missing rewards data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noRewardsData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAmericanExpressClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTAnalyticsServiceError.html b/6.23.1/Enums/BTAnalyticsServiceError.html new file mode 100644 index 0000000000..3ed6567144 --- /dev/null +++ b/6.23.1/Enums/BTAnalyticsServiceError.html @@ -0,0 +1,556 @@ + + + + BTAnalyticsServiceError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAnalyticsServiceError

+
+
+ +
public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid API client
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTApplePayError.html b/6.23.1/Enums/BTApplePayError.html new file mode 100644 index 0000000000..d4aecb7ffc --- /dev/null +++ b/6.23.1/Enums/BTApplePayError.html @@ -0,0 +1,655 @@ + + + + BTApplePayError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTApplePayError

+
+
+ +
public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Apple Pay.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupported + +
    +
    +
    +
    +
    +
    + +
      +
    1. Apple Pay is disabled in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupported
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. No Apple Pay Card data was returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noApplePayCardsReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTApplePayCardNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTCardError.html b/6.23.1/Enums/BTCardError.html new file mode 100644 index 0000000000..6790de0b98 --- /dev/null +++ b/6.23.1/Enums/BTCardError.html @@ -0,0 +1,729 @@ + + + + BTCardError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardError

+
+
+ +
public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Customer provided invalid input
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case customerInputInvalid([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAlreadyExists(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Card already exists as a saved payment method
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cardAlreadyExists([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTCardError, rhs: BTCardError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTCardNetwork.html b/6.23.1/Enums/BTCardNetwork.html new file mode 100644 index 0000000000..644ef3ef45 --- /dev/null +++ b/6.23.1/Enums/BTCardNetwork.html @@ -0,0 +1,887 @@ + + + + BTCardNetwork Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardNetwork

+
+
+ +
@objc
+public enum BTCardNetwork : Int
+ +
+
+

Card type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    +

    Unknown card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + AMEX + +
    +
    +
    +
    +
    +
    +

    American Express

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case AMEX
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dinersClub + +
    +
    +
    +
    +
    +
    +

    Diners Club

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dinersClub
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discover + +
    +
    +
    +
    +
    +
    +

    Discover

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case discover
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + masterCard + +
    +
    +
    +
    +
    +
    +

    Mastercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case masterCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + visa + +
    +
    +
    +
    +
    +
    +

    Visa

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case visa
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + JCB + +
    +
    +
    +
    +
    +
    +

    JCB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case JCB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + laser + +
    +
    +
    +
    +
    +
    +

    Laser

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case laser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + maestro + +
    +
    +
    +
    +
    +
    +

    Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case maestro
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unionPay + +
    +
    +
    +
    +
    +
    +

    Union Pay

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unionPay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hiper + +
    +
    +
    +
    +
    +
    +

    Hiper

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hiper
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hipercard + +
    +
    +
    +
    +
    +
    +

    Hipercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hipercard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + solo + +
    +
    +
    +
    +
    +
    +

    Solo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case solo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + switch + +
    +
    +
    +
    +
    +
    +

    Switch

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `switch`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ukMaestro + +
    +
    +
    +
    +
    +
    +

    UK Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ukMaestro
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTClientTokenError.html b/6.23.1/Enums/BTClientTokenError.html new file mode 100644 index 0000000000..60b21d0e6a --- /dev/null +++ b/6.23.1/Enums/BTClientTokenError.html @@ -0,0 +1,688 @@ + + + + BTClientTokenError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTClientTokenError

+
+
+ +
public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a client token.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Authorization fingerprint was not present or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidConfigURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Config URL was missing or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidConfigURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidFormat(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid client token format
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidFormat(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupportedVersion + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unsupported client token version
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupportedVersion
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedDecoding(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed decoding from Base64 or UTF8
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedDecoding(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTDataCollectorError.html b/6.23.1/Enums/BTDataCollectorError.html new file mode 100644 index 0000000000..83fbd4b508 --- /dev/null +++ b/6.23.1/Enums/BTDataCollectorError.html @@ -0,0 +1,622 @@ + + + + BTDataCollectorError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTDataCollectorError

+
+
+ +
public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with Braintree Data Collector.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + encodingFailure + +
    +
    +
    +
    +
    +
    + +
      +
    1. The device data could not be encoded.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case encodingFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTHTTPError.html b/6.23.1/Enums/BTHTTPError.html new file mode 100644 index 0000000000..6377637d1a --- /dev/null +++ b/6.23.1/Enums/BTHTTPError.html @@ -0,0 +1,994 @@ + + + + BTHTTPError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTHTTPError

+
+
+ +
public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with BTHTTP

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error (reserved)
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The response had a Content-Type header that is not supported
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case responseContentTypeNotAcceptable([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 4xx error, e.g. 422, indicating a problem with the client’s request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + serverError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 5xx server error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serverError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBaseURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTHTTP instance was missing a base URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBaseURL([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rateLimitError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 429, indicating a rate limiting error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case rateLimitError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataNotFound + +
    +
    +
    +
    +
    +
    + +
      +
    1. The data object was unexpectedly nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dataNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + httpResponseInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The HTTP response could not be created or is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpResponseInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + urlStringInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL string is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case urlStringInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientApiURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The client API URL is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientApiURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The authorization fingerprint is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to convert Encodable type to [String: Any] dictionary
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serializationError(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated HTTPClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTHTTPError, rhs: BTHTTPError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTJSONError.html b/6.23.1/Enums/BTJSONError.html new file mode 100644 index 0000000000..f6fcc29b2a --- /dev/null +++ b/6.23.1/Enums/BTJSONError.html @@ -0,0 +1,621 @@ + + + + BTJSONError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTJSONError

+
+
+ +
public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. JSONSerialization failure
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + indexInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid index
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case indexInvalid(Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + keyInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid key
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case keyInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTLocalPaymentError.html b/6.23.1/Enums/BTLocalPaymentError.html new file mode 100644 index 0000000000..8a3bf02633 --- /dev/null +++ b/6.23.1/Enums/BTLocalPaymentError.html @@ -0,0 +1,928 @@ + + + + BTLocalPaymentError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentError

+
+
+ +
public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Payment Flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Local Payments are disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. UIApplication failed to switch to browser
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noAccountData + +
    +
    +
    +
    +
    +
    + +
      +
    1. No payment flow account data returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noAccountData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing nonce value in account response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingRedirectURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL found to display for payment authorization
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingRedirectURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL was returned via the ASWebAuthenticationSession completion callback
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTLocalPaymentError, rhs: BTLocalPaymentError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalError.html b/6.23.1/Enums/BTPayPalError.html new file mode 100644 index 0000000000..dfd96ce17c --- /dev/null +++ b/6.23.1/Enums/BTPayPalError.html @@ -0,0 +1,994 @@ + + + + BTPayPalError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalError

+
+
+ +
public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with PayPal.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. HTTP POST request returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpPostRequestError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The web approval URL, web redirect URL, PayPal native app approval URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The ASWebAuthenticationSession URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case asWebAuthenticationSessionURLInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURLAction + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL action is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURLAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTPayPalAccountNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The App Switch return URL did not contain the cancel or success path.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchReturnURLPathInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBAToken + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing BA Token for App Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBAToken
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalError, rhs: BTPayPalError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalLineItemKind.html b/6.23.1/Enums/BTPayPalLineItemKind.html new file mode 100644 index 0000000000..c380dc9b66 --- /dev/null +++ b/6.23.1/Enums/BTPayPalLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTPayPalLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLineItemKind

+
+
+ +
@objc
+public enum BTPayPalLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalLineItemUPCType.html b/6.23.1/Enums/BTPayPalLineItemUPCType.html new file mode 100644 index 0000000000..45d7dcba60 --- /dev/null +++ b/6.23.1/Enums/BTPayPalLineItemUPCType.html @@ -0,0 +1,677 @@ + + + + BTPayPalLineItemUPCType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLineItemUPCType

+
+
+ +
@objc
+public enum BTPayPalLineItemUPCType : Int
+ +
+
+

Use this option to specify the UPC type of the line item.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_A + +
    +
    +
    +
    +
    +
    +

    Upc Type A

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_A
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_B + +
    +
    +
    +
    +
    +
    +

    Upc Type B

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_B
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_C + +
    +
    +
    +
    +
    +
    +

    Upc Type C

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_C
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_D + +
    +
    +
    +
    +
    +
    +

    Upc Type D

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_D
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_E + +
    +
    +
    +
    +
    +
    +

    Upc Type E

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_E
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_2 + +
    +
    +
    +
    +
    +
    +

    Upc Type 2

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_2
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_5 + +
    +
    +
    +
    +
    +
    +

    Upc Type 5

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_5
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalLocaleCode.html b/6.23.1/Enums/BTPayPalLocaleCode.html new file mode 100644 index 0000000000..99ec0b2688 --- /dev/null +++ b/6.23.1/Enums/BTPayPalLocaleCode.html @@ -0,0 +1,1249 @@ + + + + BTPayPalLocaleCode Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLocaleCode

+
+
+ +
@objc
+public enum BTPayPalLocaleCode : Int
+ +
+
+

A locale code to use for a transaction.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + da_DK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case da_DK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + de_DE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case de_DE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_AU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_AU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_GB + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_GB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_US + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_US
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_ES + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_ES
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_CA + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_CA
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_FR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_FR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + id_ID + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case id_ID
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + it_IT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case it_IT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ja_JP + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ja_JP
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ko_KR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ko_KR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nl_NL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case nl_NL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + no_NO + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case no_NO
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pl_PL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pl_PL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_BR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_BR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_PT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_PT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ru_RU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ru_RU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sv_SE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sv_SE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + th_TH + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case th_TH
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + tr_TR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tr_TR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_CN + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_CN
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_HK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_HK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_TW + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_TW
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_XC
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalMessagingColor.html b/6.23.1/Enums/BTPayPalMessagingColor.html new file mode 100644 index 0000000000..557b779e57 --- /dev/null +++ b/6.23.1/Enums/BTPayPalMessagingColor.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingColor Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingColor

+
+
+ +
public enum BTPayPalMessagingColor
+ +
+
+

Text and logo color option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + black + +
    +
    +
    +
    +
    +
    +

    Black text with a color logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case black
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + white + +
    +
    +
    +
    +
    +
    +

    White text with a white logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case white
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monochrome + +
    +
    +
    +
    +
    +
    +

    Black text with a black logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case monochrome
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + grayscale + +
    +
    +
    +
    +
    +
    +

    Black text with a desaturated logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case grayscale
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalMessagingError.html b/6.23.1/Enums/BTPayPalMessagingError.html new file mode 100644 index 0000000000..07e5202304 --- /dev/null +++ b/6.23.1/Enums/BTPayPalMessagingError.html @@ -0,0 +1,594 @@ + + + + BTPayPalMessagingError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingError

+
+
+ +
public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with PayPal Messaging.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalMessagingLogoType.html b/6.23.1/Enums/BTPayPalMessagingLogoType.html new file mode 100644 index 0000000000..585af6fb93 --- /dev/null +++ b/6.23.1/Enums/BTPayPalMessagingLogoType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingLogoType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingLogoType

+
+
+ +
public enum BTPayPalMessagingLogoType
+ +
+
+

Logo type option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + inline + +
    +
    +
    +
    +
    +
    +

    PayPal logo positioned inline within the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case inline
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + primary + +
    +
    +
    +
    +
    +
    +

    Primary logo including both the PayPal monogram and logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case primary
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + alternative + +
    +
    +
    +
    +
    +
    +

    Alternative logo including just the PayPal monogram

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case alternative
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    “PayPal” as bold text inline with the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalMessagingOfferType.html b/6.23.1/Enums/BTPayPalMessagingOfferType.html new file mode 100644 index 0000000000..a7a059d242 --- /dev/null +++ b/6.23.1/Enums/BTPayPalMessagingOfferType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingOfferType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingOfferType

+
+
+ +
public enum BTPayPalMessagingOfferType
+ +
+
+

Preferred message offer to display

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + payLaterShortTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later short term installment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterShortTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterLongTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later long term installments

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterLongTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterPayInOne + +
    +
    +
    +
    +
    +
    +

    Pay Later deferred payment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterPayInOne
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    PayPal Credit No Interest

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalCreditNoInterest
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalMessagingPageType.html b/6.23.1/Enums/BTPayPalMessagingPageType.html new file mode 100644 index 0000000000..edb325201e --- /dev/null +++ b/6.23.1/Enums/BTPayPalMessagingPageType.html @@ -0,0 +1,621 @@ + + + + BTPayPalMessagingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingPageType

+
+
+ +
public enum BTPayPalMessagingPageType
+ +
+
+

Message location within an application

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + home + +
    +
    +
    +
    +
    +
    +

    Home view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case home
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productDetails + +
    +
    +
    +
    +
    +
    +

    Individual product details view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case productDetails
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cart + +
    +
    +
    +
    +
    +
    +

    Shopping cart view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + miniCart + +
    +
    +
    +
    +
    +
    +

    Popover shopping cart view that covers part of the view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case miniCart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + searchResults + +
    +
    +
    +
    +
    +
    +

    Search results

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case searchResults
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalMessagingTextAlignment.html b/6.23.1/Enums/BTPayPalMessagingTextAlignment.html new file mode 100644 index 0000000000..fe3d5e216a --- /dev/null +++ b/6.23.1/Enums/BTPayPalMessagingTextAlignment.html @@ -0,0 +1,531 @@ + + + + BTPayPalMessagingTextAlignment Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingTextAlignment

+
+
+ +
public enum BTPayPalMessagingTextAlignment
+ +
+
+

Text alignment option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + left + +
    +
    +
    +
    +
    +
    +

    Text aligned to the left

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case left
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + center + +
    +
    +
    +
    +
    +
    +

    Text aligned to the center

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case center
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + right + +
    +
    +
    +
    +
    +
    +

    Text aligned to the right

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case right
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalNativeCheckoutError.html b/6.23.1/Enums/BTPayPalNativeCheckoutError.html new file mode 100644 index 0000000000..1c10f1671c --- /dev/null +++ b/6.23.1/Enums/BTPayPalNativeCheckoutError.html @@ -0,0 +1,994 @@ + + + + BTPayPalNativeCheckoutError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutError

+
+
+ +
public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error returned from the native PayPal flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidRequest + +
    +
    +
    +
    +
    +
    + +
      +
    1. Request is not of type BTPayPalNativeCheckoutRequest or BTPayPalNativeVaultRequest
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payPalNotEnabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is not enabled for this merchant in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalNotEnabled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidEnvironment + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid environment identifier found in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidEnvironment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to create PayPal order
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case orderCreationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkoutSDKFailed(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPalCheckout SDK returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkoutSDKFailed(PayPalCheckout.ErrorInfo)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Tokenization with the Braintree Gateway failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tokenizationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to parse tokenization result
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case parsingTokenizationResultFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidJSONResponse + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid JSON response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidJSONResponse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalNativeCheckoutClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing return url in approval data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalNativeCheckoutError, rhs: BTPayPalNativeCheckoutError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalPaymentType.html b/6.23.1/Enums/BTPayPalPaymentType.html new file mode 100644 index 0000000000..6dc219afd8 --- /dev/null +++ b/6.23.1/Enums/BTPayPalPaymentType.html @@ -0,0 +1,496 @@ + + + + BTPayPalPaymentType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalPaymentType

+
+
+ +
@objc
+public enum BTPayPalPaymentType : Int
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Vault

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case vault
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalRequestIntent.html b/6.23.1/Enums/BTPayPalRequestIntent.html new file mode 100644 index 0000000000..4b9760ba7c --- /dev/null +++ b/6.23.1/Enums/BTPayPalRequestIntent.html @@ -0,0 +1,565 @@ + + + + BTPayPalRequestIntent Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequestIntent

+
+
+ +
@objc
+public enum BTPayPalRequestIntent : Int
+ +
+
+

Payment intent.

+
+

Note

+ Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
+ +

Capture payments later reference

+ +

Create and process orders reference

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + authorize + +
    +
    +
    +
    +
    +
    +

    Authorize

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authorize
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sale + +
    +
    +
    +
    +
    +
    +

    Sale

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sale
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + order + +
    +
    +
    +
    +
    +
    +

    Order

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case order
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + stringValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var stringValue: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalRequestLandingPageType.html b/6.23.1/Enums/BTPayPalRequestLandingPageType.html new file mode 100644 index 0000000000..fb6011ee26 --- /dev/null +++ b/6.23.1/Enums/BTPayPalRequestLandingPageType.html @@ -0,0 +1,527 @@ + + + + BTPayPalRequestLandingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequestLandingPageType

+
+
+ +
@objc
+public enum BTPayPalRequestLandingPageType : Int
+ +
+
+

Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + login + +
    +
    +
    +
    +
    +
    +

    Login

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case login
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billing + +
    +
    +
    +
    +
    +
    +

    Billing

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case billing
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTPayPalRequestUserAction.html b/6.23.1/Enums/BTPayPalRequestUserAction.html new file mode 100644 index 0000000000..ed05584275 --- /dev/null +++ b/6.23.1/Enums/BTPayPalRequestUserAction.html @@ -0,0 +1,504 @@ + + + + BTPayPalRequestUserAction Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequestUserAction

+
+
+ +
@objc
+public enum BTPayPalRequestUserAction : Int
+ +
+
+

The call-to-action in the PayPal Checkout flow.

+
+

Note

+ By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payNow + +
    +
    +
    +
    +
    +
    +

    Pay Now

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payNow
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTSEPADirectDebitError.html b/6.23.1/Enums/BTSEPADirectDebitError.html new file mode 100644 index 0000000000..82694102bf --- /dev/null +++ b/6.23.1/Enums/BTSEPADirectDebitError.html @@ -0,0 +1,820 @@ + + + + BTSEPADirectDebitError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitError

+
+
+ +
public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with SEPA Direct Debit.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webFlowCanceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. SEPA Direct Debit flow was canceled by the user.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webFlowCanceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL returned from the web flow was invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultReturnedNil + +
    +
    +
    +
    +
    +
    + +
      +
    1. The result of the create mandate request was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultReturnedNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + approvalURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The approval URL is invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case approvalURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The web authentication session result was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authenticationResultNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTSEPADirectDebitNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTSEPADirectDebitClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTSEPADirectDebitMandateType.html b/6.23.1/Enums/BTSEPADirectDebitMandateType.html new file mode 100644 index 0000000000..05272a8cd4 --- /dev/null +++ b/6.23.1/Enums/BTSEPADirectDebitMandateType.html @@ -0,0 +1,495 @@ + + + + BTSEPADirectDebitMandateType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitMandateType

+
+
+ +
@objc
+public enum BTSEPADirectDebitMandateType : Int
+ +
+
+

Mandate type for the SEPA Direct Debit request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + oneOff + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case oneOff
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurrent + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case recurrent
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTShopperInsightsError.html b/6.23.1/Enums/BTShopperInsightsError.html new file mode 100644 index 0000000000..c78384b5ef --- /dev/null +++ b/6.23.1/Enums/BTShopperInsightsError.html @@ -0,0 +1,588 @@ + + + + BTShopperInsightsError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsError

+
+
+ +
public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + emptyBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A nil body was returned from the payment method request and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case emptyBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAuthorization + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid authorization type
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureAccountType.html b/6.23.1/Enums/BTThreeDSecureAccountType.html new file mode 100644 index 0000000000..f4713db7b4 --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureAccountType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureAccountType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureAccountType

+
+
+ +
@objc
+public enum BTThreeDSecureAccountType : Int
+ +
+
+

The account type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureCardAddChallenge.html b/6.23.1/Enums/BTThreeDSecureCardAddChallenge.html new file mode 100644 index 0000000000..ebf97bdabf --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureCardAddChallenge.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureCardAddChallenge Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureCardAddChallenge

+
+
+ +
@objc
+public enum BTThreeDSecureCardAddChallenge : Int
+ +
+
+

The card add challenge request

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requested + +
    +
    +
    +
    +
    +
    +

    Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case requested
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notRequested + +
    +
    +
    +
    +
    +
    +

    Not Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notRequested
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureError.html b/6.23.1/Enums/BTThreeDSecureError.html new file mode 100644 index 0000000000..3c8c94f889 --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureError.html @@ -0,0 +1,894 @@ + + + + BTThreeDSecureError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureError

+
+
+ +
public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedLookup(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the backend card lookup phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedLookup([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the user-facing authentication phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedAuthentication(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + configuration(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was not configured correctly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configuration(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. User canceled the 3DS 2 flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTAPIClient was invalid or missing
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTThreeDSecureClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exceededTimeoutLimit + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was idle and exceeded timout limit
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case exceededTimeoutLimit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTThreeDSecureError, rhs: BTThreeDSecureError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureRequestedExemptionType.html b/6.23.1/Enums/BTThreeDSecureRequestedExemptionType.html new file mode 100644 index 0000000000..fdfe36bc5a --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureRequestedExemptionType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureRequestedExemptionType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRequestedExemptionType

+
+
+ +
@objc
+public enum BTThreeDSecureRequestedExemptionType : Int
+ +
+
+

3D Secure requested exemption type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lowValue + +
    +
    +
    +
    +
    +
    +

    Low value

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case lowValue
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + secureCorporate + +
    +
    +
    +
    +
    +
    +

    Secure corporate

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case secureCorporate
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + trustedBeneficiary + +
    +
    +
    +
    +
    +
    +

    Trusted beneficiary

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case trustedBeneficiary
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Transaction risk analysis

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case transactionRiskAnalysis
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureShippingMethod.html b/6.23.1/Enums/BTThreeDSecureShippingMethod.html new file mode 100644 index 0000000000..985709e94f --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureShippingMethod.html @@ -0,0 +1,647 @@ + + + + BTThreeDSecureShippingMethod Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureShippingMethod

+
+
+ +
@objc
+public enum BTThreeDSecureShippingMethod : Int
+ +
+
+

The shipping method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sameDay + +
    +
    +
    +
    +
    +
    +

    Same Day

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sameDay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expedited + +
    +
    +
    +
    +
    +
    +

    Expedited

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case expedited
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + priority + +
    +
    +
    +
    +
    +
    +

    Priority

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case priority
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ground + +
    +
    +
    +
    +
    +
    +

    Ground

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ground
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + electronicDelivery + +
    +
    +
    +
    +
    +
    +

    Electronic Delivery

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case electronicDelivery
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shipToStore + +
    +
    +
    +
    +
    +
    +

    Ship to Store

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case shipToStore
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureUIType.html b/6.23.1/Enums/BTThreeDSecureUIType.html new file mode 100644 index 0000000000..10af675aa1 --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureUIType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureUIType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureUIType

+
+
+ +
@objc
+public enum BTThreeDSecureUIType : Int
+ +
+
+

The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + native + +
    +
    +
    +
    +
    +
    +

    Native

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case native
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case html
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + both + +
    +
    +
    +
    +
    +
    +

    Both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case both
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTThreeDSecureV2ButtonType.html b/6.23.1/Enums/BTThreeDSecureV2ButtonType.html new file mode 100644 index 0000000000..e54e80f0ec --- /dev/null +++ b/6.23.1/Enums/BTThreeDSecureV2ButtonType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureV2ButtonType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2ButtonType

+
+
+ +
@objc
+public enum BTThreeDSecureV2ButtonType : Int
+ +
+
+

Button types that can be customized in 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + verify + +
    +
    +
    +
    +
    +
    +

    Verify button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case verify
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + continue + +
    +
    +
    +
    +
    +
    +

    Continue button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `continue`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + next + +
    +
    +
    +
    +
    +
    +

    Next button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case next
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cancel + +
    +
    +
    +
    +
    +
    +

    Cancel button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cancel
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resend + +
    +
    +
    +
    +
    +
    +

    Resend button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resend
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTVenmoAppSwitchError.html b/6.23.1/Enums/BTVenmoAppSwitchError.html new file mode 100644 index 0000000000..5248c84938 --- /dev/null +++ b/6.23.1/Enums/BTVenmoAppSwitchError.html @@ -0,0 +1,556 @@ + + + + BTVenmoAppSwitchError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoAppSwitchError

+
+
+ +
public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo App Switch

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + returnURLError(_:_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The error returned from the Venmo return URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case returnURLError(Int, String?)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTVenmoError.html b/6.23.1/Enums/BTVenmoError.html new file mode 100644 index 0000000000..51c9e084b5 --- /dev/null +++ b/6.23.1/Enums/BTVenmoError.html @@ -0,0 +1,919 @@ + + + + BTVenmoError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoError

+
+
+ +
public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Venmo is not enabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appNotAvailable + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo app is not installed or configured for app Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appNotAvailable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Bundle display name is nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case bundleDisplayNameMissing
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidReturnURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Return URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidReturnURL(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. No body was returned from the request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Invalid request URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Enriched Customer Data is disabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case enrichedCustomerDataDisabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. One or more values in redirect URL are invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURLParameter
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTVenmoLineItemKind.html b/6.23.1/Enums/BTVenmoLineItemKind.html new file mode 100644 index 0000000000..834faf546d --- /dev/null +++ b/6.23.1/Enums/BTVenmoLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTVenmoLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoLineItemKind

+
+
+ +
@objc
+public enum BTVenmoLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/BTVenmoPaymentMethodUsage.html b/6.23.1/Enums/BTVenmoPaymentMethodUsage.html new file mode 100644 index 0000000000..0ad28d2ba2 --- /dev/null +++ b/6.23.1/Enums/BTVenmoPaymentMethodUsage.html @@ -0,0 +1,497 @@ + + + + BTVenmoPaymentMethodUsage Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoPaymentMethodUsage

+
+
+ +
@objc
+public enum BTVenmoPaymentMethodUsage : Int
+ +
+
+

Usage type for the tokenized Venmo account

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + multiUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for future payments and can be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case multiUse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case singleUse
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Enums/TokenizationKeyError.html b/6.23.1/Enums/TokenizationKeyError.html new file mode 100644 index 0000000000..7f26e43d42 --- /dev/null +++ b/6.23.1/Enums/TokenizationKeyError.html @@ -0,0 +1,556 @@ + + + + TokenizationKeyError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

TokenizationKeyError

+
+
+ +
public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a Tokenization Key.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The tokenization key provided was invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Extensions.html b/6.23.1/Extensions.html new file mode 100644 index 0000000000..efd0f5c1ec --- /dev/null +++ b/6.23.1/Extensions.html @@ -0,0 +1,493 @@ + + + + Extensions Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Extensions

+

The following extensions are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + UIApplication + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    extension UIApplication: URLOpener
    + +
    +
    +
    +
    +
  • +
+
+
+
+ + +
+ +

CardinalValidationDelegate Protocol Conformance +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Extensions/BTThreeDSecureV2Provider.html b/6.23.1/Extensions/BTThreeDSecureV2Provider.html new file mode 100644 index 0000000000..ce17d8975e --- /dev/null +++ b/6.23.1/Extensions/BTThreeDSecureV2Provider.html @@ -0,0 +1,468 @@ + + + + BTThreeDSecureV2Provider Extension Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2Provider

+
+
+ +
extension BTThreeDSecureV2Provider: CardinalValidationDelegate
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Protocols.html b/6.23.1/Protocols.html new file mode 100644 index 0000000000..9446bb3bfc --- /dev/null +++ b/6.23.1/Protocols.html @@ -0,0 +1,523 @@ + + + + Protocols Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Protocols

+

The following protocols are available globally.

+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Protocols/BTLocalPaymentRequestDelegate.html b/6.23.1/Protocols/BTLocalPaymentRequestDelegate.html new file mode 100644 index 0000000000..cc2f50f9cd --- /dev/null +++ b/6.23.1/Protocols/BTLocalPaymentRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTLocalPaymentRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentRequestDelegate

+
+
+ +
@objc
+public protocol BTLocalPaymentRequestDelegate
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Required delegate method which returns the payment ID before the flow starts.

    + +

    Use this to do any preprocessing and setup for webhooks. Use the start() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func localPaymentStarted(_ request: BTLocalPaymentRequest, paymentID: String, start: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Protocols/BTPayPalMessagingDelegate.html b/6.23.1/Protocols/BTPayPalMessagingDelegate.html new file mode 100644 index 0000000000..200a046994 --- /dev/null +++ b/6.23.1/Protocols/BTPayPalMessagingDelegate.html @@ -0,0 +1,591 @@ + + + + BTPayPalMessagingDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingDelegate

+
+
+ +
public protocol BTPayPalMessagingDelegate : AnyObject
+ +
+
+

Protocol for BTPayPalMessagingView events

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/Protocols/BTThreeDSecureRequestDelegate.html b/6.23.1/Protocols/BTThreeDSecureRequestDelegate.html new file mode 100644 index 0000000000..b8c754459f --- /dev/null +++ b/6.23.1/Protocols/BTThreeDSecureRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTThreeDSecureRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRequestDelegate

+
+
+ +
@objc
+public protocol BTThreeDSecureRequestDelegate
+ +
+
+

Protocol for ThreeDSecure Request flow

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Required delegate method which returns the ThreeDSecure lookup result before the flow continues. + Use this to do any UI preparation or custom lookup result handling. Use the next() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func onLookupComplete(_ request: BTThreeDSecureRequest, lookupResult: BTThreeDSecureResult, next: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Structs.html b/6.23.1/Structs.html new file mode 100644 index 0000000000..c5fd6abcdc --- /dev/null +++ b/6.23.1/Structs.html @@ -0,0 +1,570 @@ + + + + Structures Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Structures

+

The following structures are available globally.

+ +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTPayPalMessagingRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Buyer data required to use the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + Phone + +
    +
    +
    +
    +
    +
    +

    Buyer’s phone number details for use with the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct Phone : Encodable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A summary of the buyer’s recommended payment methods.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsResult
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Structs/BTPayPalMessagingRequest.html b/6.23.1/Structs/BTPayPalMessagingRequest.html new file mode 100644 index 0000000000..1159397918 --- /dev/null +++ b/6.23.1/Structs/BTPayPalMessagingRequest.html @@ -0,0 +1,572 @@ + + + + BTPayPalMessagingRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingRequest

+
+
+ +
public struct BTPayPalMessagingRequest
+ +
+
+

Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTPayPalMessaging

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: Double? = nil,
    +    pageType: BTPayPalMessagingPageType? = nil,
    +    offerType: BTPayPalMessagingOfferType? = nil,
    +    buyerCountry: String? = nil,
    +    logoType: BTPayPalMessagingLogoType = .inline,
    +    textAlignment: BTPayPalMessagingTextAlignment = .right,
    +    color: BTPayPalMessagingColor = .black
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + amount + + +
    +

    Price expressed in cents amount based on the current context (i.e. individual product price vs total cart price)

    +
    +
    + + pageType + + +
    +

    Message screen location (e.g. product, cart, home)

    +
    +
    + + offerType + + +
    +

    Preferred message offer to display

    +
    +
    + + buyerCountry + + +
    +

    Consumer’s country (Integrations must be approved by PayPal to use this option)

    +
    +
    + + logoType + + +
    +

    Logo type option for a PayPal Message. Defaults to .inline

    +
    +
    + + textAlignment + + +
    +

    Text alignment option for a PayPal Message. Defaults to .right

    +
    +
    + + color + + +
    +

    Text and logo color option for a PayPal Message. Defaults to .black

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Structs/BTShopperInsightsRequest.html b/6.23.1/Structs/BTShopperInsightsRequest.html new file mode 100644 index 0000000000..b26c3c68d1 --- /dev/null +++ b/6.23.1/Structs/BTShopperInsightsRequest.html @@ -0,0 +1,624 @@ + + + + BTShopperInsightsRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsRequest

+
+
+ +
public struct BTShopperInsightsRequest
+ +
+
+

Buyer data required to use the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(email:phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String, phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(email:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Structs/BTShopperInsightsResult.html b/6.23.1/Structs/BTShopperInsightsResult.html new file mode 100644 index 0000000000..6723e062bc --- /dev/null +++ b/6.23.1/Structs/BTShopperInsightsResult.html @@ -0,0 +1,531 @@ + + + + BTShopperInsightsResult Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsResult

+
+
+ +
public struct BTShopperInsightsResult
+ +
+
+

A summary of the buyer’s recommended payment methods.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + isPayPalRecommended + +
    +
    +
    +
    +
    +
    +

    If true, display the PayPal button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isPayPalRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoRecommended + +
    +
    +
    +
    +
    +
    +

    If true, dislpay the Venmo button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isVenmoRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isEligibleInPayPalNetwork: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/Structs/Phone.html b/6.23.1/Structs/Phone.html new file mode 100644 index 0000000000..8965738018 --- /dev/null +++ b/6.23.1/Structs/Phone.html @@ -0,0 +1,507 @@ + + + + Phone Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Phone

+
+
+ +
public struct Phone : Encodable
+ +
+
+

Buyer’s phone number details for use with the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest.Phone.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(countryCode: String, nationalNumber: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + countryCode + + +
    +

    The buyer’s country code prefix to the national telephone number. An identifier for a specific country. Must not contain special characters.

    +
    +
    + + nationalNumber + + +
    +

    The buyer’s national phone number. Must not contain special characters.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/badge.svg b/6.23.1/badge.svg new file mode 100644 index 0000000000..a096feca83 --- /dev/null +++ b/6.23.1/badge.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + documentation + + + documentation + + + 100% + + + 100% + + + diff --git a/6.23.1/css/highlight.css b/6.23.1/css/highlight.css new file mode 100644 index 0000000000..c170357ce7 --- /dev/null +++ b/6.23.1/css/highlight.css @@ -0,0 +1,202 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +/* Credit to https://gist.github.com/wataru420/2048287 */ +.highlight .c { + color: #999988; + font-style: italic; } + +.highlight .err { + color: #a61717; + background-color: #e3d2d2; } + +.highlight .k { + color: #000000; + font-weight: bold; } + +.highlight .o { + color: #000000; + font-weight: bold; } + +.highlight .cm { + color: #999988; + font-style: italic; } + +.highlight .cp { + color: #999999; + font-weight: bold; } + +.highlight .c1 { + color: #999988; + font-style: italic; } + +.highlight .cs { + color: #999999; + font-weight: bold; + font-style: italic; } + +.highlight .gd { + color: #000000; + background-color: #ffdddd; } + +.highlight .gd .x { + color: #000000; + background-color: #ffaaaa; } + +.highlight .ge { + color: #000000; + font-style: italic; } + +.highlight .gr { + color: #aa0000; } + +.highlight .gh { + color: #999999; } + +.highlight .gi { + color: #000000; + background-color: #ddffdd; } + +.highlight .gi .x { + color: #000000; + background-color: #aaffaa; } + +.highlight .go { + color: #888888; } + +.highlight .gp { + color: #555555; } + +.highlight .gs { + font-weight: bold; } + +.highlight .gu { + color: #aaaaaa; } + +.highlight .gt { + color: #aa0000; } + +.highlight .kc { + color: #000000; + font-weight: bold; } + +.highlight .kd { + color: #000000; + font-weight: bold; } + +.highlight .kp { + color: #000000; + font-weight: bold; } + +.highlight .kr { + color: #000000; + font-weight: bold; } + +.highlight .kt { + color: #445588; } + +.highlight .m { + color: #009999; } + +.highlight .s { + color: #d14; } + +.highlight .na { + color: #008080; } + +.highlight .nb { + color: #0086B3; } + +.highlight .nc { + color: #445588; + font-weight: bold; } + +.highlight .no { + color: #008080; } + +.highlight .ni { + color: #800080; } + +.highlight .ne { + color: #990000; + font-weight: bold; } + +.highlight .nf { + color: #990000; } + +.highlight .nn { + color: #555555; } + +.highlight .nt { + color: #000080; } + +.highlight .nv { + color: #008080; } + +.highlight .ow { + color: #000000; + font-weight: bold; } + +.highlight .w { + color: #bbbbbb; } + +.highlight .mf { + color: #009999; } + +.highlight .mh { + color: #009999; } + +.highlight .mi { + color: #009999; } + +.highlight .mo { + color: #009999; } + +.highlight .sb { + color: #d14; } + +.highlight .sc { + color: #d14; } + +.highlight .sd { + color: #d14; } + +.highlight .s2 { + color: #d14; } + +.highlight .se { + color: #d14; } + +.highlight .sh { + color: #d14; } + +.highlight .si { + color: #d14; } + +.highlight .sx { + color: #d14; } + +.highlight .sr { + color: #009926; } + +.highlight .s1 { + color: #d14; } + +.highlight .ss { + color: #990073; } + +.highlight .bp { + color: #999999; } + +.highlight .vc { + color: #008080; } + +.highlight .vg { + color: #008080; } + +.highlight .vi { + color: #008080; } + +.highlight .il { + color: #009999; } diff --git a/6.23.1/css/jazzy.css b/6.23.1/css/jazzy.css new file mode 100644 index 0000000000..9d4b08b8c3 --- /dev/null +++ b/6.23.1/css/jazzy.css @@ -0,0 +1,405 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +*, *:before, *:after { + box-sizing: inherit; } + +body { + margin: 0; + background: #fff; + color: #333; + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + letter-spacing: .2px; + -webkit-font-smoothing: antialiased; + box-sizing: border-box; } + +h1 { + font-size: 2rem; + font-weight: 700; + margin: 1.275em 0 0.6em; } + +h2 { + font-size: 1.75rem; + font-weight: 700; + margin: 1.275em 0 0.3em; } + +h3 { + font-size: 1.5rem; + font-weight: 700; + margin: 1em 0 0.3em; } + +h4 { + font-size: 1.25rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h5 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h6 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; + color: #777; } + +p { + margin: 0 0 1em; } + +ul, ol { + padding: 0 0 0 2em; + margin: 0 0 0.85em; } + +blockquote { + margin: 0 0 0.85em; + padding: 0 15px; + color: #858585; + border-left: 4px solid #e5e5e5; } + +img { + max-width: 100%; } + +a { + color: #4183c4; + text-decoration: none; } + a:hover, a:focus { + outline: 0; + text-decoration: underline; } + a.discouraged { + text-decoration: line-through; } + a.discouraged:hover, a.discouraged:focus { + text-decoration: underline line-through; } + +table { + background: #fff; + width: 100%; + border-collapse: collapse; + border-spacing: 0; + overflow: auto; + margin: 0 0 0.85em; } + +tr:nth-child(2n) { + background-color: #fbfbfb; } + +th, td { + padding: 6px 13px; + border: 1px solid #ddd; } + +hr { + height: 1px; + border: none; + background-color: #ddd; } + +pre { + margin: 0 0 1.275em; + padding: .85em 1em; + overflow: auto; + background: #f7f7f7; + font-size: .85em; + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +code { + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +.item-container p > code, .item-container li > code, .top-matter p > code, .top-matter li > code { + background: #f7f7f7; + padding: .2em; } + .item-container p > code:before, .item-container p > code:after, .item-container li > code:before, .item-container li > code:after, .top-matter p > code:before, .top-matter p > code:after, .top-matter li > code:before, .top-matter li > code:after { + letter-spacing: -.2em; + content: "\00a0"; } + +pre code { + padding: 0; + white-space: pre; } + +.content-wrapper { + display: flex; + flex-direction: column; } + @media (min-width: 768px) { + .content-wrapper { + flex-direction: row; } } +.header { + display: flex; + padding: 8px; + font-size: 0.875em; + background: #444; + color: #999; } + +.header-col { + margin: 0; + padding: 0 8px; } + +.header-col--primary { + flex: 1; } + +.header-link { + color: #fff; } + +.header-icon { + padding-right: 2px; + vertical-align: -3px; + height: 16px; } + +.breadcrumbs { + font-size: 0.875em; + padding: 8px 16px; + margin: 0; + background: #fbfbfb; + border-bottom: 1px solid #ddd; } + +.carat { + height: 10px; + margin: 0 5px; } + +.navigation { + order: 2; } + @media (min-width: 768px) { + .navigation { + order: 1; + width: 25%; + max-width: 300px; + padding-bottom: 64px; + overflow: hidden; + word-wrap: normal; + background: #fbfbfb; + border-right: 1px solid #ddd; } } +.nav-groups { + list-style-type: none; + padding-left: 0; } + +.nav-group-name { + border-bottom: 1px solid #ddd; + padding: 8px 0 8px 16px; } + +.nav-group-name-link { + color: #333; } + +.nav-group-tasks { + margin: 8px 0; + padding: 0 0 0 8px; } + +.nav-group-task { + font-size: 1em; + list-style-type: none; + white-space: nowrap; } + +.nav-group-task-link { + color: #808080; } + +.main-content { + order: 1; } + @media (min-width: 768px) { + .main-content { + order: 2; + flex: 1; + padding-bottom: 60px; } } +.section { + padding: 0 32px; + border-bottom: 1px solid #ddd; } + +.section-content { + max-width: 834px; + margin: 0 auto; + padding: 16px 0; } + +.section-name { + color: #666; + display: block; } + .section-name p { + margin-bottom: inherit; } + +.declaration .highlight { + overflow-x: initial; + padding: 8px 0; + margin: 0; + background-color: transparent; + border: none; } + +.task-group-section { + border-top: 1px solid #ddd; } + +.task-group { + padding-top: 0px; } + +.task-name-container a[name]:before { + content: ""; + display: block; } + +.section-name-container { + position: relative; } + .section-name-container .section-name-link { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + margin-bottom: 0; } + .section-name-container .section-name { + position: relative; + pointer-events: none; + z-index: 1; } + .section-name-container .section-name a { + pointer-events: auto; } + +.item-container { + padding: 0; } + +.item { + padding-top: 8px; + width: 100%; + list-style-type: none; } + .item a[name]:before { + content: ""; + display: block; } + .item .token, .item .direct-link { + display: inline-block; + text-indent: -20px; + padding-left: 3px; + margin-left: 20px; + font-size: 1rem; } + +.declaration-note { + font-size: .85em; + color: #808080; + font-style: italic; } + +.pointer-container { + border-bottom: 1px solid #ddd; + left: -23px; + padding-bottom: 13px; + position: relative; + width: 110%; } + +.pointer { + left: 21px; + top: 7px; + display: block; + position: absolute; + width: 12px; + height: 12px; + border-left: 1px solid #ddd; + border-top: 1px solid #ddd; + background: #fff; + transform: rotate(45deg); } + +.height-container { + display: none; + position: relative; + width: 100%; + overflow: hidden; } + .height-container .section { + background: #fff; + border: 1px solid #ddd; + border-top-width: 0; + padding-top: 10px; + padding-bottom: 5px; + padding: 8px 16px; } + +.aside, .language { + padding: 6px 12px; + margin: 12px 0; + border-left: 5px solid #dddddd; + overflow-y: hidden; } + .aside .aside-title, .language .aside-title { + font-size: 9px; + letter-spacing: 2px; + text-transform: uppercase; + padding-bottom: 0; + margin: 0; + color: #aaa; + -webkit-user-select: none; } + .aside p:last-child, .language p:last-child { + margin-bottom: 0; } + +.language { + border-left: 5px solid #cde9f4; } + .language .aside-title { + color: #4183c4; } + +.aside-warning, .aside-deprecated, .aside-unavailable { + border-left: 5px solid #ff6666; } + .aside-warning .aside-title, .aside-deprecated .aside-title, .aside-unavailable .aside-title { + color: #ff0000; } + +.graybox { + border-collapse: collapse; + width: 100%; } + .graybox p { + margin: 0; + word-break: break-word; + min-width: 50px; } + .graybox td { + border: 1px solid #ddd; + padding: 5px 25px 5px 10px; + vertical-align: middle; } + .graybox tr td:first-of-type { + text-align: right; + padding: 7px; + vertical-align: top; + word-break: normal; + width: 40px; } + +.slightly-smaller { + font-size: 0.9em; } + +.footer { + padding: 8px 16px; + background: #444; + color: #ddd; + font-size: 0.8em; } + .footer p { + margin: 8px 0; } + .footer a { + color: #fff; } + +html.dash .header, html.dash .breadcrumbs, html.dash .navigation { + display: none; } + +html.dash .height-container { + display: block; } + +form[role=search] input { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 24px; + padding: 0 10px; + margin: 0; + border: none; + border-radius: 1em; } + .loading form[role=search] input { + background: white url(../img/spinner.gif) center right 4px no-repeat; } + +form[role=search] .tt-menu { + margin: 0; + min-width: 300px; + background: #fbfbfb; + color: #333; + border: 1px solid #ddd; } + +form[role=search] .tt-highlight { + font-weight: bold; } + +form[role=search] .tt-suggestion { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + padding: 0 8px; } + form[role=search] .tt-suggestion span { + display: table-cell; + white-space: nowrap; } + form[role=search] .tt-suggestion .doc-parent-name { + width: 100%; + text-align: right; + font-weight: normal; + font-size: 0.9em; + padding-left: 16px; } + +form[role=search] .tt-suggestion:hover, +form[role=search] .tt-suggestion.tt-cursor { + cursor: pointer; + background-color: #4183c4; + color: #fff; } + +form[role=search] .tt-suggestion:hover .doc-parent-name, +form[role=search] .tt-suggestion.tt-cursor .doc-parent-name { + color: #fff; } diff --git a/6.23.1/docsets/Braintree.docset/Contents/Info.plist b/6.23.1/docsets/Braintree.docset/Contents/Info.plist new file mode 100644 index 0000000000..3d44f43bfe --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleIdentifier + com.jazzy.braintree + CFBundleName + Braintree + DocSetPlatformFamily + braintree + isDashDocset + + dashIndexFilePath + index.html + isJavaScriptEnabled + + DashDocSetFamily + dashtoc + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html new file mode 100644 index 0000000000..1a222e5372 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html @@ -0,0 +1,2221 @@ + + + + Classes Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Classes

+

The following classes are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + BTAPIClient + +
    +
    +
    +
    +
    +
    +

    This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

    +
    +

    Note

    + It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAPIClient : NSObject, BTHTTPNetworkTiming
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAppContextSwitcher + +
    +
    +
    +
    +
    +
    +

    Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

    +
    +

    Note

    + returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAppContextSwitcher : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTBinData + +
    +
    +
    +
    +
    +
    +

    Contains the bin data associated with a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTBinData : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPaymentMethodNonce + +
    +
    +
    +
    +
    +
    +

    BTPaymentMethodNonce is for generic tokenized payment information.

    + +

    For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

    + +

    The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPaymentMethodNonce : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

    + +

    BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPaymentMethodNonceParser : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPostalAddress + +
    +
    +
    +
    +
    +
    +

    Generic postal address

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalNativeCheckoutClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Used to integrate with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A payment method nonce representing a SEPA Direct Debit payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Parameters for creating a SEPA Direct Debit tokenization request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTAmericanExpressClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about an American Express rewards balance.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAmericanExpressRewardsBalance : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollector + +
    +
    +
    +
    +
    +
    +

    Braintree’s advanced fraud protection solution.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTDataCollector : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized Apple Pay card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTApplePayCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayClient + +
    +
    +
    +
    +
    +
    +

    Used to process Apple Pay payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTApplePayClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a local payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentResult + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureAdditionalInformation : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureLookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3DS lookup. +Contains liability shift and challenge information.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureLookup : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Postal address for 3D Secure flows

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecurePostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRenderType : NSObject, OptionSet
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureResult + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Base customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2BaseCustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Label customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text box customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Toolbar customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    UI customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2UICustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAuthenticationInsight : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCard + +
    +
    +
    +
    +
    +
    +

    The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCard : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardClient + +
    +
    +
    +
    +
    +
    +

    Used to process cards

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTCardClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardRequest + +
    +
    +
    +
    +
    +
    +

    Contains information about a card to tokenize

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    Contains information about the 3D Secure status of a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureInfo : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalCheckoutRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalClient : BTWebAuthenticationSessionClient
    +
    extension BTPayPalClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit financing option

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancing : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit amount

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancingAmount : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItem + +
    +
    +
    +
    +
    +
    +

    A PayPal line item to be displayed in the PayPal checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequest + +
    +
    +
    +
    +
    +
    +

    Base options for PayPal Checkout and PayPal Vault flows.

    +
    +

    Note

    + Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalVaultBaseRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalVaultRequest + +
    +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a Venmo Account payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoClient + +
    +
    +
    +
    +
    +
    +

    Used to process Venmo payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTVenmoClient : NSObject
    +
    extension BTVenmoClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItem + +
    +
    +
    +
    +
    +
    +

    A Venmo line item to be displayed in the Venmo Paysheet.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoRequest + +
    +
    +
    +
    +
    +
    +

    A BTVenmoRequest specifies options that contribute to the Venmo flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalMessagingView + +
    +
    +
    +
    +
    +
    +

    Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTPayPalMessagingView : UIView
    +
    extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTShopperInsightsClient
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html new file mode 100644 index 0000000000..912fe0356c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html @@ -0,0 +1,673 @@ + + + + BTAPIClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAPIClient

+
+
+ +
@objcMembers
+public class BTAPIClient : NSObject, BTHTTPNetworkTiming
+ +
+
+

This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

+
+

Note

+ It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + authorization + +
    +
    +
    +
    +
    +
    +

    The TokenizationKey or ClientToken used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authorization: ClientAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + metadata + +
    +
    +
    +
    +
    +
    +

    Client metadata that is used for tracking the client session

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public private(set) var metadata: BTClientMetadata { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(authorization:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new API client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAuthorization:)
    +public init?(authorization: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + authorization + + +
    +

    Your tokenization key or client token. Passing an invalid value may return nil.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    +
    +

    Note

    + Only the top level BTPaymentMethodNonce type is returned, fetching any additional details will need to be done on the server + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    Callback that returns either an array of payment method nonces or an error

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ defaultFirst: Bool, completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html new file mode 100644 index 0000000000..f37037da77 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html @@ -0,0 +1,564 @@ + + + + BTAmericanExpressClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAmericanExpressClient

+
+
+ +
@objc
+public class BTAmericanExpressClient : NSObject
+ +
+
+

BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html new file mode 100644 index 0000000000..276dff7d3a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html @@ -0,0 +1,677 @@ + + + + BTAmericanExpressRewardsBalance Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAmericanExpressRewardsBalance

+
+
+ +
@objcMembers
+public class BTAmericanExpressRewardsBalance : NSObject
+ +
+
+

Contains information about an American Express rewards balance.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    +

    Optional. An error code when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    Optional. An error message when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + conversionRate + +
    +
    +
    +
    +
    +
    +

    Optional. The conversion rate associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var conversionRate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The currency amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyIsoCode + +
    +
    +
    +
    +
    +
    +

    Optional. The currency ISO code associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyIsoCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requestID + +
    +
    +
    +
    +
    +
    +

    Optional. The request ID used when fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsUnit + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards unit associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsUnit: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html new file mode 100644 index 0000000000..8eef1bcad2 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html @@ -0,0 +1,672 @@ + + + + BTAppContextSwitcher Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAppContextSwitcher

+
+
+ +
@objcMembers
+public class BTAppContextSwitcher : NSObject
+ +
+
+

Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

+
+

Note

+ returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + sharedInstance + +
    +
    +
    +
    +
    +
    +

    Singleton for shared instance of BTAppContextSwitcher

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let sharedInstance: BTAppContextSwitcher
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + returnURLScheme + +
    +
    +
    +
    +
    +
    +

    The URL scheme to return to this app after switching to another app or opening a SFSafariViewController. +This URL scheme must be registered as a URL Type in the app’s info.plist, and it must start with the app’s bundle ID.

    +
    +

    Note

    + This property should only be used for the Venmo flow. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var returnURLScheme: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Determine whether the return URL can be handled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURLContext:)
    +public func handleOpenURL(context: UIOpenURLContext) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    true when the SDK can process the return URL

    +
    + +
    +
    +
  • +
  • +
    + + + + handleOpen(_:) + +
    +
    +
    +
    +
    +
    +

    Complete payment flow after returning from app or browser switch.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURL:)
    +public func handleOpen(_ url: URL) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + url + + +
    +

    The URL you receive in scene:openURLContexts: (or application:openURL:options: if not using SceneDelegate)

    +
    +
    +
    +
    +

    Return Value

    +

    true when the SDK has handled the URL successfully

    +
    + +
    +
    +
  • +
  • +
    + + + + register(_:) + +
    +
    +
    +
    +
    +
    +

    Registers a class Type that can handle a return from app context switch with a static method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(registerAppContextSwitchClient:)
    +public func register(_ client: BTAppContextSwitchClient.Type)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + client + + +
    +

    A class Type that implements BTAppContextSwitchClient, the methods of which will be invoked statically on the class.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html new file mode 100644 index 0000000000..302d4843aa --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html @@ -0,0 +1,467 @@ + + + + BTApplePayCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTApplePayCardNonce

+
+
+ +
@objcMembers
+public class BTApplePayCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized Apple Pay card.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html new file mode 100644 index 0000000000..90cd08ece8 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html @@ -0,0 +1,727 @@ + + + + BTApplePayClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTApplePayClient

+
+
+ +
@objc
+public class BTApplePayClient : NSObject
+ +
+
+

Used to process Apple Pay payments

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(makePaymentRequest:)
    +public func makePaymentRequest(completion: @escaping (PKPaymentRequest?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns the payment request or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + makePaymentRequest() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func makePaymentRequest() async throws -> PKPaymentRequest
    + +
    +
    +
    +

    Return Value

    +

    A PKPaymentRequest

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Tokenizes an Apple Pay payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeApplePayPayment:completion:)
    +public func tokenize(_ payment: PKPayment, completion: @escaping (BTApplePayCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when tokenization has completed. If tokenization succeeds, we will return a BTApplePayCardNonce +and error will be nil; if it fails, BTApplePayCardNonce will be nil and error will describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes an Apple Pay payment.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ payment: PKPayment) async throws -> BTApplePayCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    +
    +
    +

    Return Value

    +

    A BTApplePayCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html new file mode 100644 index 0000000000..382a76a529 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html @@ -0,0 +1,478 @@ + + + + BTAuthenticationInsight Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAuthenticationInsight

+
+
+ +
@objcMembers
+public class BTAuthenticationInsight : NSObject
+ +
+
+

Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html new file mode 100644 index 0000000000..fbd281cf6d --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html @@ -0,0 +1,738 @@ + + + + BTBinData Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTBinData

+
+
+ +
@objcMembers
+public class BTBinData : NSObject
+ +
+
+

Contains the bin data associated with a payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + prepaid + +
    +
    +
    +
    +
    +
    +

    Whether the card is a prepaid card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let prepaid: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + healthcare + +
    +
    +
    +
    +
    +
    +

    Whether the card is a healthcare card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let healthcare: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Whether the card is a debit card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let debit: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + durbinRegulated + +
    +
    +
    +
    +
    +
    +

    A value indicating whether the issuing bank’s card range is regulated by the Durbin Amendment due to the bank’s assets. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let durbinRegulated: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + commercial + +
    +
    +
    +
    +
    +
    +

    Whether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let commercial: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payroll + +
    +
    +
    +
    +
    +
    +

    Whether the card is a payroll card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payroll: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + issuingBank + +
    +
    +
    +
    +
    +
    +

    The bank that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let issuingBank: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryOfIssuance + +
    +
    +
    +
    +
    +
    +

    The country that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let countryOfIssuance: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productID + +
    +
    +
    +
    +
    +
    +

    The code for the product type of the card (e.g. D (Visa Signature Preferred), G (Visa Business)), if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productID: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(json:) + +
    +
    +
    +
    +
    +
    +

    Create a BTBinData object from JSON.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithJSON:)
    +public init(json: BTJSON?)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html new file mode 100644 index 0000000000..58d260b583 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html @@ -0,0 +1,1096 @@ + + + + BTCard Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCard

+
+
+ +
@objcMembers
+public class BTCard : NSObject
+ +
+
+

The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + number + +
    +
    +
    +
    +
    +
    +

    The card number

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var number: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month as a one or two-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year as a two or four-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cvv + +
    +
    +
    +
    +
    +
    +

    The card verification code (like CVV or CID).

    +
    +

    Note

    + If you wish to create a CVV-only payment method nonce to verify a card already stored in your Vault, +omit all other properties to only collect CVV. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cvv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    The postal code associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    Optional: the cardholder’s name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Optional: first name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Optional: last name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + company + +
    +
    +
    +
    +
    +
    +

    Optional: company name associated with the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var company: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the street address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the extended address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional: the city associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryName + +
    +
    +
    +
    +
    +
    +

    Optional: the country name associated with the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific country names. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-2 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-2 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha3 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-3 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-3 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeNumeric + +
    +
    +
    +
    +
    +
    +

    Optional: The ISO 3166-1 numeric country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific numeric values. + + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeNumeric: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shouldValidate + +
    +
    +
    +
    +
    +
    +

    Controls whether or not to return validations and/or verification results. By default, this is not enabled.

    +
    +

    Note

    + Use this flag with caution. By enabling client-side validation, certain tokenize card requests may result in adding the card to the vault. +These semantics are not currently documented. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shouldValidate: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If authentication insight is requested. If this property is set to true, a merchantAccountID must be provided. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsightRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant account ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html new file mode 100644 index 0000000000..0085d2a5e6 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html @@ -0,0 +1,633 @@ + + + + BTCardClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardClient

+
+
+ +
@objc
+public class BTCardClient : NSObject
+ +
+
+

Used to process cards

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a card client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Tokenizes a card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeCard:completion:)
    +public func tokenize(_ card: BTCard, completion: @escaping (BTCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when card tokenization has completed. If tokenization succeeds, +tokenize will contain a nonce and error will be nil; if it fails, tokenize will be nil and errorwill describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes a card

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ card: BTCard) async throws -> BTCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html new file mode 100644 index 0000000000..9c7450cbb9 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html @@ -0,0 +1,747 @@ + + + + BTCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardNonce

+
+
+ +
@objcMembers
+public class BTCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized card.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + cardNetwork + +
    +
    +
    +
    +
    +
    +

    The card network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardNetwork: BTCardNetwork
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    The name of the cardholder, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastTwo + +
    +
    +
    +
    +
    +
    +

    The last two digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastTwo: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastFour + +
    +
    +
    +
    +
    +
    +

    The last four digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastFour: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bin + +
    +
    +
    +
    +
    +
    +

    The BIN number of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bin: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    The 3D Secure info for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureInfo: BTThreeDSecureInfo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + authenticationInsight + +
    +
    +
    +
    +
    +
    +

    Details about the regulatory environment and applicable customer authentication regulation for a potential transaction. +This can be used to make an informed decision whether to perform 3D Secure authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsight: BTAuthenticationInsight?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html new file mode 100644 index 0000000000..91637458a3 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html @@ -0,0 +1,516 @@ + + + + BTCardRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardRequest

+
+
+ +
@objcMembers
+public class BTCardRequest : NSObject
+ +
+
+

Contains information about a card to tokenize

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + card + +
    +
    +
    +
    +
    +
    +

    The BTCard associated with this instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var card: BTCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(card:) + +
    +
    +
    +
    +
    +
    +

    Initialize a Card request with a BTCard.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(card: BTCard)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The BTCard to initialize with.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html new file mode 100644 index 0000000000..a134b2a48c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html @@ -0,0 +1,659 @@ + + + + BTDataCollector Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTDataCollector

+
+
+ +
@objc
+public class BTDataCollector : NSObject
+ +
+
+

Braintree’s advanced fraud protection solution.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTDataCollector instance with a BTAPIClient.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public methods +

+
+
+
    +
  • +
    + + + + clientMetadataID(_:) + +
    +
    +
    +
    +
    +
    +

    Returns a client metadata ID.

    +
    +

    Note

    + This returns a raw client metadata ID, which is not the correct format for device data when creating a transaction. Instead, it is recommended to use collectDeviceData. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func clientMetadataID(_ pairingID: String?) -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + pairingID + + +
    +

    A pairing ID to associate with this clientMetadataID must be 10-32 chars long or null

    +
    +
    +
    +
    +

    Return Value

    +

    A client metadata ID to send as a header

    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData(_:) + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func collectDeviceData(_ completion: @escaping (String?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns either a device data string that should be passed into server-side calls, such as Transaction.sale, or an error with the failure reason.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func collectDeviceData() async throws -> String
    + +
    +
    +
    +

    Return Value

    +

    A device data string that should be passed into server-side calls, such as Transaction.sale.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html new file mode 100644 index 0000000000..486eac0fce --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html @@ -0,0 +1,630 @@ + + + + BTLocalPaymentClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentClient

+
+
+ +
@objcMembers
+public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTLocalPaymentClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html new file mode 100644 index 0000000000..09334294be --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html @@ -0,0 +1,869 @@ + + + + BTLocalPaymentRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentRequest

+
+
+ +
@objcMembers
+public class BTLocalPaymentRequest : NSObject
+ +
+
+

Used to initialize a local payment flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + paymentType + +
    +
    +
    +
    +
    +
    +

    The type of payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentType: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The country code of the local payment.

    + +

    This value must be one of the supported country codes for a given local payment type listed at the link below. For local payments supported in multiple countries, this value may determine which banks are presented to the customer.

    + +

    https://developer.paypal.com/braintree/docs/guides/local-payment-methods/client-side-custom/ios/v5#invoke-payment-flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentTypeCountryCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + address + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var address: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the local payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional: Payer email of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional: Given (first) name of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional: Surname (last name) of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Optional: Phone number of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phone: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bic + +
    +
    +
    +
    +
    +
    +

    Optional: Bank Identification Code of the customer (specific to iDEAL transactions).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bic: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var localPaymentFlowDelegate: BTLocalPaymentRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html new file mode 100644 index 0000000000..c13f0fd1fb --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html @@ -0,0 +1,736 @@ + + + + BTLocalPaymentResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentResult

+
+
+ +
@objcMembers
+public class BTLocalPaymentResult : NSObject
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client Metadata ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The one-time use payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Payer ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The type of the tokenized payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let type: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html new file mode 100644 index 0000000000..1847737345 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html @@ -0,0 +1,709 @@ + + + + BTPayPalAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + creditFinancing + +
    +
    +
    +
    +
    +
    +

    Optional. Credit financing details if the customer pays with PayPal Credit. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let creditFinancing: BTPayPalCreditFinancing?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html new file mode 100644 index 0000000000..69f4a2f8d4 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html @@ -0,0 +1,795 @@ + + + + BTPayPalCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalCheckoutRequest

+
+
+ +
@objcMembers
+open class BTPayPalCheckoutRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Checkout flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    Used for a one-time payment.

    + +

    Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’ and is limited to 7 digits before the decimal point.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + intent + +
    +
    +
    +
    +
    +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var intent: BTPayPalRequestIntent
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAction + +
    +
    +
    +
    +
    +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAction: BTPayPalRequestUserAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + offerPayLater + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerPayLater: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    +
    +

    Note

    + See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestBillingAgreement: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    userAction: BTPayPalRequestUserAction = .none,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + amount + + +
    +

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + userAction + + +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement +during checkout. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html new file mode 100644 index 0000000000..7e5e66051f --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html @@ -0,0 +1,864 @@ + + + + BTPayPalClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalClient

+
+
+ +
@objc
+public class BTPayPalClient : BTWebAuthenticationSessionClient
+
extension BTPayPalClient: BTAppContextSwitchClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new PayPal client instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The API Client

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new PayPal client instance for the PayPal App Switch flow.

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:universalLink:)
    +public convenience init(apiClient: BTAPIClient, universalLink: URL)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + apiClient + + +
    +

    The API Client

    +
    +
    + + universalLink + + +
    +

    The URL to use for the PayPal app switch flow. Must be a valid HTTPS URL dedicated to Braintree app switch returns. This URL must be allow-listed in your Braintree Control Panel.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVaultRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalVaultRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalVaultRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithCheckoutRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalCheckoutRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalCheckoutRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html new file mode 100644 index 0000000000..f87a9dbfb3 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html @@ -0,0 +1,617 @@ + + + + BTPayPalCreditFinancing Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalCreditFinancing

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancing : NSObject
+ +
+
+

Contains information about a PayPal credit financing option

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + cardAmountImmutable + +
    +
    +
    +
    +
    +
    +

    Indicates whether the card amount is editable after payer’s acceptance on PayPal side.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let cardAmountImmutable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monthlyPayment + +
    +
    +
    +
    +
    +
    +

    Estimated amount per month that the customer will need to pay including fees and interest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let monthlyPayment: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerAcceptance + +
    +
    +
    +
    +
    +
    +

    Status of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerAcceptance: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + term + +
    +
    +
    +
    +
    +
    +

    Length of financing terms in months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let term: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalCost + +
    +
    +
    +
    +
    +
    +

    Estimated total payment amount including interest and fees the user will pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalCost: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalInterest + +
    +
    +
    +
    +
    +
    +

    Estimated interest or fees amount the payer will have to pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalInterest: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html new file mode 100644 index 0000000000..8fde7e0e0f --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html @@ -0,0 +1,497 @@ + + + + BTPayPalCreditFinancingAmount Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalCreditFinancingAmount

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancingAmount : NSObject
+ +
+
+

Contains information about a PayPal credit amount

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + currency + +
    +
    +
    +
    +
    +
    +

    3 letter currency code as defined by ISO 4217.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let currency: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + value + +
    +
    +
    +
    +
    +
    +

    An amount defined by ISO 4217 for the given currency.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let value: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html new file mode 100644 index 0000000000..7718fad254 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html @@ -0,0 +1,875 @@ + + + + BTPayPalLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLineItem

+
+
+ +
@objcMembers
+public class BTPayPalLineItem : NSObject
+ +
+
+

A PayPal line item to be displayed in the PayPal checkout flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let quantity: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let kind: BTPayPalLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let url: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + imageURL + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product image information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var imageURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcCode + +
    +
    +
    +
    +
    +
    +

    Optional: UPC code for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcType + +
    +
    +
    +
    +
    +
    +

    Optional: UPC type for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcType: BTPayPalLineItemUPCType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a PayPayLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: String, unitAmount: String, name: String, kind: BTPayPalLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html new file mode 100644 index 0000000000..c6df724d6b --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html @@ -0,0 +1,811 @@ + + + + BTPayPalMessagingView Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingView

+
+
+ +
public class BTPayPalMessagingView : UIView
+
extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
+ +
+
+

Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Properties +

+
+
+ +
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTPayPalMessagingView.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The Braintree API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Method +

+
+
+ +
+
+
+ + +
+ +

UIViewRepresentable protocol conformance +

+
+
+
    +
  • +
    + + + + Representable + +
    +
    +
    +
    +
    +
    +

    PayPal Messaging for SwiftUI

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    struct Representable : UIViewRepresentable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

PayPalMessageViewEventDelegate and PayPalMessageViewStateDelegate protocol conformance +

+
+
+
    +
  • +
    + + + + onClick(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onClick(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onApply(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onApply(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onLoading(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onLoading(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onSuccess(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onSuccess(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onError(_:error:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onError(_ paypalMessageView: PayPalMessages.PayPalMessageView, error: PayPalMessages.PayPalMessageError)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html new file mode 100644 index 0000000000..1463beee86 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html @@ -0,0 +1,539 @@ + + + + Representable Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Representable

+
+
+ +
struct Representable : UIViewRepresentable
+ +
+
+

PayPal Messaging for SwiftUI

+ + +
+
+ +
+
+
+ +
+
+
+ + +
+ +

UIViewRepresentable Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html new file mode 100644 index 0000000000..52034b3497 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html @@ -0,0 +1,687 @@ + + + + BTPayPalNativeCheckoutAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html new file mode 100644 index 0000000000..68d48990f5 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html @@ -0,0 +1,641 @@ + + + + BTPayPalNativeCheckoutClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutClient

+
+
+ +
@objc
+public class BTPayPalNativeCheckoutClient : NSObject
+ +
+
+

Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public convenience init(apiClient: BTAPIClient)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html new file mode 100644 index 0000000000..2948cef647 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html @@ -0,0 +1,578 @@ + + + + BTPayPalNativeCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
+ +
+
+

Options for the PayPal Checkout flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false,
    +    billingAgreementDescription: String? = nil,
    +    userAuthenticationEmail: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + amount + + +
    +

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also +set requestBillingAgreement to true on your BTPayPalNativeVaultRequest.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html new file mode 100644 index 0000000000..aea5a9dcef --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html @@ -0,0 +1,511 @@ + + + + BTPayPalNativeVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    offerCredit: Bool = false,
    +    billingAgreementDescription: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set +requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html new file mode 100644 index 0000000000..454318b3d7 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html @@ -0,0 +1,764 @@ + + + + BTPayPalRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequest

+
+
+ +
@objcMembers
+open class BTPayPalRequest : NSObject
+ +
+
+

Base options for PayPal Checkout and PayPal Vault flows.

+
+

Note

+ Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Defaults to false. When set to true, the shipping address selector will be displayed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Defaults to false. Set to true to enable user editing of the shipping address.

    +
    +

    Note

    + Only applies when shippingAddressOverride is set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressEditable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + localeCode + +
    +
    +
    +
    +
    +
    +

    Optional: A locale code to use for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var localeCode: BTPayPalLocaleCode
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressOverride: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + landingPageType + +
    +
    +
    +
    +
    +
    +

    Optional: Landing page type. Defaults to .none.

    +
    +

    Note

    + Setting the BTPayPalRequest’s landingPageType changes the PayPal page to display when a user lands on the PayPal site to complete the payment. +.login specifies a PayPal account login page is used. +.billing specifies a non-PayPal account landing page is used. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var landingPageType: BTPayPalRequestLandingPageType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional: The line items for this transaction. It can include up to 249 line items.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTPayPalLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set + requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAgreementDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + riskCorrelationID + +
    +
    +
    +
    +
    +
    +

    Optional: A risk correlation ID created with Set Transaction Context on your server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var riskCorrelationID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html new file mode 100644 index 0000000000..f16db5b430 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html @@ -0,0 +1,538 @@ + + + + BTPayPalVaultBaseRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalVaultBaseRequest

+
+
+ +
@objcMembers
+open class BTPayPalVaultBaseRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Vault flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + offerCredit + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerCredit: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(offerCredit:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html new file mode 100644 index 0000000000..1a323cea57 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html @@ -0,0 +1,665 @@ + + + + BTPayPalVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Vault request for the PayPal App Switch flow

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    +

    Note

    + The PayPal App Switch flow currently only supports the production environment. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(
    +    userAuthenticationEmail: String,
    +    enablePayPalAppSwitch: Bool,
    +    offerCredit: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + userAuthenticationEmail + + +
    +

    Required: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    + + enablePayPalAppSwitch + + +
    +

    Required: Used to determine if the customer will use the PayPal app switch flow.

    +
    +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initializes a PayPal Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false, userAuthenticationEmail: String? = nil)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override func parameters(with configuration: BTConfiguration, universalLink: URL? = nil) -> [String : Any]
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html new file mode 100644 index 0000000000..4f14475d91 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html @@ -0,0 +1,733 @@ + + + + BTPaymentMethodNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPaymentMethodNonce

+
+
+ +
@objcMembers
+open class BTPaymentMethodNonce : NSObject
+ +
+
+

BTPaymentMethodNonce is for generic tokenized payment information.

+ +

For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

+ +

The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The string identifying the type of the payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var type: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isDefault + +
    +
    +
    +
    +
    +
    +

    The boolean indicating whether this is a default payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isDefault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:)
    +public init(nonce: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:type:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:)
    +public init(nonce: String, type: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:isDefault:)
    +public init(nonce: String, type: String, isDefault: Bool)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    + + isDefault + + +
    +

    A boolean indicating whether this is a default payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html new file mode 100644 index 0000000000..b98dd1a631 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html @@ -0,0 +1,655 @@ + + + + BTPaymentMethodNonceParser Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPaymentMethodNonceParser

+
+
+ +
@objcMembers
+public class BTPaymentMethodNonceParser : NSObject
+ +
+
+

A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

+ +

BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + shared + +
    +
    +
    +
    +
    +
    +

    The singleton instance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(sharedParser)
    +public static let shared: BTPaymentMethodNonceParser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + allTypes + +
    +
    +
    +
    +
    +
    +

    An array of the tokenization types currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var allTypes: [String] { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isTypeAvailable(_:) + +
    +
    +
    +
    +
    +
    +

    Indicates whether a tokenization type is currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func isTypeAvailable(_ type: String) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    +
    +
    +

    Return Value

    +

    A bool indicating if the payment method type is available.

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Registers a parsing block for a tokenization type.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func registerType(_ type: String?, withParsingBlock: @escaping (_ json: BTJSON?) -> BTPaymentMethodNonce?)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    + + withParsingBlock + + +
    +

    jsonParsingBlock The block to execute when parseJSON:type: is called for the tokenization type. +This block should return a BTPaymentMethodNonce object, or nil if the JSON cannot be parsed.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Parses tokenized payment information that has been serialized to JSON, and returns a BTPaymentMethodNonce object.

    + +

    The BTPaymentMethodNonce object is created by the JSON parsing block that has been registered for the tokenization type.

    + +

    If the type has not been registered, this method will attempt to read the nonce from the JSON and return + a basic object; if it fails, it will return nil.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func parseJSON(_ json: BTJSON?, withParsingBlockForType type: String?) -> BTPaymentMethodNonce?
    + +
    +
    +
    +

    Return Value

    +

    A BTPaymentMethodNonce object, or nil if the tokenized payment info JSON does not contain a nonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html new file mode 100644 index 0000000000..5ae4494add --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html @@ -0,0 +1,648 @@ + + + + BTPostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPostalAddress

+
+
+ +
@objcMembers
+public class BTPostalAddress : NSObject
+ +
+
+

Generic postal address

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + recipientName + +
    +
    +
    +
    +
    +
    +

    Optional. Recipient name for shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recipientName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Line 1 of the Address (eg. number, street, etc).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional line 2 of the Address (eg. suite, apt #, etc.).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    2 letter country code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html new file mode 100644 index 0000000000..050ed6d087 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html @@ -0,0 +1,635 @@ + + + + BTSEPADirectDebitClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitClient

+
+
+ +
@objc
+public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
+ +
+
+

Used to integrate with SEPA Direct Debit.

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a SEPA Direct Debit client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithSEPADirectDebitRequest:completion:)
    +public func tokenize(
    +    _ request: BTSEPADirectDebitRequest,
    +    completion:  @escaping (BTSEPADirectDebitNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTSEPADirectDebitRequest) async throws -> BTSEPADirectDebitNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    +
    +
    +

    Return Value

    +

    A BTSEPADirectDebitNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html new file mode 100644 index 0000000000..d95aad877c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html @@ -0,0 +1,527 @@ + + + + BTSEPADirectDebitNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitNonce

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
+ +
+
+

A payment method nonce representing a SEPA Direct Debit payment.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html new file mode 100644 index 0000000000..6d83761187 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html @@ -0,0 +1,780 @@ + + + + BTSEPADirectDebitRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitRequest

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitRequest : NSObject
+ +
+
+

Parameters for creating a SEPA Direct Debit tokenization request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + accountHolderName + +
    +
    +
    +
    +
    +
    +

    Required. The account holder name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountHolderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + iban + +
    +
    +
    +
    +
    +
    +

    Required. The full IBAN.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var iban: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customerID + +
    +
    +
    +
    +
    +
    +

    Required. The customer ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mandateType + +
    +
    +
    +
    +
    +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mandateType: BTSEPADirectDebitMandateType?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Required. The user’s billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional. A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locale + +
    +
    +
    +
    +
    +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locale: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new SEPA Direct Debit request.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    accountHolderName: String? = nil,
    +    iban: String? = nil,
    +    customerID: String? = nil,
    +    mandateType: BTSEPADirectDebitMandateType? = .oneOff,
    +    billingAddress: BTPostalAddress? = nil,
    +    merchantAccountID: String? = nil,
    +    locale: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + accountHolderName + + +
    +

    Required. The account holder name.

    +
    +
    + + iban + + +
    +

    Required. The full IBAN.

    +
    +
    + + customerID + + +
    +

    Required. The customer ID.

    +
    +
    + + mandateType + + +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    +
    +
    + + billingAddress + + +
    +

    Required. The user’s billing address.

    +
    +
    + + merchantAccountID + + +
    +

    Optional. A non-default merchant account to use for tokenization.

    +
    +
    + + locale + + +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html new file mode 100644 index 0000000000..0e163a586a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html @@ -0,0 +1,692 @@ + + + + BTShopperInsightsClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsClient

+
+
+ +
public class BTShopperInsightsClient
+ +
+
+

Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Private Properties +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a BTShopperInsightsClient

    +
    +

    Warning

    + This features only works with a client token. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    A BTAPIClient instance.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + getRecommendedPaymentMethods(request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    This method confirms if the customer is a user of PayPal services using their email and phone number.

    +
    +

    Warning

    + This feature is in beta. Its public API may change or be removed in future releases. + PayPal recommendation is only available for US, AU, FR, DE, ITA, NED, ESP, Switzerland and UK merchants. + Venmo recommendation is only available for US merchants. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func getRecommendedPaymentMethods(request: BTShopperInsightsRequest) async throws -> BTShopperInsightsResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    A BTShopperInsightsRequest containing the buyer’s user information

    +
    +
    +
    +
    +

    Return Value

    +

    A BTShopperInsightsResult instance

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the PayPal button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the PayPal button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html new file mode 100644 index 0000000000..2eadb8a9b5 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html @@ -0,0 +1,1769 @@ + + + + BTThreeDSecureAdditionalInformation Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureAdditionalInformation

+
+
+ +
@objcMembers
+public class BTThreeDSecureAdditionalInformation : NSObject
+ +
+
+

Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit string indicating the shipping method chosen for the transaction

    + +

    Possible Values:

    + +
      +
    • 01: Ship to cardholder billing address
    • +
    • 02: Ship to another verified address on file with merchant
    • +
    • 03: Ship to address that is different than billing address
    • +
    • 04: Ship to store (store address should be populated on request)
    • +
    • 05: Digital goods
    • +
    • 06: Travel and event tickets, not shipped
    • +
    • 07: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethodIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional. The 3-letter string representing the merchant product code

    + +

    Possible Values:

    + +
      +
    • AIR: Airline
    • +
    • GEN: General Retail
    • +
    • DIG: Digital Goods
    • +
    • SVC: Services
    • +
    • RES: Restaurant
    • +
    • TRA: Travel
    • +
    • DSP: Cash Dispensing
    • +
    • REN: Car Rental
    • +
    • GAS: Fueld
    • +
    • LUX: Luxury Retail
    • +
    • ACC: Accommodation Retail
    • +
    • TBD: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryTimeframe + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the delivery timeframe

    + +

    Possible values:

    + +
      +
    • 01: Electronic delivery
    • +
    • 02: Same day shipping
    • +
    • 03: Overnight shipping
    • +
    • 04: Two or more day shipping
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryTimeframe: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryEmail + +
    +
    +
    +
    +
    +
    +

    Optional. For electronic delivery, email address to which the merchandise was delivered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryEmail: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + reorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise

    + +

    Possible values:

    + +
      +
    • 01: First time ordered
    • +
    • 02: Reordered
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var reorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date

    + +

    Possible values:

    + +
      +
    • 01: Merchandise available
    • +
    • 02: Future availability
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The purchase amount total for prepaid gift cards in major units

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCurrencyCode + +
    +
    +
    +
    +
    +
    +

    Optional. ISO 4217 currency code for the gift card purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCurrencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCount + +
    +
    +
    +
    +
    +
    +

    Optional. Total count of individual prepaid gift cards purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountAgeIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountAgeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountCreateDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountCreateDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.

    + +

    Possible values:

    + +
      +
    • 01: No change
    • +
    • 02: Changed during transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPwdChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating when the shipping address used for transaction was first used.

    + +

    Possible values:

    + +
      +
    • 01: This transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountDay + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountDay: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountYear + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last year.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addCardAttempts + +
    +
    +
    +
    +
    +
    +

    Optional. Number of add card attempts in the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addCardAttempts: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPurchases + +
    +
    +
    +
    +
    +
    +

    Optional. Number of purchases with this cardholder account during the previous six months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPurchases: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fraudActivity + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.

    + +

    Possible values:

    + +
      +
    • 01: No suspicious activity
    • +
    • 02: Suspicious activity observed
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fraudActivity: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingNameIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.

    + +

    Possible values:

    + +
      +
    • 01: Account name identical to shipping name
    • +
    • 02: Account name different than shipping name
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingNameIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.

    + +

    Possible values:

    + +
      +
    • 01: No account (guest checkout)
    • +
    • 02: During the transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentAccountAge + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountAge: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addressMatch + +
    +
    +
    +
    +
    +
    +

    Optional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addressMatch: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountID + +
    +
    +
    +
    +
    +
    +

    Optional. Additional cardholder account information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ipAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The IP address of the consumer. IPv4 and IPv6 are supported.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var ipAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + orderDescription + +
    +
    +
    +
    +
    +
    +

    Optional. Brief description of items purchased.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var orderDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAgent + +
    +
    +
    +
    +
    +
    +

    Optional. The exact content of the HTTP user agent header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAgent: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the type of authentication request.

    + +

    Possible values:

    + +
      +
    • 02: Recurring transaction
    • +
    • 03: Installment transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + installment + +
    +
    +
    +
    +
    +
    +

    Optional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var installment: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + purchaseDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var purchaseDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringEnd + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringEnd: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringFrequency + +
    +
    +
    +
    +
    +
    +

    Optional. Integer value indicating the minimum number of days between recurring authorizations. +A frequency of monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months (ex. 6 months = 168).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringFrequency: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sdkMaxTimeout + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var sdkMaxTimeout: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + workPhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var workPhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html new file mode 100644 index 0000000000..3466bf3c2c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html @@ -0,0 +1,854 @@ + + + + BTThreeDSecureClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureClient

+
+
+ +
@objcMembers
+public class BTThreeDSecureClient : NSObject
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTThreeDSecureClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Starts the 3DS flow using a BTThreeDSecureRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func startPaymentFlow(_ request: BTThreeDSecureRequest, completion: @escaping (BTThreeDSecureResult?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A BTThreeDSecureRequest request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the 3DS flow is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(prepareLookup:completion:)
    +public func prepareLookup(
    +    _ request: BTThreeDSecureRequest,
    +    completion: @escaping (String?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once with the client payload string or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + prepareLookup(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func prepareLookup(_ request: BTThreeDSecureRequest) async throws -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive a client payload string

    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a challenge from a server side lookup call.

    +
    +

    Note

    + Majority of 3DS integrations do not need to use this method. Only for server-side 3DS integrations. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initializeChallengeWithLookupResponse:request:completion:)
    +public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest,
    +    completion: @escaping (BTThreeDSecureResult?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the payment flow is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + initializeChallenge(lookupResponse:request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initialize a challenge from a server side lookup call.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest
    +) async throws -> BTThreeDSecureResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTThreeDSecureResult

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html new file mode 100644 index 0000000000..36d2e3534d --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html @@ -0,0 +1,1004 @@ + + + + BTThreeDSecureInfo Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureInfo

+
+
+ +
@objcMembers
+public class BTThreeDSecureInfo : NSObject
+ +
+
+

Contains information about the 3D Secure status of a payment method

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + acsTransactionID + +
    +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cavv + +
    +
    +
    +
    +
    +
    +

    Cardholder authentication verification value or “CAVV” is the main encrypted message issuers and card networks use to verify authentication has occured. +Mastercard uses an “AVV” message which will also be returned in the cavv parameter.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cavv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dsTransactionID + +
    +
    +
    +
    +
    +
    +

    Directory Server Transaction ID is an ID used by the card brand’s 3DS directory server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + eciFlag + +
    +
    +
    +
    +
    +
    +

    The ecommerce indicator flag indicates the outcome of the 3DS authentication. +Possible values are 00, 01, and 02 for Mastercard 05, 06, and 07 for all other cardbrands.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var eciFlag: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + enrolled + +
    +
    +
    +
    +
    +
    +

    Indicates whether a card is enrolled in a 3D Secure program or not. Possible values:

    + +
      +
    • Y = Yes
    • +
    • N = No
    • +
    • U = Unavailable
    • +
    • B = Bypass
    • +
    • E = RequestFailure
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var enrolled: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + liabilityShifted + +
    +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift has occurred.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShifted: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift is possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShiftPossible: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paresStatus + +
    +
    +
    +
    +
    +
    +

    The Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:

    + +
      +
    • Y – Successful Authentication
    • +
    • N – Failed Authentication
    • +
    • U – Unable to Complete Authentication
    • +
    • A– Successful Stand-In Attempts Transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paresStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + status + +
    +
    +
    +
    +
    +
    +

    The 3D Secure status value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var status: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique identifier assigned to the 3D Secure authentication performed for this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureAuthenticationID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the 3DS Server to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureServerTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The 3DS version used in the authentication, example “1.0.2” or “2.1.0”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + wasVerified + +
    +
    +
    +
    +
    +
    +

    Indicates if the 3D Secure lookup was performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var wasVerified: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + xid + +
    +
    +
    +
    +
    +
    +

    Transaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message. +This field will no longer be used in 3DS 2 authentications.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var xid: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html new file mode 100644 index 0000000000..4efa20ea55 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html @@ -0,0 +1,688 @@ + + + + BTThreeDSecureLookup Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureLookup

+
+
+ +
@objcMembers
+public class BTThreeDSecureLookup : NSObject
+ +
+
+

The result of a 3DS lookup. +Contains liability shift and challenge information.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + paReq + +
    +
    +
    +
    +
    +
    +

    The “PAReq” or “Payment Authentication Request” is the encoded request message used to initiate authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paReq: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + md + +
    +
    +
    +
    +
    +
    +

    The unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var md: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + acsURL + +
    +
    +
    +
    +
    +
    +

    The URL which the customer will be redirected to for a 3DS Interface. +In 3DS 2, the presence of an acsURL indicates there is a challenge as it would otherwise frictionlessly complete without an acsURL.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + termURL + +
    +
    +
    +
    +
    +
    +

    The termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var termURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The full version string of the 3DS lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates a 3DS 2 lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isThreeDSecureVersion2: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionID + +
    +
    +
    +
    +
    +
    +

    This a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates that a 3DS challenge is required.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requiresUserAuthentication: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html new file mode 100644 index 0000000000..9f208d5608 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html @@ -0,0 +1,752 @@ + + + + BTThreeDSecurePostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecurePostalAddress

+
+
+ +
@objcMembers
+public class BTThreeDSecurePostalAddress : NSObject
+ +
+
+

Postal address for 3D Secure flows

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional. Given name associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional. Surname associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 1 of the Address (eg. number, street, etc)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 2 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + line3 + +
    +
    +
    +
    +
    +
    +

    Optional. Line 3 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var line3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional. City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Optional. Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional. 2 letter country code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The phone number associated with the address

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html new file mode 100644 index 0000000000..a722a0f23d --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html @@ -0,0 +1,645 @@ + + + + BTThreeDSecureRenderType Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRenderType

+
+
+ +
@objcMembers
+public class BTThreeDSecureRenderType : NSObject, OptionSet
+ +
+
+

Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + rawValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let rawValue: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(rawValue:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    required public init(rawValue: Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + otp + +
    +
    +
    +
    +
    +
    +

    OTP

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let otp: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let html: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleSelect + +
    +
    +
    +
    +
    +
    +

    Single select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let singleSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + multiSelect + +
    +
    +
    +
    +
    +
    +

    Multi Select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let multiSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + oob + +
    +
    +
    +
    +
    +
    +

    OOB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let oob: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html new file mode 100644 index 0000000000..1dda2c88f0 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html @@ -0,0 +1,1047 @@ + + + + BTThreeDSecureRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRequest

+
+
+ +
@objcMembers
+public class BTThreeDSecureRequest : NSObject
+ +
+
+

Used to initialize a 3D Secure payment flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    A nonce to be verified by ThreeDSecure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customFields + +
    +
    +
    +
    +
    +
    +

    Object where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customFields: [String : String]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: NSDecimalNumber?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountType + +
    +
    +
    +
    +
    +
    +

    Optional. The account type selected by the cardholder

    +
    +

    Note

    + Some cards can be processed using either a credit or debit account and cardholders have the option to choose which account to use. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountType: BTThreeDSecureAccountType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The billing address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mobilePhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The mobile phone number used for verification

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mobilePhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional. The email used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingMethod + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping method chosen for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethod: BTThreeDSecureShippingMethod
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + additionalInformation + +
    +
    +
    +
    +
    +
    +

    Optional. The additional information used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var additionalInformation: BTThreeDSecureAdditionalInformation?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + challengeRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an authentication challenge will be forced if possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var challengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exemptionRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an exemption to the authentication challenge will be requested.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var exemptionRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The exemption type to be requested. If an exemption is requested and the exemption’s conditions are satisfied, then it will be applied.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestedExemptionType: BTThreeDSecureRequestedExemptionType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataOnlyRequested + +
    +
    +
    +
    +
    +
    +

    Optional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score +for the issuer to determine whether to approve. If data only is not supported by the processor, a validation error will be raised. +Non-Mastercard cardholders will fallback to a normal 3DS flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dataOnlyRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAddChallenge + +
    +
    +
    +
    +
    +
    +

    Optional. An authentication created using this property should only be used for adding a payment method to the merchant’s vault and not for creating transactions.

    + +

    Defaults to .unspecified.

    + +

    If set to .challengeRequested, the authentication challenge will be requested from the issuer to confirm adding new card to the merchant’s vault. +If set to .notRequested the authentication challenge will not be requested from the issuer. +If set to .unspecified, when the amount is 0, the authentication challenge will be requested from the issuer. +If set to .unspecified, when the amount is greater than 0, the authentication challenge will not be requested from the issuer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @available(*, deprecated, renamed: "cardAddChallengeRequested", message: "Use the `cardAddChallengeRequested` boolean property instead")
    +public var cardAddChallenge: BTThreeDSecureCardAddChallenge { get set }
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. An authentication created using this flag should only be used for vaulting operations (creation of customers’ credit cards or payment methods) and not for creating transactions. +If set to true, a card-add challenge will be requested from the issuer. +If set to false, a card-add challenge will not be requested. +If the parameter is missing, a card-add challenge will only be requested for $0 amount.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardAddChallengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + v2UICustomization + +
    +
    +
    +
    +
    +
    +

    Optional. UI Customization for 3DS2 challenge views.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var v2UICustomization: BTThreeDSecureV2UICustomization?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + uiType + +
    +
    +
    +
    +
    +
    +

    Optional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.

    + +

    Defaults to .both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var uiType: BTThreeDSecureUIType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + renderTypes + +
    +
    +
    +
    +
    +
    +

    Optional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    +
    +

    Note

    + When using BTThreeDSecureUIType.both or BTThreeDSecureUIType.html, all BTThreeDSecureRenderType options must be set. +When using BTThreeDSecureUIType.native, all BTThreeDSecureRenderType options except .html must be set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var renderTypes: [BTThreeDSecureRenderType]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A delegate for receiving information about the ThreeDSecure payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var threeDSecureRequestDelegate: BTThreeDSecureRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html new file mode 100644 index 0000000000..041ddee0cc --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureResult

+
+
+ +
@objcMembers
+public class BTThreeDSecureResult : NSObject
+ +
+
+

The result of a 3D Secure payment flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + tokenizedCard + +
    +
    +
    +
    +
    +
    +

    The BTCardNonce resulting from the 3D Secure flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var tokenizedCard: BTCardNonce?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure lookup. Contains liability shift and challenge information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookup: BTThreeDSecureLookup?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    The error message when the 3D Secure flow is unsuccessful

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html new file mode 100644 index 0000000000..dc96feefbd --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureV2BaseCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2BaseCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2BaseCustomization : NSObject
+ +
+
+

Base customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + textFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html new file mode 100644 index 0000000000..2b914e02be --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html @@ -0,0 +1,548 @@ + + + + BTThreeDSecureV2ButtonCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2ButtonCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Button customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the button corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html new file mode 100644 index 0000000000..78865cb2d7 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2LabelCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2LabelCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Label customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + headingTextColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html new file mode 100644 index 0000000000..de3ca0f316 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2TextBoxCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2TextBoxCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Text box customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + borderWidth + +
    +
    +
    +
    +
    +
    +

    Width (integer value) of the text box border.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderWidth: Int { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + borderColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the text box corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html new file mode 100644 index 0000000000..8f33ca73f5 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2ToolbarCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2ToolbarCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Toolbar customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headerText + +
    +
    +
    +
    +
    +
    +

    Text for the header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headerText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + buttonText + +
    +
    +
    +
    +
    +
    +

    Text for the button. For example, “Cancel”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var buttonText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html new file mode 100644 index 0000000000..db633e3c94 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html @@ -0,0 +1,611 @@ + + + + BTThreeDSecureV2UICustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2UICustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2UICustomization : NSObject
+ +
+
+

UI customization options for 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+ +
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html new file mode 100644 index 0000000000..fbe15a4615 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html @@ -0,0 +1,686 @@ + + + + BTVenmoAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoAccountNonce

+
+
+ +
@objcMembers
+public class BTVenmoAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a Venmo Account payment method

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    The email associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + externalID + +
    +
    +
    +
    +
    +
    +

    The external ID associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var externalID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    The first name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    The last name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    The phone number associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + username + +
    +
    +
    +
    +
    +
    +

    The username associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var username: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The primary billing address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The primary shipping address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html new file mode 100644 index 0000000000..a9f2a9bbb9 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html @@ -0,0 +1,697 @@ + + + + BTVenmoClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoClient

+
+
+ +
@objc
+public class BTVenmoClient : NSObject
+
extension BTVenmoClient: BTAppContextSwitchClient
+ +
+
+

Used to process Venmo payments

+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVenmoRequest:completion:)
    +public func tokenize(_ request: BTVenmoRequest, completion: @escaping (BTVenmoAccountNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A Venmo request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked when app switch is complete or an error occurs. On success, you will receive +an instance of BTVenmoAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    +
    +

    Throws

    + An Error describing the failure. If the user cancels out of the flow, the error code will be .canceled. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTVenmoRequest) async throws -> BTVenmoAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTVenmoAccountNonce

    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoAppInstalled() + +
    +
    +
    +
    +
    +
    +

    Returns true if the proper Venmo app is installed and configured correctly, returns false otherwise.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func isVenmoAppInstalled() -> Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Switches to the App Store to download the Venmo application.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func openVenmoAppPageInAppStore()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html new file mode 100644 index 0000000000..7d6532384d --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html @@ -0,0 +1,785 @@ + + + + BTVenmoLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoLineItem

+
+
+ +
@objcMembers
+public class BTVenmoLineItem : NSObject
+ +
+
+

A Venmo line item to be displayed in the Venmo Paysheet.

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var quantity: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var kind: BTVenmoLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var url: URL?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTVenmoLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: Int, unitAmount: String, name: String, kind: BTVenmoLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html new file mode 100644 index 0000000000..29b19e59e6 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html @@ -0,0 +1,951 @@ + + + + BTVenmoRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoRequest

+
+
+ +
@objcMembers
+public class BTVenmoRequest : NSObject
+ +
+
+

A BTVenmoRequest specifies options that contribute to the Venmo flow

+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + profileID + +
    +
    +
    +
    +
    +
    +

    Optional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the +Venmo app as a “Connected Merchant”. Venmo profile IDs can be found in the Braintree Control Panel. Leaving this nil will use the default Venmo profile.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var profileID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Whether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID. +Also, paymentMethodUsage on the BTVenmoRequest must be set to .multiUse.

    + +

    If this property is set to false, you can still vault the Venmo account on your server, provided that paymentMethodUsage is not set to .singleUse. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var vault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentMethodUsage + +
    +
    +
    +
    +
    +
    +

    If set to .multiUse, the Venmo payment will be authorized for future payments and can be vaulted. + If set to .singleUse, the Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentMethodUsage: BTVenmoPaymentMethodUsage
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s billing address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerBillingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s shipping address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerShippingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isFinalAmount + +
    +
    +
    +
    +
    +
    +

    Indicates whether the purchase amount is the final amount. +Removes “subject to change” notice in Venmo app paysheet UI. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isFinalAmount: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + subTotalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var subTotalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discountAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total discount amount applied on the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var discountAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total tax amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The grand total amount on the transaction that should be displayed on the paysheet.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var totalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional. The line items for this transaction. It can include up to 249 line items.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTVenmoLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fallbackToWeb + +
    +
    +
    +
    +
    +
    +

    Optional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.

    + +

    Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fallbackToWeb: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html new file mode 100644 index 0000000000..d7bd99d814 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html @@ -0,0 +1,1753 @@ + + + + Enumerations Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Enumerations

+

The following enumerations are available globally.

+ +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientTokenError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a client token.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + TokenizationKeyError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a Tokenization Key.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAPIClientError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNetwork + +
    +
    +
    +
    +
    +
    +

    Card type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTCardNetwork : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTHTTPError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with BTHTTP

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTJSONError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error returned from the native PayPal flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Mandate type for the SEPA Direct Debit request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTSEPADirectDebitMandateType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with American Express.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollectorError + +
    +
    +
    +
    +
    +
    +

    Error details associated with Braintree Data Collector.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Apple Pay.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Payment Flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The account type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureAccountType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The card add challenge request

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureCardAddChallenge : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    3D Secure requested exemption type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureRequestedExemptionType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The shipping method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureShippingMethod : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureUIType + +
    +
    +
    +
    +
    +
    +

    The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureUIType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button types that can be customized in 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureV2ButtonType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequestIntent + +
    +
    +
    +
    +
    +
    +

    Payment intent.

    +
    +

    Note

    + Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
    + +

    Capture payments later reference

    + +

    Create and process orders reference

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestIntent : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The call-to-action in the PayPal Checkout flow.

    +
    +

    Note

    + By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestUserAction : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with PayPal.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the UPC type of the line item.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemUPCType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLocaleCode + +
    +
    +
    +
    +
    +
    +

    A locale code to use for a transaction.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLocaleCode : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalPaymentType + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalPaymentType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestLandingPageType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAppSwitchError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo App Switch

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Usage type for the tokenized Venmo account

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoPaymentMethodUsage : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text and logo color option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingColor
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with PayPal Messaging.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Logo type option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingLogoType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Preferred message offer to display

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingOfferType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Message location within an application

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingPageType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text alignment option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingTextAlignment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html new file mode 100644 index 0000000000..c000b2cf6c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html @@ -0,0 +1,655 @@ + + + + BTAPIClientError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAPIClientError

+
+
+ +
public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Configuration fetch failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configurationUnavailable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notAuthorized + +
    +
    +
    +
    +
    +
    + +
      +
    1. Not authorized
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notAuthorized
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAPIClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedBase64Encoding + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed to base64 encode an authorizationFingerprint or tokenizationKey, when used as a cacheKey
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedBase64Encoding
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html new file mode 100644 index 0000000000..2bf9f73348 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html @@ -0,0 +1,622 @@ + + + + BTAmericanExpressError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAmericanExpressError

+
+
+ +
public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with American Express.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noRewardsData + +
    +
    +
    +
    +
    +
    + +
      +
    1. An API response was received with missing rewards data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noRewardsData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAmericanExpressClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html new file mode 100644 index 0000000000..3ed6567144 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html @@ -0,0 +1,556 @@ + + + + BTAnalyticsServiceError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTAnalyticsServiceError

+
+
+ +
public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid API client
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html new file mode 100644 index 0000000000..d4aecb7ffc --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html @@ -0,0 +1,655 @@ + + + + BTApplePayError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTApplePayError

+
+
+ +
public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Apple Pay.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupported + +
    +
    +
    +
    +
    +
    + +
      +
    1. Apple Pay is disabled in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupported
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. No Apple Pay Card data was returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noApplePayCardsReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTApplePayCardNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html new file mode 100644 index 0000000000..6790de0b98 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html @@ -0,0 +1,729 @@ + + + + BTCardError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardError

+
+
+ +
public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Customer provided invalid input
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case customerInputInvalid([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAlreadyExists(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Card already exists as a saved payment method
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cardAlreadyExists([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTCardError, rhs: BTCardError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html new file mode 100644 index 0000000000..644ef3ef45 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html @@ -0,0 +1,887 @@ + + + + BTCardNetwork Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTCardNetwork

+
+
+ +
@objc
+public enum BTCardNetwork : Int
+ +
+
+

Card type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    +

    Unknown card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + AMEX + +
    +
    +
    +
    +
    +
    +

    American Express

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case AMEX
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dinersClub + +
    +
    +
    +
    +
    +
    +

    Diners Club

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dinersClub
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discover + +
    +
    +
    +
    +
    +
    +

    Discover

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case discover
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + masterCard + +
    +
    +
    +
    +
    +
    +

    Mastercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case masterCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + visa + +
    +
    +
    +
    +
    +
    +

    Visa

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case visa
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + JCB + +
    +
    +
    +
    +
    +
    +

    JCB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case JCB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + laser + +
    +
    +
    +
    +
    +
    +

    Laser

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case laser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + maestro + +
    +
    +
    +
    +
    +
    +

    Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case maestro
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unionPay + +
    +
    +
    +
    +
    +
    +

    Union Pay

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unionPay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hiper + +
    +
    +
    +
    +
    +
    +

    Hiper

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hiper
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hipercard + +
    +
    +
    +
    +
    +
    +

    Hipercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hipercard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + solo + +
    +
    +
    +
    +
    +
    +

    Solo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case solo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + switch + +
    +
    +
    +
    +
    +
    +

    Switch

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `switch`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ukMaestro + +
    +
    +
    +
    +
    +
    +

    UK Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ukMaestro
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html new file mode 100644 index 0000000000..60b21d0e6a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html @@ -0,0 +1,688 @@ + + + + BTClientTokenError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTClientTokenError

+
+
+ +
public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a client token.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Authorization fingerprint was not present or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidConfigURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Config URL was missing or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidConfigURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidFormat(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid client token format
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidFormat(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupportedVersion + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unsupported client token version
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupportedVersion
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedDecoding(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed decoding from Base64 or UTF8
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedDecoding(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html new file mode 100644 index 0000000000..83fbd4b508 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html @@ -0,0 +1,622 @@ + + + + BTDataCollectorError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTDataCollectorError

+
+
+ +
public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with Braintree Data Collector.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + encodingFailure + +
    +
    +
    +
    +
    +
    + +
      +
    1. The device data could not be encoded.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case encodingFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html new file mode 100644 index 0000000000..6377637d1a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html @@ -0,0 +1,994 @@ + + + + BTHTTPError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTHTTPError

+
+
+ +
public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with BTHTTP

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error (reserved)
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The response had a Content-Type header that is not supported
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case responseContentTypeNotAcceptable([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 4xx error, e.g. 422, indicating a problem with the client’s request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + serverError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 5xx server error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serverError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBaseURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTHTTP instance was missing a base URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBaseURL([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rateLimitError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 429, indicating a rate limiting error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case rateLimitError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataNotFound + +
    +
    +
    +
    +
    +
    + +
      +
    1. The data object was unexpectedly nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dataNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + httpResponseInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The HTTP response could not be created or is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpResponseInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + urlStringInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL string is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case urlStringInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientApiURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The client API URL is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientApiURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The authorization fingerprint is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to convert Encodable type to [String: Any] dictionary
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serializationError(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated HTTPClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTHTTPError, rhs: BTHTTPError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html new file mode 100644 index 0000000000..f6fcc29b2a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html @@ -0,0 +1,621 @@ + + + + BTJSONError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTJSONError

+
+
+ +
public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. JSONSerialization failure
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + indexInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid index
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case indexInvalid(Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + keyInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid key
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case keyInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html new file mode 100644 index 0000000000..8a3bf02633 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html @@ -0,0 +1,928 @@ + + + + BTLocalPaymentError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentError

+
+
+ +
public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Payment Flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Local Payments are disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. UIApplication failed to switch to browser
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noAccountData + +
    +
    +
    +
    +
    +
    + +
      +
    1. No payment flow account data returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noAccountData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing nonce value in account response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingRedirectURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL found to display for payment authorization
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingRedirectURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL was returned via the ASWebAuthenticationSession completion callback
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTLocalPaymentError, rhs: BTLocalPaymentError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html new file mode 100644 index 0000000000..dfd96ce17c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html @@ -0,0 +1,994 @@ + + + + BTPayPalError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalError

+
+
+ +
public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with PayPal.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. HTTP POST request returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpPostRequestError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The web approval URL, web redirect URL, PayPal native app approval URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The ASWebAuthenticationSession URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case asWebAuthenticationSessionURLInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURLAction + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL action is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURLAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTPayPalAccountNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The App Switch return URL did not contain the cancel or success path.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchReturnURLPathInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBAToken + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing BA Token for App Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBAToken
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalError, rhs: BTPayPalError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html new file mode 100644 index 0000000000..c380dc9b66 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTPayPalLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLineItemKind

+
+
+ +
@objc
+public enum BTPayPalLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html new file mode 100644 index 0000000000..45d7dcba60 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html @@ -0,0 +1,677 @@ + + + + BTPayPalLineItemUPCType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLineItemUPCType

+
+
+ +
@objc
+public enum BTPayPalLineItemUPCType : Int
+ +
+
+

Use this option to specify the UPC type of the line item.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_A + +
    +
    +
    +
    +
    +
    +

    Upc Type A

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_A
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_B + +
    +
    +
    +
    +
    +
    +

    Upc Type B

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_B
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_C + +
    +
    +
    +
    +
    +
    +

    Upc Type C

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_C
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_D + +
    +
    +
    +
    +
    +
    +

    Upc Type D

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_D
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_E + +
    +
    +
    +
    +
    +
    +

    Upc Type E

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_E
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_2 + +
    +
    +
    +
    +
    +
    +

    Upc Type 2

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_2
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_5 + +
    +
    +
    +
    +
    +
    +

    Upc Type 5

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_5
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html new file mode 100644 index 0000000000..99ec0b2688 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html @@ -0,0 +1,1249 @@ + + + + BTPayPalLocaleCode Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalLocaleCode

+
+
+ +
@objc
+public enum BTPayPalLocaleCode : Int
+ +
+
+

A locale code to use for a transaction.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + da_DK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case da_DK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + de_DE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case de_DE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_AU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_AU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_GB + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_GB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_US + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_US
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_ES + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_ES
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_CA + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_CA
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_FR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_FR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + id_ID + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case id_ID
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + it_IT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case it_IT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ja_JP + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ja_JP
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ko_KR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ko_KR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nl_NL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case nl_NL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + no_NO + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case no_NO
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pl_PL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pl_PL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_BR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_BR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_PT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_PT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ru_RU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ru_RU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sv_SE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sv_SE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + th_TH + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case th_TH
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + tr_TR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tr_TR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_CN + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_CN
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_HK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_HK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_TW + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_TW
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_XC
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html new file mode 100644 index 0000000000..557b779e57 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingColor Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingColor

+
+
+ +
public enum BTPayPalMessagingColor
+ +
+
+

Text and logo color option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + black + +
    +
    +
    +
    +
    +
    +

    Black text with a color logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case black
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + white + +
    +
    +
    +
    +
    +
    +

    White text with a white logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case white
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monochrome + +
    +
    +
    +
    +
    +
    +

    Black text with a black logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case monochrome
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + grayscale + +
    +
    +
    +
    +
    +
    +

    Black text with a desaturated logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case grayscale
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html new file mode 100644 index 0000000000..07e5202304 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html @@ -0,0 +1,594 @@ + + + + BTPayPalMessagingError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingError

+
+
+ +
public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with PayPal Messaging.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html new file mode 100644 index 0000000000..585af6fb93 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingLogoType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingLogoType

+
+
+ +
public enum BTPayPalMessagingLogoType
+ +
+
+

Logo type option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + inline + +
    +
    +
    +
    +
    +
    +

    PayPal logo positioned inline within the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case inline
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + primary + +
    +
    +
    +
    +
    +
    +

    Primary logo including both the PayPal monogram and logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case primary
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + alternative + +
    +
    +
    +
    +
    +
    +

    Alternative logo including just the PayPal monogram

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case alternative
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    “PayPal” as bold text inline with the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html new file mode 100644 index 0000000000..a7a059d242 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingOfferType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingOfferType

+
+
+ +
public enum BTPayPalMessagingOfferType
+ +
+
+

Preferred message offer to display

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + payLaterShortTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later short term installment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterShortTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterLongTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later long term installments

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterLongTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterPayInOne + +
    +
    +
    +
    +
    +
    +

    Pay Later deferred payment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterPayInOne
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    PayPal Credit No Interest

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalCreditNoInterest
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html new file mode 100644 index 0000000000..edb325201e --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html @@ -0,0 +1,621 @@ + + + + BTPayPalMessagingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingPageType

+
+
+ +
public enum BTPayPalMessagingPageType
+ +
+
+

Message location within an application

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + home + +
    +
    +
    +
    +
    +
    +

    Home view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case home
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productDetails + +
    +
    +
    +
    +
    +
    +

    Individual product details view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case productDetails
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cart + +
    +
    +
    +
    +
    +
    +

    Shopping cart view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + miniCart + +
    +
    +
    +
    +
    +
    +

    Popover shopping cart view that covers part of the view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case miniCart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + searchResults + +
    +
    +
    +
    +
    +
    +

    Search results

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case searchResults
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html new file mode 100644 index 0000000000..fe3d5e216a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html @@ -0,0 +1,531 @@ + + + + BTPayPalMessagingTextAlignment Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingTextAlignment

+
+
+ +
public enum BTPayPalMessagingTextAlignment
+ +
+
+

Text alignment option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + left + +
    +
    +
    +
    +
    +
    +

    Text aligned to the left

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case left
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + center + +
    +
    +
    +
    +
    +
    +

    Text aligned to the center

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case center
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + right + +
    +
    +
    +
    +
    +
    +

    Text aligned to the right

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case right
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html new file mode 100644 index 0000000000..1c10f1671c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html @@ -0,0 +1,994 @@ + + + + BTPayPalNativeCheckoutError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalNativeCheckoutError

+
+
+ +
public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error returned from the native PayPal flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidRequest + +
    +
    +
    +
    +
    +
    + +
      +
    1. Request is not of type BTPayPalNativeCheckoutRequest or BTPayPalNativeVaultRequest
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payPalNotEnabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is not enabled for this merchant in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalNotEnabled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidEnvironment + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid environment identifier found in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidEnvironment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to create PayPal order
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case orderCreationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkoutSDKFailed(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPalCheckout SDK returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkoutSDKFailed(PayPalCheckout.ErrorInfo)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Tokenization with the Braintree Gateway failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tokenizationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to parse tokenization result
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case parsingTokenizationResultFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidJSONResponse + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid JSON response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidJSONResponse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalNativeCheckoutClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing return url in approval data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalNativeCheckoutError, rhs: BTPayPalNativeCheckoutError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html new file mode 100644 index 0000000000..6dc219afd8 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html @@ -0,0 +1,496 @@ + + + + BTPayPalPaymentType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalPaymentType

+
+
+ +
@objc
+public enum BTPayPalPaymentType : Int
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Vault

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case vault
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html new file mode 100644 index 0000000000..4b9760ba7c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html @@ -0,0 +1,565 @@ + + + + BTPayPalRequestIntent Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequestIntent

+
+
+ +
@objc
+public enum BTPayPalRequestIntent : Int
+ +
+
+

Payment intent.

+
+

Note

+ Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
+ +

Capture payments later reference

+ +

Create and process orders reference

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + authorize + +
    +
    +
    +
    +
    +
    +

    Authorize

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authorize
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sale + +
    +
    +
    +
    +
    +
    +

    Sale

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sale
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + order + +
    +
    +
    +
    +
    +
    +

    Order

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case order
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + stringValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var stringValue: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html new file mode 100644 index 0000000000..fb6011ee26 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html @@ -0,0 +1,527 @@ + + + + BTPayPalRequestLandingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequestLandingPageType

+
+
+ +
@objc
+public enum BTPayPalRequestLandingPageType : Int
+ +
+
+

Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + login + +
    +
    +
    +
    +
    +
    +

    Login

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case login
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billing + +
    +
    +
    +
    +
    +
    +

    Billing

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case billing
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html new file mode 100644 index 0000000000..ed05584275 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html @@ -0,0 +1,504 @@ + + + + BTPayPalRequestUserAction Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalRequestUserAction

+
+
+ +
@objc
+public enum BTPayPalRequestUserAction : Int
+ +
+
+

The call-to-action in the PayPal Checkout flow.

+
+

Note

+ By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payNow + +
    +
    +
    +
    +
    +
    +

    Pay Now

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payNow
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html new file mode 100644 index 0000000000..82694102bf --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html @@ -0,0 +1,820 @@ + + + + BTSEPADirectDebitError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitError

+
+
+ +
public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with SEPA Direct Debit.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webFlowCanceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. SEPA Direct Debit flow was canceled by the user.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webFlowCanceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL returned from the web flow was invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultReturnedNil + +
    +
    +
    +
    +
    +
    + +
      +
    1. The result of the create mandate request was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultReturnedNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + approvalURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The approval URL is invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case approvalURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The web authentication session result was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authenticationResultNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTSEPADirectDebitNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTSEPADirectDebitClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html new file mode 100644 index 0000000000..05272a8cd4 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html @@ -0,0 +1,495 @@ + + + + BTSEPADirectDebitMandateType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTSEPADirectDebitMandateType

+
+
+ +
@objc
+public enum BTSEPADirectDebitMandateType : Int
+ +
+
+

Mandate type for the SEPA Direct Debit request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + oneOff + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case oneOff
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurrent + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case recurrent
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html new file mode 100644 index 0000000000..c78384b5ef --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html @@ -0,0 +1,588 @@ + + + + BTShopperInsightsError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsError

+
+
+ +
public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + emptyBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A nil body was returned from the payment method request and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case emptyBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAuthorization + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid authorization type
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html new file mode 100644 index 0000000000..f4713db7b4 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureAccountType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureAccountType

+
+
+ +
@objc
+public enum BTThreeDSecureAccountType : Int
+ +
+
+

The account type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html new file mode 100644 index 0000000000..ebf97bdabf --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureCardAddChallenge Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureCardAddChallenge

+
+
+ +
@objc
+public enum BTThreeDSecureCardAddChallenge : Int
+ +
+
+

The card add challenge request

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requested + +
    +
    +
    +
    +
    +
    +

    Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case requested
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notRequested + +
    +
    +
    +
    +
    +
    +

    Not Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notRequested
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html new file mode 100644 index 0000000000..3c8c94f889 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html @@ -0,0 +1,894 @@ + + + + BTThreeDSecureError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureError

+
+
+ +
public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedLookup(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the backend card lookup phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedLookup([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the user-facing authentication phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedAuthentication(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + configuration(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was not configured correctly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configuration(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. User canceled the 3DS 2 flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTAPIClient was invalid or missing
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTThreeDSecureClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exceededTimeoutLimit + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was idle and exceeded timout limit
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case exceededTimeoutLimit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTThreeDSecureError, rhs: BTThreeDSecureError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html new file mode 100644 index 0000000000..fdfe36bc5a --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureRequestedExemptionType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRequestedExemptionType

+
+
+ +
@objc
+public enum BTThreeDSecureRequestedExemptionType : Int
+ +
+
+

3D Secure requested exemption type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lowValue + +
    +
    +
    +
    +
    +
    +

    Low value

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case lowValue
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + secureCorporate + +
    +
    +
    +
    +
    +
    +

    Secure corporate

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case secureCorporate
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + trustedBeneficiary + +
    +
    +
    +
    +
    +
    +

    Trusted beneficiary

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case trustedBeneficiary
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Transaction risk analysis

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case transactionRiskAnalysis
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html new file mode 100644 index 0000000000..985709e94f --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html @@ -0,0 +1,647 @@ + + + + BTThreeDSecureShippingMethod Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureShippingMethod

+
+
+ +
@objc
+public enum BTThreeDSecureShippingMethod : Int
+ +
+
+

The shipping method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sameDay + +
    +
    +
    +
    +
    +
    +

    Same Day

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sameDay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expedited + +
    +
    +
    +
    +
    +
    +

    Expedited

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case expedited
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + priority + +
    +
    +
    +
    +
    +
    +

    Priority

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case priority
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ground + +
    +
    +
    +
    +
    +
    +

    Ground

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ground
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + electronicDelivery + +
    +
    +
    +
    +
    +
    +

    Electronic Delivery

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case electronicDelivery
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shipToStore + +
    +
    +
    +
    +
    +
    +

    Ship to Store

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case shipToStore
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html new file mode 100644 index 0000000000..10af675aa1 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureUIType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureUIType

+
+
+ +
@objc
+public enum BTThreeDSecureUIType : Int
+ +
+
+

The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + native + +
    +
    +
    +
    +
    +
    +

    Native

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case native
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case html
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + both + +
    +
    +
    +
    +
    +
    +

    Both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case both
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html new file mode 100644 index 0000000000..e54e80f0ec --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureV2ButtonType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2ButtonType

+
+
+ +
@objc
+public enum BTThreeDSecureV2ButtonType : Int
+ +
+
+

Button types that can be customized in 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + verify + +
    +
    +
    +
    +
    +
    +

    Verify button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case verify
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + continue + +
    +
    +
    +
    +
    +
    +

    Continue button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `continue`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + next + +
    +
    +
    +
    +
    +
    +

    Next button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case next
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cancel + +
    +
    +
    +
    +
    +
    +

    Cancel button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cancel
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resend + +
    +
    +
    +
    +
    +
    +

    Resend button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resend
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html new file mode 100644 index 0000000000..5248c84938 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html @@ -0,0 +1,556 @@ + + + + BTVenmoAppSwitchError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoAppSwitchError

+
+
+ +
public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo App Switch

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + returnURLError(_:_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The error returned from the Venmo return URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case returnURLError(Int, String?)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html new file mode 100644 index 0000000000..51c9e084b5 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html @@ -0,0 +1,919 @@ + + + + BTVenmoError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoError

+
+
+ +
public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Venmo is not enabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appNotAvailable + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo app is not installed or configured for app Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appNotAvailable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Bundle display name is nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case bundleDisplayNameMissing
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidReturnURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Return URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidReturnURL(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. No body was returned from the request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Invalid request URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Enriched Customer Data is disabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case enrichedCustomerDataDisabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. One or more values in redirect URL are invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURLParameter
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html new file mode 100644 index 0000000000..834faf546d --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTVenmoLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoLineItemKind

+
+
+ +
@objc
+public enum BTVenmoLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html new file mode 100644 index 0000000000..0ad28d2ba2 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html @@ -0,0 +1,497 @@ + + + + BTVenmoPaymentMethodUsage Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTVenmoPaymentMethodUsage

+
+
+ +
@objc
+public enum BTVenmoPaymentMethodUsage : Int
+ +
+
+

Usage type for the tokenized Venmo account

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + multiUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for future payments and can be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case multiUse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case singleUse
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html new file mode 100644 index 0000000000..7f26e43d42 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html @@ -0,0 +1,556 @@ + + + + TokenizationKeyError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

TokenizationKeyError

+
+
+ +
public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a Tokenization Key.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The tokenization key provided was invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html new file mode 100644 index 0000000000..efd0f5c1ec --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html @@ -0,0 +1,493 @@ + + + + Extensions Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Extensions

+

The following extensions are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + UIApplication + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    extension UIApplication: URLOpener
    + +
    +
    +
    +
    +
  • +
+
+
+
+ + +
+ +

CardinalValidationDelegate Protocol Conformance +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html new file mode 100644 index 0000000000..ce17d8975e --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html @@ -0,0 +1,468 @@ + + + + BTThreeDSecureV2Provider Extension Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureV2Provider

+
+
+ +
extension BTThreeDSecureV2Provider: CardinalValidationDelegate
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html new file mode 100644 index 0000000000..9446bb3bfc --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html @@ -0,0 +1,523 @@ + + + + Protocols Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Protocols

+

The following protocols are available globally.

+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html new file mode 100644 index 0000000000..cc2f50f9cd --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTLocalPaymentRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTLocalPaymentRequestDelegate

+
+
+ +
@objc
+public protocol BTLocalPaymentRequestDelegate
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Required delegate method which returns the payment ID before the flow starts.

    + +

    Use this to do any preprocessing and setup for webhooks. Use the start() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func localPaymentStarted(_ request: BTLocalPaymentRequest, paymentID: String, start: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html new file mode 100644 index 0000000000..200a046994 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html @@ -0,0 +1,591 @@ + + + + BTPayPalMessagingDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingDelegate

+
+
+ +
public protocol BTPayPalMessagingDelegate : AnyObject
+ +
+
+

Protocol for BTPayPalMessagingView events

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html new file mode 100644 index 0000000000..b8c754459f --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTThreeDSecureRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTThreeDSecureRequestDelegate

+
+
+ +
@objc
+public protocol BTThreeDSecureRequestDelegate
+ +
+
+

Protocol for ThreeDSecure Request flow

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Required delegate method which returns the ThreeDSecure lookup result before the flow continues. + Use this to do any UI preparation or custom lookup result handling. Use the next() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func onLookupComplete(_ request: BTThreeDSecureRequest, lookupResult: BTThreeDSecureResult, next: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html new file mode 100644 index 0000000000..c5fd6abcdc --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html @@ -0,0 +1,570 @@ + + + + Structures Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Structures

+

The following structures are available globally.

+ +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTPayPalMessagingRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Buyer data required to use the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + Phone + +
    +
    +
    +
    +
    +
    +

    Buyer’s phone number details for use with the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct Phone : Encodable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A summary of the buyer’s recommended payment methods.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsResult
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html new file mode 100644 index 0000000000..1159397918 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html @@ -0,0 +1,572 @@ + + + + BTPayPalMessagingRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTPayPalMessagingRequest

+
+
+ +
public struct BTPayPalMessagingRequest
+ +
+
+

Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTPayPalMessaging

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: Double? = nil,
    +    pageType: BTPayPalMessagingPageType? = nil,
    +    offerType: BTPayPalMessagingOfferType? = nil,
    +    buyerCountry: String? = nil,
    +    logoType: BTPayPalMessagingLogoType = .inline,
    +    textAlignment: BTPayPalMessagingTextAlignment = .right,
    +    color: BTPayPalMessagingColor = .black
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + amount + + +
    +

    Price expressed in cents amount based on the current context (i.e. individual product price vs total cart price)

    +
    +
    + + pageType + + +
    +

    Message screen location (e.g. product, cart, home)

    +
    +
    + + offerType + + +
    +

    Preferred message offer to display

    +
    +
    + + buyerCountry + + +
    +

    Consumer’s country (Integrations must be approved by PayPal to use this option)

    +
    +
    + + logoType + + +
    +

    Logo type option for a PayPal Message. Defaults to .inline

    +
    +
    + + textAlignment + + +
    +

    Text alignment option for a PayPal Message. Defaults to .right

    +
    +
    + + color + + +
    +

    Text and logo color option for a PayPal Message. Defaults to .black

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html new file mode 100644 index 0000000000..b26c3c68d1 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html @@ -0,0 +1,624 @@ + + + + BTShopperInsightsRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsRequest

+
+
+ +
public struct BTShopperInsightsRequest
+ +
+
+

Buyer data required to use the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(email:phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String, phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(email:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html new file mode 100644 index 0000000000..6723e062bc --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html @@ -0,0 +1,531 @@ + + + + BTShopperInsightsResult Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

BTShopperInsightsResult

+
+
+ +
public struct BTShopperInsightsResult
+ +
+
+

A summary of the buyer’s recommended payment methods.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + isPayPalRecommended + +
    +
    +
    +
    +
    +
    +

    If true, display the PayPal button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isPayPalRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoRecommended + +
    +
    +
    +
    +
    +
    +

    If true, dislpay the Venmo button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isVenmoRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isEligibleInPayPalNetwork: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html new file mode 100644 index 0000000000..8965738018 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html @@ -0,0 +1,507 @@ + + + + Phone Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

Phone

+
+
+ +
public struct Phone : Encodable
+ +
+
+

Buyer’s phone number details for use with the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest.Phone.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(countryCode: String, nationalNumber: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + countryCode + + +
    +

    The buyer’s country code prefix to the national telephone number. An identifier for a specific country. Must not contain special characters.

    +
    +
    + + nationalNumber + + +
    +

    The buyer’s national phone number. Must not contain special characters.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css new file mode 100644 index 0000000000..c170357ce7 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css @@ -0,0 +1,202 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +/* Credit to https://gist.github.com/wataru420/2048287 */ +.highlight .c { + color: #999988; + font-style: italic; } + +.highlight .err { + color: #a61717; + background-color: #e3d2d2; } + +.highlight .k { + color: #000000; + font-weight: bold; } + +.highlight .o { + color: #000000; + font-weight: bold; } + +.highlight .cm { + color: #999988; + font-style: italic; } + +.highlight .cp { + color: #999999; + font-weight: bold; } + +.highlight .c1 { + color: #999988; + font-style: italic; } + +.highlight .cs { + color: #999999; + font-weight: bold; + font-style: italic; } + +.highlight .gd { + color: #000000; + background-color: #ffdddd; } + +.highlight .gd .x { + color: #000000; + background-color: #ffaaaa; } + +.highlight .ge { + color: #000000; + font-style: italic; } + +.highlight .gr { + color: #aa0000; } + +.highlight .gh { + color: #999999; } + +.highlight .gi { + color: #000000; + background-color: #ddffdd; } + +.highlight .gi .x { + color: #000000; + background-color: #aaffaa; } + +.highlight .go { + color: #888888; } + +.highlight .gp { + color: #555555; } + +.highlight .gs { + font-weight: bold; } + +.highlight .gu { + color: #aaaaaa; } + +.highlight .gt { + color: #aa0000; } + +.highlight .kc { + color: #000000; + font-weight: bold; } + +.highlight .kd { + color: #000000; + font-weight: bold; } + +.highlight .kp { + color: #000000; + font-weight: bold; } + +.highlight .kr { + color: #000000; + font-weight: bold; } + +.highlight .kt { + color: #445588; } + +.highlight .m { + color: #009999; } + +.highlight .s { + color: #d14; } + +.highlight .na { + color: #008080; } + +.highlight .nb { + color: #0086B3; } + +.highlight .nc { + color: #445588; + font-weight: bold; } + +.highlight .no { + color: #008080; } + +.highlight .ni { + color: #800080; } + +.highlight .ne { + color: #990000; + font-weight: bold; } + +.highlight .nf { + color: #990000; } + +.highlight .nn { + color: #555555; } + +.highlight .nt { + color: #000080; } + +.highlight .nv { + color: #008080; } + +.highlight .ow { + color: #000000; + font-weight: bold; } + +.highlight .w { + color: #bbbbbb; } + +.highlight .mf { + color: #009999; } + +.highlight .mh { + color: #009999; } + +.highlight .mi { + color: #009999; } + +.highlight .mo { + color: #009999; } + +.highlight .sb { + color: #d14; } + +.highlight .sc { + color: #d14; } + +.highlight .sd { + color: #d14; } + +.highlight .s2 { + color: #d14; } + +.highlight .se { + color: #d14; } + +.highlight .sh { + color: #d14; } + +.highlight .si { + color: #d14; } + +.highlight .sx { + color: #d14; } + +.highlight .sr { + color: #009926; } + +.highlight .s1 { + color: #d14; } + +.highlight .ss { + color: #990073; } + +.highlight .bp { + color: #999999; } + +.highlight .vc { + color: #008080; } + +.highlight .vg { + color: #008080; } + +.highlight .vi { + color: #008080; } + +.highlight .il { + color: #009999; } diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css new file mode 100644 index 0000000000..9d4b08b8c3 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css @@ -0,0 +1,405 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +*, *:before, *:after { + box-sizing: inherit; } + +body { + margin: 0; + background: #fff; + color: #333; + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + letter-spacing: .2px; + -webkit-font-smoothing: antialiased; + box-sizing: border-box; } + +h1 { + font-size: 2rem; + font-weight: 700; + margin: 1.275em 0 0.6em; } + +h2 { + font-size: 1.75rem; + font-weight: 700; + margin: 1.275em 0 0.3em; } + +h3 { + font-size: 1.5rem; + font-weight: 700; + margin: 1em 0 0.3em; } + +h4 { + font-size: 1.25rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h5 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h6 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; + color: #777; } + +p { + margin: 0 0 1em; } + +ul, ol { + padding: 0 0 0 2em; + margin: 0 0 0.85em; } + +blockquote { + margin: 0 0 0.85em; + padding: 0 15px; + color: #858585; + border-left: 4px solid #e5e5e5; } + +img { + max-width: 100%; } + +a { + color: #4183c4; + text-decoration: none; } + a:hover, a:focus { + outline: 0; + text-decoration: underline; } + a.discouraged { + text-decoration: line-through; } + a.discouraged:hover, a.discouraged:focus { + text-decoration: underline line-through; } + +table { + background: #fff; + width: 100%; + border-collapse: collapse; + border-spacing: 0; + overflow: auto; + margin: 0 0 0.85em; } + +tr:nth-child(2n) { + background-color: #fbfbfb; } + +th, td { + padding: 6px 13px; + border: 1px solid #ddd; } + +hr { + height: 1px; + border: none; + background-color: #ddd; } + +pre { + margin: 0 0 1.275em; + padding: .85em 1em; + overflow: auto; + background: #f7f7f7; + font-size: .85em; + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +code { + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +.item-container p > code, .item-container li > code, .top-matter p > code, .top-matter li > code { + background: #f7f7f7; + padding: .2em; } + .item-container p > code:before, .item-container p > code:after, .item-container li > code:before, .item-container li > code:after, .top-matter p > code:before, .top-matter p > code:after, .top-matter li > code:before, .top-matter li > code:after { + letter-spacing: -.2em; + content: "\00a0"; } + +pre code { + padding: 0; + white-space: pre; } + +.content-wrapper { + display: flex; + flex-direction: column; } + @media (min-width: 768px) { + .content-wrapper { + flex-direction: row; } } +.header { + display: flex; + padding: 8px; + font-size: 0.875em; + background: #444; + color: #999; } + +.header-col { + margin: 0; + padding: 0 8px; } + +.header-col--primary { + flex: 1; } + +.header-link { + color: #fff; } + +.header-icon { + padding-right: 2px; + vertical-align: -3px; + height: 16px; } + +.breadcrumbs { + font-size: 0.875em; + padding: 8px 16px; + margin: 0; + background: #fbfbfb; + border-bottom: 1px solid #ddd; } + +.carat { + height: 10px; + margin: 0 5px; } + +.navigation { + order: 2; } + @media (min-width: 768px) { + .navigation { + order: 1; + width: 25%; + max-width: 300px; + padding-bottom: 64px; + overflow: hidden; + word-wrap: normal; + background: #fbfbfb; + border-right: 1px solid #ddd; } } +.nav-groups { + list-style-type: none; + padding-left: 0; } + +.nav-group-name { + border-bottom: 1px solid #ddd; + padding: 8px 0 8px 16px; } + +.nav-group-name-link { + color: #333; } + +.nav-group-tasks { + margin: 8px 0; + padding: 0 0 0 8px; } + +.nav-group-task { + font-size: 1em; + list-style-type: none; + white-space: nowrap; } + +.nav-group-task-link { + color: #808080; } + +.main-content { + order: 1; } + @media (min-width: 768px) { + .main-content { + order: 2; + flex: 1; + padding-bottom: 60px; } } +.section { + padding: 0 32px; + border-bottom: 1px solid #ddd; } + +.section-content { + max-width: 834px; + margin: 0 auto; + padding: 16px 0; } + +.section-name { + color: #666; + display: block; } + .section-name p { + margin-bottom: inherit; } + +.declaration .highlight { + overflow-x: initial; + padding: 8px 0; + margin: 0; + background-color: transparent; + border: none; } + +.task-group-section { + border-top: 1px solid #ddd; } + +.task-group { + padding-top: 0px; } + +.task-name-container a[name]:before { + content: ""; + display: block; } + +.section-name-container { + position: relative; } + .section-name-container .section-name-link { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + margin-bottom: 0; } + .section-name-container .section-name { + position: relative; + pointer-events: none; + z-index: 1; } + .section-name-container .section-name a { + pointer-events: auto; } + +.item-container { + padding: 0; } + +.item { + padding-top: 8px; + width: 100%; + list-style-type: none; } + .item a[name]:before { + content: ""; + display: block; } + .item .token, .item .direct-link { + display: inline-block; + text-indent: -20px; + padding-left: 3px; + margin-left: 20px; + font-size: 1rem; } + +.declaration-note { + font-size: .85em; + color: #808080; + font-style: italic; } + +.pointer-container { + border-bottom: 1px solid #ddd; + left: -23px; + padding-bottom: 13px; + position: relative; + width: 110%; } + +.pointer { + left: 21px; + top: 7px; + display: block; + position: absolute; + width: 12px; + height: 12px; + border-left: 1px solid #ddd; + border-top: 1px solid #ddd; + background: #fff; + transform: rotate(45deg); } + +.height-container { + display: none; + position: relative; + width: 100%; + overflow: hidden; } + .height-container .section { + background: #fff; + border: 1px solid #ddd; + border-top-width: 0; + padding-top: 10px; + padding-bottom: 5px; + padding: 8px 16px; } + +.aside, .language { + padding: 6px 12px; + margin: 12px 0; + border-left: 5px solid #dddddd; + overflow-y: hidden; } + .aside .aside-title, .language .aside-title { + font-size: 9px; + letter-spacing: 2px; + text-transform: uppercase; + padding-bottom: 0; + margin: 0; + color: #aaa; + -webkit-user-select: none; } + .aside p:last-child, .language p:last-child { + margin-bottom: 0; } + +.language { + border-left: 5px solid #cde9f4; } + .language .aside-title { + color: #4183c4; } + +.aside-warning, .aside-deprecated, .aside-unavailable { + border-left: 5px solid #ff6666; } + .aside-warning .aside-title, .aside-deprecated .aside-title, .aside-unavailable .aside-title { + color: #ff0000; } + +.graybox { + border-collapse: collapse; + width: 100%; } + .graybox p { + margin: 0; + word-break: break-word; + min-width: 50px; } + .graybox td { + border: 1px solid #ddd; + padding: 5px 25px 5px 10px; + vertical-align: middle; } + .graybox tr td:first-of-type { + text-align: right; + padding: 7px; + vertical-align: top; + word-break: normal; + width: 40px; } + +.slightly-smaller { + font-size: 0.9em; } + +.footer { + padding: 8px 16px; + background: #444; + color: #ddd; + font-size: 0.8em; } + .footer p { + margin: 8px 0; } + .footer a { + color: #fff; } + +html.dash .header, html.dash .breadcrumbs, html.dash .navigation { + display: none; } + +html.dash .height-container { + display: block; } + +form[role=search] input { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 24px; + padding: 0 10px; + margin: 0; + border: none; + border-radius: 1em; } + .loading form[role=search] input { + background: white url(../img/spinner.gif) center right 4px no-repeat; } + +form[role=search] .tt-menu { + margin: 0; + min-width: 300px; + background: #fbfbfb; + color: #333; + border: 1px solid #ddd; } + +form[role=search] .tt-highlight { + font-weight: bold; } + +form[role=search] .tt-suggestion { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + padding: 0 8px; } + form[role=search] .tt-suggestion span { + display: table-cell; + white-space: nowrap; } + form[role=search] .tt-suggestion .doc-parent-name { + width: 100%; + text-align: right; + font-weight: normal; + font-size: 0.9em; + padding-left: 16px; } + +form[role=search] .tt-suggestion:hover, +form[role=search] .tt-suggestion.tt-cursor { + cursor: pointer; + background-color: #4183c4; + color: #fff; } + +form[role=search] .tt-suggestion:hover .doc-parent-name, +form[role=search] .tt-suggestion.tt-cursor .doc-parent-name { + color: #fff; } diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png new file mode 100755 index 0000000000000000000000000000000000000000..29d2f7fd4955fca6bc6fb740e0373a2c358c398e GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRo!3HEV4DF?Wlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6JlqAi{-jv*Ddl5#RKJQ5NTUZgiPI4RUKGIKU?u8L&ndhX1t za+0CMVUnT(Gnb}ei=c~x==tMH^F1_tBocXwcoSWoO-SZY-o>!8%^=Bms)(~h;m_U( zXNixk28L}0LS5-jKyq@#2gyS|J&f#pGCLkTc<@2s1dqeyqJ*Rc0tSIETAgmODY;(s z2y|Mcp&2}7rpBprBBB~1qM1`N+}4SoxYVPqsXi&l`rxZp{(w0iSy$Nv5*Vy!RapG^ S^0y4=eg;ohKbLh*2~7a!Pg}VF literal 0 HcmV?d00001 diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png new file mode 100755 index 0000000000000000000000000000000000000000..6f694c7a012b417908da3687a0a39aa182e91c74 GIT binary patch literal 1338 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 literal 0 HcmV?d00001 diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/index.html b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/index.html new file mode 100644 index 0000000000..c3e56af8f3 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/index.html @@ -0,0 +1,554 @@ + + + + Braintree Reference + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+ +

Braintree iOS SDK

+ +

CocoaPods compatible +Swift Package Manager compatible +Carthage compatible

+ +

GitHub Actions Tests

+ +

Welcome to Braintree’s iOS SDK. This library will help you accept card and alternative payments in your iOS app.

+

📣 Announcements

+ +
    +
  • Upgrade your integration to continue accepting Braintree payments 📣 The SSL certificates for current iOS SDK versions (v5 and v6) are set to expire by June 31, 2025. Upgrade to v5.26.0+ and v6.17.0+, respectively, to continue using the Braintree SDK. Click here for more details

  • +
  • v6 is the latest major version of Braintree iOS. To update from v5, see the v6 migration guide. If you have not yet migrated to v5, see the v5 migration guide

  • +
+ +

The Braintree iOS SDK permits a deployment target of iOS 14.0 or higher. It requires Xcode 15.0+ and Swift 5.9+.

+

Supported Payment Methods

+ + +

Installation

+ +

We recommend using Swift Package Manager, CocoaPods, or Carthage to integrate the Braintree SDK with your project.

+

Swift Package Manager

+ +

This feature is only available in v5+.

+ +

To add the Braintree package to your Xcode project, select File > Swift Packages > Add Package Dependency and enter https://github.com/braintree/braintree_ios as the repository URL. Tick the checkboxes for the specific Braintree libraries you wish to include.

+ +

If you look at your app target, you will see that the Braintree libraries you chose are automatically linked as a frameworks to your app (see General > Frameworks, Libraries, and Embedded Content).

+ +

BraintreePayPal and BraintreePaymentFlow also require the inclusion of the PayPalDataCollector module.

+ +

In your app’s source code files, use the following import syntax to include Braintree’s libraries:

+
import BraintreeCore
+import BraintreeCard
+import BraintreeApplePay
+import BraintreePayPal
+
+

CocoaPods

+
# Includes Cards and PayPal
+pod 'Braintree'
+
+# Optionally include additional Pods
+pod 'Braintree/DataCollector'
+pod 'Braintree/Venmo'
+
+

Carthage

+ +

Braintree 6.0.0+ requires Carthage 0.38.0+ and the --use-xcframeworks option when running carthage update.

+ +

Add github "braintree/braintree_ios" to your Cartfile, and add the frameworks to your project.

+ +

Note: Long term support for Carthage is not guaranteed. Please update to SPM, if possible. If there are concerns, please comment on this Discussion thread.

+

Documentation

+ +

Start with ‘Hello, Client!’ for instructions on basic setup and usage.

+ +

Next, read the full documentation for information about integrating with additional payment methods, such as PayPal and Venmo, as well as explore our pre-built Drop-In UI offering.

+

Versions

+ +

This SDK abides by our Client SDK Deprecation Policy. For more information on the potential statuses of an SDK check our developer docs.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Major version numberStatusReleasedDeprecatedUnsupported
6.x.xActiveJune 2023TBATBA
5.x.xInactiveFebruary 2021June 2024June 2025
4.x.xUnsupportedNovember 2015February 2022February 2023
+ +

Versions 4.9.6 and below use outdated SSL certificates and are unsupported.

+

Demo

+ +
    +
  1. Our Xcode project uses SwiftLint. To ensure you have it installed see DEVELOPMENT.md
  2. +
  3. Run pod install + +
      +
    • There is a known M1 mac issue with CocoaPods. See this solution to resolve ffi dependency issues.
    • +
  4. +
  5. Resolve the Swift Package Manager packages if needed: File > Packages > Resolve Package Versions or by running swift package resolve in Terminal
  6. +
  7. Open Braintree.xcworkspace in Xcode
  8. +
  9. Select the Demo scheme, and then run
  10. +
+ +

Xcode 15.0+ is required to run the demo app.

+

Contributing

+ +

We welcome PRs to this repo. See our development doc.

+

Feedback

+ +

The Braintree iOS SDK is in active development, we welcome your feedback!

+ +

Here are a few ways to get in touch:

+ + +

Help

+ + +

License

+ +

The Braintree iOS SDK is open source and available under the MIT license. See the LICENSE file for more info.

+ +
+
+ + +
+
+ + + diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js new file mode 100755 index 0000000000..198441660c --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +window.jazzy = {'docset': false} +if (typeof window.dash != 'undefined') { + document.documentElement.className += ' dash' + window.jazzy.docset = true +} +if (navigator.userAgent.match(/xcode/i)) { + document.documentElement.className += ' xcode' + window.jazzy.docset = true +} + +function toggleItem($link, $content) { + var animationDuration = 300; + $link.toggleClass('token-open'); + $content.slideToggle(animationDuration); +} + +function itemLinkToContent($link) { + return $link.parent().parent().next(); +} + +// On doc load + hash-change, open any targetted item +function openCurrentItemIfClosed() { + if (window.jazzy.docset) { + return; + } + var $link = $(`a[name="${location.hash.substring(1)}"]`).nextAll('.token'); + $content = itemLinkToContent($link); + if ($content.is(':hidden')) { + toggleItem($link, $content); + } +} + +$(openCurrentItemIfClosed); +$(window).on('hashchange', openCurrentItemIfClosed); + +// On item link ('token') click, toggle its discussion +$('.token').on('click', function(event) { + if (window.jazzy.docset) { + return; + } + var $link = $(this); + toggleItem($link, itemLinkToContent($link)); + + // Keeps the document from jumping to the hash. + var href = $link.attr('href'); + if (history.pushState) { + history.pushState({}, '', href); + } else { + location.hash = href; + } + event.preventDefault(); +}); + +// Clicks on links to the current, closed, item need to open the item +$("a:not('.token')").on('click', function() { + if (location == this.href) { + openCurrentItemIfClosed(); + } +}); + +// KaTeX rendering +if ("katex" in window) { + $($('.math').each( (_, element) => { + katex.render(element.textContent, element, { + displayMode: $(element).hasClass('m-block'), + throwOnError: false, + trust: true + }); + })) +} diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js new file mode 100644 index 0000000000..359cdbb8b2 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +$(function(){ + var $typeahead = $('[data-typeahead]'); + var $form = $typeahead.parents('form'); + var searchURL = $form.attr('action'); + + function displayTemplate(result) { + return result.name; + } + + function suggestionTemplate(result) { + var t = '
'; + t += '' + result.name + ''; + if (result.parent_name) { + t += '' + result.parent_name + ''; + } + t += '
'; + return t; + } + + $typeahead.one('focus', function() { + $form.addClass('loading'); + + $.getJSON(searchURL).then(function(searchData) { + const searchIndex = lunr(function() { + this.ref('url'); + this.field('name'); + this.field('abstract'); + for (const [url, doc] of Object.entries(searchData)) { + this.add({url: url, name: doc.name, abstract: doc.abstract}); + } + }); + + $typeahead.typeahead( + { + highlight: true, + minLength: 3, + autoselect: true + }, + { + limit: 10, + display: displayTemplate, + templates: { suggestion: suggestionTemplate }, + source: function(query, sync) { + const lcSearch = query.toLowerCase(); + const results = searchIndex.query(function(q) { + q.term(lcSearch, { boost: 100 }); + q.term(lcSearch, { + boost: 10, + wildcard: lunr.Query.wildcard.TRAILING + }); + }).map(function(result) { + var doc = searchData[result.ref]; + doc.url = result.ref; + return doc; + }); + sync(results); + } + } + ); + $form.removeClass('loading'); + $typeahead.trigger('focus'); + }); + }); + + var baseURL = searchURL.slice(0, -"search.json".length); + + $typeahead.on('typeahead:select', function(e, result) { + window.location = baseURL + result.url; + }); +}); diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js new file mode 100644 index 0000000000..7f37b5d991 --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.7.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},C=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||C).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.1",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},M=function(){V()},R=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&U(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function z(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&R(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function X(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function U(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,r.msMatchesSelector&&ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",M),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Re(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return M(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return M(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js new file mode 100644 index 0000000000..bcb734befc --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js @@ -0,0 +1,1695 @@ +/*! + * typeahead.js 1.3.3 + * https://github.com/corejavascript/typeahead.js + * Copyright 2013-2024 Twitter, Inc. and other contributors; Licensed MIT + */ + + +(function(root, factory) { + if (typeof define === "function" && define.amd) { + define([ "jquery" ], function(a0) { + return factory(a0); + }); + } else if (typeof module === "object" && module.exports) { + module.exports = factory(require("jquery")); + } else { + factory(root["jQuery"]); + } +})(this, function($) { + var _ = function() { + "use strict"; + return { + isMsie: function() { + return /(msie|trident)/i.test(navigator.userAgent) ? navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2] : false; + }, + isBlankString: function(str) { + return !str || /^\s*$/.test(str); + }, + escapeRegExChars: function(str) { + return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); + }, + isString: function(obj) { + return typeof obj === "string"; + }, + isNumber: function(obj) { + return typeof obj === "number"; + }, + isArray: $.isArray, + isFunction: $.isFunction, + isObject: $.isPlainObject, + isUndefined: function(obj) { + return typeof obj === "undefined"; + }, + isElement: function(obj) { + return !!(obj && obj.nodeType === 1); + }, + isJQuery: function(obj) { + return obj instanceof $; + }, + toStr: function toStr(s) { + return _.isUndefined(s) || s === null ? "" : s + ""; + }, + bind: $.proxy, + each: function(collection, cb) { + $.each(collection, reverseArgs); + function reverseArgs(index, value) { + return cb(value, index); + } + }, + map: $.map, + filter: $.grep, + every: function(obj, test) { + var result = true; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (!(result = test.call(null, val, key, obj))) { + return false; + } + }); + return !!result; + }, + some: function(obj, test) { + var result = false; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (result = test.call(null, val, key, obj)) { + return false; + } + }); + return !!result; + }, + mixin: $.extend, + identity: function(x) { + return x; + }, + clone: function(obj) { + return $.extend(true, {}, obj); + }, + getIdGenerator: function() { + var counter = 0; + return function() { + return counter++; + }; + }, + templatify: function templatify(obj) { + return $.isFunction(obj) ? obj : template; + function template() { + return String(obj); + } + }, + defer: function(fn) { + setTimeout(fn, 0); + }, + debounce: function(func, wait, immediate) { + var timeout, result; + return function() { + var context = this, args = arguments, later, callNow; + later = function() { + timeout = null; + if (!immediate) { + result = func.apply(context, args); + } + }; + callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + if (callNow) { + result = func.apply(context, args); + } + return result; + }; + }, + throttle: function(func, wait) { + var context, args, timeout, result, previous, later; + previous = 0; + later = function() { + previous = new Date(); + timeout = null; + result = func.apply(context, args); + }; + return function() { + var now = new Date(), remaining = wait - (now - previous); + context = this; + args = arguments; + if (remaining <= 0) { + clearTimeout(timeout); + timeout = null; + previous = now; + result = func.apply(context, args); + } else if (!timeout) { + timeout = setTimeout(later, remaining); + } + return result; + }; + }, + stringify: function(val) { + return _.isString(val) ? val : JSON.stringify(val); + }, + guid: function() { + function _p8(s) { + var p = (Math.random().toString(16) + "000000000").substr(2, 8); + return s ? "-" + p.substr(0, 4) + "-" + p.substr(4, 4) : p; + } + return "tt-" + _p8() + _p8(true) + _p8(true) + _p8(); + }, + noop: function() {} + }; + }(); + var WWW = function() { + "use strict"; + var defaultClassNames = { + wrapper: "twitter-typeahead", + input: "tt-input", + hint: "tt-hint", + menu: "tt-menu", + dataset: "tt-dataset", + suggestion: "tt-suggestion", + selectable: "tt-selectable", + empty: "tt-empty", + open: "tt-open", + cursor: "tt-cursor", + highlight: "tt-highlight" + }; + return build; + function build(o) { + var www, classes; + classes = _.mixin({}, defaultClassNames, o); + www = { + css: buildCss(), + classes: classes, + html: buildHtml(classes), + selectors: buildSelectors(classes) + }; + return { + css: www.css, + html: www.html, + classes: www.classes, + selectors: www.selectors, + mixin: function(o) { + _.mixin(o, www); + } + }; + } + function buildHtml(c) { + return { + wrapper: '', + menu: '
' + }; + } + function buildSelectors(classes) { + var selectors = {}; + _.each(classes, function(v, k) { + selectors[k] = "." + v; + }); + return selectors; + } + function buildCss() { + var css = { + wrapper: { + position: "relative", + display: "inline-block" + }, + hint: { + position: "absolute", + top: "0", + left: "0", + borderColor: "transparent", + boxShadow: "none", + opacity: "1" + }, + input: { + position: "relative", + verticalAlign: "top", + backgroundColor: "transparent" + }, + inputWithNoHint: { + position: "relative", + verticalAlign: "top" + }, + menu: { + position: "absolute", + top: "100%", + left: "0", + zIndex: "100", + display: "none" + }, + ltr: { + left: "0", + right: "auto" + }, + rtl: { + left: "auto", + right: " 0" + } + }; + if (_.isMsie()) { + _.mixin(css.input, { + backgroundImage: "url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)" + }); + } + return css; + } + }(); + var EventBus = function() { + "use strict"; + var namespace, deprecationMap; + namespace = "typeahead:"; + deprecationMap = { + render: "rendered", + cursorchange: "cursorchanged", + select: "selected", + autocomplete: "autocompleted" + }; + function EventBus(o) { + if (!o || !o.el) { + $.error("EventBus initialized without el"); + } + this.$el = $(o.el); + } + _.mixin(EventBus.prototype, { + _trigger: function(type, args) { + var $e = $.Event(namespace + type); + this.$el.trigger.call(this.$el, $e, args || []); + return $e; + }, + before: function(type) { + var args, $e; + args = [].slice.call(arguments, 1); + $e = this._trigger("before" + type, args); + return $e.isDefaultPrevented(); + }, + trigger: function(type) { + var deprecatedType; + this._trigger(type, [].slice.call(arguments, 1)); + if (deprecatedType = deprecationMap[type]) { + this._trigger(deprecatedType, [].slice.call(arguments, 1)); + } + } + }); + return EventBus; + }(); + var EventEmitter = function() { + "use strict"; + var splitter = /\s+/, nextTick = getNextTick(); + return { + onSync: onSync, + onAsync: onAsync, + off: off, + trigger: trigger + }; + function on(method, types, cb, context) { + var type; + if (!cb) { + return this; + } + types = types.split(splitter); + cb = context ? bindContext(cb, context) : cb; + this._callbacks = this._callbacks || {}; + while (type = types.shift()) { + this._callbacks[type] = this._callbacks[type] || { + sync: [], + async: [] + }; + this._callbacks[type][method].push(cb); + } + return this; + } + function onAsync(types, cb, context) { + return on.call(this, "async", types, cb, context); + } + function onSync(types, cb, context) { + return on.call(this, "sync", types, cb, context); + } + function off(types) { + var type; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + while (type = types.shift()) { + delete this._callbacks[type]; + } + return this; + } + function trigger(types) { + var type, callbacks, args, syncFlush, asyncFlush; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + args = [].slice.call(arguments, 1); + while ((type = types.shift()) && (callbacks = this._callbacks[type])) { + syncFlush = getFlush(callbacks.sync, this, [ type ].concat(args)); + asyncFlush = getFlush(callbacks.async, this, [ type ].concat(args)); + syncFlush() && nextTick(asyncFlush); + } + return this; + } + function getFlush(callbacks, context, args) { + return flush; + function flush() { + var cancelled; + for (var i = 0, len = callbacks.length; !cancelled && i < len; i += 1) { + cancelled = callbacks[i].apply(context, args) === false; + } + return !cancelled; + } + } + function getNextTick() { + var nextTickFn; + if (window.setImmediate) { + nextTickFn = function nextTickSetImmediate(fn) { + setImmediate(function() { + fn(); + }); + }; + } else { + nextTickFn = function nextTickSetTimeout(fn) { + setTimeout(function() { + fn(); + }, 0); + }; + } + return nextTickFn; + } + function bindContext(fn, context) { + return fn.bind ? fn.bind(context) : function() { + fn.apply(context, [].slice.call(arguments, 0)); + }; + } + }(); + var highlight = function(doc) { + "use strict"; + var defaults = { + node: null, + pattern: null, + tagName: "strong", + className: null, + wordsOnly: false, + caseSensitive: false, + diacriticInsensitive: false + }; + var accented = { + A: "[AaªÀ-Åà-åĀ-ąǍǎȀ-ȃȦȧᴬᵃḀḁẚẠ-ảₐ℀℁℻⒜Ⓐⓐ㍱-㍴㎀-㎄㎈㎉㎩-㎯㏂㏊㏟㏿Aa]", + B: "[BbᴮᵇḂ-ḇℬ⒝Ⓑⓑ㍴㎅-㎇㏃㏈㏔㏝Bb]", + C: "[CcÇçĆ-čᶜ℀ℂ℃℅℆ℭⅭⅽ⒞Ⓒⓒ㍶㎈㎉㎝㎠㎤㏄-㏇Cc]", + D: "[DdĎďDŽ-džDZ-dzᴰᵈḊ-ḓⅅⅆⅮⅾ⒟Ⓓⓓ㋏㍲㍷-㍹㎗㎭-㎯㏅㏈Dd]", + E: "[EeÈ-Ëè-ëĒ-ěȄ-ȇȨȩᴱᵉḘ-ḛẸ-ẽₑ℡ℯℰⅇ⒠Ⓔⓔ㉐㋍㋎Ee]", + F: "[FfᶠḞḟ℉ℱ℻⒡Ⓕⓕ㎊-㎌㎙ff-fflFf]", + G: "[GgĜ-ģǦǧǴǵᴳᵍḠḡℊ⒢Ⓖⓖ㋌㋍㎇㎍-㎏㎓㎬㏆㏉㏒㏿Gg]", + H: "[HhĤĥȞȟʰᴴḢ-ḫẖℋ-ℎ⒣Ⓗⓗ㋌㍱㎐-㎔㏊㏋㏗Hh]", + I: "[IiÌ-Ïì-ïĨ-İIJijǏǐȈ-ȋᴵᵢḬḭỈ-ịⁱℐℑℹⅈⅠ-ⅣⅥ-ⅨⅪⅫⅰ-ⅳⅵ-ⅸⅺⅻ⒤Ⓘⓘ㍺㏌㏕fiffiIi]", + J: "[JjIJ-ĵLJ-njǰʲᴶⅉ⒥ⒿⓙⱼJj]", + K: "[KkĶķǨǩᴷᵏḰ-ḵK⒦Ⓚⓚ㎄㎅㎉㎏㎑㎘㎞㎢㎦㎪㎸㎾㏀㏆㏍-㏏Kk]", + L: "[LlĹ-ŀLJ-ljˡᴸḶḷḺ-ḽℒℓ℡Ⅼⅼ⒧Ⓛⓛ㋏㎈㎉㏐-㏓㏕㏖㏿flfflLl]", + M: "[MmᴹᵐḾ-ṃ℠™ℳⅯⅿ⒨Ⓜⓜ㍷-㍹㎃㎆㎎㎒㎖㎙-㎨㎫㎳㎷㎹㎽㎿㏁㏂㏎㏐㏔-㏖㏘㏙㏞㏟Mm]", + N: "[NnÑñŃ-ʼnNJ-njǸǹᴺṄ-ṋⁿℕ№⒩Ⓝⓝ㎁㎋㎚㎱㎵㎻㏌㏑Nn]", + O: "[OoºÒ-Öò-öŌ-őƠơǑǒǪǫȌ-ȏȮȯᴼᵒỌ-ỏₒ℅№ℴ⒪Ⓞⓞ㍵㏇㏒㏖Oo]", + P: "[PpᴾᵖṔ-ṗℙ⒫Ⓟⓟ㉐㍱㍶㎀㎊㎩-㎬㎰㎴㎺㏋㏗-㏚Pp]", + Q: "[Qqℚ⒬Ⓠⓠ㏃Qq]", + R: "[RrŔ-řȐ-ȓʳᴿᵣṘ-ṛṞṟ₨ℛ-ℝ⒭Ⓡⓡ㋍㍴㎭-㎯㏚㏛Rr]", + S: "[SsŚ-šſȘșˢṠ-ṣ₨℁℠⒮Ⓢⓢ㎧㎨㎮-㎳㏛㏜stSs]", + T: "[TtŢ-ťȚțᵀᵗṪ-ṱẗ℡™⒯Ⓣⓣ㉐㋏㎔㏏ſtstTt]", + U: "[UuÙ-Üù-üŨ-ųƯưǓǔȔ-ȗᵁᵘᵤṲ-ṷỤ-ủ℆⒰Ⓤⓤ㍳㍺Uu]", + V: "[VvᵛᵥṼ-ṿⅣ-Ⅷⅳ-ⅷ⒱Ⓥⓥⱽ㋎㍵㎴-㎹㏜㏞Vv]", + W: "[WwŴŵʷᵂẀ-ẉẘ⒲Ⓦⓦ㎺-㎿㏝Ww]", + X: "[XxˣẊ-ẍₓ℻Ⅸ-Ⅻⅸ-ⅻ⒳Ⓧⓧ㏓Xx]", + Y: "[YyÝýÿŶ-ŸȲȳʸẎẏẙỲ-ỹ⒴Ⓨⓨ㏉Yy]", + Z: "[ZzŹ-žDZ-dzᶻẐ-ẕℤℨ⒵Ⓩⓩ㎐-㎔Zz]" + }; + return function hightlight(o) { + var regex; + o = _.mixin({}, defaults, o); + if (!o.node || !o.pattern) { + return; + } + o.pattern = _.isArray(o.pattern) ? o.pattern : [ o.pattern ]; + regex = getRegex(o.pattern, o.caseSensitive, o.wordsOnly, o.diacriticInsensitive); + traverse(o.node, hightlightTextNode); + function hightlightTextNode(textNode) { + var match, patternNode, wrapperNode; + if (match = regex.exec(textNode.data)) { + wrapperNode = doc.createElement(o.tagName); + o.className && (wrapperNode.className = o.className); + patternNode = textNode.splitText(match.index); + patternNode.splitText(match[0].length); + wrapperNode.appendChild(patternNode.cloneNode(true)); + textNode.parentNode.replaceChild(wrapperNode, patternNode); + } + return !!match; + } + function traverse(el, hightlightTextNode) { + var childNode, TEXT_NODE_TYPE = 3; + for (var i = 0; i < el.childNodes.length; i++) { + childNode = el.childNodes[i]; + if (childNode.nodeType === TEXT_NODE_TYPE) { + i += hightlightTextNode(childNode) ? 1 : 0; + } else { + traverse(childNode, hightlightTextNode); + } + } + } + }; + function accent_replacer(chr) { + return accented[chr.toUpperCase()] || chr; + } + function getRegex(patterns, caseSensitive, wordsOnly, diacriticInsensitive) { + var escapedPatterns = [], regexStr; + for (var i = 0, len = patterns.length; i < len; i++) { + var escapedWord = _.escapeRegExChars(patterns[i]); + if (diacriticInsensitive) { + escapedWord = escapedWord.replace(/\S/g, accent_replacer); + } + escapedPatterns.push(escapedWord); + } + regexStr = wordsOnly ? "\\b(" + escapedPatterns.join("|") + ")\\b" : "(" + escapedPatterns.join("|") + ")"; + return caseSensitive ? new RegExp(regexStr) : new RegExp(regexStr, "i"); + } + }(window.document); + var Input = function() { + "use strict"; + var specialKeyCodeMap; + specialKeyCodeMap = { + 9: "tab", + 27: "esc", + 37: "left", + 39: "right", + 13: "enter", + 38: "up", + 40: "down" + }; + function Input(o, www) { + var id; + o = o || {}; + if (!o.input) { + $.error("input is missing"); + } + www.mixin(this); + this.$hint = $(o.hint); + this.$input = $(o.input); + this.$menu = $(o.menu); + id = this.$input.attr("id") || _.guid(); + this.$menu.attr("id", id + "_listbox"); + this.$hint.attr({ + "aria-hidden": true + }); + this.$input.attr({ + "aria-owns": id + "_listbox", + "aria-controls": id + "_listbox", + role: "combobox", + "aria-autocomplete": "list", + "aria-expanded": false + }); + this.query = this.$input.val(); + this.queryWhenFocused = this.hasFocus() ? this.query : null; + this.$overflowHelper = buildOverflowHelper(this.$input); + this._checkLanguageDirection(); + if (this.$hint.length === 0) { + this.setHint = this.getHint = this.clearHint = this.clearHintIfInvalid = _.noop; + } + this.onSync("cursorchange", this._updateDescendent); + } + Input.normalizeQuery = function(str) { + return _.toStr(str).replace(/^\s*/g, "").replace(/\s{2,}/g, " "); + }; + _.mixin(Input.prototype, EventEmitter, { + _onBlur: function onBlur() { + this.resetInputValue(); + this.trigger("blurred"); + }, + _onFocus: function onFocus() { + this.queryWhenFocused = this.query; + this.trigger("focused"); + }, + _onKeydown: function onKeydown($e) { + var keyName = specialKeyCodeMap[$e.which || $e.keyCode]; + this._managePreventDefault(keyName, $e); + if (keyName && this._shouldTrigger(keyName, $e)) { + this.trigger(keyName + "Keyed", $e); + } + }, + _onInput: function onInput() { + this._setQuery(this.getInputValue()); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + _managePreventDefault: function managePreventDefault(keyName, $e) { + var preventDefault; + switch (keyName) { + case "up": + case "down": + preventDefault = !withModifier($e); + break; + + default: + preventDefault = false; + } + preventDefault && $e.preventDefault(); + }, + _shouldTrigger: function shouldTrigger(keyName, $e) { + var trigger; + switch (keyName) { + case "tab": + trigger = !withModifier($e); + break; + + default: + trigger = true; + } + return trigger; + }, + _checkLanguageDirection: function checkLanguageDirection() { + var dir = (this.$input.css("direction") || "ltr").toLowerCase(); + if (this.dir !== dir) { + this.dir = dir; + this.$hint.attr("dir", dir); + this.trigger("langDirChanged", dir); + } + }, + _setQuery: function setQuery(val, silent) { + var areEquivalent, hasDifferentWhitespace; + areEquivalent = areQueriesEquivalent(val, this.query); + hasDifferentWhitespace = areEquivalent ? this.query.length !== val.length : false; + this.query = val; + if (!silent && !areEquivalent) { + this.trigger("queryChanged", this.query); + } else if (!silent && hasDifferentWhitespace) { + this.trigger("whitespaceChanged", this.query); + } + }, + _updateDescendent: function updateDescendent(event, id) { + this.$input.attr("aria-activedescendant", id); + }, + bind: function() { + var that = this, onBlur, onFocus, onKeydown, onInput; + onBlur = _.bind(this._onBlur, this); + onFocus = _.bind(this._onFocus, this); + onKeydown = _.bind(this._onKeydown, this); + onInput = _.bind(this._onInput, this); + this.$input.on("blur.tt", onBlur).on("focus.tt", onFocus).on("keydown.tt", onKeydown); + if (!_.isMsie() || _.isMsie() > 9) { + this.$input.on("input.tt", onInput); + } else { + this.$input.on("keydown.tt keypress.tt cut.tt paste.tt", function($e) { + if (specialKeyCodeMap[$e.which || $e.keyCode]) { + return; + } + _.defer(_.bind(that._onInput, that, $e)); + }); + } + return this; + }, + focus: function focus() { + this.$input.focus(); + }, + blur: function blur() { + this.$input.blur(); + }, + getLangDir: function getLangDir() { + return this.dir; + }, + getQuery: function getQuery() { + return this.query || ""; + }, + setQuery: function setQuery(val, silent) { + this.setInputValue(val); + this._setQuery(val, silent); + }, + hasQueryChangedSinceLastFocus: function hasQueryChangedSinceLastFocus() { + return this.query !== this.queryWhenFocused; + }, + getInputValue: function getInputValue() { + return this.$input.val(); + }, + setInputValue: function setInputValue(value) { + this.$input.val(value); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + resetInputValue: function resetInputValue() { + this.setInputValue(this.query); + }, + getHint: function getHint() { + return this.$hint.val(); + }, + setHint: function setHint(value) { + this.$hint.val(value); + }, + clearHint: function clearHint() { + this.setHint(""); + }, + clearHintIfInvalid: function clearHintIfInvalid() { + var val, hint, valIsPrefixOfHint, isValid; + val = this.getInputValue(); + hint = this.getHint(); + valIsPrefixOfHint = val !== hint && hint.indexOf(val) === 0; + isValid = val !== "" && valIsPrefixOfHint && !this.hasOverflow(); + !isValid && this.clearHint(); + }, + hasFocus: function hasFocus() { + return this.$input.is(":focus"); + }, + hasOverflow: function hasOverflow() { + var constraint = this.$input.width() - 2; + this.$overflowHelper.text(this.getInputValue()); + return this.$overflowHelper.width() >= constraint; + }, + isCursorAtEnd: function() { + var valueLength, selectionStart, range; + valueLength = this.$input.val().length; + selectionStart = this.$input[0].selectionStart; + if (_.isNumber(selectionStart)) { + return selectionStart === valueLength; + } else if (document.selection) { + range = document.selection.createRange(); + range.moveStart("character", -valueLength); + return valueLength === range.text.length; + } + return true; + }, + destroy: function destroy() { + this.$hint.off(".tt"); + this.$input.off(".tt"); + this.$overflowHelper.remove(); + this.$hint = this.$input = this.$overflowHelper = $("
"); + }, + setAriaExpanded: function setAriaExpanded(value) { + this.$input.attr("aria-expanded", value); + } + }); + return Input; + function buildOverflowHelper($input) { + return $('').css({ + position: "absolute", + visibility: "hidden", + whiteSpace: "pre", + fontFamily: $input.css("font-family"), + fontSize: $input.css("font-size"), + fontStyle: $input.css("font-style"), + fontVariant: $input.css("font-variant"), + fontWeight: $input.css("font-weight"), + wordSpacing: $input.css("word-spacing"), + letterSpacing: $input.css("letter-spacing"), + textIndent: $input.css("text-indent"), + textRendering: $input.css("text-rendering"), + textTransform: $input.css("text-transform") + }).insertAfter($input); + } + function areQueriesEquivalent(a, b) { + return Input.normalizeQuery(a) === Input.normalizeQuery(b); + } + function withModifier($e) { + return $e.altKey || $e.ctrlKey || $e.metaKey || $e.shiftKey; + } + }(); + var Dataset = function() { + "use strict"; + var keys, nameGenerator; + keys = { + dataset: "tt-selectable-dataset", + val: "tt-selectable-display", + obj: "tt-selectable-object" + }; + nameGenerator = _.getIdGenerator(); + function Dataset(o, www) { + o = o || {}; + o.templates = o.templates || {}; + o.templates.notFound = o.templates.notFound || o.templates.empty; + if (!o.source) { + $.error("missing source"); + } + if (!o.node) { + $.error("missing node"); + } + if (o.name && !isValidName(o.name)) { + $.error("invalid dataset name: " + o.name); + } + www.mixin(this); + this.highlight = !!o.highlight; + this.name = _.toStr(o.name || nameGenerator()); + this.limit = o.limit || 5; + this.displayFn = getDisplayFn(o.display || o.displayKey); + this.templates = getTemplates(o.templates, this.displayFn); + this.source = o.source.__ttAdapter ? o.source.__ttAdapter() : o.source; + this.async = _.isUndefined(o.async) ? this.source.length > 2 : !!o.async; + this._resetLastSuggestion(); + this.$el = $(o.node).attr("role", "presentation").addClass(this.classes.dataset).addClass(this.classes.dataset + "-" + this.name); + } + Dataset.extractData = function extractData(el) { + var $el = $(el); + if ($el.data(keys.obj)) { + return { + dataset: $el.data(keys.dataset) || "", + val: $el.data(keys.val) || "", + obj: $el.data(keys.obj) || null + }; + } + return null; + }; + _.mixin(Dataset.prototype, EventEmitter, { + _overwrite: function overwrite(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (this.async && this.templates.pending) { + this._renderPending(query); + } else if (!this.async && this.templates.notFound) { + this._renderNotFound(query); + } else { + this._empty(); + } + this.trigger("rendered", suggestions, false, this.name); + }, + _append: function append(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length && this.$lastSuggestion.length) { + this._appendSuggestions(query, suggestions); + } else if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (!this.$lastSuggestion.length && this.templates.notFound) { + this._renderNotFound(query); + } + this.trigger("rendered", suggestions, true, this.name); + }, + _renderSuggestions: function renderSuggestions(query, suggestions) { + var $fragment; + $fragment = this._getSuggestionsFragment(query, suggestions); + this.$lastSuggestion = $fragment.children().last(); + this.$el.html($fragment).prepend(this._getHeader(query, suggestions)).append(this._getFooter(query, suggestions)); + }, + _appendSuggestions: function appendSuggestions(query, suggestions) { + var $fragment, $lastSuggestion; + $fragment = this._getSuggestionsFragment(query, suggestions); + $lastSuggestion = $fragment.children().last(); + this.$lastSuggestion.after($fragment); + this.$lastSuggestion = $lastSuggestion; + }, + _renderPending: function renderPending(query) { + var template = this.templates.pending; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _renderNotFound: function renderNotFound(query) { + var template = this.templates.notFound; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _empty: function empty() { + this.$el.empty(); + this._resetLastSuggestion(); + }, + _getSuggestionsFragment: function getSuggestionsFragment(query, suggestions) { + var that = this, fragment; + fragment = document.createDocumentFragment(); + _.each(suggestions, function getSuggestionNode(suggestion) { + var $el, context; + context = that._injectQuery(query, suggestion); + $el = $(that.templates.suggestion(context)).data(keys.dataset, that.name).data(keys.obj, suggestion).data(keys.val, that.displayFn(suggestion)).addClass(that.classes.suggestion + " " + that.classes.selectable); + fragment.appendChild($el[0]); + }); + this.highlight && highlight({ + className: this.classes.highlight, + node: fragment, + pattern: query + }); + return $(fragment); + }, + _getFooter: function getFooter(query, suggestions) { + return this.templates.footer ? this.templates.footer({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _getHeader: function getHeader(query, suggestions) { + return this.templates.header ? this.templates.header({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _resetLastSuggestion: function resetLastSuggestion() { + this.$lastSuggestion = $(); + }, + _injectQuery: function injectQuery(query, obj) { + return _.isObject(obj) ? _.mixin({ + _query: query + }, obj) : obj; + }, + update: function update(query) { + var that = this, canceled = false, syncCalled = false, rendered = 0; + this.cancel(); + this.cancel = function cancel() { + canceled = true; + that.cancel = $.noop; + that.async && that.trigger("asyncCanceled", query, that.name); + }; + this.source(query, sync, async); + !syncCalled && sync([]); + function sync(suggestions) { + if (syncCalled) { + return; + } + syncCalled = true; + suggestions = (suggestions || []).slice(0, that.limit); + rendered = suggestions.length; + that._overwrite(query, suggestions); + if (rendered < that.limit && that.async) { + that.trigger("asyncRequested", query, that.name); + } + } + function async(suggestions) { + suggestions = suggestions || []; + if (!canceled && rendered < that.limit) { + that.cancel = $.noop; + var idx = Math.abs(rendered - that.limit); + rendered += idx; + that._append(query, suggestions.slice(0, idx)); + that.async && that.trigger("asyncReceived", query, that.name); + } + } + }, + cancel: $.noop, + clear: function clear() { + this._empty(); + this.cancel(); + this.trigger("cleared"); + }, + isEmpty: function isEmpty() { + return this.$el.is(":empty"); + }, + destroy: function destroy() { + this.$el = $("
"); + } + }); + return Dataset; + function getDisplayFn(display) { + display = display || _.stringify; + return _.isFunction(display) ? display : displayFn; + function displayFn(obj) { + return obj[display]; + } + } + function getTemplates(templates, displayFn) { + return { + notFound: templates.notFound && _.templatify(templates.notFound), + pending: templates.pending && _.templatify(templates.pending), + header: templates.header && _.templatify(templates.header), + footer: templates.footer && _.templatify(templates.footer), + suggestion: templates.suggestion ? userSuggestionTemplate : suggestionTemplate + }; + function userSuggestionTemplate(context) { + var template = templates.suggestion; + return $(template(context)).attr("id", _.guid()); + } + function suggestionTemplate(context) { + return $('
').attr("id", _.guid()).text(displayFn(context)); + } + } + function isValidName(str) { + return /^[_a-zA-Z0-9-]+$/.test(str); + } + }(); + var Menu = function() { + "use strict"; + function Menu(o, www) { + var that = this; + o = o || {}; + if (!o.node) { + $.error("node is required"); + } + www.mixin(this); + this.$node = $(o.node); + this.query = null; + this.datasets = _.map(o.datasets, initializeDataset); + function initializeDataset(oDataset) { + var node = that.$node.find(oDataset.node).first(); + oDataset.node = node.length ? node : $("
").appendTo(that.$node); + return new Dataset(oDataset, www); + } + } + _.mixin(Menu.prototype, EventEmitter, { + _onSelectableClick: function onSelectableClick($e) { + this.trigger("selectableClicked", $($e.currentTarget)); + }, + _onRendered: function onRendered(type, dataset, suggestions, async) { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetRendered", dataset, suggestions, async); + }, + _onCleared: function onCleared() { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetCleared"); + }, + _propagate: function propagate() { + this.trigger.apply(this, arguments); + }, + _allDatasetsEmpty: function allDatasetsEmpty() { + return _.every(this.datasets, _.bind(function isDatasetEmpty(dataset) { + var isEmpty = dataset.isEmpty(); + this.$node.attr("aria-expanded", !isEmpty); + return isEmpty; + }, this)); + }, + _getSelectables: function getSelectables() { + return this.$node.find(this.selectors.selectable); + }, + _removeCursor: function _removeCursor() { + var $selectable = this.getActiveSelectable(); + $selectable && $selectable.removeClass(this.classes.cursor); + }, + _ensureVisible: function ensureVisible($el) { + var elTop, elBottom, nodeScrollTop, nodeHeight; + elTop = $el.position().top; + elBottom = elTop + $el.outerHeight(true); + nodeScrollTop = this.$node.scrollTop(); + nodeHeight = this.$node.height() + parseInt(this.$node.css("paddingTop"), 10) + parseInt(this.$node.css("paddingBottom"), 10); + if (elTop < 0) { + this.$node.scrollTop(nodeScrollTop + elTop); + } else if (nodeHeight < elBottom) { + this.$node.scrollTop(nodeScrollTop + (elBottom - nodeHeight)); + } + }, + bind: function() { + var that = this, onSelectableClick; + onSelectableClick = _.bind(this._onSelectableClick, this); + this.$node.on("click.tt", this.selectors.selectable, onSelectableClick); + this.$node.on("mouseover", this.selectors.selectable, function() { + that.setCursor($(this)); + }); + this.$node.on("mouseleave", function() { + that._removeCursor(); + }); + _.each(this.datasets, function(dataset) { + dataset.onSync("asyncRequested", that._propagate, that).onSync("asyncCanceled", that._propagate, that).onSync("asyncReceived", that._propagate, that).onSync("rendered", that._onRendered, that).onSync("cleared", that._onCleared, that); + }); + return this; + }, + isOpen: function isOpen() { + return this.$node.hasClass(this.classes.open); + }, + open: function open() { + this.$node.scrollTop(0); + this.$node.addClass(this.classes.open); + }, + close: function close() { + this.$node.attr("aria-expanded", false); + this.$node.removeClass(this.classes.open); + this._removeCursor(); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.attr("dir", dir); + }, + selectableRelativeToCursor: function selectableRelativeToCursor(delta) { + var $selectables, $oldCursor, oldIndex, newIndex; + $oldCursor = this.getActiveSelectable(); + $selectables = this._getSelectables(); + oldIndex = $oldCursor ? $selectables.index($oldCursor) : -1; + newIndex = oldIndex + delta; + newIndex = (newIndex + 1) % ($selectables.length + 1) - 1; + newIndex = newIndex < -1 ? $selectables.length - 1 : newIndex; + return newIndex === -1 ? null : $selectables.eq(newIndex); + }, + setCursor: function setCursor($selectable) { + this._removeCursor(); + if ($selectable = $selectable && $selectable.first()) { + $selectable.addClass(this.classes.cursor); + this._ensureVisible($selectable); + } + }, + getSelectableData: function getSelectableData($el) { + return $el && $el.length ? Dataset.extractData($el) : null; + }, + getActiveSelectable: function getActiveSelectable() { + var $selectable = this._getSelectables().filter(this.selectors.cursor).first(); + return $selectable.length ? $selectable : null; + }, + getTopSelectable: function getTopSelectable() { + var $selectable = this._getSelectables().first(); + return $selectable.length ? $selectable : null; + }, + update: function update(query) { + var isValidUpdate = query !== this.query; + if (isValidUpdate) { + this.query = query; + _.each(this.datasets, updateDataset); + } + return isValidUpdate; + function updateDataset(dataset) { + dataset.update(query); + } + }, + empty: function empty() { + _.each(this.datasets, clearDataset); + this.query = null; + this.$node.addClass(this.classes.empty); + function clearDataset(dataset) { + dataset.clear(); + } + }, + destroy: function destroy() { + this.$node.off(".tt"); + this.$node = $("
"); + _.each(this.datasets, destroyDataset); + function destroyDataset(dataset) { + dataset.destroy(); + } + } + }); + return Menu; + }(); + var Status = function() { + "use strict"; + function Status(options) { + this.$el = $("", { + role: "status", + "aria-live": "polite" + }).css({ + position: "absolute", + padding: "0", + border: "0", + height: "1px", + width: "1px", + "margin-bottom": "-1px", + "margin-right": "-1px", + overflow: "hidden", + clip: "rect(0 0 0 0)", + "white-space": "nowrap" + }); + options.$input.after(this.$el); + _.each(options.menu.datasets, _.bind(function(dataset) { + if (dataset.onSync) { + dataset.onSync("rendered", _.bind(this.update, this)); + dataset.onSync("cleared", _.bind(this.cleared, this)); + } + }, this)); + } + _.mixin(Status.prototype, { + update: function update(event, suggestions) { + var length = suggestions.length; + var words; + if (length === 1) { + words = { + result: "result", + is: "is" + }; + } else { + words = { + result: "results", + is: "are" + }; + } + this.$el.text(length + " " + words.result + " " + words.is + " available, use up and down arrow keys to navigate."); + }, + cleared: function() { + this.$el.text(""); + } + }); + return Status; + }(); + var DefaultMenu = function() { + "use strict"; + var s = Menu.prototype; + function DefaultMenu() { + Menu.apply(this, [].slice.call(arguments, 0)); + } + _.mixin(DefaultMenu.prototype, Menu.prototype, { + open: function open() { + !this._allDatasetsEmpty() && this._show(); + return s.open.apply(this, [].slice.call(arguments, 0)); + }, + close: function close() { + this._hide(); + return s.close.apply(this, [].slice.call(arguments, 0)); + }, + _onRendered: function onRendered() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onRendered.apply(this, [].slice.call(arguments, 0)); + }, + _onCleared: function onCleared() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onCleared.apply(this, [].slice.call(arguments, 0)); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.css(dir === "ltr" ? this.css.ltr : this.css.rtl); + return s.setLanguageDirection.apply(this, [].slice.call(arguments, 0)); + }, + _hide: function hide() { + this.$node.hide(); + }, + _show: function show() { + this.$node.css("display", "block"); + } + }); + return DefaultMenu; + }(); + var Typeahead = function() { + "use strict"; + function Typeahead(o, www) { + var onFocused, onBlurred, onEnterKeyed, onTabKeyed, onEscKeyed, onUpKeyed, onDownKeyed, onLeftKeyed, onRightKeyed, onQueryChanged, onWhitespaceChanged; + o = o || {}; + if (!o.input) { + $.error("missing input"); + } + if (!o.menu) { + $.error("missing menu"); + } + if (!o.eventBus) { + $.error("missing event bus"); + } + www.mixin(this); + this.eventBus = o.eventBus; + this.minLength = _.isNumber(o.minLength) ? o.minLength : 1; + this.input = o.input; + this.menu = o.menu; + this.enabled = true; + this.autoselect = !!o.autoselect; + this.active = false; + this.input.hasFocus() && this.activate(); + this.dir = this.input.getLangDir(); + this._hacks(); + this.menu.bind().onSync("selectableClicked", this._onSelectableClicked, this).onSync("asyncRequested", this._onAsyncRequested, this).onSync("asyncCanceled", this._onAsyncCanceled, this).onSync("asyncReceived", this._onAsyncReceived, this).onSync("datasetRendered", this._onDatasetRendered, this).onSync("datasetCleared", this._onDatasetCleared, this); + onFocused = c(this, "activate", "open", "_onFocused"); + onBlurred = c(this, "deactivate", "_onBlurred"); + onEnterKeyed = c(this, "isActive", "isOpen", "_onEnterKeyed"); + onTabKeyed = c(this, "isActive", "isOpen", "_onTabKeyed"); + onEscKeyed = c(this, "isActive", "_onEscKeyed"); + onUpKeyed = c(this, "isActive", "open", "_onUpKeyed"); + onDownKeyed = c(this, "isActive", "open", "_onDownKeyed"); + onLeftKeyed = c(this, "isActive", "isOpen", "_onLeftKeyed"); + onRightKeyed = c(this, "isActive", "isOpen", "_onRightKeyed"); + onQueryChanged = c(this, "_openIfActive", "_onQueryChanged"); + onWhitespaceChanged = c(this, "_openIfActive", "_onWhitespaceChanged"); + this.input.bind().onSync("focused", onFocused, this).onSync("blurred", onBlurred, this).onSync("enterKeyed", onEnterKeyed, this).onSync("tabKeyed", onTabKeyed, this).onSync("escKeyed", onEscKeyed, this).onSync("upKeyed", onUpKeyed, this).onSync("downKeyed", onDownKeyed, this).onSync("leftKeyed", onLeftKeyed, this).onSync("rightKeyed", onRightKeyed, this).onSync("queryChanged", onQueryChanged, this).onSync("whitespaceChanged", onWhitespaceChanged, this).onSync("langDirChanged", this._onLangDirChanged, this); + } + _.mixin(Typeahead.prototype, { + _hacks: function hacks() { + var $input, $menu; + $input = this.input.$input || $("
"); + $menu = this.menu.$node || $("
"); + $input.on("blur.tt", function($e) { + var active, isActive, hasActive; + active = document.activeElement; + isActive = $menu.is(active); + hasActive = $menu.has(active).length > 0; + if (_.isMsie() && (isActive || hasActive)) { + $e.preventDefault(); + $e.stopImmediatePropagation(); + _.defer(function() { + $input.focus(); + }); + } + }); + $menu.on("mousedown.tt", function($e) { + $e.preventDefault(); + }); + }, + _onSelectableClicked: function onSelectableClicked(type, $el) { + this.select($el); + }, + _onDatasetCleared: function onDatasetCleared() { + this._updateHint(); + }, + _onDatasetRendered: function onDatasetRendered(type, suggestions, async, dataset) { + this._updateHint(); + if (this.autoselect) { + var cursorClass = this.selectors.cursor.substr(1); + this.menu.$node.find(this.selectors.suggestion).first().addClass(cursorClass); + } + this.eventBus.trigger("render", suggestions, async, dataset); + }, + _onAsyncRequested: function onAsyncRequested(type, dataset, query) { + this.eventBus.trigger("asyncrequest", query, dataset); + }, + _onAsyncCanceled: function onAsyncCanceled(type, dataset, query) { + this.eventBus.trigger("asynccancel", query, dataset); + }, + _onAsyncReceived: function onAsyncReceived(type, dataset, query) { + this.eventBus.trigger("asyncreceive", query, dataset); + }, + _onFocused: function onFocused() { + this._minLengthMet() && this.menu.update(this.input.getQuery()); + }, + _onBlurred: function onBlurred() { + if (this.input.hasQueryChangedSinceLastFocus()) { + this.eventBus.trigger("change", this.input.getQuery()); + } + }, + _onEnterKeyed: function onEnterKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + if (this.select($selectable)) { + $e.preventDefault(); + $e.stopPropagation(); + } + } else if (this.autoselect) { + if (this.select(this.menu.getTopSelectable())) { + $e.preventDefault(); + $e.stopPropagation(); + } + } + }, + _onTabKeyed: function onTabKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + this.select($selectable) && $e.preventDefault(); + } else if (this.autoselect) { + if ($selectable = this.menu.getTopSelectable()) { + this.autocomplete($selectable) && $e.preventDefault(); + } + } + }, + _onEscKeyed: function onEscKeyed() { + this.close(); + }, + _onUpKeyed: function onUpKeyed() { + this.moveCursor(-1); + }, + _onDownKeyed: function onDownKeyed() { + this.moveCursor(+1); + }, + _onLeftKeyed: function onLeftKeyed() { + if (this.dir === "rtl" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onRightKeyed: function onRightKeyed() { + if (this.dir === "ltr" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onQueryChanged: function onQueryChanged(e, query) { + this._minLengthMet(query) ? this.menu.update(query) : this.menu.empty(); + }, + _onWhitespaceChanged: function onWhitespaceChanged() { + this._updateHint(); + }, + _onLangDirChanged: function onLangDirChanged(e, dir) { + if (this.dir !== dir) { + this.dir = dir; + this.menu.setLanguageDirection(dir); + } + }, + _openIfActive: function openIfActive() { + this.isActive() && this.open(); + }, + _minLengthMet: function minLengthMet(query) { + query = _.isString(query) ? query : this.input.getQuery() || ""; + return query.length >= this.minLength; + }, + _updateHint: function updateHint() { + var $selectable, data, val, query, escapedQuery, frontMatchRegEx, match; + $selectable = this.menu.getTopSelectable(); + data = this.menu.getSelectableData($selectable); + val = this.input.getInputValue(); + if (data && !_.isBlankString(val) && !this.input.hasOverflow()) { + query = Input.normalizeQuery(val); + escapedQuery = _.escapeRegExChars(query); + frontMatchRegEx = new RegExp("^(?:" + escapedQuery + ")(.+$)", "i"); + match = frontMatchRegEx.exec(data.val); + match && this.input.setHint(val + match[1]); + } else { + this.input.clearHint(); + } + }, + isEnabled: function isEnabled() { + return this.enabled; + }, + enable: function enable() { + this.enabled = true; + }, + disable: function disable() { + this.enabled = false; + }, + isActive: function isActive() { + return this.active; + }, + activate: function activate() { + if (this.isActive()) { + return true; + } else if (!this.isEnabled() || this.eventBus.before("active")) { + return false; + } else { + this.active = true; + this.eventBus.trigger("active"); + return true; + } + }, + deactivate: function deactivate() { + if (!this.isActive()) { + return true; + } else if (this.eventBus.before("idle")) { + return false; + } else { + this.active = false; + this.close(); + this.eventBus.trigger("idle"); + return true; + } + }, + isOpen: function isOpen() { + return this.menu.isOpen(); + }, + open: function open() { + if (!this.isOpen() && !this.eventBus.before("open")) { + this.input.setAriaExpanded(true); + this.menu.open(); + this._updateHint(); + this.eventBus.trigger("open"); + } + return this.isOpen(); + }, + close: function close() { + if (this.isOpen() && !this.eventBus.before("close")) { + this.input.setAriaExpanded(false); + this.menu.close(); + this.input.clearHint(); + this.input.resetInputValue(); + this.eventBus.trigger("close"); + } + return !this.isOpen(); + }, + setVal: function setVal(val) { + this.input.setQuery(_.toStr(val)); + }, + getVal: function getVal() { + return this.input.getQuery(); + }, + select: function select($selectable) { + var data = this.menu.getSelectableData($selectable); + if (data && !this.eventBus.before("select", data.obj, data.dataset)) { + this.input.setQuery(data.val, true); + this.eventBus.trigger("select", data.obj, data.dataset); + this.close(); + return true; + } + return false; + }, + autocomplete: function autocomplete($selectable) { + var query, data, isValid; + query = this.input.getQuery(); + data = this.menu.getSelectableData($selectable); + isValid = data && query !== data.val; + if (isValid && !this.eventBus.before("autocomplete", data.obj, data.dataset)) { + this.input.setQuery(data.val); + this.eventBus.trigger("autocomplete", data.obj, data.dataset); + return true; + } + return false; + }, + moveCursor: function moveCursor(delta) { + var query, $candidate, data, suggestion, datasetName, cancelMove, id; + query = this.input.getQuery(); + $candidate = this.menu.selectableRelativeToCursor(delta); + data = this.menu.getSelectableData($candidate); + suggestion = data ? data.obj : null; + datasetName = data ? data.dataset : null; + id = $candidate ? $candidate.attr("id") : null; + this.input.trigger("cursorchange", id); + cancelMove = this._minLengthMet() && this.menu.update(query); + if (!cancelMove && !this.eventBus.before("cursorchange", suggestion, datasetName)) { + this.menu.setCursor($candidate); + if (data) { + if (typeof data.val === "string") { + this.input.setInputValue(data.val); + } + } else { + this.input.resetInputValue(); + this._updateHint(); + } + this.eventBus.trigger("cursorchange", suggestion, datasetName); + return true; + } + return false; + }, + destroy: function destroy() { + this.input.destroy(); + this.menu.destroy(); + } + }); + return Typeahead; + function c(ctx) { + var methods = [].slice.call(arguments, 1); + return function() { + var args = [].slice.call(arguments); + _.each(methods, function(method) { + return ctx[method].apply(ctx, args); + }); + }; + } + }(); + (function() { + "use strict"; + var old, keys, methods; + old = $.fn.typeahead; + keys = { + www: "tt-www", + attrs: "tt-attrs", + typeahead: "tt-typeahead" + }; + methods = { + initialize: function initialize(o, datasets) { + var www; + datasets = _.isArray(datasets) ? datasets : [].slice.call(arguments, 1); + o = o || {}; + www = WWW(o.classNames); + return this.each(attach); + function attach() { + var $input, $wrapper, $hint, $menu, defaultHint, defaultMenu, eventBus, input, menu, status, typeahead, MenuConstructor; + _.each(datasets, function(d) { + d.highlight = !!o.highlight; + }); + $input = $(this); + $wrapper = $(www.html.wrapper); + $hint = $elOrNull(o.hint); + $menu = $elOrNull(o.menu); + defaultHint = o.hint !== false && !$hint; + defaultMenu = o.menu !== false && !$menu; + defaultHint && ($hint = buildHintFromInput($input, www)); + defaultMenu && ($menu = $(www.html.menu).css(www.css.menu)); + $hint && $hint.val(""); + $input = prepInput($input, www); + if (defaultHint || defaultMenu) { + $wrapper.css(www.css.wrapper); + $input.css(defaultHint ? www.css.input : www.css.inputWithNoHint); + $input.wrap($wrapper).parent().prepend(defaultHint ? $hint : null).append(defaultMenu ? $menu : null); + } + MenuConstructor = defaultMenu ? DefaultMenu : Menu; + eventBus = new EventBus({ + el: $input + }); + input = new Input({ + hint: $hint, + input: $input, + menu: $menu + }, www); + menu = new MenuConstructor({ + node: $menu, + datasets: datasets + }, www); + status = new Status({ + $input: $input, + menu: menu + }); + typeahead = new Typeahead({ + input: input, + menu: menu, + eventBus: eventBus, + minLength: o.minLength, + autoselect: o.autoselect + }, www); + $input.data(keys.www, www); + $input.data(keys.typeahead, typeahead); + } + }, + isEnabled: function isEnabled() { + var enabled; + ttEach(this.first(), function(t) { + enabled = t.isEnabled(); + }); + return enabled; + }, + enable: function enable() { + ttEach(this, function(t) { + t.enable(); + }); + return this; + }, + disable: function disable() { + ttEach(this, function(t) { + t.disable(); + }); + return this; + }, + isActive: function isActive() { + var active; + ttEach(this.first(), function(t) { + active = t.isActive(); + }); + return active; + }, + activate: function activate() { + ttEach(this, function(t) { + t.activate(); + }); + return this; + }, + deactivate: function deactivate() { + ttEach(this, function(t) { + t.deactivate(); + }); + return this; + }, + isOpen: function isOpen() { + var open; + ttEach(this.first(), function(t) { + open = t.isOpen(); + }); + return open; + }, + open: function open() { + ttEach(this, function(t) { + t.open(); + }); + return this; + }, + close: function close() { + ttEach(this, function(t) { + t.close(); + }); + return this; + }, + select: function select(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.select($el); + }); + return success; + }, + autocomplete: function autocomplete(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.autocomplete($el); + }); + return success; + }, + moveCursor: function moveCursoe(delta) { + var success = false; + ttEach(this.first(), function(t) { + success = t.moveCursor(delta); + }); + return success; + }, + val: function val(newVal) { + var query; + if (!arguments.length) { + ttEach(this.first(), function(t) { + query = t.getVal(); + }); + return query; + } else { + ttEach(this, function(t) { + t.setVal(_.toStr(newVal)); + }); + return this; + } + }, + destroy: function destroy() { + ttEach(this, function(typeahead, $input) { + revert($input); + typeahead.destroy(); + }); + return this; + } + }; + $.fn.typeahead = function(method) { + if (methods[method]) { + return methods[method].apply(this, [].slice.call(arguments, 1)); + } else { + return methods.initialize.apply(this, arguments); + } + }; + $.fn.typeahead.noConflict = function noConflict() { + $.fn.typeahead = old; + return this; + }; + function ttEach($els, fn) { + $els.each(function() { + var $input = $(this), typeahead; + (typeahead = $input.data(keys.typeahead)) && fn(typeahead, $input); + }); + } + function buildHintFromInput($input, www) { + return $input.clone().addClass(www.classes.hint).removeData().css(www.css.hint).css(getBackgroundStyles($input)).prop({ + readonly: true, + required: false + }).removeAttr("id name placeholder").removeClass("required").attr({ + spellcheck: "false", + tabindex: -1 + }); + } + function prepInput($input, www) { + $input.data(keys.attrs, { + dir: $input.attr("dir"), + autocomplete: $input.attr("autocomplete"), + spellcheck: $input.attr("spellcheck"), + style: $input.attr("style") + }); + $input.addClass(www.classes.input).attr({ + spellcheck: false + }); + try { + !$input.attr("dir") && $input.attr("dir", "auto"); + } catch (e) {} + return $input; + } + function getBackgroundStyles($el) { + return { + backgroundAttachment: $el.css("background-attachment"), + backgroundClip: $el.css("background-clip"), + backgroundColor: $el.css("background-color"), + backgroundImage: $el.css("background-image"), + backgroundOrigin: $el.css("background-origin"), + backgroundPosition: $el.css("background-position"), + backgroundRepeat: $el.css("background-repeat"), + backgroundSize: $el.css("background-size") + }; + } + function revert($input) { + var www, $wrapper; + www = $input.data(keys.www); + $wrapper = $input.parent().filter(www.selectors.wrapper); + _.each($input.data(keys.attrs), function(val, key) { + _.isUndefined(val) ? $input.removeAttr(key) : $input.attr(key, val); + }); + $input.removeData(keys.typeahead).removeData(keys.www).removeData(keys.attr).removeClass(www.classes.input); + if ($wrapper.length) { + $input.detach().insertAfter($wrapper); + $wrapper.remove(); + } + } + function $elOrNull(obj) { + var isValid, $el; + isValid = _.isJQuery(obj) || _.isElement(obj); + $el = isValid ? $(obj).first() : []; + return $el.length ? $el : null; + } + })(); +}); \ No newline at end of file diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/search.json b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/search.json new file mode 100644 index 0000000000..c59116859f --- /dev/null +++ b/6.23.1/docsets/Braintree.docset/Contents/Resources/Documents/search.json @@ -0,0 +1 @@ +{"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV19isPayPalRecommendedSbvp":{"name":"isPayPalRecommended","abstract":"\u003cp\u003eIf true, display the PayPal button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV18isVenmoRecommendedSbvp":{"name":"isVenmoRecommended","abstract":"\u003cp\u003eIf true, dislpay the Venmo button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV25isEligibleInPayPalNetworkSbvp":{"name":"isEligibleInPayPalNetwork","abstract":"\u003cp\u003eIf true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/Phone.html#/s:24BraintreeShopperInsights5PhoneV11countryCode14nationalNumberACSS_SStcfc":{"name":"init(countryCode:nationalNumber:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest.Phone\u003c/code\u003e.\u003c/p\u003e","parent_name":"Phone"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5email5phoneACSS_AA5PhoneVtcfc":{"name":"init(email:phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5emailACSS_tcfc":{"name":"init(email:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5phoneAcA5PhoneV_tcfc":{"name":"init(phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTPayPalMessagingRequest.html#/s:24BraintreePayPalMessaging05BTPaycD7RequestV6amount8pageType05offerI012buyerCountry04logoI013textAlignment5colorACSdSg_AA0ecd4PageI0OSgAA0ecd5OfferI0OSgSSSgAA0ecd4LogoI0OAA0ecd4TextO0OAA0ecD5ColorOtcfc":{"name":"init(amount:pageType:offerType:buyerCountry:logoType:textAlignment:color:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTPayPalMessaging\u003c/code\u003e\u003c/p\u003e","parent_name":"BTPayPalMessagingRequest"},"Structs/BTPayPalMessagingRequest.html":{"name":"BTPayPalMessagingRequest","abstract":"\u003cp\u003eUsed to initialize a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e"},"Structs/BTShopperInsightsRequest.html":{"name":"BTShopperInsightsRequest","abstract":"\u003cp\u003eBuyer data required to use the Shopper Insights feature.\u003c/p\u003e"},"Structs/Phone.html":{"name":"Phone","abstract":"\u003cp\u003eBuyer\u0026rsquo;s phone number details for use with the Shopper Insights feature.\u003c/p\u003e"},"Structs/BTShopperInsightsResult.html":{"name":"BTShopperInsightsResult","abstract":"\u003cp\u003eA summary of the buyer\u0026rsquo;s recommended payment methods.\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didSelectyyAA0ecD4ViewCF":{"name":"didSelect(_:)","abstract":"\u003cp\u003eFunction invoked when the message is tapped\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9willApplyyyAA0ecD4ViewCF":{"name":"willApply(_:)","abstract":"\u003cp\u003eFunction invoked when a user has begun the PayPal Credit application\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP10willAppearyyAA0ecD4ViewCF":{"name":"willAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message first starts to fetch data\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didAppearyyAA0ecD4ViewCF":{"name":"didAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message has rendered\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP7onError_5erroryAA0ecD4ViewC_s0H0_ptF":{"name":"onError(_:error:)","abstract":"\u003cp\u003eFunction invoked when the message encounters an error\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html#/c:@M@BraintreeThreeDSecure@objc(pl)BTThreeDSecureRequestDelegate(im)onLookupComplete:lookupResult:next:":{"name":"onLookupComplete(_:lookupResult:next:)","abstract":"\u003cp\u003eRequired delegate method which returns the ThreeDSecure lookup result before the flow continues.","parent_name":"BTThreeDSecureRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html#/c:@M@BraintreeLocalPayment@objc(pl)BTLocalPaymentRequestDelegate(im)localPaymentStarted:paymentID:start:":{"name":"localPaymentStarted(_:paymentID:start:)","abstract":"\u003cp\u003eRequired delegate method which returns the payment ID before the flow starts.\u003c/p\u003e","parent_name":"BTLocalPaymentRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html":{"name":"BTLocalPaymentRequestDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html":{"name":"BTThreeDSecureRequestDelegate","abstract":"\u003cp\u003eProtocol for ThreeDSecure Request flow\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html":{"name":"BTPayPalMessagingDelegate","abstract":"\u003cp\u003eProtocol for \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e events\u003c/p\u003e"},"Extensions/BTThreeDSecureV2Provider.html#/s:21BraintreeThreeDSecure07BTThreeC10V2ProviderC15cardinalSessionAD15stepUpValidated9serverJWTySo08CardinalH0CSg_So0N8ResponseCSgSSSgtF":{"name":"cardinalSession(cardinalSession:stepUpValidated:serverJWT:)","parent_name":"BTThreeDSecureV2Provider"},"Extensions.html#/c:objc(cs)UIApplication":{"name":"UIApplication"},"Extensions/BTThreeDSecureV2Provider.html":{"name":"BTThreeDSecureV2Provider"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO17emptyBodyReturnedyA2CmF":{"name":"emptyBodyReturned","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO20invalidAuthorizationyA2CmF":{"name":"invalidAuthorization","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTShopperInsightsError"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO4leftyA2CmF":{"name":"left","abstract":"\u003cp\u003eText aligned to the left\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO6centeryA2CmF":{"name":"center","abstract":"\u003cp\u003eText aligned to the center\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO5rightyA2CmF":{"name":"right","abstract":"\u003cp\u003eText aligned to the right\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4homeyA2CmF":{"name":"home","abstract":"\u003cp\u003eHome view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO14productDetailsyA2CmF":{"name":"productDetails","abstract":"\u003cp\u003eIndividual product details view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4cartyA2CmF":{"name":"cart","abstract":"\u003cp\u003eShopping cart view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8miniCartyA2CmF":{"name":"miniCart","abstract":"\u003cp\u003ePopover shopping cart view that covers part of the view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8checkoutyA2CmF":{"name":"checkout","abstract":"\u003cp\u003eCheckout view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO13searchResultsyA2CmF":{"name":"searchResults","abstract":"\u003cp\u003eSearch results\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO17payLaterShortTermyA2CmF":{"name":"payLaterShortTerm","abstract":"\u003cp\u003ePay Later short term installment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO16payLaterLongTermyA2CmF":{"name":"payLaterLongTerm","abstract":"\u003cp\u003ePay Later long term installments\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO08payLaterB5InOneyA2CmF":{"name":"payLaterPayInOne","abstract":"\u003cp\u003ePay Later deferred payment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO03payC16CreditNoInterestyA2CmF":{"name":"payPalCreditNoInterest","abstract":"\u003cp\u003ePayPal Credit No Interest\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO6inlineyA2CmF":{"name":"inline","abstract":"\u003cp\u003ePayPal logo positioned inline within the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO7primaryyA2CmF":{"name":"primary","abstract":"\u003cp\u003ePrimary logo including both the PayPal monogram and logo\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO11alternativeyA2CmF":{"name":"alternative","abstract":"\u003cp\u003eAlternative logo including just the PayPal monogram\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO4noneyA2CmF":{"name":"none","abstract":"\u003cp\u003e\u0026ldquo;PayPal\u0026rdquo; as bold text inline with the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5blackyA2CmF":{"name":"black","abstract":"\u003cp\u003eBlack text with a color logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5whiteyA2CmF":{"name":"white","abstract":"\u003cp\u003eWhite text with a white logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO10monochromeyA2CmF":{"name":"monochrome","abstract":"\u003cp\u003eBlack text with a black logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO9grayscaleyA2CmF":{"name":"grayscale","abstract":"\u003cp\u003eBlack text with a desaturated logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageMultiUse":{"name":"multiUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for future payments and can be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageSingleUse":{"name":"singleUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for a one-time payment and cannot be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appNotAvailableyA2CmF":{"name":"appNotAvailable","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24bundleDisplayNameMissingyA2CmF":{"name":"bundleDisplayNameMissing","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO16invalidReturnURLyACSScACmF":{"name":"invalidReturnURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO19invalidBodyReturnedyA2CmF":{"name":"invalidBodyReturned","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO18invalidRedirectURLyACSScACmF":{"name":"invalidRedirectURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO28enrichedCustomerDataDisabledyA2CmF":{"name":"enrichedCustomerDataDisabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO27invalidRedirectURLParameteryA2CmF":{"name":"invalidRedirectURLParameter","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoError"},"Enums/BTVenmoAppSwitchError.html#/s:14BraintreeVenmo21BTVenmoAppSwitchErrorO14returnURLErroryACSi_SSSgtcACmF":{"name":"returnURLError(_:_:)","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoAppSwitchError"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeLogin":{"name":"login","abstract":"\u003cp\u003eLogin\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeBilling":{"name":"billing","abstract":"\u003cp\u003eBilling\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeCheckout":{"name":"checkout","abstract":"\u003cp\u003eCheckout\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeVault":{"name":"vault","abstract":"\u003cp\u003eVault\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNone":{"name":"none","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDa_DK":{"name":"da_DK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDe_DE":{"name":"de_DE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_AU":{"name":"en_AU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_GB":{"name":"en_GB","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_US":{"name":"en_US","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_ES":{"name":"es_ES","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_XC":{"name":"es_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_CA":{"name":"fr_CA","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_FR":{"name":"fr_FR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_XC":{"name":"fr_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeId_ID":{"name":"id_ID","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeIt_IT":{"name":"it_IT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeJa_JP":{"name":"ja_JP","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeKo_KR":{"name":"ko_KR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNl_NL":{"name":"nl_NL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNo_NO":{"name":"no_NO","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePl_PL":{"name":"pl_PL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_BR":{"name":"pt_BR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_PT":{"name":"pt_PT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeRu_RU":{"name":"ru_RU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeSv_SE":{"name":"sv_SE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTh_TH":{"name":"th_TH","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTr_TR":{"name":"tr_TR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_CN":{"name":"zh_CN","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_HK":{"name":"zh_HK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_TW":{"name":"zh_TW","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_XC":{"name":"zh_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_A":{"name":"UPC_A","abstract":"\u003cp\u003eUpc Type A\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_B":{"name":"UPC_B","abstract":"\u003cp\u003eUpc Type B\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_C":{"name":"UPC_C","abstract":"\u003cp\u003eUpc Type C\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_D":{"name":"UPC_D","abstract":"\u003cp\u003eUpc Type D\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_E":{"name":"UPC_E","abstract":"\u003cp\u003eUpc Type E\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_2":{"name":"UPC_2","abstract":"\u003cp\u003eUpc Type 2\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_5":{"name":"UPC_5","abstract":"\u003cp\u003eUpc Type 5\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO015httpPostRequestE0yACSDySSypGcACmF":{"name":"httpPostRequestError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO10invalidURLyACSScACmF":{"name":"invalidURL(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO36asWebAuthenticationSessionURLInvalidyACSScACmF":{"name":"asWebAuthenticationSessionURLInvalid(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO16invalidURLActionyA2CmF":{"name":"invalidURLAction","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO29appSwitchReturnURLPathInvalidyA2CmF":{"name":"appSwitchReturnURLPathInvalid","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO14missingBATokenyA2CmF":{"name":"missingBAToken","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionPayNow":{"name":"payNow","abstract":"\u003cp\u003ePay Now\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentAuthorize":{"name":"authorize","abstract":"\u003cp\u003eAuthorize\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentSale":{"name":"sale","abstract":"\u003cp\u003eSale\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentOrder":{"name":"order","abstract":"\u003cp\u003eOrder\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/s:15BraintreePayPal05BTPayC13RequestIntentO11stringValueSSvp":{"name":"stringValue","parent_name":"BTPayPalRequestIntent"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO20customerInputInvalidyACSDySSypGcACmF":{"name":"customerInputInvalid(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO17cardAlreadyExistsyACSDySSypGcACmF":{"name":"cardAlreadyExists(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTCardError"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeVerify":{"name":"verify","abstract":"\u003cp\u003eVerify button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeContinue":{"name":"continue","abstract":"\u003cp\u003eContinue button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeNext":{"name":"next","abstract":"\u003cp\u003eNext button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeCancel":{"name":"cancel","abstract":"\u003cp\u003eCancel button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeResend":{"name":"resend","abstract":"\u003cp\u003eResend button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeNative":{"name":"native","abstract":"\u003cp\u003eNative\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeHtml":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeBoth":{"name":"both","abstract":"\u003cp\u003eBoth\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodSameDay":{"name":"sameDay","abstract":"\u003cp\u003eSame Day\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodExpedited":{"name":"expedited","abstract":"\u003cp\u003eExpedited\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodPriority":{"name":"priority","abstract":"\u003cp\u003ePriority\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodGround":{"name":"ground","abstract":"\u003cp\u003eGround\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodElectronicDelivery":{"name":"electronicDelivery","abstract":"\u003cp\u003eElectronic Delivery\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodShipToStore":{"name":"shipToStore","abstract":"\u003cp\u003eShip to Store\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeLowValue":{"name":"lowValue","abstract":"\u003cp\u003eLow value\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeSecureCorporate":{"name":"secureCorporate","abstract":"\u003cp\u003eSecure corporate\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTrustedBeneficiary":{"name":"trustedBeneficiary","abstract":"\u003cp\u003eTrusted beneficiary\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTransactionRiskAnalysis":{"name":"transactionRiskAnalysis","abstract":"\u003cp\u003eTransaction risk analysis\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO12failedLookupyACSDySSypGcACmF":{"name":"failedLookup(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20failedAuthenticationyACSScACmF":{"name":"failedAuthentication(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO13configurationyACSScACmF":{"name":"configuration(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20exceededTimeoutLimityA2CmF":{"name":"exceededTimeoutLimit","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeRequested":{"name":"requested","abstract":"\u003cp\u003eRequested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeNotRequested":{"name":"notRequested","abstract":"\u003cp\u003eNot Requested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO13noAccountDatayA2CmF":{"name":"noAccountData","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8canceledyACSScACmF":{"name":"canceled(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO18missingRedirectURLyA2CmF":{"name":"missingRedirectURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16errorDescriptionSSvp":{"name":"errorDescription","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTLocalPaymentError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO11unsupportedyA2CmF":{"name":"unsupported","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO02nobC13CardsReturnedyA2CmF":{"name":"noApplePayCardsReturned","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTApplePayError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO15encodingFailureyA2CmF":{"name":"encodingFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTDataCollectorError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO13noRewardsDatayA2CmF":{"name":"noRewardsData","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAmericanExpressError"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeOneOff":{"name":"oneOff","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeRecurrent":{"name":"recurrent","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO15webFlowCanceledyA2CmF":{"name":"webFlowCanceled","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO16resultURLInvalidyA2CmF":{"name":"resultURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO17resultReturnedNilyA2CmF":{"name":"resultReturnedNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO18approvalURLInvalidyA2CmF":{"name":"approvalURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO23authenticationResultNilyA2CmF":{"name":"authenticationResultNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTSEPADirectDebitError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO14invalidRequestyA2CmF":{"name":"invalidRequest","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC10NotEnabledyA2CmF":{"name":"payPalNotEnabled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18invalidEnvironmentyA2CmF":{"name":"invalidEnvironment","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19orderCreationFailedyACs0G0_pcACmF":{"name":"orderCreationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO17checkoutSDKFailedyAC0bcE00G4InfoCcACmF":{"name":"checkoutSDKFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18tokenizationFailedyACs0G0_pcACmF":{"name":"tokenizationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO31parsingTokenizationResultFailedyA2CmF":{"name":"parsingTokenizationResultFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19invalidJSONResponseyA2CmF":{"name":"invalidJSONResponse","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO12indexInvalidyACSicACmF":{"name":"indexInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO10keyInvalidyACSScACmF":{"name":"keyInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTJSONError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO32responseContentTypeNotAcceptableyACSDySSypGcACmF":{"name":"responseContentTypeNotAcceptable(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11clientErroryACSDySSypGcACmF":{"name":"clientError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11serverErroryACSDySSypGcACmF":{"name":"serverError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14missingBaseURLyACSDySSypGcACmF":{"name":"missingBaseURL(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14rateLimitErroryACSDySSypGcACmF":{"name":"rateLimitError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO12dataNotFoundyA2CmF":{"name":"dataNotFound","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19httpResponseInvalidyA2CmF":{"name":"httpResponseInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO16urlStringInvalidyA2CmF":{"name":"urlStringInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19clientApiURLInvalidyA2CmF":{"name":"clientApiURLInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO18serializationErroryACSScACmF":{"name":"serializationError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11deallocatedyACSScACmF":{"name":"deallocated(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTHTTPError"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnknown":{"name":"unknown","abstract":"\u003cp\u003eUnknown card\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkAMEX":{"name":"AMEX","abstract":"\u003cp\u003eAmerican Express\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDinersClub":{"name":"dinersClub","abstract":"\u003cp\u003eDiners Club\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDiscover":{"name":"discover","abstract":"\u003cp\u003eDiscover\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMasterCard":{"name":"masterCard","abstract":"\u003cp\u003eMastercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkVisa":{"name":"visa","abstract":"\u003cp\u003eVisa\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkJCB":{"name":"JCB","abstract":"\u003cp\u003eJCB\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkLaser":{"name":"laser","abstract":"\u003cp\u003eLaser\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMaestro":{"name":"maestro","abstract":"\u003cp\u003eMaestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnionPay":{"name":"unionPay","abstract":"\u003cp\u003eUnion Pay\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHiper":{"name":"hiper","abstract":"\u003cp\u003eHiper\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHipercard":{"name":"hipercard","abstract":"\u003cp\u003eHipercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSolo":{"name":"solo","abstract":"\u003cp\u003eSolo\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSwitch":{"name":"switch","abstract":"\u003cp\u003eSwitch\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUkMaestro":{"name":"ukMaestro","abstract":"\u003cp\u003eUK Maestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO24configurationUnavailableyA2CmF":{"name":"configurationUnavailable","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO13notAuthorizedyA2CmF":{"name":"notAuthorized","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO20failedBase64EncodingyA2CmF":{"name":"failedBase64Encoding","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAPIClientError"},"Enums/TokenizationKeyError.html#/s:13BraintreeCore20TokenizationKeyErrorO7invalidyA2CmF":{"name":"invalid","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"TokenizationKeyError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO16invalidConfigURLyA2CmF":{"name":"invalidConfigURL","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO13invalidFormatyACSScACmF":{"name":"invalidFormat(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO18unsupportedVersionyA2CmF":{"name":"unsupportedVersion","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO14failedDecodingyACSScACmF":{"name":"failedDecoding(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTClientTokenError"},"Enums/BTAnalyticsServiceError.html#/s:13BraintreeCore23BTAnalyticsServiceErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html":{"name":"BTAnalyticsServiceError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTClientTokenError.html":{"name":"BTClientTokenError","abstract":"\u003cp\u003eError codes associated with a client token.\u003c/p\u003e"},"Enums/TokenizationKeyError.html":{"name":"TokenizationKeyError","abstract":"\u003cp\u003eError codes associated with a Tokenization Key.\u003c/p\u003e"},"Enums/BTAPIClientError.html":{"name":"BTAPIClientError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTCardNetwork.html":{"name":"BTCardNetwork","abstract":"\u003cp\u003eCard type\u003c/p\u003e"},"Enums/BTHTTPError.html":{"name":"BTHTTPError","abstract":"\u003cp\u003eError codes associated with BTHTTP\u003c/p\u003e"},"Enums/BTJSONError.html":{"name":"BTJSONError"},"Enums/BTPayPalNativeCheckoutError.html":{"name":"BTPayPalNativeCheckoutError","abstract":"\u003cp\u003eError returned from the native PayPal flow\u003c/p\u003e"},"Enums/BTSEPADirectDebitError.html":{"name":"BTSEPADirectDebitError","abstract":"\u003cp\u003eError details associated with SEPA Direct Debit.\u003c/p\u003e"},"Enums/BTSEPADirectDebitMandateType.html":{"name":"BTSEPADirectDebitMandateType","abstract":"\u003cp\u003eMandate type for the SEPA Direct Debit request.\u003c/p\u003e"},"Enums/BTAmericanExpressError.html":{"name":"BTAmericanExpressError","abstract":"\u003cp\u003eError details associated with American Express.\u003c/p\u003e"},"Enums/BTDataCollectorError.html":{"name":"BTDataCollectorError","abstract":"\u003cp\u003eError details associated with Braintree Data Collector.\u003c/p\u003e"},"Enums/BTApplePayError.html":{"name":"BTApplePayError","abstract":"\u003cp\u003eError codes associated with Apple Pay.\u003c/p\u003e"},"Enums/BTLocalPaymentError.html":{"name":"BTLocalPaymentError","abstract":"\u003cp\u003eError codes associated with Payment Flow\u003c/p\u003e"},"Enums/BTThreeDSecureAccountType.html":{"name":"BTThreeDSecureAccountType","abstract":"\u003cp\u003eThe account type\u003c/p\u003e"},"Enums/BTThreeDSecureCardAddChallenge.html":{"name":"BTThreeDSecureCardAddChallenge","abstract":"\u003cp\u003eThe card add challenge request\u003c/p\u003e"},"Enums/BTThreeDSecureError.html":{"name":"BTThreeDSecureError"},"Enums/BTThreeDSecureRequestedExemptionType.html":{"name":"BTThreeDSecureRequestedExemptionType","abstract":"\u003cp\u003e3D Secure requested exemption type\u003c/p\u003e"},"Enums/BTThreeDSecureShippingMethod.html":{"name":"BTThreeDSecureShippingMethod","abstract":"\u003cp\u003eThe shipping method\u003c/p\u003e"},"Enums/BTThreeDSecureUIType.html":{"name":"BTThreeDSecureUIType","abstract":"\u003cp\u003eThe interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Enums/BTThreeDSecureV2ButtonType.html":{"name":"BTThreeDSecureV2ButtonType","abstract":"\u003cp\u003eButton types that can be customized in 3D Secure 2 flows.\u003c/p\u003e"},"Enums/BTCardError.html":{"name":"BTCardError"},"Enums/BTPayPalRequestIntent.html":{"name":"BTPayPalRequestIntent","abstract":"\u003cp\u003ePayment intent.\u003c/p\u003e"},"Enums/BTPayPalRequestUserAction.html":{"name":"BTPayPalRequestUserAction","abstract":"\u003cp\u003eThe call-to-action in the PayPal Checkout flow.\u003c/p\u003e"},"Enums/BTPayPalError.html":{"name":"BTPayPalError","abstract":"\u003cp\u003eError codes associated with PayPal.\u003c/p\u003e"},"Enums/BTPayPalLineItemKind.html":{"name":"BTPayPalLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTPayPalLineItemUPCType.html":{"name":"BTPayPalLineItemUPCType","abstract":"\u003cp\u003eUse this option to specify the UPC type of the line item.\u003c/p\u003e"},"Enums/BTPayPalLocaleCode.html":{"name":"BTPayPalLocaleCode","abstract":"\u003cp\u003eA locale code to use for a transaction.\u003c/p\u003e"},"Enums/BTPayPalPaymentType.html":{"name":"BTPayPalPaymentType"},"Enums/BTPayPalRequestLandingPageType.html":{"name":"BTPayPalRequestLandingPageType","abstract":"\u003cp\u003eUse this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.\u003c/p\u003e"},"Enums/BTVenmoAppSwitchError.html":{"name":"BTVenmoAppSwitchError","abstract":"\u003cp\u003eError codes associated with Venmo App Switch\u003c/p\u003e"},"Enums/BTVenmoError.html":{"name":"BTVenmoError","abstract":"\u003cp\u003eError codes associated with Venmo\u003c/p\u003e"},"Enums/BTVenmoLineItemKind.html":{"name":"BTVenmoLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTVenmoPaymentMethodUsage.html":{"name":"BTVenmoPaymentMethodUsage","abstract":"\u003cp\u003eUsage type for the tokenized Venmo account\u003c/p\u003e"},"Enums/BTPayPalMessagingColor.html":{"name":"BTPayPalMessagingColor","abstract":"\u003cp\u003eText and logo color option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingError.html":{"name":"BTPayPalMessagingError","abstract":"\u003cp\u003eError details associated with PayPal Messaging.\u003c/p\u003e"},"Enums/BTPayPalMessagingLogoType.html":{"name":"BTPayPalMessagingLogoType","abstract":"\u003cp\u003eLogo type option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingOfferType.html":{"name":"BTPayPalMessagingOfferType","abstract":"\u003cp\u003ePreferred message offer to display\u003c/p\u003e"},"Enums/BTPayPalMessagingPageType.html":{"name":"BTPayPalMessagingPageType","abstract":"\u003cp\u003eMessage location within an application\u003c/p\u003e"},"Enums/BTPayPalMessagingTextAlignment.html":{"name":"BTPayPalMessagingTextAlignment","abstract":"\u003cp\u003eText alignment option for a PayPal Message\u003c/p\u003e"},"Enums/BTShopperInsightsError.html":{"name":"BTShopperInsightsError"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC03apiE0AC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC28getRecommendedPaymentMethods7requestAA0dC6ResultVAA0dC7RequestV_tYaKF":{"name":"getRecommendedPaymentMethods(request:)","abstract":"\u003cp\u003eThis method confirms if the customer is a user of PayPal services using their email and phone number.\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC24sendPayPalPresentedEventyyF":{"name":"sendPayPalPresentedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendPayPalSelectedEventyyF":{"name":"sendPayPalSelectedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendVenmoPresentedEventyyF":{"name":"sendVenmoPresentedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC22sendVenmoSelectedEventyyF":{"name":"sendVenmoSelectedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTPayPalMessagingView/Representable.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC13RepresentableV9apiClient7request8delegateAE0A4Core11BTAPIClientC_AA0ecD7RequestVAA0ecD8Delegate_pSgtcfc":{"name":"init(apiClient:request:delegate:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP04makeC07context0C4TypeQzAA0cD7ContextVyxG_tF":{"name":"makeUIView(context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP06updateC0_7contexty0C4TypeQz_AA0cD7ContextVyxGtF":{"name":"updateUIView(_:context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC8delegateAA0ecD8Delegate_pSgvp":{"name":"delegate","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC9apiClientAC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC5startyyAA0ecD7RequestVF":{"name":"start(_:)","abstract":"\u003cp\u003eCreates a view to be displayed to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView/Representable.html":{"name":"Representable","abstract":"\u003cp\u003ePayPal Messaging for SwiftUI\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onClickyyAA0abdE0CF":{"name":"onClick(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onApplyyyAA0abdE0CF":{"name":"onApply(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onLoadingyyAA0abdE0CF":{"name":"onLoading(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onSuccessyyAA0abdE0CF":{"name":"onSuccess(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP7onError_5erroryAA0abdE0C_AA0abdI0OtF":{"name":"onError(_:error:)","parent_name":"BTPayPalMessagingView"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)profileID":{"name":"profileID","abstract":"\u003cp\u003eOptional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)vault":{"name":"vault","abstract":"\u003cp\u003eWhether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)paymentMethodUsage":{"name":"paymentMethodUsage","abstract":"\u003cp\u003eIf set to \u003ccode\u003e.multiUse\u003c/code\u003e, the Venmo payment will be authorized for future payments and can be vaulted.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerBillingAddress":{"name":"collectCustomerBillingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s billing address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerShippingAddress":{"name":"collectCustomerShippingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s shipping address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)isFinalAmount":{"name":"isFinalAmount","abstract":"\u003cp\u003eIndicates whether the purchase amount is the final amount.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)subTotalAmount":{"name":"subTotalAmount","abstract":"\u003cp\u003eOptional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)discountAmount":{"name":"discountAmount","abstract":"\u003cp\u003eOptional. The total discount amount applied on the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. The total tax amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)shippingAmount":{"name":"shippingAmount","abstract":"\u003cp\u003eOptional. The shipping amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)totalAmount":{"name":"totalAmount","abstract":"\u003cp\u003eOptional. The grand total amount on the transaction that should be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional. The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)fallbackToWeb":{"name":"fallbackToWeb","abstract":"\u003cp\u003eOptional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(im)initWithPaymentMethodUsage:":{"name":"init(paymentMethodUsage:)","abstract":"\u003cp\u003eInitialize a Venmo request with a payment method usage.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a BTVenmoLineItem\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)tokenizeWithVenmoRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/s:14BraintreeVenmo13BTVenmoClientC8tokenizeyAA0C12AccountNonceCAA0C7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)isVenmoAppInstalled":{"name":"isVenmoAppInstalled()","abstract":"\u003cp\u003eReturns true if the proper Venmo app is installed and configured correctly, returns false otherwise.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)openVenmoAppPageInAppStore":{"name":"openVenmoAppPageInAppStore()","abstract":"\u003cp\u003eSwitches to the App Store to download the Venmo application.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003eThe email associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)externalID":{"name":"externalID","abstract":"\u003cp\u003eThe external ID associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eThe first name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eThe last name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eThe phone number associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)username":{"name":"username","abstract":"\u003cp\u003eThe username associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe primary billing address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe primary shipping address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithUserAuthenticationEmail:enablePayPalAppSwitch:offerCredit:":{"name":"init(userAuthenticationEmail:enablePayPalAppSwitch:offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request for the PayPal App Switch flow\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithOfferCredit:userAuthenticationEmail:":{"name":"init(offerCredit:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)parametersWith:universalLink:":{"name":"parameters(with:universalLink:)","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(py)offerCredit":{"name":"offerCredit","abstract":"\u003cp\u003eOptional: Offers PayPal Credit if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(im)initWithOfferCredit:":{"name":"init(offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eDefaults to false. When set to true, the shipping address selector will be displayed.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressEditable":{"name":"isShippingAddressEditable","abstract":"\u003cp\u003eDefaults to false. Set to true to enable user editing of the shipping address.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)localeCode":{"name":"localeCode","abstract":"\u003cp\u003eOptional: A locale code to use for the transaction.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)shippingAddressOverride":{"name":"shippingAddressOverride","abstract":"\u003cp\u003eOptional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)landingPageType":{"name":"landingPageType","abstract":"\u003cp\u003eOptional: Landing page type. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional: The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)billingAgreementDescription":{"name":"billingAgreementDescription","abstract":"\u003cp\u003eOptional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)riskCorrelationID":{"name":"riskCorrelationID","abstract":"\u003cp\u003eOptional: A risk correlation ID created with Set Transaction Context on your server.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)imageURL":{"name":"imageURL","abstract":"\u003cp\u003eOptional: The URL to product image information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcCode":{"name":"upcCode","abstract":"\u003cp\u003eOptional: UPC code for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcType":{"name":"upcType","abstract":"\u003cp\u003eOptional: UPC type for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a PayPayLineItem\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)currency":{"name":"currency","abstract":"\u003cp\u003e3 letter currency code as defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)value":{"name":"value","abstract":"\u003cp\u003eAn amount defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e for the given currency.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)cardAmountImmutable":{"name":"cardAmountImmutable","abstract":"\u003cp\u003eIndicates whether the card amount is editable after payer\u0026rsquo;s acceptance on PayPal side.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)monthlyPayment":{"name":"monthlyPayment","abstract":"\u003cp\u003eEstimated amount per month that the customer will need to pay including fees and interest.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)payerAcceptance":{"name":"payerAcceptance","abstract":"\u003cp\u003eStatus of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)term":{"name":"term","abstract":"\u003cp\u003eLength of financing terms in months.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalCost":{"name":"totalCost","abstract":"\u003cp\u003eEstimated total payment amount including interest and fees the user will pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalInterest":{"name":"totalInterest","abstract":"\u003cp\u003eEstimated interest or fees amount the payer will have to pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:universalLink:":{"name":"init(apiClient:universalLink:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance for the PayPal App Switch flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC15CheckoutRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eUsed for a one-time payment.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)intent":{"name":"intent","abstract":"\u003cp\u003eOptional: Payment intent. Defaults to \u003ccode\u003e.authorize\u003c/code\u003e. Only applies to PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAction":{"name":"userAction","abstract":"\u003cp\u003eOptional: Changes the call-to-action in the PayPal Checkout flow. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)offerPayLater":{"name":"offerPayLater","abstract":"\u003cp\u003eOptional: Offers PayPal Pay Later if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e. Only available with PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)requestBillingAgreement":{"name":"requestBillingAgreement","abstract":"\u003cp\u003eOptional: If set to \u003ccode\u003etrue\u003c/code\u003e, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(im)initWithAmount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:":{"name":"init(amount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)creditFinancing":{"name":"creditFinancing","abstract":"\u003cp\u003eOptional. Credit financing details if the customer pays with PayPal Credit.","parent_name":"BTPayPalAccountNonce"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)acsTransactionID":{"name":"acsTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatus":{"name":"authenticationTransactionStatus","abstract":"\u003cp\u003eOn authentication, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatusReason":{"name":"authenticationTransactionStatusReason","abstract":"\u003cp\u003eOn authentication, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)cavv":{"name":"cavv","abstract":"\u003cp\u003eCardholder authentication verification value or \u0026ldquo;CAVV\u0026rdquo; is the main encrypted message issuers and card networks use to verify authentication has occured.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)dsTransactionID":{"name":"dsTransactionID","abstract":"\u003cp\u003eDirectory Server Transaction ID is an ID used by the card brand\u0026rsquo;s 3DS directory server.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)eciFlag":{"name":"eciFlag","abstract":"\u003cp\u003eThe ecommerce indicator flag indicates the outcome of the 3DS authentication.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)enrolled":{"name":"enrolled","abstract":"\u003cp\u003eIndicates whether a card is enrolled in a 3D Secure program or not. Possible values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShifted":{"name":"liabilityShifted","abstract":"\u003cp\u003eIf the 3D Secure liability shift has occurred.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShiftPossible":{"name":"liabilityShiftPossible","abstract":"\u003cp\u003eIf the 3D Secure liability shift is possible.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatus":{"name":"lookupTransactionStatus","abstract":"\u003cp\u003eOn lookup, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatusReason":{"name":"lookupTransactionStatusReason","abstract":"\u003cp\u003eOn lookup, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)paresStatus":{"name":"paresStatus","abstract":"\u003cp\u003eThe Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)status":{"name":"status","abstract":"\u003cp\u003eThe 3D Secure status value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureAuthenticationID":{"name":"threeDSecureAuthenticationID","abstract":"\u003cp\u003eUnique identifier assigned to the 3D Secure authentication performed for this transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureServerTransactionID":{"name":"threeDSecureServerTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the 3DS Server to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe 3DS version used in the authentication, example \u0026ldquo;1.0.2\u0026rdquo; or \u0026ldquo;2.1.0\u0026rdquo;.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)wasVerified":{"name":"wasVerified","abstract":"\u003cp\u003eIndicates if the 3D Secure lookup was performed.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)xid":{"name":"xid","abstract":"\u003cp\u003eTransaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message.","parent_name":"BTThreeDSecureInfo"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(py)card":{"name":"card","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e associated with this instance.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(im)initWithCard:":{"name":"init(card:)","abstract":"\u003cp\u003eInitialize a Card request with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardNetwork":{"name":"cardNetwork","abstract":"\u003cp\u003eThe card network.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eThe name of the cardholder, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastTwo":{"name":"lastTwo","abstract":"\u003cp\u003eThe last two digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastFour":{"name":"lastFour","abstract":"\u003cp\u003eThe last four digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)bin":{"name":"bin","abstract":"\u003cp\u003eThe BIN number of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)threeDSecureInfo":{"name":"threeDSecureInfo","abstract":"\u003cp\u003eThe 3D Secure info for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)authenticationInsight":{"name":"authenticationInsight","abstract":"\u003cp\u003eDetails about the regulatory environment and applicable customer authentication regulation for a potential transaction.","parent_name":"BTCardNonce"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a card client\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)tokenizeCard:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/s:13BraintreeCard12BTCardClientC8tokenizeyAA0C5NonceCAA0C0CYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)number":{"name":"number","abstract":"\u003cp\u003eThe card number\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month as a one or two-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year as a two or four-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cvv":{"name":"cvv","abstract":"\u003cp\u003eThe card verification code (like CVV or CID).\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eThe postal code associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eOptional: the cardholder\u0026rsquo;s name.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eOptional: first name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eOptional: last name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)company":{"name":"company","abstract":"\u003cp\u003eOptional: company name associated with the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional: the street address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional: the extended address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional: the city associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)region":{"name":"region","abstract":"\u003cp\u003eOptional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryName":{"name":"countryName","abstract":"\u003cp\u003eOptional: the country name associated with the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-2 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha3":{"name":"countryCodeAlpha3","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-3 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeNumeric":{"name":"countryCodeNumeric","abstract":"\u003cp\u003eOptional: The ISO 3166-1 numeric country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)shouldValidate":{"name":"shouldValidate","abstract":"\u003cp\u003eControls whether or not to return validations and/or verification results. By default, this is not enabled.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)authenticationInsightRequested":{"name":"authenticationInsightRequested","abstract":"\u003cp\u003eOptional: If authentication insight is requested. If this property is set to true, a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID\"\u003emerchantAccountID\u003c/a\u003e\u003c/code\u003e must be provided. Defaults to false.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The merchant account ID.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTAuthenticationInsight.html#/c:@M@BraintreeCard@objc(cs)BTAuthenticationInsight(py)regulationEnvironment":{"name":"regulationEnvironment","abstract":"\u003cp\u003eThe regulation environment for the associated nonce to help determine the need for 3D Secure.","parent_name":"BTAuthenticationInsight"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)toolbarCustomization":{"name":"toolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)labelCustomization":{"name":"labelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)textBoxCustomization":{"name":"textBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(im)setButtonCustomization:buttonType:":{"name":"setButton(_:buttonType:)","abstract":"\u003cp\u003eSet button customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)headerText":{"name":"headerText","abstract":"\u003cp\u003eText for the header.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)buttonText":{"name":"buttonText","abstract":"\u003cp\u003eText for the button. For example, “Cancel”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderWidth":{"name":"borderWidth","abstract":"\u003cp\u003eWidth (integer value) of the text box border.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderColor":{"name":"borderColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the text box corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextColor":{"name":"headingTextColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontName":{"name":"headingTextFontName","abstract":"\u003cp\u003eFont type for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontSize":{"name":"headingTextFontSize","abstract":"\u003cp\u003eFont size for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the button corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontName":{"name":"textFontName","abstract":"\u003cp\u003eFont type for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textColor":{"name":"textColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontSize":{"name":"textFontSize","abstract":"\u003cp\u003eFont size for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)tokenizedCard":{"name":"tokenizedCard","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCardNonce.html\"\u003eBTCardNonce\u003c/a\u003e\u003c/code\u003e resulting from the 3D Secure flow\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)lookup":{"name":"lookup","abstract":"\u003cp\u003eThe result of a 3D Secure lookup. Contains liability shift and challenge information.\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eThe error message when the 3D Secure flow is unsuccessful\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eA nonce to be verified by ThreeDSecure\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)customFields":{"name":"customFields","abstract":"\u003cp\u003eObject where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)accountType":{"name":"accountType","abstract":"\u003cp\u003eOptional. The account type selected by the cardholder\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eOptional. The billing address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)mobilePhoneNumber":{"name":"mobilePhoneNumber","abstract":"\u003cp\u003eOptional. The mobile phone number used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional. The email used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)shippingMethod":{"name":"shippingMethod","abstract":"\u003cp\u003eOptional. The shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)additionalInformation":{"name":"additionalInformation","abstract":"\u003cp\u003eOptional. The additional information used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)challengeRequested":{"name":"challengeRequested","abstract":"\u003cp\u003eOptional. If set to true, an authentication challenge will be forced if possible.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)exemptionRequested":{"name":"exemptionRequested","abstract":"\u003cp\u003eOptional. If set to true, an exemption to the authentication challenge will be requested.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)requestedExemptionType":{"name":"requestedExemptionType","abstract":"\u003cp\u003eOptional. The exemption type to be requested. If an exemption is requested and the exemption\u0026rsquo;s conditions are satisfied, then it will be applied.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)dataOnlyRequested":{"name":"dataOnlyRequested","abstract":"\u003cp\u003eOptional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallenge":{"name":"cardAddChallenge","abstract":"\u003cp\u003eOptional. An authentication created using this property should only be used for adding a payment method to the merchant\u0026rsquo;s vault and not for creating transactions.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallengeRequested":{"name":"cardAddChallengeRequested","abstract":"\u003cp\u003eOptional. An authentication created using this flag should only be used for vaulting operations (creation of customers\u0026rsquo; credit cards or payment methods) and not for creating transactions.","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)v2UICustomization":{"name":"v2UICustomization","abstract":"\u003cp\u003eOptional. UI Customization for 3DS2 challenge views.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)uiType":{"name":"uiType","abstract":"\u003cp\u003eOptional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)renderTypes":{"name":"renderTypes","abstract":"\u003cp\u003eOptional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)threeDSecureRequestDelegate":{"name":"threeDSecureRequestDelegate","abstract":"\u003cp\u003eA delegate for receiving information about the ThreeDSecure payment flow.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRenderType.html#/s:SY8rawValue03RawB0Qzvp":{"name":"rawValue","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/s:s9OptionSetP8rawValuex03RawD0Qz_tcfc":{"name":"init(rawValue:)","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)otp":{"name":"otp","abstract":"\u003cp\u003eOTP\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)html":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)singleSelect":{"name":"singleSelect","abstract":"\u003cp\u003eSingle select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)multiSelect":{"name":"multiSelect","abstract":"\u003cp\u003eMulti Select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)oob":{"name":"oob","abstract":"\u003cp\u003eOOB\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional. Given name associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional. Surname associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional. Line 1 of the Address (eg. number, street, etc)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional. Line 2 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)line3":{"name":"line3","abstract":"\u003cp\u003eOptional. Line 3 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional. City name\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eOptional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eOptional. Zip code or equivalent is usually required for countries that have them.","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional. 2 letter country code\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eOptional. The phone number associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)paReq":{"name":"paReq","abstract":"\u003cp\u003eThe \u0026ldquo;PAReq\u0026rdquo; or \u0026ldquo;Payment Authentication Request\u0026rdquo; is the encoded request message used to initiate authentication.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)md":{"name":"md","abstract":"\u003cp\u003eThe unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)acsURL":{"name":"acsURL","abstract":"\u003cp\u003eThe URL which the customer will be redirected to for a 3DS Interface.","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)termURL":{"name":"termURL","abstract":"\u003cp\u003eThe termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe full version string of the 3DS lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)isThreeDSecureVersion2":{"name":"isThreeDSecureVersion2","abstract":"\u003cp\u003eIndicates a 3DS 2 lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)transactionID":{"name":"transactionID","abstract":"\u003cp\u003eThis a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)requiresUserAuthentication":{"name":"requiresUserAuthentication","abstract":"\u003cp\u003eIndicates that a 3DS challenge is required.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new BTThreeDSecureClient instance.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts the 3DS flow using a BTThreeDSecureRequest.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completion:":{"name":"prepareLookup(_:completion:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completionHandler:":{"name":"prepareLookup(_:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completion:":{"name":"initializeChallenge(lookupResponse:request:completion:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completionHandler:":{"name":"initializeChallenge(lookupResponse:request:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eOptional. The shipping address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingMethodIndicator":{"name":"shippingMethodIndicator","abstract":"\u003cp\u003eOptional. The 2-digit string indicating the shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional. The 3-letter string representing the merchant product code\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryTimeframe":{"name":"deliveryTimeframe","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the delivery timeframe\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryEmail":{"name":"deliveryEmail","abstract":"\u003cp\u003eOptional. For electronic delivery, email address to which the merchandise was delivered\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)reorderIndicator":{"name":"reorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderIndicator":{"name":"preorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderDate":{"name":"preorderDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardAmount":{"name":"giftCardAmount","abstract":"\u003cp\u003eOptional. The purchase amount total for prepaid gift cards in major units\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCurrencyCode":{"name":"giftCardCurrencyCode","abstract":"\u003cp\u003eOptional. ISO 4217 currency code for the gift card purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCount":{"name":"giftCardCount","abstract":"\u003cp\u003eOptional. Total count of individual prepaid gift cards purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountAgeIndicator":{"name":"accountAgeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountCreateDate":{"name":"accountCreateDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeIndicator":{"name":"accountChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeDate":{"name":"accountChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeIndicator":{"name":"accountPwdChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeDate":{"name":"accountPwdChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageIndicator":{"name":"shippingAddressUsageIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating when the shipping address used for transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageDate":{"name":"shippingAddressUsageDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountDay":{"name":"transactionCountDay","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountYear":{"name":"transactionCountYear","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last year.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addCardAttempts":{"name":"addCardAttempts","abstract":"\u003cp\u003eOptional. Number of add card attempts in the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPurchases":{"name":"accountPurchases","abstract":"\u003cp\u003eOptional. Number of purchases with this cardholder account during the previous six months.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)fraudActivity":{"name":"fraudActivity","abstract":"\u003cp\u003eOptional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingNameIndicator":{"name":"shippingNameIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountIndicator":{"name":"paymentAccountIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountAge":{"name":"paymentAccountAge","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addressMatch":{"name":"addressMatch","abstract":"\u003cp\u003eOptional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountID":{"name":"accountID","abstract":"\u003cp\u003eOptional. Additional cardholder account information.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)ipAddress":{"name":"ipAddress","abstract":"\u003cp\u003eOptional. The IP address of the consumer. IPv4 and IPv6 are supported.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)orderDescription":{"name":"orderDescription","abstract":"\u003cp\u003eOptional. Brief description of items purchased.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)userAgent":{"name":"userAgent","abstract":"\u003cp\u003eOptional. The exact content of the HTTP user agent header.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)authenticationIndicator":{"name":"authenticationIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the type of authentication request.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)installment":{"name":"installment","abstract":"\u003cp\u003eOptional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)purchaseDate":{"name":"purchaseDate","abstract":"\u003cp\u003eOptional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringEnd":{"name":"recurringEnd","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringFrequency":{"name":"recurringFrequency","abstract":"\u003cp\u003eOptional. Integer value indicating the minimum number of days between recurring authorizations.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)sdkMaxTimeout":{"name":"sdkMaxTimeout","abstract":"\u003cp\u003eOptional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)workPhoneNumber":{"name":"workPhoneNumber","abstract":"\u003cp\u003eOptional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient Metadata ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe one-time use payment method nonce.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)payerID":{"name":"payerID","abstract":"\u003cp\u003ePayer ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)type":{"name":"type","abstract":"\u003cp\u003eThe type of the tokenized payment.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentType":{"name":"paymentType","abstract":"\u003cp\u003eThe type of payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentTypeCountryCode":{"name":"paymentTypeCountryCode","abstract":"\u003cp\u003eThe country code of the local payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)address":{"name":"address","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the local payment flow.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional: Payer email of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional: Given (first) name of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional: Surname (last name) of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)phone":{"name":"phone","abstract":"\u003cp\u003eOptional: Phone number of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eIndicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)bic":{"name":"bic","abstract":"\u003cp\u003eOptional: Bank Identification Code of the customer (specific to iDEAL transactions).\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)localPaymentFlowDelegate":{"name":"localPaymentFlowDelegate","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new \u003ccode\u003eBTLocalPaymentClient\u003c/code\u003e instance.\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completionHandler:":{"name":"startPaymentFlow(_:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)makePaymentRequest:":{"name":"makePaymentRequest(completion:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC18makePaymentRequestSo09PKPaymentH0CyYaKF":{"name":"makePaymentRequest()","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)tokenizeApplePayPayment:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC8tokenizeyAA0dC9CardNonceCSo9PKPaymentCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayCardNonce.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTApplePayCardNonce"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTDataCollector\u003c/code\u003e instance with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTAPIClient.html\"\u003eBTAPIClient\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)clientMetadataID:":{"name":"clientMetadataID(_:)","abstract":"\u003cp\u003eReturns a client metadata ID.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)collectDeviceData:":{"name":"collectDeviceData(_:)","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/s:22BraintreeDataCollector06BTDataC0C013collectDeviceB0SSyYaKF":{"name":"collectDeviceData()","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorCode":{"name":"errorCode","abstract":"\u003cp\u003eOptional. An error code when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eOptional. An error message when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)conversionRate":{"name":"conversionRate","abstract":"\u003cp\u003eOptional. The conversion rate associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyAmount":{"name":"currencyAmount","abstract":"\u003cp\u003eOptional. The currency amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyIsoCode":{"name":"currencyIsoCode","abstract":"\u003cp\u003eOptional. The currency ISO code associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)requestID":{"name":"requestID","abstract":"\u003cp\u003eOptional. The request ID used when fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsAmount":{"name":"rewardsAmount","abstract":"\u003cp\u003eOptional. The rewards amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsUnit":{"name":"rewardsUnit","abstract":"\u003cp\u003eOptional. The rewards unit associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an American Express client.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)getRewardsBalanceForNonce:currencyIsoCode:completion:":{"name":"getRewardsBalance(forNonce:currencyISOCode:completion:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/s:24BraintreeAmericanExpress010BTAmericanC6ClientC17getRewardsBalance8forNonce15currencyISOCodeAA0dcgH0CSS_SStYaKF":{"name":"getRewardsBalance(forNonce:currencyISOCode:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)accountHolderName":{"name":"accountHolderName","abstract":"\u003cp\u003eRequired. The account holder name.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)iban":{"name":"iban","abstract":"\u003cp\u003eRequired. The full IBAN.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eRequired. The customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eOptional. The \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e. If not set, defaults to \u003ccode\u003e.oneOff\u003c/code\u003e\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eRequired. The user\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional. A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)locale":{"name":"locale","abstract":"\u003cp\u003eOptional. A locale code to use for creating a mandate.","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC17accountHolderName4iban10customerID11mandateType14billingAddress015merchantAccountK06localeACSSSg_A2kA0dc7MandateM0OSg0A4Core08BTPostalO0CSgA2Ktcfc":{"name":"init(accountHolderName:iban:customerID:mandateType:billingAddress:merchantAccountID:locale:)","abstract":"\u003cp\u003eInitialize a new SEPA Direct Debit request.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)ibanLastFour":{"name":"ibanLastFour","abstract":"\u003cp\u003eThe IBAN last four characters.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eThe customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5NonceC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eThe \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a SEPA Direct Debit client.\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)tokenizeWithSEPADirectDebitRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC6ClientC8tokenizeyAA0dC5NonceCAA0dC7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTPayPalNativeVaultRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeVaultRequest(im)initWithOfferCredit:billingAgreementDescription:":{"name":"init(offerCredit:billingAgreementDescription:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalNativeVaultRequest"},"Classes/BTPayPalNativeCheckoutRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutRequest(im)initWithAmount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:":{"name":"init(amount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutRequest"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a PayPal Native client.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcdE7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcD12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)recipientName":{"name":"recipientName","abstract":"\u003cp\u003eOptional. Recipient name for shipping address.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eLine 1 of the Address (eg. number, street, etc).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional line 2 of the Address (eg. suite, apt #, etc.).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eCity name\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003e2 letter country code.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eZip code or equivalent is usually required for countries that have them.","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eEither a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(cpy)sharedParser":{"name":"shared","abstract":"\u003cp\u003eThe singleton instance\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(py)allTypes":{"name":"allTypes","abstract":"\u003cp\u003eAn array of the tokenization types currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)isTypeAvailable:":{"name":"isTypeAvailable(_:)","abstract":"\u003cp\u003eIndicates whether a tokenization type is currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)registerType:withParsingBlock:":{"name":"registerType(_:withParsingBlock:)","abstract":"\u003cp\u003eRegisters a parsing block for a tokenization type.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)parseJSON:withParsingBlockForType:":{"name":"parseJSON(_:withParsingBlockForType:)","abstract":"\u003cp\u003eParses tokenized payment information that has been serialized to JSON, and returns a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e object.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe payment method nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)type":{"name":"type","abstract":"\u003cp\u003eThe string identifying the type of the payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)isDefault":{"name":"isDefault","abstract":"\u003cp\u003eThe boolean indicating whether this is a default payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:":{"name":"init(nonce:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:":{"name":"init(nonce:type:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:isDefault:":{"name":"init(nonce:type:isDefault:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)prepaid":{"name":"prepaid","abstract":"\u003cp\u003eWhether the card is a prepaid card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)healthcare":{"name":"healthcare","abstract":"\u003cp\u003eWhether the card is a healthcare card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)debit":{"name":"debit","abstract":"\u003cp\u003eWhether the card is a debit card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)durbinRegulated":{"name":"durbinRegulated","abstract":"\u003cp\u003eA value indicating whether the issuing bank\u0026rsquo;s card range is regulated by the Durbin Amendment due to the bank\u0026rsquo;s assets. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)commercial":{"name":"commercial","abstract":"\u003cp\u003eWhether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)payroll":{"name":"payroll","abstract":"\u003cp\u003eWhether the card is a payroll card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)issuingBank":{"name":"issuingBank","abstract":"\u003cp\u003eThe bank that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)countryOfIssuance":{"name":"countryOfIssuance","abstract":"\u003cp\u003eThe country that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)productID":{"name":"productID","abstract":"\u003cp\u003eThe code for the product type of the card (e.g. \u003ccode\u003eD\u003c/code\u003e (Visa Signature Preferred), \u003ccode\u003eG\u003c/code\u003e (Visa Business)), if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(im)initWithJSON:":{"name":"init(json:)","abstract":"\u003cp\u003eCreate a \u003ccode\u003eBTBinData\u003c/code\u003e object from JSON.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(cpy)sharedInstance":{"name":"sharedInstance","abstract":"\u003cp\u003eSingleton for shared instance of \u003ccode\u003eBTAppContextSwitcher\u003c/code\u003e\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(py)returnURLScheme":{"name":"returnURLScheme","abstract":"\u003cp\u003eThe URL scheme to return to this app after switching to another app or opening a SFSafariViewController.","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURLContext:":{"name":"handleOpenURL(context:)","abstract":"\u003cp\u003eDetermine whether the return URL can be handled.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURL:":{"name":"handleOpen(_:)","abstract":"\u003cp\u003eComplete payment flow after returning from app or browser switch.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)registerAppContextSwitchClient:":{"name":"register(_:)","abstract":"\u003cp\u003eRegisters a class \u003ccode\u003eType\u003c/code\u003e that can handle a return from app context switch with a static method.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC13authorizationAA19ClientAuthorization_pvp":{"name":"authorization","abstract":"\u003cp\u003eThe TokenizationKey or ClientToken used to authorize the APIClient\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC8metadataAA16BTClientMetadataCvp":{"name":"metadata","abstract":"\u003cp\u003eClient metadata that is used for tracking the client session\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)initWithAuthorization:":{"name":"init(authorization:)","abstract":"\u003cp\u003eInitialize a new API client.\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:":{"name":"fetchPaymentMethodNonces(_:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:completion:":{"name":"fetchPaymentMethodNonces(_:completion:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html":{"name":"BTAPIClient","abstract":"\u003cp\u003eThis class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.\u003c/p\u003e"},"Classes/BTAppContextSwitcher.html":{"name":"BTAppContextSwitcher","abstract":"\u003cp\u003eHandles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.\u003c/p\u003e"},"Classes/BTBinData.html":{"name":"BTBinData","abstract":"\u003cp\u003eContains the bin data associated with a payment method\u003c/p\u003e"},"Classes/BTPaymentMethodNonce.html":{"name":"BTPaymentMethodNonce","abstract":"\u003cp\u003eBTPaymentMethodNonce is for generic tokenized payment information.\u003c/p\u003e"},"Classes/BTPaymentMethodNonceParser.html":{"name":"BTPaymentMethodNonceParser","abstract":"\u003cp\u003eA JSON parser that parses \u003ccode\u003eBTJSON\u003c/code\u003e into concrete \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e objects. It supports registration of parsers at runtime.\u003c/p\u003e"},"Classes/BTPostalAddress.html":{"name":"BTPostalAddress","abstract":"\u003cp\u003eGeneric postal address\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutAccountNonce.html":{"name":"BTPayPalNativeCheckoutAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutClient.html":{"name":"BTPayPalNativeCheckoutClient","abstract":"\u003cp\u003eClient used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutRequest.html":{"name":"BTPayPalNativeCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalNativeVaultRequest.html":{"name":"BTPayPalNativeVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTSEPADirectDebitClient.html":{"name":"BTSEPADirectDebitClient","abstract":"\u003cp\u003eUsed to integrate with SEPA Direct Debit.\u003c/p\u003e"},"Classes/BTSEPADirectDebitNonce.html":{"name":"BTSEPADirectDebitNonce","abstract":"\u003cp\u003eA payment method nonce representing a SEPA Direct Debit payment.\u003c/p\u003e"},"Classes/BTSEPADirectDebitRequest.html":{"name":"BTSEPADirectDebitRequest","abstract":"\u003cp\u003eParameters for creating a SEPA Direct Debit tokenization request.\u003c/p\u003e"},"Classes/BTAmericanExpressClient.html":{"name":"BTAmericanExpressClient","abstract":"\u003cp\u003e\u003ccode\u003eBTAmericanExpressClient\u003c/code\u003e enables you to look up the rewards balance of American Express cards.\u003c/p\u003e"},"Classes/BTAmericanExpressRewardsBalance.html":{"name":"BTAmericanExpressRewardsBalance","abstract":"\u003cp\u003eContains information about an American Express rewards balance.\u003c/p\u003e"},"Classes/BTDataCollector.html":{"name":"BTDataCollector","abstract":"\u003cp\u003eBraintree\u0026rsquo;s advanced fraud protection solution.\u003c/p\u003e"},"Classes/BTApplePayCardNonce.html":{"name":"BTApplePayCardNonce","abstract":"\u003cp\u003eContains information about a tokenized Apple Pay card.\u003c/p\u003e"},"Classes/BTApplePayClient.html":{"name":"BTApplePayClient","abstract":"\u003cp\u003eUsed to process Apple Pay payments\u003c/p\u003e"},"Classes/BTLocalPaymentClient.html":{"name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentRequest.html":{"name":"BTLocalPaymentRequest","abstract":"\u003cp\u003eUsed to initialize a local payment flow\u003c/p\u003e"},"Classes/BTLocalPaymentResult.html":{"name":"BTLocalPaymentResult"},"Classes/BTThreeDSecureAdditionalInformation.html":{"name":"BTThreeDSecureAdditionalInformation","abstract":"\u003cp\u003eAdditional information for a 3DS lookup. Used in 3DS 2.0+ flows.\u003c/p\u003e"},"Classes/BTThreeDSecureClient.html":{"name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureLookup.html":{"name":"BTThreeDSecureLookup","abstract":"\u003cp\u003eThe result of a 3DS lookup."},"Classes/BTThreeDSecurePostalAddress.html":{"name":"BTThreeDSecurePostalAddress","abstract":"\u003cp\u003ePostal address for 3D Secure flows\u003c/p\u003e"},"Classes/BTThreeDSecureRenderType.html":{"name":"BTThreeDSecureRenderType","abstract":"\u003cp\u003eRender types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Classes/BTThreeDSecureRequest.html":{"name":"BTThreeDSecureRequest","abstract":"\u003cp\u003eUsed to initialize a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureResult.html":{"name":"BTThreeDSecureResult","abstract":"\u003cp\u003eThe result of a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureV2BaseCustomization.html":{"name":"BTThreeDSecureV2BaseCustomization","abstract":"\u003cp\u003eBase customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ButtonCustomization.html":{"name":"BTThreeDSecureV2ButtonCustomization","abstract":"\u003cp\u003eButton customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2LabelCustomization.html":{"name":"BTThreeDSecureV2LabelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2TextBoxCustomization.html":{"name":"BTThreeDSecureV2TextBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ToolbarCustomization.html":{"name":"BTThreeDSecureV2ToolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2UICustomization.html":{"name":"BTThreeDSecureV2UICustomization","abstract":"\u003cp\u003eUI customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTAuthenticationInsight.html":{"name":"BTAuthenticationInsight","abstract":"\u003cp\u003eInformation pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.\u003c/p\u003e"},"Classes/BTCard.html":{"name":"BTCard","abstract":"\u003cp\u003eThe card tokenization request represents raw credit or debit card data provided by the customer."},"Classes/BTCardClient.html":{"name":"BTCardClient","abstract":"\u003cp\u003eUsed to process cards\u003c/p\u003e"},"Classes/BTCardNonce.html":{"name":"BTCardNonce","abstract":"\u003cp\u003eContains information about a tokenized card.\u003c/p\u003e"},"Classes/BTCardRequest.html":{"name":"BTCardRequest","abstract":"\u003cp\u003eContains information about a card to tokenize\u003c/p\u003e"},"Classes/BTThreeDSecureInfo.html":{"name":"BTThreeDSecureInfo","abstract":"\u003cp\u003eContains information about the 3D Secure status of a payment method\u003c/p\u003e"},"Classes/BTPayPalAccountNonce.html":{"name":"BTPayPalAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method\u003c/p\u003e"},"Classes/BTPayPalCheckoutRequest.html":{"name":"BTPayPalCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalClient.html":{"name":"BTPayPalClient"},"Classes/BTPayPalCreditFinancing.html":{"name":"BTPayPalCreditFinancing","abstract":"\u003cp\u003eContains information about a PayPal credit financing option\u003c/p\u003e"},"Classes/BTPayPalCreditFinancingAmount.html":{"name":"BTPayPalCreditFinancingAmount","abstract":"\u003cp\u003eContains information about a PayPal credit amount\u003c/p\u003e"},"Classes/BTPayPalLineItem.html":{"name":"BTPayPalLineItem","abstract":"\u003cp\u003eA PayPal line item to be displayed in the PayPal checkout flow.\u003c/p\u003e"},"Classes/BTPayPalRequest.html":{"name":"BTPayPalRequest","abstract":"\u003cp\u003eBase options for PayPal Checkout and PayPal Vault flows.\u003c/p\u003e"},"Classes/BTPayPalVaultBaseRequest.html":{"name":"BTPayPalVaultBaseRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTPayPalVaultRequest.html":{"name":"BTPayPalVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTVenmoAccountNonce.html":{"name":"BTVenmoAccountNonce","abstract":"\u003cp\u003eContains information about a Venmo Account payment method\u003c/p\u003e"},"Classes/BTVenmoClient.html":{"name":"BTVenmoClient","abstract":"\u003cp\u003eUsed to process Venmo payments\u003c/p\u003e"},"Classes/BTVenmoLineItem.html":{"name":"BTVenmoLineItem","abstract":"\u003cp\u003eA Venmo line item to be displayed in the Venmo Paysheet.\u003c/p\u003e"},"Classes/BTVenmoRequest.html":{"name":"BTVenmoRequest","abstract":"\u003cp\u003eA BTVenmoRequest specifies options that contribute to the Venmo flow\u003c/p\u003e"},"Classes/BTPayPalMessagingView.html":{"name":"BTPayPalMessagingView","abstract":"\u003cp\u003eUse \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e"},"Classes/BTShopperInsightsClient.html":{"name":"BTShopperInsightsClient","abstract":"\u003cp\u003eUse \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI."},"Classes.html":{"name":"Classes","abstract":"\u003cp\u003eThe following classes are available globally.\u003c/p\u003e"},"Enums.html":{"name":"Enumerations","abstract":"\u003cp\u003eThe following enumerations are available globally.\u003c/p\u003e"},"Extensions.html":{"name":"Extensions","abstract":"\u003cp\u003eThe following extensions are available globally.\u003c/p\u003e"},"Protocols.html":{"name":"Protocols","abstract":"\u003cp\u003eThe following protocols are available globally.\u003c/p\u003e"},"Structs.html":{"name":"Structures","abstract":"\u003cp\u003eThe following structures are available globally.\u003c/p\u003e"}} \ No newline at end of file diff --git a/6.23.1/docsets/Braintree.docset/Contents/Resources/docSet.dsidx b/6.23.1/docsets/Braintree.docset/Contents/Resources/docSet.dsidx new file mode 100644 index 0000000000000000000000000000000000000000..6bed8ad04bbe75eeb9914a100d82ec68f16746b8 GIT binary patch literal 253952 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 A`Tzg` literal 0 HcmV?d00001 diff --git a/6.23.1/docsets/Braintree.tgz b/6.23.1/docsets/Braintree.tgz new file mode 100644 index 0000000000000000000000000000000000000000..4e49aa699fe8738df4a44ebb7fb14d91e9de1eb5 GIT binary patch literal 394510 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

pirW7iLtAi%1z8_Eb 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

0sY@K9zFTN%LLD;M8ZxH_NelkbX8iUO3;w~% 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 U%eU3WnJ?%VsKaFte_4?K2NT=pS^xk5 literal 0 HcmV?d00001 diff --git a/6.23.1/img/carat.png b/6.23.1/img/carat.png new file mode 100755 index 0000000000000000000000000000000000000000..29d2f7fd4955fca6bc6fb740e0373a2c358c398e GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRo!3HEV4DF?Wlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6JlqAi{-jv*Ddl5#RKJQ5NTUZgiPI4RUKGIKU?u8L&ndhX1t za+0CMVUnT(Gnb}ei=c~x==tMH^F1_tBocXwcoSWoO-SZY-o>!8%^=Bms)(~h;m_U( zXNixk28L}0LS5-jKyq@#2gyS|J&f#pGCLkTc<@2s1dqeyqJ*Rc0tSIETAgmODY;(s z2y|Mcp&2}7rpBprBBB~1qM1`N+}4SoxYVPqsXi&l`rxZp{(w0iSy$Nv5*Vy!RapG^ S^0y4=eg;ohKbLh*2~7a!Pg}VF literal 0 HcmV?d00001 diff --git a/6.23.1/img/dash.png b/6.23.1/img/dash.png new file mode 100755 index 0000000000000000000000000000000000000000..6f694c7a012b417908da3687a0a39aa182e91c74 GIT binary patch literal 1338 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 literal 0 HcmV?d00001 diff --git a/6.23.1/index.html b/6.23.1/index.html new file mode 100644 index 0000000000..c3e56af8f3 --- /dev/null +++ b/6.23.1/index.html @@ -0,0 +1,554 @@ + + + + Braintree Reference + + + + + + + + + + + + + + + +

+

+ + Braintree 6.23.1 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+ +

Braintree iOS SDK

+ +

CocoaPods compatible +Swift Package Manager compatible +Carthage compatible

+ +

GitHub Actions Tests

+ +

Welcome to Braintree’s iOS SDK. This library will help you accept card and alternative payments in your iOS app.

+

📣 Announcements

+ +
    +
  • Upgrade your integration to continue accepting Braintree payments 📣 The SSL certificates for current iOS SDK versions (v5 and v6) are set to expire by June 31, 2025. Upgrade to v5.26.0+ and v6.17.0+, respectively, to continue using the Braintree SDK. Click here for more details

  • +
  • v6 is the latest major version of Braintree iOS. To update from v5, see the v6 migration guide. If you have not yet migrated to v5, see the v5 migration guide

  • +
+ +

The Braintree iOS SDK permits a deployment target of iOS 14.0 or higher. It requires Xcode 15.0+ and Swift 5.9+.

+

Supported Payment Methods

+ + +

Installation

+ +

We recommend using Swift Package Manager, CocoaPods, or Carthage to integrate the Braintree SDK with your project.

+

Swift Package Manager

+ +

This feature is only available in v5+.

+ +

To add the Braintree package to your Xcode project, select File > Swift Packages > Add Package Dependency and enter https://github.com/braintree/braintree_ios as the repository URL. Tick the checkboxes for the specific Braintree libraries you wish to include.

+ +

If you look at your app target, you will see that the Braintree libraries you chose are automatically linked as a frameworks to your app (see General > Frameworks, Libraries, and Embedded Content).

+ +

BraintreePayPal and BraintreePaymentFlow also require the inclusion of the PayPalDataCollector module.

+ +

In your app’s source code files, use the following import syntax to include Braintree’s libraries:

+
import BraintreeCore
+import BraintreeCard
+import BraintreeApplePay
+import BraintreePayPal
+
+

CocoaPods

+
# Includes Cards and PayPal
+pod 'Braintree'
+
+# Optionally include additional Pods
+pod 'Braintree/DataCollector'
+pod 'Braintree/Venmo'
+
+

Carthage

+ +

Braintree 6.0.0+ requires Carthage 0.38.0+ and the --use-xcframeworks option when running carthage update.

+ +

Add github "braintree/braintree_ios" to your Cartfile, and add the frameworks to your project.

+ +

Note: Long term support for Carthage is not guaranteed. Please update to SPM, if possible. If there are concerns, please comment on this Discussion thread.

+

Documentation

+ +

Start with ‘Hello, Client!’ for instructions on basic setup and usage.

+ +

Next, read the full documentation for information about integrating with additional payment methods, such as PayPal and Venmo, as well as explore our pre-built Drop-In UI offering.

+

Versions

+ +

This SDK abides by our Client SDK Deprecation Policy. For more information on the potential statuses of an SDK check our developer docs.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Major version numberStatusReleasedDeprecatedUnsupported
6.x.xActiveJune 2023TBATBA
5.x.xInactiveFebruary 2021June 2024June 2025
4.x.xUnsupportedNovember 2015February 2022February 2023
+ +

Versions 4.9.6 and below use outdated SSL certificates and are unsupported.

+

Demo

+ +
    +
  1. Our Xcode project uses SwiftLint. To ensure you have it installed see DEVELOPMENT.md
  2. +
  3. Run pod install + +
      +
    • There is a known M1 mac issue with CocoaPods. See this solution to resolve ffi dependency issues.
    • +
  4. +
  5. Resolve the Swift Package Manager packages if needed: File > Packages > Resolve Package Versions or by running swift package resolve in Terminal
  6. +
  7. Open Braintree.xcworkspace in Xcode
  8. +
  9. Select the Demo scheme, and then run
  10. +
+ +

Xcode 15.0+ is required to run the demo app.

+

Contributing

+ +

We welcome PRs to this repo. See our development doc.

+

Feedback

+ +

The Braintree iOS SDK is in active development, we welcome your feedback!

+ +

Here are a few ways to get in touch:

+ + +

Help

+ + +

License

+ +

The Braintree iOS SDK is open source and available under the MIT license. See the LICENSE file for more info.

+ +
+
+ + +
+
+ + + diff --git a/6.23.1/js/jazzy.js b/6.23.1/js/jazzy.js new file mode 100755 index 0000000000..198441660c --- /dev/null +++ b/6.23.1/js/jazzy.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +window.jazzy = {'docset': false} +if (typeof window.dash != 'undefined') { + document.documentElement.className += ' dash' + window.jazzy.docset = true +} +if (navigator.userAgent.match(/xcode/i)) { + document.documentElement.className += ' xcode' + window.jazzy.docset = true +} + +function toggleItem($link, $content) { + var animationDuration = 300; + $link.toggleClass('token-open'); + $content.slideToggle(animationDuration); +} + +function itemLinkToContent($link) { + return $link.parent().parent().next(); +} + +// On doc load + hash-change, open any targetted item +function openCurrentItemIfClosed() { + if (window.jazzy.docset) { + return; + } + var $link = $(`a[name="${location.hash.substring(1)}"]`).nextAll('.token'); + $content = itemLinkToContent($link); + if ($content.is(':hidden')) { + toggleItem($link, $content); + } +} + +$(openCurrentItemIfClosed); +$(window).on('hashchange', openCurrentItemIfClosed); + +// On item link ('token') click, toggle its discussion +$('.token').on('click', function(event) { + if (window.jazzy.docset) { + return; + } + var $link = $(this); + toggleItem($link, itemLinkToContent($link)); + + // Keeps the document from jumping to the hash. + var href = $link.attr('href'); + if (history.pushState) { + history.pushState({}, '', href); + } else { + location.hash = href; + } + event.preventDefault(); +}); + +// Clicks on links to the current, closed, item need to open the item +$("a:not('.token')").on('click', function() { + if (location == this.href) { + openCurrentItemIfClosed(); + } +}); + +// KaTeX rendering +if ("katex" in window) { + $($('.math').each( (_, element) => { + katex.render(element.textContent, element, { + displayMode: $(element).hasClass('m-block'), + throwOnError: false, + trust: true + }); + })) +} diff --git a/6.23.1/js/jazzy.search.js b/6.23.1/js/jazzy.search.js new file mode 100644 index 0000000000..359cdbb8b2 --- /dev/null +++ b/6.23.1/js/jazzy.search.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +$(function(){ + var $typeahead = $('[data-typeahead]'); + var $form = $typeahead.parents('form'); + var searchURL = $form.attr('action'); + + function displayTemplate(result) { + return result.name; + } + + function suggestionTemplate(result) { + var t = '
'; + t += '' + result.name + ''; + if (result.parent_name) { + t += '' + result.parent_name + ''; + } + t += '
'; + return t; + } + + $typeahead.one('focus', function() { + $form.addClass('loading'); + + $.getJSON(searchURL).then(function(searchData) { + const searchIndex = lunr(function() { + this.ref('url'); + this.field('name'); + this.field('abstract'); + for (const [url, doc] of Object.entries(searchData)) { + this.add({url: url, name: doc.name, abstract: doc.abstract}); + } + }); + + $typeahead.typeahead( + { + highlight: true, + minLength: 3, + autoselect: true + }, + { + limit: 10, + display: displayTemplate, + templates: { suggestion: suggestionTemplate }, + source: function(query, sync) { + const lcSearch = query.toLowerCase(); + const results = searchIndex.query(function(q) { + q.term(lcSearch, { boost: 100 }); + q.term(lcSearch, { + boost: 10, + wildcard: lunr.Query.wildcard.TRAILING + }); + }).map(function(result) { + var doc = searchData[result.ref]; + doc.url = result.ref; + return doc; + }); + sync(results); + } + } + ); + $form.removeClass('loading'); + $typeahead.trigger('focus'); + }); + }); + + var baseURL = searchURL.slice(0, -"search.json".length); + + $typeahead.on('typeahead:select', function(e, result) { + window.location = baseURL + result.url; + }); +}); diff --git a/6.23.1/js/jquery.min.js b/6.23.1/js/jquery.min.js new file mode 100644 index 0000000000..7f37b5d991 --- /dev/null +++ b/6.23.1/js/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.7.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},C=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||C).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.1",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},M=function(){V()},R=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&U(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function z(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&R(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function X(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function U(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,r.msMatchesSelector&&ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",M),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Re(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return M(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return M(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); diff --git a/6.23.1/js/typeahead.jquery.js b/6.23.1/js/typeahead.jquery.js new file mode 100644 index 0000000000..bcb734befc --- /dev/null +++ b/6.23.1/js/typeahead.jquery.js @@ -0,0 +1,1695 @@ +/*! + * typeahead.js 1.3.3 + * https://github.com/corejavascript/typeahead.js + * Copyright 2013-2024 Twitter, Inc. and other contributors; Licensed MIT + */ + + +(function(root, factory) { + if (typeof define === "function" && define.amd) { + define([ "jquery" ], function(a0) { + return factory(a0); + }); + } else if (typeof module === "object" && module.exports) { + module.exports = factory(require("jquery")); + } else { + factory(root["jQuery"]); + } +})(this, function($) { + var _ = function() { + "use strict"; + return { + isMsie: function() { + return /(msie|trident)/i.test(navigator.userAgent) ? navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2] : false; + }, + isBlankString: function(str) { + return !str || /^\s*$/.test(str); + }, + escapeRegExChars: function(str) { + return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); + }, + isString: function(obj) { + return typeof obj === "string"; + }, + isNumber: function(obj) { + return typeof obj === "number"; + }, + isArray: $.isArray, + isFunction: $.isFunction, + isObject: $.isPlainObject, + isUndefined: function(obj) { + return typeof obj === "undefined"; + }, + isElement: function(obj) { + return !!(obj && obj.nodeType === 1); + }, + isJQuery: function(obj) { + return obj instanceof $; + }, + toStr: function toStr(s) { + return _.isUndefined(s) || s === null ? "" : s + ""; + }, + bind: $.proxy, + each: function(collection, cb) { + $.each(collection, reverseArgs); + function reverseArgs(index, value) { + return cb(value, index); + } + }, + map: $.map, + filter: $.grep, + every: function(obj, test) { + var result = true; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (!(result = test.call(null, val, key, obj))) { + return false; + } + }); + return !!result; + }, + some: function(obj, test) { + var result = false; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (result = test.call(null, val, key, obj)) { + return false; + } + }); + return !!result; + }, + mixin: $.extend, + identity: function(x) { + return x; + }, + clone: function(obj) { + return $.extend(true, {}, obj); + }, + getIdGenerator: function() { + var counter = 0; + return function() { + return counter++; + }; + }, + templatify: function templatify(obj) { + return $.isFunction(obj) ? obj : template; + function template() { + return String(obj); + } + }, + defer: function(fn) { + setTimeout(fn, 0); + }, + debounce: function(func, wait, immediate) { + var timeout, result; + return function() { + var context = this, args = arguments, later, callNow; + later = function() { + timeout = null; + if (!immediate) { + result = func.apply(context, args); + } + }; + callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + if (callNow) { + result = func.apply(context, args); + } + return result; + }; + }, + throttle: function(func, wait) { + var context, args, timeout, result, previous, later; + previous = 0; + later = function() { + previous = new Date(); + timeout = null; + result = func.apply(context, args); + }; + return function() { + var now = new Date(), remaining = wait - (now - previous); + context = this; + args = arguments; + if (remaining <= 0) { + clearTimeout(timeout); + timeout = null; + previous = now; + result = func.apply(context, args); + } else if (!timeout) { + timeout = setTimeout(later, remaining); + } + return result; + }; + }, + stringify: function(val) { + return _.isString(val) ? val : JSON.stringify(val); + }, + guid: function() { + function _p8(s) { + var p = (Math.random().toString(16) + "000000000").substr(2, 8); + return s ? "-" + p.substr(0, 4) + "-" + p.substr(4, 4) : p; + } + return "tt-" + _p8() + _p8(true) + _p8(true) + _p8(); + }, + noop: function() {} + }; + }(); + var WWW = function() { + "use strict"; + var defaultClassNames = { + wrapper: "twitter-typeahead", + input: "tt-input", + hint: "tt-hint", + menu: "tt-menu", + dataset: "tt-dataset", + suggestion: "tt-suggestion", + selectable: "tt-selectable", + empty: "tt-empty", + open: "tt-open", + cursor: "tt-cursor", + highlight: "tt-highlight" + }; + return build; + function build(o) { + var www, classes; + classes = _.mixin({}, defaultClassNames, o); + www = { + css: buildCss(), + classes: classes, + html: buildHtml(classes), + selectors: buildSelectors(classes) + }; + return { + css: www.css, + html: www.html, + classes: www.classes, + selectors: www.selectors, + mixin: function(o) { + _.mixin(o, www); + } + }; + } + function buildHtml(c) { + return { + wrapper: '', + menu: '
' + }; + } + function buildSelectors(classes) { + var selectors = {}; + _.each(classes, function(v, k) { + selectors[k] = "." + v; + }); + return selectors; + } + function buildCss() { + var css = { + wrapper: { + position: "relative", + display: "inline-block" + }, + hint: { + position: "absolute", + top: "0", + left: "0", + borderColor: "transparent", + boxShadow: "none", + opacity: "1" + }, + input: { + position: "relative", + verticalAlign: "top", + backgroundColor: "transparent" + }, + inputWithNoHint: { + position: "relative", + verticalAlign: "top" + }, + menu: { + position: "absolute", + top: "100%", + left: "0", + zIndex: "100", + display: "none" + }, + ltr: { + left: "0", + right: "auto" + }, + rtl: { + left: "auto", + right: " 0" + } + }; + if (_.isMsie()) { + _.mixin(css.input, { + backgroundImage: "url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)" + }); + } + return css; + } + }(); + var EventBus = function() { + "use strict"; + var namespace, deprecationMap; + namespace = "typeahead:"; + deprecationMap = { + render: "rendered", + cursorchange: "cursorchanged", + select: "selected", + autocomplete: "autocompleted" + }; + function EventBus(o) { + if (!o || !o.el) { + $.error("EventBus initialized without el"); + } + this.$el = $(o.el); + } + _.mixin(EventBus.prototype, { + _trigger: function(type, args) { + var $e = $.Event(namespace + type); + this.$el.trigger.call(this.$el, $e, args || []); + return $e; + }, + before: function(type) { + var args, $e; + args = [].slice.call(arguments, 1); + $e = this._trigger("before" + type, args); + return $e.isDefaultPrevented(); + }, + trigger: function(type) { + var deprecatedType; + this._trigger(type, [].slice.call(arguments, 1)); + if (deprecatedType = deprecationMap[type]) { + this._trigger(deprecatedType, [].slice.call(arguments, 1)); + } + } + }); + return EventBus; + }(); + var EventEmitter = function() { + "use strict"; + var splitter = /\s+/, nextTick = getNextTick(); + return { + onSync: onSync, + onAsync: onAsync, + off: off, + trigger: trigger + }; + function on(method, types, cb, context) { + var type; + if (!cb) { + return this; + } + types = types.split(splitter); + cb = context ? bindContext(cb, context) : cb; + this._callbacks = this._callbacks || {}; + while (type = types.shift()) { + this._callbacks[type] = this._callbacks[type] || { + sync: [], + async: [] + }; + this._callbacks[type][method].push(cb); + } + return this; + } + function onAsync(types, cb, context) { + return on.call(this, "async", types, cb, context); + } + function onSync(types, cb, context) { + return on.call(this, "sync", types, cb, context); + } + function off(types) { + var type; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + while (type = types.shift()) { + delete this._callbacks[type]; + } + return this; + } + function trigger(types) { + var type, callbacks, args, syncFlush, asyncFlush; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + args = [].slice.call(arguments, 1); + while ((type = types.shift()) && (callbacks = this._callbacks[type])) { + syncFlush = getFlush(callbacks.sync, this, [ type ].concat(args)); + asyncFlush = getFlush(callbacks.async, this, [ type ].concat(args)); + syncFlush() && nextTick(asyncFlush); + } + return this; + } + function getFlush(callbacks, context, args) { + return flush; + function flush() { + var cancelled; + for (var i = 0, len = callbacks.length; !cancelled && i < len; i += 1) { + cancelled = callbacks[i].apply(context, args) === false; + } + return !cancelled; + } + } + function getNextTick() { + var nextTickFn; + if (window.setImmediate) { + nextTickFn = function nextTickSetImmediate(fn) { + setImmediate(function() { + fn(); + }); + }; + } else { + nextTickFn = function nextTickSetTimeout(fn) { + setTimeout(function() { + fn(); + }, 0); + }; + } + return nextTickFn; + } + function bindContext(fn, context) { + return fn.bind ? fn.bind(context) : function() { + fn.apply(context, [].slice.call(arguments, 0)); + }; + } + }(); + var highlight = function(doc) { + "use strict"; + var defaults = { + node: null, + pattern: null, + tagName: "strong", + className: null, + wordsOnly: false, + caseSensitive: false, + diacriticInsensitive: false + }; + var accented = { + A: "[AaªÀ-Åà-åĀ-ąǍǎȀ-ȃȦȧᴬᵃḀḁẚẠ-ảₐ℀℁℻⒜Ⓐⓐ㍱-㍴㎀-㎄㎈㎉㎩-㎯㏂㏊㏟㏿Aa]", + B: "[BbᴮᵇḂ-ḇℬ⒝Ⓑⓑ㍴㎅-㎇㏃㏈㏔㏝Bb]", + C: "[CcÇçĆ-čᶜ℀ℂ℃℅℆ℭⅭⅽ⒞Ⓒⓒ㍶㎈㎉㎝㎠㎤㏄-㏇Cc]", + D: "[DdĎďDŽ-džDZ-dzᴰᵈḊ-ḓⅅⅆⅮⅾ⒟Ⓓⓓ㋏㍲㍷-㍹㎗㎭-㎯㏅㏈Dd]", + E: "[EeÈ-Ëè-ëĒ-ěȄ-ȇȨȩᴱᵉḘ-ḛẸ-ẽₑ℡ℯℰⅇ⒠Ⓔⓔ㉐㋍㋎Ee]", + F: "[FfᶠḞḟ℉ℱ℻⒡Ⓕⓕ㎊-㎌㎙ff-fflFf]", + G: "[GgĜ-ģǦǧǴǵᴳᵍḠḡℊ⒢Ⓖⓖ㋌㋍㎇㎍-㎏㎓㎬㏆㏉㏒㏿Gg]", + H: "[HhĤĥȞȟʰᴴḢ-ḫẖℋ-ℎ⒣Ⓗⓗ㋌㍱㎐-㎔㏊㏋㏗Hh]", + I: "[IiÌ-Ïì-ïĨ-İIJijǏǐȈ-ȋᴵᵢḬḭỈ-ịⁱℐℑℹⅈⅠ-ⅣⅥ-ⅨⅪⅫⅰ-ⅳⅵ-ⅸⅺⅻ⒤Ⓘⓘ㍺㏌㏕fiffiIi]", + J: "[JjIJ-ĵLJ-njǰʲᴶⅉ⒥ⒿⓙⱼJj]", + K: "[KkĶķǨǩᴷᵏḰ-ḵK⒦Ⓚⓚ㎄㎅㎉㎏㎑㎘㎞㎢㎦㎪㎸㎾㏀㏆㏍-㏏Kk]", + L: "[LlĹ-ŀLJ-ljˡᴸḶḷḺ-ḽℒℓ℡Ⅼⅼ⒧Ⓛⓛ㋏㎈㎉㏐-㏓㏕㏖㏿flfflLl]", + M: "[MmᴹᵐḾ-ṃ℠™ℳⅯⅿ⒨Ⓜⓜ㍷-㍹㎃㎆㎎㎒㎖㎙-㎨㎫㎳㎷㎹㎽㎿㏁㏂㏎㏐㏔-㏖㏘㏙㏞㏟Mm]", + N: "[NnÑñŃ-ʼnNJ-njǸǹᴺṄ-ṋⁿℕ№⒩Ⓝⓝ㎁㎋㎚㎱㎵㎻㏌㏑Nn]", + O: "[OoºÒ-Öò-öŌ-őƠơǑǒǪǫȌ-ȏȮȯᴼᵒỌ-ỏₒ℅№ℴ⒪Ⓞⓞ㍵㏇㏒㏖Oo]", + P: "[PpᴾᵖṔ-ṗℙ⒫Ⓟⓟ㉐㍱㍶㎀㎊㎩-㎬㎰㎴㎺㏋㏗-㏚Pp]", + Q: "[Qqℚ⒬Ⓠⓠ㏃Qq]", + R: "[RrŔ-řȐ-ȓʳᴿᵣṘ-ṛṞṟ₨ℛ-ℝ⒭Ⓡⓡ㋍㍴㎭-㎯㏚㏛Rr]", + S: "[SsŚ-šſȘșˢṠ-ṣ₨℁℠⒮Ⓢⓢ㎧㎨㎮-㎳㏛㏜stSs]", + T: "[TtŢ-ťȚțᵀᵗṪ-ṱẗ℡™⒯Ⓣⓣ㉐㋏㎔㏏ſtstTt]", + U: "[UuÙ-Üù-üŨ-ųƯưǓǔȔ-ȗᵁᵘᵤṲ-ṷỤ-ủ℆⒰Ⓤⓤ㍳㍺Uu]", + V: "[VvᵛᵥṼ-ṿⅣ-Ⅷⅳ-ⅷ⒱Ⓥⓥⱽ㋎㍵㎴-㎹㏜㏞Vv]", + W: "[WwŴŵʷᵂẀ-ẉẘ⒲Ⓦⓦ㎺-㎿㏝Ww]", + X: "[XxˣẊ-ẍₓ℻Ⅸ-Ⅻⅸ-ⅻ⒳Ⓧⓧ㏓Xx]", + Y: "[YyÝýÿŶ-ŸȲȳʸẎẏẙỲ-ỹ⒴Ⓨⓨ㏉Yy]", + Z: "[ZzŹ-žDZ-dzᶻẐ-ẕℤℨ⒵Ⓩⓩ㎐-㎔Zz]" + }; + return function hightlight(o) { + var regex; + o = _.mixin({}, defaults, o); + if (!o.node || !o.pattern) { + return; + } + o.pattern = _.isArray(o.pattern) ? o.pattern : [ o.pattern ]; + regex = getRegex(o.pattern, o.caseSensitive, o.wordsOnly, o.diacriticInsensitive); + traverse(o.node, hightlightTextNode); + function hightlightTextNode(textNode) { + var match, patternNode, wrapperNode; + if (match = regex.exec(textNode.data)) { + wrapperNode = doc.createElement(o.tagName); + o.className && (wrapperNode.className = o.className); + patternNode = textNode.splitText(match.index); + patternNode.splitText(match[0].length); + wrapperNode.appendChild(patternNode.cloneNode(true)); + textNode.parentNode.replaceChild(wrapperNode, patternNode); + } + return !!match; + } + function traverse(el, hightlightTextNode) { + var childNode, TEXT_NODE_TYPE = 3; + for (var i = 0; i < el.childNodes.length; i++) { + childNode = el.childNodes[i]; + if (childNode.nodeType === TEXT_NODE_TYPE) { + i += hightlightTextNode(childNode) ? 1 : 0; + } else { + traverse(childNode, hightlightTextNode); + } + } + } + }; + function accent_replacer(chr) { + return accented[chr.toUpperCase()] || chr; + } + function getRegex(patterns, caseSensitive, wordsOnly, diacriticInsensitive) { + var escapedPatterns = [], regexStr; + for (var i = 0, len = patterns.length; i < len; i++) { + var escapedWord = _.escapeRegExChars(patterns[i]); + if (diacriticInsensitive) { + escapedWord = escapedWord.replace(/\S/g, accent_replacer); + } + escapedPatterns.push(escapedWord); + } + regexStr = wordsOnly ? "\\b(" + escapedPatterns.join("|") + ")\\b" : "(" + escapedPatterns.join("|") + ")"; + return caseSensitive ? new RegExp(regexStr) : new RegExp(regexStr, "i"); + } + }(window.document); + var Input = function() { + "use strict"; + var specialKeyCodeMap; + specialKeyCodeMap = { + 9: "tab", + 27: "esc", + 37: "left", + 39: "right", + 13: "enter", + 38: "up", + 40: "down" + }; + function Input(o, www) { + var id; + o = o || {}; + if (!o.input) { + $.error("input is missing"); + } + www.mixin(this); + this.$hint = $(o.hint); + this.$input = $(o.input); + this.$menu = $(o.menu); + id = this.$input.attr("id") || _.guid(); + this.$menu.attr("id", id + "_listbox"); + this.$hint.attr({ + "aria-hidden": true + }); + this.$input.attr({ + "aria-owns": id + "_listbox", + "aria-controls": id + "_listbox", + role: "combobox", + "aria-autocomplete": "list", + "aria-expanded": false + }); + this.query = this.$input.val(); + this.queryWhenFocused = this.hasFocus() ? this.query : null; + this.$overflowHelper = buildOverflowHelper(this.$input); + this._checkLanguageDirection(); + if (this.$hint.length === 0) { + this.setHint = this.getHint = this.clearHint = this.clearHintIfInvalid = _.noop; + } + this.onSync("cursorchange", this._updateDescendent); + } + Input.normalizeQuery = function(str) { + return _.toStr(str).replace(/^\s*/g, "").replace(/\s{2,}/g, " "); + }; + _.mixin(Input.prototype, EventEmitter, { + _onBlur: function onBlur() { + this.resetInputValue(); + this.trigger("blurred"); + }, + _onFocus: function onFocus() { + this.queryWhenFocused = this.query; + this.trigger("focused"); + }, + _onKeydown: function onKeydown($e) { + var keyName = specialKeyCodeMap[$e.which || $e.keyCode]; + this._managePreventDefault(keyName, $e); + if (keyName && this._shouldTrigger(keyName, $e)) { + this.trigger(keyName + "Keyed", $e); + } + }, + _onInput: function onInput() { + this._setQuery(this.getInputValue()); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + _managePreventDefault: function managePreventDefault(keyName, $e) { + var preventDefault; + switch (keyName) { + case "up": + case "down": + preventDefault = !withModifier($e); + break; + + default: + preventDefault = false; + } + preventDefault && $e.preventDefault(); + }, + _shouldTrigger: function shouldTrigger(keyName, $e) { + var trigger; + switch (keyName) { + case "tab": + trigger = !withModifier($e); + break; + + default: + trigger = true; + } + return trigger; + }, + _checkLanguageDirection: function checkLanguageDirection() { + var dir = (this.$input.css("direction") || "ltr").toLowerCase(); + if (this.dir !== dir) { + this.dir = dir; + this.$hint.attr("dir", dir); + this.trigger("langDirChanged", dir); + } + }, + _setQuery: function setQuery(val, silent) { + var areEquivalent, hasDifferentWhitespace; + areEquivalent = areQueriesEquivalent(val, this.query); + hasDifferentWhitespace = areEquivalent ? this.query.length !== val.length : false; + this.query = val; + if (!silent && !areEquivalent) { + this.trigger("queryChanged", this.query); + } else if (!silent && hasDifferentWhitespace) { + this.trigger("whitespaceChanged", this.query); + } + }, + _updateDescendent: function updateDescendent(event, id) { + this.$input.attr("aria-activedescendant", id); + }, + bind: function() { + var that = this, onBlur, onFocus, onKeydown, onInput; + onBlur = _.bind(this._onBlur, this); + onFocus = _.bind(this._onFocus, this); + onKeydown = _.bind(this._onKeydown, this); + onInput = _.bind(this._onInput, this); + this.$input.on("blur.tt", onBlur).on("focus.tt", onFocus).on("keydown.tt", onKeydown); + if (!_.isMsie() || _.isMsie() > 9) { + this.$input.on("input.tt", onInput); + } else { + this.$input.on("keydown.tt keypress.tt cut.tt paste.tt", function($e) { + if (specialKeyCodeMap[$e.which || $e.keyCode]) { + return; + } + _.defer(_.bind(that._onInput, that, $e)); + }); + } + return this; + }, + focus: function focus() { + this.$input.focus(); + }, + blur: function blur() { + this.$input.blur(); + }, + getLangDir: function getLangDir() { + return this.dir; + }, + getQuery: function getQuery() { + return this.query || ""; + }, + setQuery: function setQuery(val, silent) { + this.setInputValue(val); + this._setQuery(val, silent); + }, + hasQueryChangedSinceLastFocus: function hasQueryChangedSinceLastFocus() { + return this.query !== this.queryWhenFocused; + }, + getInputValue: function getInputValue() { + return this.$input.val(); + }, + setInputValue: function setInputValue(value) { + this.$input.val(value); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + resetInputValue: function resetInputValue() { + this.setInputValue(this.query); + }, + getHint: function getHint() { + return this.$hint.val(); + }, + setHint: function setHint(value) { + this.$hint.val(value); + }, + clearHint: function clearHint() { + this.setHint(""); + }, + clearHintIfInvalid: function clearHintIfInvalid() { + var val, hint, valIsPrefixOfHint, isValid; + val = this.getInputValue(); + hint = this.getHint(); + valIsPrefixOfHint = val !== hint && hint.indexOf(val) === 0; + isValid = val !== "" && valIsPrefixOfHint && !this.hasOverflow(); + !isValid && this.clearHint(); + }, + hasFocus: function hasFocus() { + return this.$input.is(":focus"); + }, + hasOverflow: function hasOverflow() { + var constraint = this.$input.width() - 2; + this.$overflowHelper.text(this.getInputValue()); + return this.$overflowHelper.width() >= constraint; + }, + isCursorAtEnd: function() { + var valueLength, selectionStart, range; + valueLength = this.$input.val().length; + selectionStart = this.$input[0].selectionStart; + if (_.isNumber(selectionStart)) { + return selectionStart === valueLength; + } else if (document.selection) { + range = document.selection.createRange(); + range.moveStart("character", -valueLength); + return valueLength === range.text.length; + } + return true; + }, + destroy: function destroy() { + this.$hint.off(".tt"); + this.$input.off(".tt"); + this.$overflowHelper.remove(); + this.$hint = this.$input = this.$overflowHelper = $("
"); + }, + setAriaExpanded: function setAriaExpanded(value) { + this.$input.attr("aria-expanded", value); + } + }); + return Input; + function buildOverflowHelper($input) { + return $('').css({ + position: "absolute", + visibility: "hidden", + whiteSpace: "pre", + fontFamily: $input.css("font-family"), + fontSize: $input.css("font-size"), + fontStyle: $input.css("font-style"), + fontVariant: $input.css("font-variant"), + fontWeight: $input.css("font-weight"), + wordSpacing: $input.css("word-spacing"), + letterSpacing: $input.css("letter-spacing"), + textIndent: $input.css("text-indent"), + textRendering: $input.css("text-rendering"), + textTransform: $input.css("text-transform") + }).insertAfter($input); + } + function areQueriesEquivalent(a, b) { + return Input.normalizeQuery(a) === Input.normalizeQuery(b); + } + function withModifier($e) { + return $e.altKey || $e.ctrlKey || $e.metaKey || $e.shiftKey; + } + }(); + var Dataset = function() { + "use strict"; + var keys, nameGenerator; + keys = { + dataset: "tt-selectable-dataset", + val: "tt-selectable-display", + obj: "tt-selectable-object" + }; + nameGenerator = _.getIdGenerator(); + function Dataset(o, www) { + o = o || {}; + o.templates = o.templates || {}; + o.templates.notFound = o.templates.notFound || o.templates.empty; + if (!o.source) { + $.error("missing source"); + } + if (!o.node) { + $.error("missing node"); + } + if (o.name && !isValidName(o.name)) { + $.error("invalid dataset name: " + o.name); + } + www.mixin(this); + this.highlight = !!o.highlight; + this.name = _.toStr(o.name || nameGenerator()); + this.limit = o.limit || 5; + this.displayFn = getDisplayFn(o.display || o.displayKey); + this.templates = getTemplates(o.templates, this.displayFn); + this.source = o.source.__ttAdapter ? o.source.__ttAdapter() : o.source; + this.async = _.isUndefined(o.async) ? this.source.length > 2 : !!o.async; + this._resetLastSuggestion(); + this.$el = $(o.node).attr("role", "presentation").addClass(this.classes.dataset).addClass(this.classes.dataset + "-" + this.name); + } + Dataset.extractData = function extractData(el) { + var $el = $(el); + if ($el.data(keys.obj)) { + return { + dataset: $el.data(keys.dataset) || "", + val: $el.data(keys.val) || "", + obj: $el.data(keys.obj) || null + }; + } + return null; + }; + _.mixin(Dataset.prototype, EventEmitter, { + _overwrite: function overwrite(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (this.async && this.templates.pending) { + this._renderPending(query); + } else if (!this.async && this.templates.notFound) { + this._renderNotFound(query); + } else { + this._empty(); + } + this.trigger("rendered", suggestions, false, this.name); + }, + _append: function append(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length && this.$lastSuggestion.length) { + this._appendSuggestions(query, suggestions); + } else if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (!this.$lastSuggestion.length && this.templates.notFound) { + this._renderNotFound(query); + } + this.trigger("rendered", suggestions, true, this.name); + }, + _renderSuggestions: function renderSuggestions(query, suggestions) { + var $fragment; + $fragment = this._getSuggestionsFragment(query, suggestions); + this.$lastSuggestion = $fragment.children().last(); + this.$el.html($fragment).prepend(this._getHeader(query, suggestions)).append(this._getFooter(query, suggestions)); + }, + _appendSuggestions: function appendSuggestions(query, suggestions) { + var $fragment, $lastSuggestion; + $fragment = this._getSuggestionsFragment(query, suggestions); + $lastSuggestion = $fragment.children().last(); + this.$lastSuggestion.after($fragment); + this.$lastSuggestion = $lastSuggestion; + }, + _renderPending: function renderPending(query) { + var template = this.templates.pending; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _renderNotFound: function renderNotFound(query) { + var template = this.templates.notFound; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _empty: function empty() { + this.$el.empty(); + this._resetLastSuggestion(); + }, + _getSuggestionsFragment: function getSuggestionsFragment(query, suggestions) { + var that = this, fragment; + fragment = document.createDocumentFragment(); + _.each(suggestions, function getSuggestionNode(suggestion) { + var $el, context; + context = that._injectQuery(query, suggestion); + $el = $(that.templates.suggestion(context)).data(keys.dataset, that.name).data(keys.obj, suggestion).data(keys.val, that.displayFn(suggestion)).addClass(that.classes.suggestion + " " + that.classes.selectable); + fragment.appendChild($el[0]); + }); + this.highlight && highlight({ + className: this.classes.highlight, + node: fragment, + pattern: query + }); + return $(fragment); + }, + _getFooter: function getFooter(query, suggestions) { + return this.templates.footer ? this.templates.footer({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _getHeader: function getHeader(query, suggestions) { + return this.templates.header ? this.templates.header({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _resetLastSuggestion: function resetLastSuggestion() { + this.$lastSuggestion = $(); + }, + _injectQuery: function injectQuery(query, obj) { + return _.isObject(obj) ? _.mixin({ + _query: query + }, obj) : obj; + }, + update: function update(query) { + var that = this, canceled = false, syncCalled = false, rendered = 0; + this.cancel(); + this.cancel = function cancel() { + canceled = true; + that.cancel = $.noop; + that.async && that.trigger("asyncCanceled", query, that.name); + }; + this.source(query, sync, async); + !syncCalled && sync([]); + function sync(suggestions) { + if (syncCalled) { + return; + } + syncCalled = true; + suggestions = (suggestions || []).slice(0, that.limit); + rendered = suggestions.length; + that._overwrite(query, suggestions); + if (rendered < that.limit && that.async) { + that.trigger("asyncRequested", query, that.name); + } + } + function async(suggestions) { + suggestions = suggestions || []; + if (!canceled && rendered < that.limit) { + that.cancel = $.noop; + var idx = Math.abs(rendered - that.limit); + rendered += idx; + that._append(query, suggestions.slice(0, idx)); + that.async && that.trigger("asyncReceived", query, that.name); + } + } + }, + cancel: $.noop, + clear: function clear() { + this._empty(); + this.cancel(); + this.trigger("cleared"); + }, + isEmpty: function isEmpty() { + return this.$el.is(":empty"); + }, + destroy: function destroy() { + this.$el = $("
"); + } + }); + return Dataset; + function getDisplayFn(display) { + display = display || _.stringify; + return _.isFunction(display) ? display : displayFn; + function displayFn(obj) { + return obj[display]; + } + } + function getTemplates(templates, displayFn) { + return { + notFound: templates.notFound && _.templatify(templates.notFound), + pending: templates.pending && _.templatify(templates.pending), + header: templates.header && _.templatify(templates.header), + footer: templates.footer && _.templatify(templates.footer), + suggestion: templates.suggestion ? userSuggestionTemplate : suggestionTemplate + }; + function userSuggestionTemplate(context) { + var template = templates.suggestion; + return $(template(context)).attr("id", _.guid()); + } + function suggestionTemplate(context) { + return $('
').attr("id", _.guid()).text(displayFn(context)); + } + } + function isValidName(str) { + return /^[_a-zA-Z0-9-]+$/.test(str); + } + }(); + var Menu = function() { + "use strict"; + function Menu(o, www) { + var that = this; + o = o || {}; + if (!o.node) { + $.error("node is required"); + } + www.mixin(this); + this.$node = $(o.node); + this.query = null; + this.datasets = _.map(o.datasets, initializeDataset); + function initializeDataset(oDataset) { + var node = that.$node.find(oDataset.node).first(); + oDataset.node = node.length ? node : $("
").appendTo(that.$node); + return new Dataset(oDataset, www); + } + } + _.mixin(Menu.prototype, EventEmitter, { + _onSelectableClick: function onSelectableClick($e) { + this.trigger("selectableClicked", $($e.currentTarget)); + }, + _onRendered: function onRendered(type, dataset, suggestions, async) { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetRendered", dataset, suggestions, async); + }, + _onCleared: function onCleared() { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetCleared"); + }, + _propagate: function propagate() { + this.trigger.apply(this, arguments); + }, + _allDatasetsEmpty: function allDatasetsEmpty() { + return _.every(this.datasets, _.bind(function isDatasetEmpty(dataset) { + var isEmpty = dataset.isEmpty(); + this.$node.attr("aria-expanded", !isEmpty); + return isEmpty; + }, this)); + }, + _getSelectables: function getSelectables() { + return this.$node.find(this.selectors.selectable); + }, + _removeCursor: function _removeCursor() { + var $selectable = this.getActiveSelectable(); + $selectable && $selectable.removeClass(this.classes.cursor); + }, + _ensureVisible: function ensureVisible($el) { + var elTop, elBottom, nodeScrollTop, nodeHeight; + elTop = $el.position().top; + elBottom = elTop + $el.outerHeight(true); + nodeScrollTop = this.$node.scrollTop(); + nodeHeight = this.$node.height() + parseInt(this.$node.css("paddingTop"), 10) + parseInt(this.$node.css("paddingBottom"), 10); + if (elTop < 0) { + this.$node.scrollTop(nodeScrollTop + elTop); + } else if (nodeHeight < elBottom) { + this.$node.scrollTop(nodeScrollTop + (elBottom - nodeHeight)); + } + }, + bind: function() { + var that = this, onSelectableClick; + onSelectableClick = _.bind(this._onSelectableClick, this); + this.$node.on("click.tt", this.selectors.selectable, onSelectableClick); + this.$node.on("mouseover", this.selectors.selectable, function() { + that.setCursor($(this)); + }); + this.$node.on("mouseleave", function() { + that._removeCursor(); + }); + _.each(this.datasets, function(dataset) { + dataset.onSync("asyncRequested", that._propagate, that).onSync("asyncCanceled", that._propagate, that).onSync("asyncReceived", that._propagate, that).onSync("rendered", that._onRendered, that).onSync("cleared", that._onCleared, that); + }); + return this; + }, + isOpen: function isOpen() { + return this.$node.hasClass(this.classes.open); + }, + open: function open() { + this.$node.scrollTop(0); + this.$node.addClass(this.classes.open); + }, + close: function close() { + this.$node.attr("aria-expanded", false); + this.$node.removeClass(this.classes.open); + this._removeCursor(); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.attr("dir", dir); + }, + selectableRelativeToCursor: function selectableRelativeToCursor(delta) { + var $selectables, $oldCursor, oldIndex, newIndex; + $oldCursor = this.getActiveSelectable(); + $selectables = this._getSelectables(); + oldIndex = $oldCursor ? $selectables.index($oldCursor) : -1; + newIndex = oldIndex + delta; + newIndex = (newIndex + 1) % ($selectables.length + 1) - 1; + newIndex = newIndex < -1 ? $selectables.length - 1 : newIndex; + return newIndex === -1 ? null : $selectables.eq(newIndex); + }, + setCursor: function setCursor($selectable) { + this._removeCursor(); + if ($selectable = $selectable && $selectable.first()) { + $selectable.addClass(this.classes.cursor); + this._ensureVisible($selectable); + } + }, + getSelectableData: function getSelectableData($el) { + return $el && $el.length ? Dataset.extractData($el) : null; + }, + getActiveSelectable: function getActiveSelectable() { + var $selectable = this._getSelectables().filter(this.selectors.cursor).first(); + return $selectable.length ? $selectable : null; + }, + getTopSelectable: function getTopSelectable() { + var $selectable = this._getSelectables().first(); + return $selectable.length ? $selectable : null; + }, + update: function update(query) { + var isValidUpdate = query !== this.query; + if (isValidUpdate) { + this.query = query; + _.each(this.datasets, updateDataset); + } + return isValidUpdate; + function updateDataset(dataset) { + dataset.update(query); + } + }, + empty: function empty() { + _.each(this.datasets, clearDataset); + this.query = null; + this.$node.addClass(this.classes.empty); + function clearDataset(dataset) { + dataset.clear(); + } + }, + destroy: function destroy() { + this.$node.off(".tt"); + this.$node = $("
"); + _.each(this.datasets, destroyDataset); + function destroyDataset(dataset) { + dataset.destroy(); + } + } + }); + return Menu; + }(); + var Status = function() { + "use strict"; + function Status(options) { + this.$el = $("", { + role: "status", + "aria-live": "polite" + }).css({ + position: "absolute", + padding: "0", + border: "0", + height: "1px", + width: "1px", + "margin-bottom": "-1px", + "margin-right": "-1px", + overflow: "hidden", + clip: "rect(0 0 0 0)", + "white-space": "nowrap" + }); + options.$input.after(this.$el); + _.each(options.menu.datasets, _.bind(function(dataset) { + if (dataset.onSync) { + dataset.onSync("rendered", _.bind(this.update, this)); + dataset.onSync("cleared", _.bind(this.cleared, this)); + } + }, this)); + } + _.mixin(Status.prototype, { + update: function update(event, suggestions) { + var length = suggestions.length; + var words; + if (length === 1) { + words = { + result: "result", + is: "is" + }; + } else { + words = { + result: "results", + is: "are" + }; + } + this.$el.text(length + " " + words.result + " " + words.is + " available, use up and down arrow keys to navigate."); + }, + cleared: function() { + this.$el.text(""); + } + }); + return Status; + }(); + var DefaultMenu = function() { + "use strict"; + var s = Menu.prototype; + function DefaultMenu() { + Menu.apply(this, [].slice.call(arguments, 0)); + } + _.mixin(DefaultMenu.prototype, Menu.prototype, { + open: function open() { + !this._allDatasetsEmpty() && this._show(); + return s.open.apply(this, [].slice.call(arguments, 0)); + }, + close: function close() { + this._hide(); + return s.close.apply(this, [].slice.call(arguments, 0)); + }, + _onRendered: function onRendered() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onRendered.apply(this, [].slice.call(arguments, 0)); + }, + _onCleared: function onCleared() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onCleared.apply(this, [].slice.call(arguments, 0)); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.css(dir === "ltr" ? this.css.ltr : this.css.rtl); + return s.setLanguageDirection.apply(this, [].slice.call(arguments, 0)); + }, + _hide: function hide() { + this.$node.hide(); + }, + _show: function show() { + this.$node.css("display", "block"); + } + }); + return DefaultMenu; + }(); + var Typeahead = function() { + "use strict"; + function Typeahead(o, www) { + var onFocused, onBlurred, onEnterKeyed, onTabKeyed, onEscKeyed, onUpKeyed, onDownKeyed, onLeftKeyed, onRightKeyed, onQueryChanged, onWhitespaceChanged; + o = o || {}; + if (!o.input) { + $.error("missing input"); + } + if (!o.menu) { + $.error("missing menu"); + } + if (!o.eventBus) { + $.error("missing event bus"); + } + www.mixin(this); + this.eventBus = o.eventBus; + this.minLength = _.isNumber(o.minLength) ? o.minLength : 1; + this.input = o.input; + this.menu = o.menu; + this.enabled = true; + this.autoselect = !!o.autoselect; + this.active = false; + this.input.hasFocus() && this.activate(); + this.dir = this.input.getLangDir(); + this._hacks(); + this.menu.bind().onSync("selectableClicked", this._onSelectableClicked, this).onSync("asyncRequested", this._onAsyncRequested, this).onSync("asyncCanceled", this._onAsyncCanceled, this).onSync("asyncReceived", this._onAsyncReceived, this).onSync("datasetRendered", this._onDatasetRendered, this).onSync("datasetCleared", this._onDatasetCleared, this); + onFocused = c(this, "activate", "open", "_onFocused"); + onBlurred = c(this, "deactivate", "_onBlurred"); + onEnterKeyed = c(this, "isActive", "isOpen", "_onEnterKeyed"); + onTabKeyed = c(this, "isActive", "isOpen", "_onTabKeyed"); + onEscKeyed = c(this, "isActive", "_onEscKeyed"); + onUpKeyed = c(this, "isActive", "open", "_onUpKeyed"); + onDownKeyed = c(this, "isActive", "open", "_onDownKeyed"); + onLeftKeyed = c(this, "isActive", "isOpen", "_onLeftKeyed"); + onRightKeyed = c(this, "isActive", "isOpen", "_onRightKeyed"); + onQueryChanged = c(this, "_openIfActive", "_onQueryChanged"); + onWhitespaceChanged = c(this, "_openIfActive", "_onWhitespaceChanged"); + this.input.bind().onSync("focused", onFocused, this).onSync("blurred", onBlurred, this).onSync("enterKeyed", onEnterKeyed, this).onSync("tabKeyed", onTabKeyed, this).onSync("escKeyed", onEscKeyed, this).onSync("upKeyed", onUpKeyed, this).onSync("downKeyed", onDownKeyed, this).onSync("leftKeyed", onLeftKeyed, this).onSync("rightKeyed", onRightKeyed, this).onSync("queryChanged", onQueryChanged, this).onSync("whitespaceChanged", onWhitespaceChanged, this).onSync("langDirChanged", this._onLangDirChanged, this); + } + _.mixin(Typeahead.prototype, { + _hacks: function hacks() { + var $input, $menu; + $input = this.input.$input || $("
"); + $menu = this.menu.$node || $("
"); + $input.on("blur.tt", function($e) { + var active, isActive, hasActive; + active = document.activeElement; + isActive = $menu.is(active); + hasActive = $menu.has(active).length > 0; + if (_.isMsie() && (isActive || hasActive)) { + $e.preventDefault(); + $e.stopImmediatePropagation(); + _.defer(function() { + $input.focus(); + }); + } + }); + $menu.on("mousedown.tt", function($e) { + $e.preventDefault(); + }); + }, + _onSelectableClicked: function onSelectableClicked(type, $el) { + this.select($el); + }, + _onDatasetCleared: function onDatasetCleared() { + this._updateHint(); + }, + _onDatasetRendered: function onDatasetRendered(type, suggestions, async, dataset) { + this._updateHint(); + if (this.autoselect) { + var cursorClass = this.selectors.cursor.substr(1); + this.menu.$node.find(this.selectors.suggestion).first().addClass(cursorClass); + } + this.eventBus.trigger("render", suggestions, async, dataset); + }, + _onAsyncRequested: function onAsyncRequested(type, dataset, query) { + this.eventBus.trigger("asyncrequest", query, dataset); + }, + _onAsyncCanceled: function onAsyncCanceled(type, dataset, query) { + this.eventBus.trigger("asynccancel", query, dataset); + }, + _onAsyncReceived: function onAsyncReceived(type, dataset, query) { + this.eventBus.trigger("asyncreceive", query, dataset); + }, + _onFocused: function onFocused() { + this._minLengthMet() && this.menu.update(this.input.getQuery()); + }, + _onBlurred: function onBlurred() { + if (this.input.hasQueryChangedSinceLastFocus()) { + this.eventBus.trigger("change", this.input.getQuery()); + } + }, + _onEnterKeyed: function onEnterKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + if (this.select($selectable)) { + $e.preventDefault(); + $e.stopPropagation(); + } + } else if (this.autoselect) { + if (this.select(this.menu.getTopSelectable())) { + $e.preventDefault(); + $e.stopPropagation(); + } + } + }, + _onTabKeyed: function onTabKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + this.select($selectable) && $e.preventDefault(); + } else if (this.autoselect) { + if ($selectable = this.menu.getTopSelectable()) { + this.autocomplete($selectable) && $e.preventDefault(); + } + } + }, + _onEscKeyed: function onEscKeyed() { + this.close(); + }, + _onUpKeyed: function onUpKeyed() { + this.moveCursor(-1); + }, + _onDownKeyed: function onDownKeyed() { + this.moveCursor(+1); + }, + _onLeftKeyed: function onLeftKeyed() { + if (this.dir === "rtl" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onRightKeyed: function onRightKeyed() { + if (this.dir === "ltr" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onQueryChanged: function onQueryChanged(e, query) { + this._minLengthMet(query) ? this.menu.update(query) : this.menu.empty(); + }, + _onWhitespaceChanged: function onWhitespaceChanged() { + this._updateHint(); + }, + _onLangDirChanged: function onLangDirChanged(e, dir) { + if (this.dir !== dir) { + this.dir = dir; + this.menu.setLanguageDirection(dir); + } + }, + _openIfActive: function openIfActive() { + this.isActive() && this.open(); + }, + _minLengthMet: function minLengthMet(query) { + query = _.isString(query) ? query : this.input.getQuery() || ""; + return query.length >= this.minLength; + }, + _updateHint: function updateHint() { + var $selectable, data, val, query, escapedQuery, frontMatchRegEx, match; + $selectable = this.menu.getTopSelectable(); + data = this.menu.getSelectableData($selectable); + val = this.input.getInputValue(); + if (data && !_.isBlankString(val) && !this.input.hasOverflow()) { + query = Input.normalizeQuery(val); + escapedQuery = _.escapeRegExChars(query); + frontMatchRegEx = new RegExp("^(?:" + escapedQuery + ")(.+$)", "i"); + match = frontMatchRegEx.exec(data.val); + match && this.input.setHint(val + match[1]); + } else { + this.input.clearHint(); + } + }, + isEnabled: function isEnabled() { + return this.enabled; + }, + enable: function enable() { + this.enabled = true; + }, + disable: function disable() { + this.enabled = false; + }, + isActive: function isActive() { + return this.active; + }, + activate: function activate() { + if (this.isActive()) { + return true; + } else if (!this.isEnabled() || this.eventBus.before("active")) { + return false; + } else { + this.active = true; + this.eventBus.trigger("active"); + return true; + } + }, + deactivate: function deactivate() { + if (!this.isActive()) { + return true; + } else if (this.eventBus.before("idle")) { + return false; + } else { + this.active = false; + this.close(); + this.eventBus.trigger("idle"); + return true; + } + }, + isOpen: function isOpen() { + return this.menu.isOpen(); + }, + open: function open() { + if (!this.isOpen() && !this.eventBus.before("open")) { + this.input.setAriaExpanded(true); + this.menu.open(); + this._updateHint(); + this.eventBus.trigger("open"); + } + return this.isOpen(); + }, + close: function close() { + if (this.isOpen() && !this.eventBus.before("close")) { + this.input.setAriaExpanded(false); + this.menu.close(); + this.input.clearHint(); + this.input.resetInputValue(); + this.eventBus.trigger("close"); + } + return !this.isOpen(); + }, + setVal: function setVal(val) { + this.input.setQuery(_.toStr(val)); + }, + getVal: function getVal() { + return this.input.getQuery(); + }, + select: function select($selectable) { + var data = this.menu.getSelectableData($selectable); + if (data && !this.eventBus.before("select", data.obj, data.dataset)) { + this.input.setQuery(data.val, true); + this.eventBus.trigger("select", data.obj, data.dataset); + this.close(); + return true; + } + return false; + }, + autocomplete: function autocomplete($selectable) { + var query, data, isValid; + query = this.input.getQuery(); + data = this.menu.getSelectableData($selectable); + isValid = data && query !== data.val; + if (isValid && !this.eventBus.before("autocomplete", data.obj, data.dataset)) { + this.input.setQuery(data.val); + this.eventBus.trigger("autocomplete", data.obj, data.dataset); + return true; + } + return false; + }, + moveCursor: function moveCursor(delta) { + var query, $candidate, data, suggestion, datasetName, cancelMove, id; + query = this.input.getQuery(); + $candidate = this.menu.selectableRelativeToCursor(delta); + data = this.menu.getSelectableData($candidate); + suggestion = data ? data.obj : null; + datasetName = data ? data.dataset : null; + id = $candidate ? $candidate.attr("id") : null; + this.input.trigger("cursorchange", id); + cancelMove = this._minLengthMet() && this.menu.update(query); + if (!cancelMove && !this.eventBus.before("cursorchange", suggestion, datasetName)) { + this.menu.setCursor($candidate); + if (data) { + if (typeof data.val === "string") { + this.input.setInputValue(data.val); + } + } else { + this.input.resetInputValue(); + this._updateHint(); + } + this.eventBus.trigger("cursorchange", suggestion, datasetName); + return true; + } + return false; + }, + destroy: function destroy() { + this.input.destroy(); + this.menu.destroy(); + } + }); + return Typeahead; + function c(ctx) { + var methods = [].slice.call(arguments, 1); + return function() { + var args = [].slice.call(arguments); + _.each(methods, function(method) { + return ctx[method].apply(ctx, args); + }); + }; + } + }(); + (function() { + "use strict"; + var old, keys, methods; + old = $.fn.typeahead; + keys = { + www: "tt-www", + attrs: "tt-attrs", + typeahead: "tt-typeahead" + }; + methods = { + initialize: function initialize(o, datasets) { + var www; + datasets = _.isArray(datasets) ? datasets : [].slice.call(arguments, 1); + o = o || {}; + www = WWW(o.classNames); + return this.each(attach); + function attach() { + var $input, $wrapper, $hint, $menu, defaultHint, defaultMenu, eventBus, input, menu, status, typeahead, MenuConstructor; + _.each(datasets, function(d) { + d.highlight = !!o.highlight; + }); + $input = $(this); + $wrapper = $(www.html.wrapper); + $hint = $elOrNull(o.hint); + $menu = $elOrNull(o.menu); + defaultHint = o.hint !== false && !$hint; + defaultMenu = o.menu !== false && !$menu; + defaultHint && ($hint = buildHintFromInput($input, www)); + defaultMenu && ($menu = $(www.html.menu).css(www.css.menu)); + $hint && $hint.val(""); + $input = prepInput($input, www); + if (defaultHint || defaultMenu) { + $wrapper.css(www.css.wrapper); + $input.css(defaultHint ? www.css.input : www.css.inputWithNoHint); + $input.wrap($wrapper).parent().prepend(defaultHint ? $hint : null).append(defaultMenu ? $menu : null); + } + MenuConstructor = defaultMenu ? DefaultMenu : Menu; + eventBus = new EventBus({ + el: $input + }); + input = new Input({ + hint: $hint, + input: $input, + menu: $menu + }, www); + menu = new MenuConstructor({ + node: $menu, + datasets: datasets + }, www); + status = new Status({ + $input: $input, + menu: menu + }); + typeahead = new Typeahead({ + input: input, + menu: menu, + eventBus: eventBus, + minLength: o.minLength, + autoselect: o.autoselect + }, www); + $input.data(keys.www, www); + $input.data(keys.typeahead, typeahead); + } + }, + isEnabled: function isEnabled() { + var enabled; + ttEach(this.first(), function(t) { + enabled = t.isEnabled(); + }); + return enabled; + }, + enable: function enable() { + ttEach(this, function(t) { + t.enable(); + }); + return this; + }, + disable: function disable() { + ttEach(this, function(t) { + t.disable(); + }); + return this; + }, + isActive: function isActive() { + var active; + ttEach(this.first(), function(t) { + active = t.isActive(); + }); + return active; + }, + activate: function activate() { + ttEach(this, function(t) { + t.activate(); + }); + return this; + }, + deactivate: function deactivate() { + ttEach(this, function(t) { + t.deactivate(); + }); + return this; + }, + isOpen: function isOpen() { + var open; + ttEach(this.first(), function(t) { + open = t.isOpen(); + }); + return open; + }, + open: function open() { + ttEach(this, function(t) { + t.open(); + }); + return this; + }, + close: function close() { + ttEach(this, function(t) { + t.close(); + }); + return this; + }, + select: function select(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.select($el); + }); + return success; + }, + autocomplete: function autocomplete(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.autocomplete($el); + }); + return success; + }, + moveCursor: function moveCursoe(delta) { + var success = false; + ttEach(this.first(), function(t) { + success = t.moveCursor(delta); + }); + return success; + }, + val: function val(newVal) { + var query; + if (!arguments.length) { + ttEach(this.first(), function(t) { + query = t.getVal(); + }); + return query; + } else { + ttEach(this, function(t) { + t.setVal(_.toStr(newVal)); + }); + return this; + } + }, + destroy: function destroy() { + ttEach(this, function(typeahead, $input) { + revert($input); + typeahead.destroy(); + }); + return this; + } + }; + $.fn.typeahead = function(method) { + if (methods[method]) { + return methods[method].apply(this, [].slice.call(arguments, 1)); + } else { + return methods.initialize.apply(this, arguments); + } + }; + $.fn.typeahead.noConflict = function noConflict() { + $.fn.typeahead = old; + return this; + }; + function ttEach($els, fn) { + $els.each(function() { + var $input = $(this), typeahead; + (typeahead = $input.data(keys.typeahead)) && fn(typeahead, $input); + }); + } + function buildHintFromInput($input, www) { + return $input.clone().addClass(www.classes.hint).removeData().css(www.css.hint).css(getBackgroundStyles($input)).prop({ + readonly: true, + required: false + }).removeAttr("id name placeholder").removeClass("required").attr({ + spellcheck: "false", + tabindex: -1 + }); + } + function prepInput($input, www) { + $input.data(keys.attrs, { + dir: $input.attr("dir"), + autocomplete: $input.attr("autocomplete"), + spellcheck: $input.attr("spellcheck"), + style: $input.attr("style") + }); + $input.addClass(www.classes.input).attr({ + spellcheck: false + }); + try { + !$input.attr("dir") && $input.attr("dir", "auto"); + } catch (e) {} + return $input; + } + function getBackgroundStyles($el) { + return { + backgroundAttachment: $el.css("background-attachment"), + backgroundClip: $el.css("background-clip"), + backgroundColor: $el.css("background-color"), + backgroundImage: $el.css("background-image"), + backgroundOrigin: $el.css("background-origin"), + backgroundPosition: $el.css("background-position"), + backgroundRepeat: $el.css("background-repeat"), + backgroundSize: $el.css("background-size") + }; + } + function revert($input) { + var www, $wrapper; + www = $input.data(keys.www); + $wrapper = $input.parent().filter(www.selectors.wrapper); + _.each($input.data(keys.attrs), function(val, key) { + _.isUndefined(val) ? $input.removeAttr(key) : $input.attr(key, val); + }); + $input.removeData(keys.typeahead).removeData(keys.www).removeData(keys.attr).removeClass(www.classes.input); + if ($wrapper.length) { + $input.detach().insertAfter($wrapper); + $wrapper.remove(); + } + } + function $elOrNull(obj) { + var isValid, $el; + isValid = _.isJQuery(obj) || _.isElement(obj); + $el = isValid ? $(obj).first() : []; + return $el.length ? $el : null; + } + })(); +}); \ No newline at end of file diff --git a/6.23.1/search.json b/6.23.1/search.json new file mode 100644 index 0000000000..c59116859f --- /dev/null +++ b/6.23.1/search.json @@ -0,0 +1 @@ +{"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV19isPayPalRecommendedSbvp":{"name":"isPayPalRecommended","abstract":"\u003cp\u003eIf true, display the PayPal button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV18isVenmoRecommendedSbvp":{"name":"isVenmoRecommended","abstract":"\u003cp\u003eIf true, dislpay the Venmo button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV25isEligibleInPayPalNetworkSbvp":{"name":"isEligibleInPayPalNetwork","abstract":"\u003cp\u003eIf true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/Phone.html#/s:24BraintreeShopperInsights5PhoneV11countryCode14nationalNumberACSS_SStcfc":{"name":"init(countryCode:nationalNumber:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest.Phone\u003c/code\u003e.\u003c/p\u003e","parent_name":"Phone"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5email5phoneACSS_AA5PhoneVtcfc":{"name":"init(email:phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5emailACSS_tcfc":{"name":"init(email:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5phoneAcA5PhoneV_tcfc":{"name":"init(phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTPayPalMessagingRequest.html#/s:24BraintreePayPalMessaging05BTPaycD7RequestV6amount8pageType05offerI012buyerCountry04logoI013textAlignment5colorACSdSg_AA0ecd4PageI0OSgAA0ecd5OfferI0OSgSSSgAA0ecd4LogoI0OAA0ecd4TextO0OAA0ecD5ColorOtcfc":{"name":"init(amount:pageType:offerType:buyerCountry:logoType:textAlignment:color:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTPayPalMessaging\u003c/code\u003e\u003c/p\u003e","parent_name":"BTPayPalMessagingRequest"},"Structs/BTPayPalMessagingRequest.html":{"name":"BTPayPalMessagingRequest","abstract":"\u003cp\u003eUsed to initialize a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e"},"Structs/BTShopperInsightsRequest.html":{"name":"BTShopperInsightsRequest","abstract":"\u003cp\u003eBuyer data required to use the Shopper Insights feature.\u003c/p\u003e"},"Structs/Phone.html":{"name":"Phone","abstract":"\u003cp\u003eBuyer\u0026rsquo;s phone number details for use with the Shopper Insights feature.\u003c/p\u003e"},"Structs/BTShopperInsightsResult.html":{"name":"BTShopperInsightsResult","abstract":"\u003cp\u003eA summary of the buyer\u0026rsquo;s recommended payment methods.\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didSelectyyAA0ecD4ViewCF":{"name":"didSelect(_:)","abstract":"\u003cp\u003eFunction invoked when the message is tapped\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9willApplyyyAA0ecD4ViewCF":{"name":"willApply(_:)","abstract":"\u003cp\u003eFunction invoked when a user has begun the PayPal Credit application\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP10willAppearyyAA0ecD4ViewCF":{"name":"willAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message first starts to fetch data\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didAppearyyAA0ecD4ViewCF":{"name":"didAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message has rendered\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP7onError_5erroryAA0ecD4ViewC_s0H0_ptF":{"name":"onError(_:error:)","abstract":"\u003cp\u003eFunction invoked when the message encounters an error\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html#/c:@M@BraintreeThreeDSecure@objc(pl)BTThreeDSecureRequestDelegate(im)onLookupComplete:lookupResult:next:":{"name":"onLookupComplete(_:lookupResult:next:)","abstract":"\u003cp\u003eRequired delegate method which returns the ThreeDSecure lookup result before the flow continues.","parent_name":"BTThreeDSecureRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html#/c:@M@BraintreeLocalPayment@objc(pl)BTLocalPaymentRequestDelegate(im)localPaymentStarted:paymentID:start:":{"name":"localPaymentStarted(_:paymentID:start:)","abstract":"\u003cp\u003eRequired delegate method which returns the payment ID before the flow starts.\u003c/p\u003e","parent_name":"BTLocalPaymentRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html":{"name":"BTLocalPaymentRequestDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html":{"name":"BTThreeDSecureRequestDelegate","abstract":"\u003cp\u003eProtocol for ThreeDSecure Request flow\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html":{"name":"BTPayPalMessagingDelegate","abstract":"\u003cp\u003eProtocol for \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e events\u003c/p\u003e"},"Extensions/BTThreeDSecureV2Provider.html#/s:21BraintreeThreeDSecure07BTThreeC10V2ProviderC15cardinalSessionAD15stepUpValidated9serverJWTySo08CardinalH0CSg_So0N8ResponseCSgSSSgtF":{"name":"cardinalSession(cardinalSession:stepUpValidated:serverJWT:)","parent_name":"BTThreeDSecureV2Provider"},"Extensions.html#/c:objc(cs)UIApplication":{"name":"UIApplication"},"Extensions/BTThreeDSecureV2Provider.html":{"name":"BTThreeDSecureV2Provider"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO17emptyBodyReturnedyA2CmF":{"name":"emptyBodyReturned","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO20invalidAuthorizationyA2CmF":{"name":"invalidAuthorization","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTShopperInsightsError"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO4leftyA2CmF":{"name":"left","abstract":"\u003cp\u003eText aligned to the left\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO6centeryA2CmF":{"name":"center","abstract":"\u003cp\u003eText aligned to the center\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO5rightyA2CmF":{"name":"right","abstract":"\u003cp\u003eText aligned to the right\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4homeyA2CmF":{"name":"home","abstract":"\u003cp\u003eHome view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO14productDetailsyA2CmF":{"name":"productDetails","abstract":"\u003cp\u003eIndividual product details view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4cartyA2CmF":{"name":"cart","abstract":"\u003cp\u003eShopping cart view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8miniCartyA2CmF":{"name":"miniCart","abstract":"\u003cp\u003ePopover shopping cart view that covers part of the view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8checkoutyA2CmF":{"name":"checkout","abstract":"\u003cp\u003eCheckout view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO13searchResultsyA2CmF":{"name":"searchResults","abstract":"\u003cp\u003eSearch results\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO17payLaterShortTermyA2CmF":{"name":"payLaterShortTerm","abstract":"\u003cp\u003ePay Later short term installment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO16payLaterLongTermyA2CmF":{"name":"payLaterLongTerm","abstract":"\u003cp\u003ePay Later long term installments\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO08payLaterB5InOneyA2CmF":{"name":"payLaterPayInOne","abstract":"\u003cp\u003ePay Later deferred payment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO03payC16CreditNoInterestyA2CmF":{"name":"payPalCreditNoInterest","abstract":"\u003cp\u003ePayPal Credit No Interest\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO6inlineyA2CmF":{"name":"inline","abstract":"\u003cp\u003ePayPal logo positioned inline within the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO7primaryyA2CmF":{"name":"primary","abstract":"\u003cp\u003ePrimary logo including both the PayPal monogram and logo\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO11alternativeyA2CmF":{"name":"alternative","abstract":"\u003cp\u003eAlternative logo including just the PayPal monogram\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO4noneyA2CmF":{"name":"none","abstract":"\u003cp\u003e\u0026ldquo;PayPal\u0026rdquo; as bold text inline with the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5blackyA2CmF":{"name":"black","abstract":"\u003cp\u003eBlack text with a color logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5whiteyA2CmF":{"name":"white","abstract":"\u003cp\u003eWhite text with a white logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO10monochromeyA2CmF":{"name":"monochrome","abstract":"\u003cp\u003eBlack text with a black logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO9grayscaleyA2CmF":{"name":"grayscale","abstract":"\u003cp\u003eBlack text with a desaturated logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageMultiUse":{"name":"multiUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for future payments and can be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageSingleUse":{"name":"singleUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for a one-time payment and cannot be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appNotAvailableyA2CmF":{"name":"appNotAvailable","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24bundleDisplayNameMissingyA2CmF":{"name":"bundleDisplayNameMissing","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO16invalidReturnURLyACSScACmF":{"name":"invalidReturnURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO19invalidBodyReturnedyA2CmF":{"name":"invalidBodyReturned","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO18invalidRedirectURLyACSScACmF":{"name":"invalidRedirectURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO28enrichedCustomerDataDisabledyA2CmF":{"name":"enrichedCustomerDataDisabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO27invalidRedirectURLParameteryA2CmF":{"name":"invalidRedirectURLParameter","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoError"},"Enums/BTVenmoAppSwitchError.html#/s:14BraintreeVenmo21BTVenmoAppSwitchErrorO14returnURLErroryACSi_SSSgtcACmF":{"name":"returnURLError(_:_:)","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoAppSwitchError"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeLogin":{"name":"login","abstract":"\u003cp\u003eLogin\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeBilling":{"name":"billing","abstract":"\u003cp\u003eBilling\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeCheckout":{"name":"checkout","abstract":"\u003cp\u003eCheckout\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeVault":{"name":"vault","abstract":"\u003cp\u003eVault\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNone":{"name":"none","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDa_DK":{"name":"da_DK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDe_DE":{"name":"de_DE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_AU":{"name":"en_AU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_GB":{"name":"en_GB","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_US":{"name":"en_US","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_ES":{"name":"es_ES","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_XC":{"name":"es_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_CA":{"name":"fr_CA","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_FR":{"name":"fr_FR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_XC":{"name":"fr_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeId_ID":{"name":"id_ID","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeIt_IT":{"name":"it_IT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeJa_JP":{"name":"ja_JP","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeKo_KR":{"name":"ko_KR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNl_NL":{"name":"nl_NL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNo_NO":{"name":"no_NO","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePl_PL":{"name":"pl_PL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_BR":{"name":"pt_BR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_PT":{"name":"pt_PT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeRu_RU":{"name":"ru_RU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeSv_SE":{"name":"sv_SE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTh_TH":{"name":"th_TH","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTr_TR":{"name":"tr_TR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_CN":{"name":"zh_CN","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_HK":{"name":"zh_HK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_TW":{"name":"zh_TW","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_XC":{"name":"zh_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_A":{"name":"UPC_A","abstract":"\u003cp\u003eUpc Type A\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_B":{"name":"UPC_B","abstract":"\u003cp\u003eUpc Type B\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_C":{"name":"UPC_C","abstract":"\u003cp\u003eUpc Type C\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_D":{"name":"UPC_D","abstract":"\u003cp\u003eUpc Type D\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_E":{"name":"UPC_E","abstract":"\u003cp\u003eUpc Type E\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_2":{"name":"UPC_2","abstract":"\u003cp\u003eUpc Type 2\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_5":{"name":"UPC_5","abstract":"\u003cp\u003eUpc Type 5\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO015httpPostRequestE0yACSDySSypGcACmF":{"name":"httpPostRequestError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO10invalidURLyACSScACmF":{"name":"invalidURL(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO36asWebAuthenticationSessionURLInvalidyACSScACmF":{"name":"asWebAuthenticationSessionURLInvalid(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO16invalidURLActionyA2CmF":{"name":"invalidURLAction","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO29appSwitchReturnURLPathInvalidyA2CmF":{"name":"appSwitchReturnURLPathInvalid","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO14missingBATokenyA2CmF":{"name":"missingBAToken","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionPayNow":{"name":"payNow","abstract":"\u003cp\u003ePay Now\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentAuthorize":{"name":"authorize","abstract":"\u003cp\u003eAuthorize\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentSale":{"name":"sale","abstract":"\u003cp\u003eSale\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentOrder":{"name":"order","abstract":"\u003cp\u003eOrder\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/s:15BraintreePayPal05BTPayC13RequestIntentO11stringValueSSvp":{"name":"stringValue","parent_name":"BTPayPalRequestIntent"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO20customerInputInvalidyACSDySSypGcACmF":{"name":"customerInputInvalid(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO17cardAlreadyExistsyACSDySSypGcACmF":{"name":"cardAlreadyExists(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTCardError"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeVerify":{"name":"verify","abstract":"\u003cp\u003eVerify button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeContinue":{"name":"continue","abstract":"\u003cp\u003eContinue button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeNext":{"name":"next","abstract":"\u003cp\u003eNext button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeCancel":{"name":"cancel","abstract":"\u003cp\u003eCancel button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeResend":{"name":"resend","abstract":"\u003cp\u003eResend button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeNative":{"name":"native","abstract":"\u003cp\u003eNative\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeHtml":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeBoth":{"name":"both","abstract":"\u003cp\u003eBoth\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodSameDay":{"name":"sameDay","abstract":"\u003cp\u003eSame Day\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodExpedited":{"name":"expedited","abstract":"\u003cp\u003eExpedited\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodPriority":{"name":"priority","abstract":"\u003cp\u003ePriority\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodGround":{"name":"ground","abstract":"\u003cp\u003eGround\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodElectronicDelivery":{"name":"electronicDelivery","abstract":"\u003cp\u003eElectronic Delivery\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodShipToStore":{"name":"shipToStore","abstract":"\u003cp\u003eShip to Store\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeLowValue":{"name":"lowValue","abstract":"\u003cp\u003eLow value\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeSecureCorporate":{"name":"secureCorporate","abstract":"\u003cp\u003eSecure corporate\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTrustedBeneficiary":{"name":"trustedBeneficiary","abstract":"\u003cp\u003eTrusted beneficiary\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTransactionRiskAnalysis":{"name":"transactionRiskAnalysis","abstract":"\u003cp\u003eTransaction risk analysis\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO12failedLookupyACSDySSypGcACmF":{"name":"failedLookup(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20failedAuthenticationyACSScACmF":{"name":"failedAuthentication(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO13configurationyACSScACmF":{"name":"configuration(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20exceededTimeoutLimityA2CmF":{"name":"exceededTimeoutLimit","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeRequested":{"name":"requested","abstract":"\u003cp\u003eRequested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeNotRequested":{"name":"notRequested","abstract":"\u003cp\u003eNot Requested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO13noAccountDatayA2CmF":{"name":"noAccountData","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8canceledyACSScACmF":{"name":"canceled(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO18missingRedirectURLyA2CmF":{"name":"missingRedirectURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16errorDescriptionSSvp":{"name":"errorDescription","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTLocalPaymentError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO11unsupportedyA2CmF":{"name":"unsupported","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO02nobC13CardsReturnedyA2CmF":{"name":"noApplePayCardsReturned","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTApplePayError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO15encodingFailureyA2CmF":{"name":"encodingFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTDataCollectorError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO13noRewardsDatayA2CmF":{"name":"noRewardsData","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAmericanExpressError"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeOneOff":{"name":"oneOff","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeRecurrent":{"name":"recurrent","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO15webFlowCanceledyA2CmF":{"name":"webFlowCanceled","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO16resultURLInvalidyA2CmF":{"name":"resultURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO17resultReturnedNilyA2CmF":{"name":"resultReturnedNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO18approvalURLInvalidyA2CmF":{"name":"approvalURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO23authenticationResultNilyA2CmF":{"name":"authenticationResultNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTSEPADirectDebitError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO14invalidRequestyA2CmF":{"name":"invalidRequest","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC10NotEnabledyA2CmF":{"name":"payPalNotEnabled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18invalidEnvironmentyA2CmF":{"name":"invalidEnvironment","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19orderCreationFailedyACs0G0_pcACmF":{"name":"orderCreationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO17checkoutSDKFailedyAC0bcE00G4InfoCcACmF":{"name":"checkoutSDKFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18tokenizationFailedyACs0G0_pcACmF":{"name":"tokenizationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO31parsingTokenizationResultFailedyA2CmF":{"name":"parsingTokenizationResultFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19invalidJSONResponseyA2CmF":{"name":"invalidJSONResponse","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO12indexInvalidyACSicACmF":{"name":"indexInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO10keyInvalidyACSScACmF":{"name":"keyInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTJSONError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO32responseContentTypeNotAcceptableyACSDySSypGcACmF":{"name":"responseContentTypeNotAcceptable(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11clientErroryACSDySSypGcACmF":{"name":"clientError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11serverErroryACSDySSypGcACmF":{"name":"serverError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14missingBaseURLyACSDySSypGcACmF":{"name":"missingBaseURL(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14rateLimitErroryACSDySSypGcACmF":{"name":"rateLimitError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO12dataNotFoundyA2CmF":{"name":"dataNotFound","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19httpResponseInvalidyA2CmF":{"name":"httpResponseInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO16urlStringInvalidyA2CmF":{"name":"urlStringInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19clientApiURLInvalidyA2CmF":{"name":"clientApiURLInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO18serializationErroryACSScACmF":{"name":"serializationError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11deallocatedyACSScACmF":{"name":"deallocated(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTHTTPError"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnknown":{"name":"unknown","abstract":"\u003cp\u003eUnknown card\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkAMEX":{"name":"AMEX","abstract":"\u003cp\u003eAmerican Express\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDinersClub":{"name":"dinersClub","abstract":"\u003cp\u003eDiners Club\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDiscover":{"name":"discover","abstract":"\u003cp\u003eDiscover\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMasterCard":{"name":"masterCard","abstract":"\u003cp\u003eMastercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkVisa":{"name":"visa","abstract":"\u003cp\u003eVisa\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkJCB":{"name":"JCB","abstract":"\u003cp\u003eJCB\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkLaser":{"name":"laser","abstract":"\u003cp\u003eLaser\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMaestro":{"name":"maestro","abstract":"\u003cp\u003eMaestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnionPay":{"name":"unionPay","abstract":"\u003cp\u003eUnion Pay\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHiper":{"name":"hiper","abstract":"\u003cp\u003eHiper\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHipercard":{"name":"hipercard","abstract":"\u003cp\u003eHipercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSolo":{"name":"solo","abstract":"\u003cp\u003eSolo\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSwitch":{"name":"switch","abstract":"\u003cp\u003eSwitch\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUkMaestro":{"name":"ukMaestro","abstract":"\u003cp\u003eUK Maestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO24configurationUnavailableyA2CmF":{"name":"configurationUnavailable","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO13notAuthorizedyA2CmF":{"name":"notAuthorized","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO20failedBase64EncodingyA2CmF":{"name":"failedBase64Encoding","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAPIClientError"},"Enums/TokenizationKeyError.html#/s:13BraintreeCore20TokenizationKeyErrorO7invalidyA2CmF":{"name":"invalid","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"TokenizationKeyError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO16invalidConfigURLyA2CmF":{"name":"invalidConfigURL","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO13invalidFormatyACSScACmF":{"name":"invalidFormat(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO18unsupportedVersionyA2CmF":{"name":"unsupportedVersion","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO14failedDecodingyACSScACmF":{"name":"failedDecoding(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTClientTokenError"},"Enums/BTAnalyticsServiceError.html#/s:13BraintreeCore23BTAnalyticsServiceErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html":{"name":"BTAnalyticsServiceError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTClientTokenError.html":{"name":"BTClientTokenError","abstract":"\u003cp\u003eError codes associated with a client token.\u003c/p\u003e"},"Enums/TokenizationKeyError.html":{"name":"TokenizationKeyError","abstract":"\u003cp\u003eError codes associated with a Tokenization Key.\u003c/p\u003e"},"Enums/BTAPIClientError.html":{"name":"BTAPIClientError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTCardNetwork.html":{"name":"BTCardNetwork","abstract":"\u003cp\u003eCard type\u003c/p\u003e"},"Enums/BTHTTPError.html":{"name":"BTHTTPError","abstract":"\u003cp\u003eError codes associated with BTHTTP\u003c/p\u003e"},"Enums/BTJSONError.html":{"name":"BTJSONError"},"Enums/BTPayPalNativeCheckoutError.html":{"name":"BTPayPalNativeCheckoutError","abstract":"\u003cp\u003eError returned from the native PayPal flow\u003c/p\u003e"},"Enums/BTSEPADirectDebitError.html":{"name":"BTSEPADirectDebitError","abstract":"\u003cp\u003eError details associated with SEPA Direct Debit.\u003c/p\u003e"},"Enums/BTSEPADirectDebitMandateType.html":{"name":"BTSEPADirectDebitMandateType","abstract":"\u003cp\u003eMandate type for the SEPA Direct Debit request.\u003c/p\u003e"},"Enums/BTAmericanExpressError.html":{"name":"BTAmericanExpressError","abstract":"\u003cp\u003eError details associated with American Express.\u003c/p\u003e"},"Enums/BTDataCollectorError.html":{"name":"BTDataCollectorError","abstract":"\u003cp\u003eError details associated with Braintree Data Collector.\u003c/p\u003e"},"Enums/BTApplePayError.html":{"name":"BTApplePayError","abstract":"\u003cp\u003eError codes associated with Apple Pay.\u003c/p\u003e"},"Enums/BTLocalPaymentError.html":{"name":"BTLocalPaymentError","abstract":"\u003cp\u003eError codes associated with Payment Flow\u003c/p\u003e"},"Enums/BTThreeDSecureAccountType.html":{"name":"BTThreeDSecureAccountType","abstract":"\u003cp\u003eThe account type\u003c/p\u003e"},"Enums/BTThreeDSecureCardAddChallenge.html":{"name":"BTThreeDSecureCardAddChallenge","abstract":"\u003cp\u003eThe card add challenge request\u003c/p\u003e"},"Enums/BTThreeDSecureError.html":{"name":"BTThreeDSecureError"},"Enums/BTThreeDSecureRequestedExemptionType.html":{"name":"BTThreeDSecureRequestedExemptionType","abstract":"\u003cp\u003e3D Secure requested exemption type\u003c/p\u003e"},"Enums/BTThreeDSecureShippingMethod.html":{"name":"BTThreeDSecureShippingMethod","abstract":"\u003cp\u003eThe shipping method\u003c/p\u003e"},"Enums/BTThreeDSecureUIType.html":{"name":"BTThreeDSecureUIType","abstract":"\u003cp\u003eThe interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Enums/BTThreeDSecureV2ButtonType.html":{"name":"BTThreeDSecureV2ButtonType","abstract":"\u003cp\u003eButton types that can be customized in 3D Secure 2 flows.\u003c/p\u003e"},"Enums/BTCardError.html":{"name":"BTCardError"},"Enums/BTPayPalRequestIntent.html":{"name":"BTPayPalRequestIntent","abstract":"\u003cp\u003ePayment intent.\u003c/p\u003e"},"Enums/BTPayPalRequestUserAction.html":{"name":"BTPayPalRequestUserAction","abstract":"\u003cp\u003eThe call-to-action in the PayPal Checkout flow.\u003c/p\u003e"},"Enums/BTPayPalError.html":{"name":"BTPayPalError","abstract":"\u003cp\u003eError codes associated with PayPal.\u003c/p\u003e"},"Enums/BTPayPalLineItemKind.html":{"name":"BTPayPalLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTPayPalLineItemUPCType.html":{"name":"BTPayPalLineItemUPCType","abstract":"\u003cp\u003eUse this option to specify the UPC type of the line item.\u003c/p\u003e"},"Enums/BTPayPalLocaleCode.html":{"name":"BTPayPalLocaleCode","abstract":"\u003cp\u003eA locale code to use for a transaction.\u003c/p\u003e"},"Enums/BTPayPalPaymentType.html":{"name":"BTPayPalPaymentType"},"Enums/BTPayPalRequestLandingPageType.html":{"name":"BTPayPalRequestLandingPageType","abstract":"\u003cp\u003eUse this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.\u003c/p\u003e"},"Enums/BTVenmoAppSwitchError.html":{"name":"BTVenmoAppSwitchError","abstract":"\u003cp\u003eError codes associated with Venmo App Switch\u003c/p\u003e"},"Enums/BTVenmoError.html":{"name":"BTVenmoError","abstract":"\u003cp\u003eError codes associated with Venmo\u003c/p\u003e"},"Enums/BTVenmoLineItemKind.html":{"name":"BTVenmoLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTVenmoPaymentMethodUsage.html":{"name":"BTVenmoPaymentMethodUsage","abstract":"\u003cp\u003eUsage type for the tokenized Venmo account\u003c/p\u003e"},"Enums/BTPayPalMessagingColor.html":{"name":"BTPayPalMessagingColor","abstract":"\u003cp\u003eText and logo color option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingError.html":{"name":"BTPayPalMessagingError","abstract":"\u003cp\u003eError details associated with PayPal Messaging.\u003c/p\u003e"},"Enums/BTPayPalMessagingLogoType.html":{"name":"BTPayPalMessagingLogoType","abstract":"\u003cp\u003eLogo type option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingOfferType.html":{"name":"BTPayPalMessagingOfferType","abstract":"\u003cp\u003ePreferred message offer to display\u003c/p\u003e"},"Enums/BTPayPalMessagingPageType.html":{"name":"BTPayPalMessagingPageType","abstract":"\u003cp\u003eMessage location within an application\u003c/p\u003e"},"Enums/BTPayPalMessagingTextAlignment.html":{"name":"BTPayPalMessagingTextAlignment","abstract":"\u003cp\u003eText alignment option for a PayPal Message\u003c/p\u003e"},"Enums/BTShopperInsightsError.html":{"name":"BTShopperInsightsError"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC03apiE0AC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC28getRecommendedPaymentMethods7requestAA0dC6ResultVAA0dC7RequestV_tYaKF":{"name":"getRecommendedPaymentMethods(request:)","abstract":"\u003cp\u003eThis method confirms if the customer is a user of PayPal services using their email and phone number.\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC24sendPayPalPresentedEventyyF":{"name":"sendPayPalPresentedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendPayPalSelectedEventyyF":{"name":"sendPayPalSelectedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendVenmoPresentedEventyyF":{"name":"sendVenmoPresentedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC22sendVenmoSelectedEventyyF":{"name":"sendVenmoSelectedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTPayPalMessagingView/Representable.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC13RepresentableV9apiClient7request8delegateAE0A4Core11BTAPIClientC_AA0ecD7RequestVAA0ecD8Delegate_pSgtcfc":{"name":"init(apiClient:request:delegate:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP04makeC07context0C4TypeQzAA0cD7ContextVyxG_tF":{"name":"makeUIView(context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP06updateC0_7contexty0C4TypeQz_AA0cD7ContextVyxGtF":{"name":"updateUIView(_:context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC8delegateAA0ecD8Delegate_pSgvp":{"name":"delegate","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC9apiClientAC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC5startyyAA0ecD7RequestVF":{"name":"start(_:)","abstract":"\u003cp\u003eCreates a view to be displayed to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView/Representable.html":{"name":"Representable","abstract":"\u003cp\u003ePayPal Messaging for SwiftUI\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onClickyyAA0abdE0CF":{"name":"onClick(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onApplyyyAA0abdE0CF":{"name":"onApply(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onLoadingyyAA0abdE0CF":{"name":"onLoading(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onSuccessyyAA0abdE0CF":{"name":"onSuccess(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP7onError_5erroryAA0abdE0C_AA0abdI0OtF":{"name":"onError(_:error:)","parent_name":"BTPayPalMessagingView"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)profileID":{"name":"profileID","abstract":"\u003cp\u003eOptional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)vault":{"name":"vault","abstract":"\u003cp\u003eWhether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)paymentMethodUsage":{"name":"paymentMethodUsage","abstract":"\u003cp\u003eIf set to \u003ccode\u003e.multiUse\u003c/code\u003e, the Venmo payment will be authorized for future payments and can be vaulted.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerBillingAddress":{"name":"collectCustomerBillingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s billing address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerShippingAddress":{"name":"collectCustomerShippingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s shipping address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)isFinalAmount":{"name":"isFinalAmount","abstract":"\u003cp\u003eIndicates whether the purchase amount is the final amount.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)subTotalAmount":{"name":"subTotalAmount","abstract":"\u003cp\u003eOptional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)discountAmount":{"name":"discountAmount","abstract":"\u003cp\u003eOptional. The total discount amount applied on the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. The total tax amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)shippingAmount":{"name":"shippingAmount","abstract":"\u003cp\u003eOptional. The shipping amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)totalAmount":{"name":"totalAmount","abstract":"\u003cp\u003eOptional. The grand total amount on the transaction that should be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional. The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)fallbackToWeb":{"name":"fallbackToWeb","abstract":"\u003cp\u003eOptional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(im)initWithPaymentMethodUsage:":{"name":"init(paymentMethodUsage:)","abstract":"\u003cp\u003eInitialize a Venmo request with a payment method usage.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a BTVenmoLineItem\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)tokenizeWithVenmoRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/s:14BraintreeVenmo13BTVenmoClientC8tokenizeyAA0C12AccountNonceCAA0C7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)isVenmoAppInstalled":{"name":"isVenmoAppInstalled()","abstract":"\u003cp\u003eReturns true if the proper Venmo app is installed and configured correctly, returns false otherwise.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)openVenmoAppPageInAppStore":{"name":"openVenmoAppPageInAppStore()","abstract":"\u003cp\u003eSwitches to the App Store to download the Venmo application.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003eThe email associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)externalID":{"name":"externalID","abstract":"\u003cp\u003eThe external ID associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eThe first name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eThe last name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eThe phone number associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)username":{"name":"username","abstract":"\u003cp\u003eThe username associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe primary billing address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe primary shipping address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithUserAuthenticationEmail:enablePayPalAppSwitch:offerCredit:":{"name":"init(userAuthenticationEmail:enablePayPalAppSwitch:offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request for the PayPal App Switch flow\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithOfferCredit:userAuthenticationEmail:":{"name":"init(offerCredit:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)parametersWith:universalLink:":{"name":"parameters(with:universalLink:)","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(py)offerCredit":{"name":"offerCredit","abstract":"\u003cp\u003eOptional: Offers PayPal Credit if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(im)initWithOfferCredit:":{"name":"init(offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eDefaults to false. When set to true, the shipping address selector will be displayed.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressEditable":{"name":"isShippingAddressEditable","abstract":"\u003cp\u003eDefaults to false. Set to true to enable user editing of the shipping address.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)localeCode":{"name":"localeCode","abstract":"\u003cp\u003eOptional: A locale code to use for the transaction.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)shippingAddressOverride":{"name":"shippingAddressOverride","abstract":"\u003cp\u003eOptional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)landingPageType":{"name":"landingPageType","abstract":"\u003cp\u003eOptional: Landing page type. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional: The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)billingAgreementDescription":{"name":"billingAgreementDescription","abstract":"\u003cp\u003eOptional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)riskCorrelationID":{"name":"riskCorrelationID","abstract":"\u003cp\u003eOptional: A risk correlation ID created with Set Transaction Context on your server.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)imageURL":{"name":"imageURL","abstract":"\u003cp\u003eOptional: The URL to product image information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcCode":{"name":"upcCode","abstract":"\u003cp\u003eOptional: UPC code for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcType":{"name":"upcType","abstract":"\u003cp\u003eOptional: UPC type for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a PayPayLineItem\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)currency":{"name":"currency","abstract":"\u003cp\u003e3 letter currency code as defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)value":{"name":"value","abstract":"\u003cp\u003eAn amount defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e for the given currency.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)cardAmountImmutable":{"name":"cardAmountImmutable","abstract":"\u003cp\u003eIndicates whether the card amount is editable after payer\u0026rsquo;s acceptance on PayPal side.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)monthlyPayment":{"name":"monthlyPayment","abstract":"\u003cp\u003eEstimated amount per month that the customer will need to pay including fees and interest.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)payerAcceptance":{"name":"payerAcceptance","abstract":"\u003cp\u003eStatus of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)term":{"name":"term","abstract":"\u003cp\u003eLength of financing terms in months.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalCost":{"name":"totalCost","abstract":"\u003cp\u003eEstimated total payment amount including interest and fees the user will pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalInterest":{"name":"totalInterest","abstract":"\u003cp\u003eEstimated interest or fees amount the payer will have to pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:universalLink:":{"name":"init(apiClient:universalLink:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance for the PayPal App Switch flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC15CheckoutRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eUsed for a one-time payment.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)intent":{"name":"intent","abstract":"\u003cp\u003eOptional: Payment intent. Defaults to \u003ccode\u003e.authorize\u003c/code\u003e. Only applies to PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAction":{"name":"userAction","abstract":"\u003cp\u003eOptional: Changes the call-to-action in the PayPal Checkout flow. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)offerPayLater":{"name":"offerPayLater","abstract":"\u003cp\u003eOptional: Offers PayPal Pay Later if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e. Only available with PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)requestBillingAgreement":{"name":"requestBillingAgreement","abstract":"\u003cp\u003eOptional: If set to \u003ccode\u003etrue\u003c/code\u003e, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(im)initWithAmount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:":{"name":"init(amount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)creditFinancing":{"name":"creditFinancing","abstract":"\u003cp\u003eOptional. Credit financing details if the customer pays with PayPal Credit.","parent_name":"BTPayPalAccountNonce"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)acsTransactionID":{"name":"acsTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatus":{"name":"authenticationTransactionStatus","abstract":"\u003cp\u003eOn authentication, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatusReason":{"name":"authenticationTransactionStatusReason","abstract":"\u003cp\u003eOn authentication, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)cavv":{"name":"cavv","abstract":"\u003cp\u003eCardholder authentication verification value or \u0026ldquo;CAVV\u0026rdquo; is the main encrypted message issuers and card networks use to verify authentication has occured.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)dsTransactionID":{"name":"dsTransactionID","abstract":"\u003cp\u003eDirectory Server Transaction ID is an ID used by the card brand\u0026rsquo;s 3DS directory server.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)eciFlag":{"name":"eciFlag","abstract":"\u003cp\u003eThe ecommerce indicator flag indicates the outcome of the 3DS authentication.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)enrolled":{"name":"enrolled","abstract":"\u003cp\u003eIndicates whether a card is enrolled in a 3D Secure program or not. Possible values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShifted":{"name":"liabilityShifted","abstract":"\u003cp\u003eIf the 3D Secure liability shift has occurred.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShiftPossible":{"name":"liabilityShiftPossible","abstract":"\u003cp\u003eIf the 3D Secure liability shift is possible.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatus":{"name":"lookupTransactionStatus","abstract":"\u003cp\u003eOn lookup, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatusReason":{"name":"lookupTransactionStatusReason","abstract":"\u003cp\u003eOn lookup, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)paresStatus":{"name":"paresStatus","abstract":"\u003cp\u003eThe Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)status":{"name":"status","abstract":"\u003cp\u003eThe 3D Secure status value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureAuthenticationID":{"name":"threeDSecureAuthenticationID","abstract":"\u003cp\u003eUnique identifier assigned to the 3D Secure authentication performed for this transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureServerTransactionID":{"name":"threeDSecureServerTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the 3DS Server to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe 3DS version used in the authentication, example \u0026ldquo;1.0.2\u0026rdquo; or \u0026ldquo;2.1.0\u0026rdquo;.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)wasVerified":{"name":"wasVerified","abstract":"\u003cp\u003eIndicates if the 3D Secure lookup was performed.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)xid":{"name":"xid","abstract":"\u003cp\u003eTransaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message.","parent_name":"BTThreeDSecureInfo"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(py)card":{"name":"card","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e associated with this instance.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(im)initWithCard:":{"name":"init(card:)","abstract":"\u003cp\u003eInitialize a Card request with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardNetwork":{"name":"cardNetwork","abstract":"\u003cp\u003eThe card network.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eThe name of the cardholder, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastTwo":{"name":"lastTwo","abstract":"\u003cp\u003eThe last two digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastFour":{"name":"lastFour","abstract":"\u003cp\u003eThe last four digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)bin":{"name":"bin","abstract":"\u003cp\u003eThe BIN number of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)threeDSecureInfo":{"name":"threeDSecureInfo","abstract":"\u003cp\u003eThe 3D Secure info for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)authenticationInsight":{"name":"authenticationInsight","abstract":"\u003cp\u003eDetails about the regulatory environment and applicable customer authentication regulation for a potential transaction.","parent_name":"BTCardNonce"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a card client\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)tokenizeCard:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/s:13BraintreeCard12BTCardClientC8tokenizeyAA0C5NonceCAA0C0CYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)number":{"name":"number","abstract":"\u003cp\u003eThe card number\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month as a one or two-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year as a two or four-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cvv":{"name":"cvv","abstract":"\u003cp\u003eThe card verification code (like CVV or CID).\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eThe postal code associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eOptional: the cardholder\u0026rsquo;s name.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eOptional: first name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eOptional: last name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)company":{"name":"company","abstract":"\u003cp\u003eOptional: company name associated with the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional: the street address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional: the extended address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional: the city associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)region":{"name":"region","abstract":"\u003cp\u003eOptional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryName":{"name":"countryName","abstract":"\u003cp\u003eOptional: the country name associated with the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-2 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha3":{"name":"countryCodeAlpha3","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-3 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeNumeric":{"name":"countryCodeNumeric","abstract":"\u003cp\u003eOptional: The ISO 3166-1 numeric country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)shouldValidate":{"name":"shouldValidate","abstract":"\u003cp\u003eControls whether or not to return validations and/or verification results. By default, this is not enabled.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)authenticationInsightRequested":{"name":"authenticationInsightRequested","abstract":"\u003cp\u003eOptional: If authentication insight is requested. If this property is set to true, a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID\"\u003emerchantAccountID\u003c/a\u003e\u003c/code\u003e must be provided. Defaults to false.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The merchant account ID.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTAuthenticationInsight.html#/c:@M@BraintreeCard@objc(cs)BTAuthenticationInsight(py)regulationEnvironment":{"name":"regulationEnvironment","abstract":"\u003cp\u003eThe regulation environment for the associated nonce to help determine the need for 3D Secure.","parent_name":"BTAuthenticationInsight"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)toolbarCustomization":{"name":"toolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)labelCustomization":{"name":"labelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)textBoxCustomization":{"name":"textBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(im)setButtonCustomization:buttonType:":{"name":"setButton(_:buttonType:)","abstract":"\u003cp\u003eSet button customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)headerText":{"name":"headerText","abstract":"\u003cp\u003eText for the header.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)buttonText":{"name":"buttonText","abstract":"\u003cp\u003eText for the button. For example, “Cancel”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderWidth":{"name":"borderWidth","abstract":"\u003cp\u003eWidth (integer value) of the text box border.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderColor":{"name":"borderColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the text box corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextColor":{"name":"headingTextColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontName":{"name":"headingTextFontName","abstract":"\u003cp\u003eFont type for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontSize":{"name":"headingTextFontSize","abstract":"\u003cp\u003eFont size for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the button corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontName":{"name":"textFontName","abstract":"\u003cp\u003eFont type for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textColor":{"name":"textColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontSize":{"name":"textFontSize","abstract":"\u003cp\u003eFont size for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)tokenizedCard":{"name":"tokenizedCard","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCardNonce.html\"\u003eBTCardNonce\u003c/a\u003e\u003c/code\u003e resulting from the 3D Secure flow\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)lookup":{"name":"lookup","abstract":"\u003cp\u003eThe result of a 3D Secure lookup. Contains liability shift and challenge information.\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eThe error message when the 3D Secure flow is unsuccessful\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eA nonce to be verified by ThreeDSecure\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)customFields":{"name":"customFields","abstract":"\u003cp\u003eObject where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)accountType":{"name":"accountType","abstract":"\u003cp\u003eOptional. The account type selected by the cardholder\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eOptional. The billing address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)mobilePhoneNumber":{"name":"mobilePhoneNumber","abstract":"\u003cp\u003eOptional. The mobile phone number used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional. The email used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)shippingMethod":{"name":"shippingMethod","abstract":"\u003cp\u003eOptional. The shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)additionalInformation":{"name":"additionalInformation","abstract":"\u003cp\u003eOptional. The additional information used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)challengeRequested":{"name":"challengeRequested","abstract":"\u003cp\u003eOptional. If set to true, an authentication challenge will be forced if possible.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)exemptionRequested":{"name":"exemptionRequested","abstract":"\u003cp\u003eOptional. If set to true, an exemption to the authentication challenge will be requested.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)requestedExemptionType":{"name":"requestedExemptionType","abstract":"\u003cp\u003eOptional. The exemption type to be requested. If an exemption is requested and the exemption\u0026rsquo;s conditions are satisfied, then it will be applied.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)dataOnlyRequested":{"name":"dataOnlyRequested","abstract":"\u003cp\u003eOptional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallenge":{"name":"cardAddChallenge","abstract":"\u003cp\u003eOptional. An authentication created using this property should only be used for adding a payment method to the merchant\u0026rsquo;s vault and not for creating transactions.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallengeRequested":{"name":"cardAddChallengeRequested","abstract":"\u003cp\u003eOptional. An authentication created using this flag should only be used for vaulting operations (creation of customers\u0026rsquo; credit cards or payment methods) and not for creating transactions.","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)v2UICustomization":{"name":"v2UICustomization","abstract":"\u003cp\u003eOptional. UI Customization for 3DS2 challenge views.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)uiType":{"name":"uiType","abstract":"\u003cp\u003eOptional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)renderTypes":{"name":"renderTypes","abstract":"\u003cp\u003eOptional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)threeDSecureRequestDelegate":{"name":"threeDSecureRequestDelegate","abstract":"\u003cp\u003eA delegate for receiving information about the ThreeDSecure payment flow.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRenderType.html#/s:SY8rawValue03RawB0Qzvp":{"name":"rawValue","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/s:s9OptionSetP8rawValuex03RawD0Qz_tcfc":{"name":"init(rawValue:)","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)otp":{"name":"otp","abstract":"\u003cp\u003eOTP\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)html":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)singleSelect":{"name":"singleSelect","abstract":"\u003cp\u003eSingle select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)multiSelect":{"name":"multiSelect","abstract":"\u003cp\u003eMulti Select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)oob":{"name":"oob","abstract":"\u003cp\u003eOOB\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional. Given name associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional. Surname associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional. Line 1 of the Address (eg. number, street, etc)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional. Line 2 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)line3":{"name":"line3","abstract":"\u003cp\u003eOptional. Line 3 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional. City name\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eOptional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eOptional. Zip code or equivalent is usually required for countries that have them.","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional. 2 letter country code\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eOptional. The phone number associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)paReq":{"name":"paReq","abstract":"\u003cp\u003eThe \u0026ldquo;PAReq\u0026rdquo; or \u0026ldquo;Payment Authentication Request\u0026rdquo; is the encoded request message used to initiate authentication.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)md":{"name":"md","abstract":"\u003cp\u003eThe unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)acsURL":{"name":"acsURL","abstract":"\u003cp\u003eThe URL which the customer will be redirected to for a 3DS Interface.","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)termURL":{"name":"termURL","abstract":"\u003cp\u003eThe termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe full version string of the 3DS lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)isThreeDSecureVersion2":{"name":"isThreeDSecureVersion2","abstract":"\u003cp\u003eIndicates a 3DS 2 lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)transactionID":{"name":"transactionID","abstract":"\u003cp\u003eThis a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)requiresUserAuthentication":{"name":"requiresUserAuthentication","abstract":"\u003cp\u003eIndicates that a 3DS challenge is required.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new BTThreeDSecureClient instance.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts the 3DS flow using a BTThreeDSecureRequest.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completion:":{"name":"prepareLookup(_:completion:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completionHandler:":{"name":"prepareLookup(_:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completion:":{"name":"initializeChallenge(lookupResponse:request:completion:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completionHandler:":{"name":"initializeChallenge(lookupResponse:request:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eOptional. The shipping address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingMethodIndicator":{"name":"shippingMethodIndicator","abstract":"\u003cp\u003eOptional. The 2-digit string indicating the shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional. The 3-letter string representing the merchant product code\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryTimeframe":{"name":"deliveryTimeframe","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the delivery timeframe\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryEmail":{"name":"deliveryEmail","abstract":"\u003cp\u003eOptional. For electronic delivery, email address to which the merchandise was delivered\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)reorderIndicator":{"name":"reorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderIndicator":{"name":"preorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderDate":{"name":"preorderDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardAmount":{"name":"giftCardAmount","abstract":"\u003cp\u003eOptional. The purchase amount total for prepaid gift cards in major units\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCurrencyCode":{"name":"giftCardCurrencyCode","abstract":"\u003cp\u003eOptional. ISO 4217 currency code for the gift card purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCount":{"name":"giftCardCount","abstract":"\u003cp\u003eOptional. Total count of individual prepaid gift cards purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountAgeIndicator":{"name":"accountAgeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountCreateDate":{"name":"accountCreateDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeIndicator":{"name":"accountChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeDate":{"name":"accountChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeIndicator":{"name":"accountPwdChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeDate":{"name":"accountPwdChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageIndicator":{"name":"shippingAddressUsageIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating when the shipping address used for transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageDate":{"name":"shippingAddressUsageDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountDay":{"name":"transactionCountDay","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountYear":{"name":"transactionCountYear","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last year.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addCardAttempts":{"name":"addCardAttempts","abstract":"\u003cp\u003eOptional. Number of add card attempts in the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPurchases":{"name":"accountPurchases","abstract":"\u003cp\u003eOptional. Number of purchases with this cardholder account during the previous six months.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)fraudActivity":{"name":"fraudActivity","abstract":"\u003cp\u003eOptional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingNameIndicator":{"name":"shippingNameIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountIndicator":{"name":"paymentAccountIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountAge":{"name":"paymentAccountAge","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addressMatch":{"name":"addressMatch","abstract":"\u003cp\u003eOptional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountID":{"name":"accountID","abstract":"\u003cp\u003eOptional. Additional cardholder account information.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)ipAddress":{"name":"ipAddress","abstract":"\u003cp\u003eOptional. The IP address of the consumer. IPv4 and IPv6 are supported.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)orderDescription":{"name":"orderDescription","abstract":"\u003cp\u003eOptional. Brief description of items purchased.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)userAgent":{"name":"userAgent","abstract":"\u003cp\u003eOptional. The exact content of the HTTP user agent header.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)authenticationIndicator":{"name":"authenticationIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the type of authentication request.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)installment":{"name":"installment","abstract":"\u003cp\u003eOptional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)purchaseDate":{"name":"purchaseDate","abstract":"\u003cp\u003eOptional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringEnd":{"name":"recurringEnd","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringFrequency":{"name":"recurringFrequency","abstract":"\u003cp\u003eOptional. Integer value indicating the minimum number of days between recurring authorizations.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)sdkMaxTimeout":{"name":"sdkMaxTimeout","abstract":"\u003cp\u003eOptional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)workPhoneNumber":{"name":"workPhoneNumber","abstract":"\u003cp\u003eOptional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient Metadata ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe one-time use payment method nonce.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)payerID":{"name":"payerID","abstract":"\u003cp\u003ePayer ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)type":{"name":"type","abstract":"\u003cp\u003eThe type of the tokenized payment.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentType":{"name":"paymentType","abstract":"\u003cp\u003eThe type of payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentTypeCountryCode":{"name":"paymentTypeCountryCode","abstract":"\u003cp\u003eThe country code of the local payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)address":{"name":"address","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the local payment flow.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional: Payer email of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional: Given (first) name of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional: Surname (last name) of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)phone":{"name":"phone","abstract":"\u003cp\u003eOptional: Phone number of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eIndicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)bic":{"name":"bic","abstract":"\u003cp\u003eOptional: Bank Identification Code of the customer (specific to iDEAL transactions).\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)localPaymentFlowDelegate":{"name":"localPaymentFlowDelegate","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new \u003ccode\u003eBTLocalPaymentClient\u003c/code\u003e instance.\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completionHandler:":{"name":"startPaymentFlow(_:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)makePaymentRequest:":{"name":"makePaymentRequest(completion:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC18makePaymentRequestSo09PKPaymentH0CyYaKF":{"name":"makePaymentRequest()","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)tokenizeApplePayPayment:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC8tokenizeyAA0dC9CardNonceCSo9PKPaymentCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayCardNonce.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTApplePayCardNonce"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTDataCollector\u003c/code\u003e instance with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTAPIClient.html\"\u003eBTAPIClient\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)clientMetadataID:":{"name":"clientMetadataID(_:)","abstract":"\u003cp\u003eReturns a client metadata ID.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)collectDeviceData:":{"name":"collectDeviceData(_:)","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/s:22BraintreeDataCollector06BTDataC0C013collectDeviceB0SSyYaKF":{"name":"collectDeviceData()","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorCode":{"name":"errorCode","abstract":"\u003cp\u003eOptional. An error code when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eOptional. An error message when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)conversionRate":{"name":"conversionRate","abstract":"\u003cp\u003eOptional. The conversion rate associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyAmount":{"name":"currencyAmount","abstract":"\u003cp\u003eOptional. The currency amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyIsoCode":{"name":"currencyIsoCode","abstract":"\u003cp\u003eOptional. The currency ISO code associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)requestID":{"name":"requestID","abstract":"\u003cp\u003eOptional. The request ID used when fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsAmount":{"name":"rewardsAmount","abstract":"\u003cp\u003eOptional. The rewards amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsUnit":{"name":"rewardsUnit","abstract":"\u003cp\u003eOptional. The rewards unit associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an American Express client.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)getRewardsBalanceForNonce:currencyIsoCode:completion:":{"name":"getRewardsBalance(forNonce:currencyISOCode:completion:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/s:24BraintreeAmericanExpress010BTAmericanC6ClientC17getRewardsBalance8forNonce15currencyISOCodeAA0dcgH0CSS_SStYaKF":{"name":"getRewardsBalance(forNonce:currencyISOCode:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)accountHolderName":{"name":"accountHolderName","abstract":"\u003cp\u003eRequired. The account holder name.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)iban":{"name":"iban","abstract":"\u003cp\u003eRequired. The full IBAN.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eRequired. The customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eOptional. The \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e. If not set, defaults to \u003ccode\u003e.oneOff\u003c/code\u003e\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eRequired. The user\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional. A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)locale":{"name":"locale","abstract":"\u003cp\u003eOptional. A locale code to use for creating a mandate.","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC17accountHolderName4iban10customerID11mandateType14billingAddress015merchantAccountK06localeACSSSg_A2kA0dc7MandateM0OSg0A4Core08BTPostalO0CSgA2Ktcfc":{"name":"init(accountHolderName:iban:customerID:mandateType:billingAddress:merchantAccountID:locale:)","abstract":"\u003cp\u003eInitialize a new SEPA Direct Debit request.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)ibanLastFour":{"name":"ibanLastFour","abstract":"\u003cp\u003eThe IBAN last four characters.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eThe customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5NonceC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eThe \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a SEPA Direct Debit client.\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)tokenizeWithSEPADirectDebitRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC6ClientC8tokenizeyAA0dC5NonceCAA0dC7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTPayPalNativeVaultRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeVaultRequest(im)initWithOfferCredit:billingAgreementDescription:":{"name":"init(offerCredit:billingAgreementDescription:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalNativeVaultRequest"},"Classes/BTPayPalNativeCheckoutRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutRequest(im)initWithAmount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:":{"name":"init(amount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutRequest"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a PayPal Native client.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcdE7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcD12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)recipientName":{"name":"recipientName","abstract":"\u003cp\u003eOptional. Recipient name for shipping address.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eLine 1 of the Address (eg. number, street, etc).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional line 2 of the Address (eg. suite, apt #, etc.).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eCity name\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003e2 letter country code.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eZip code or equivalent is usually required for countries that have them.","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eEither a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(cpy)sharedParser":{"name":"shared","abstract":"\u003cp\u003eThe singleton instance\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(py)allTypes":{"name":"allTypes","abstract":"\u003cp\u003eAn array of the tokenization types currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)isTypeAvailable:":{"name":"isTypeAvailable(_:)","abstract":"\u003cp\u003eIndicates whether a tokenization type is currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)registerType:withParsingBlock:":{"name":"registerType(_:withParsingBlock:)","abstract":"\u003cp\u003eRegisters a parsing block for a tokenization type.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)parseJSON:withParsingBlockForType:":{"name":"parseJSON(_:withParsingBlockForType:)","abstract":"\u003cp\u003eParses tokenized payment information that has been serialized to JSON, and returns a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e object.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe payment method nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)type":{"name":"type","abstract":"\u003cp\u003eThe string identifying the type of the payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)isDefault":{"name":"isDefault","abstract":"\u003cp\u003eThe boolean indicating whether this is a default payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:":{"name":"init(nonce:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:":{"name":"init(nonce:type:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:isDefault:":{"name":"init(nonce:type:isDefault:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)prepaid":{"name":"prepaid","abstract":"\u003cp\u003eWhether the card is a prepaid card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)healthcare":{"name":"healthcare","abstract":"\u003cp\u003eWhether the card is a healthcare card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)debit":{"name":"debit","abstract":"\u003cp\u003eWhether the card is a debit card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)durbinRegulated":{"name":"durbinRegulated","abstract":"\u003cp\u003eA value indicating whether the issuing bank\u0026rsquo;s card range is regulated by the Durbin Amendment due to the bank\u0026rsquo;s assets. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)commercial":{"name":"commercial","abstract":"\u003cp\u003eWhether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)payroll":{"name":"payroll","abstract":"\u003cp\u003eWhether the card is a payroll card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)issuingBank":{"name":"issuingBank","abstract":"\u003cp\u003eThe bank that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)countryOfIssuance":{"name":"countryOfIssuance","abstract":"\u003cp\u003eThe country that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)productID":{"name":"productID","abstract":"\u003cp\u003eThe code for the product type of the card (e.g. \u003ccode\u003eD\u003c/code\u003e (Visa Signature Preferred), \u003ccode\u003eG\u003c/code\u003e (Visa Business)), if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(im)initWithJSON:":{"name":"init(json:)","abstract":"\u003cp\u003eCreate a \u003ccode\u003eBTBinData\u003c/code\u003e object from JSON.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(cpy)sharedInstance":{"name":"sharedInstance","abstract":"\u003cp\u003eSingleton for shared instance of \u003ccode\u003eBTAppContextSwitcher\u003c/code\u003e\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(py)returnURLScheme":{"name":"returnURLScheme","abstract":"\u003cp\u003eThe URL scheme to return to this app after switching to another app or opening a SFSafariViewController.","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURLContext:":{"name":"handleOpenURL(context:)","abstract":"\u003cp\u003eDetermine whether the return URL can be handled.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURL:":{"name":"handleOpen(_:)","abstract":"\u003cp\u003eComplete payment flow after returning from app or browser switch.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)registerAppContextSwitchClient:":{"name":"register(_:)","abstract":"\u003cp\u003eRegisters a class \u003ccode\u003eType\u003c/code\u003e that can handle a return from app context switch with a static method.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC13authorizationAA19ClientAuthorization_pvp":{"name":"authorization","abstract":"\u003cp\u003eThe TokenizationKey or ClientToken used to authorize the APIClient\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC8metadataAA16BTClientMetadataCvp":{"name":"metadata","abstract":"\u003cp\u003eClient metadata that is used for tracking the client session\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)initWithAuthorization:":{"name":"init(authorization:)","abstract":"\u003cp\u003eInitialize a new API client.\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:":{"name":"fetchPaymentMethodNonces(_:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:completion:":{"name":"fetchPaymentMethodNonces(_:completion:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html":{"name":"BTAPIClient","abstract":"\u003cp\u003eThis class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.\u003c/p\u003e"},"Classes/BTAppContextSwitcher.html":{"name":"BTAppContextSwitcher","abstract":"\u003cp\u003eHandles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.\u003c/p\u003e"},"Classes/BTBinData.html":{"name":"BTBinData","abstract":"\u003cp\u003eContains the bin data associated with a payment method\u003c/p\u003e"},"Classes/BTPaymentMethodNonce.html":{"name":"BTPaymentMethodNonce","abstract":"\u003cp\u003eBTPaymentMethodNonce is for generic tokenized payment information.\u003c/p\u003e"},"Classes/BTPaymentMethodNonceParser.html":{"name":"BTPaymentMethodNonceParser","abstract":"\u003cp\u003eA JSON parser that parses \u003ccode\u003eBTJSON\u003c/code\u003e into concrete \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e objects. It supports registration of parsers at runtime.\u003c/p\u003e"},"Classes/BTPostalAddress.html":{"name":"BTPostalAddress","abstract":"\u003cp\u003eGeneric postal address\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutAccountNonce.html":{"name":"BTPayPalNativeCheckoutAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutClient.html":{"name":"BTPayPalNativeCheckoutClient","abstract":"\u003cp\u003eClient used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutRequest.html":{"name":"BTPayPalNativeCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalNativeVaultRequest.html":{"name":"BTPayPalNativeVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTSEPADirectDebitClient.html":{"name":"BTSEPADirectDebitClient","abstract":"\u003cp\u003eUsed to integrate with SEPA Direct Debit.\u003c/p\u003e"},"Classes/BTSEPADirectDebitNonce.html":{"name":"BTSEPADirectDebitNonce","abstract":"\u003cp\u003eA payment method nonce representing a SEPA Direct Debit payment.\u003c/p\u003e"},"Classes/BTSEPADirectDebitRequest.html":{"name":"BTSEPADirectDebitRequest","abstract":"\u003cp\u003eParameters for creating a SEPA Direct Debit tokenization request.\u003c/p\u003e"},"Classes/BTAmericanExpressClient.html":{"name":"BTAmericanExpressClient","abstract":"\u003cp\u003e\u003ccode\u003eBTAmericanExpressClient\u003c/code\u003e enables you to look up the rewards balance of American Express cards.\u003c/p\u003e"},"Classes/BTAmericanExpressRewardsBalance.html":{"name":"BTAmericanExpressRewardsBalance","abstract":"\u003cp\u003eContains information about an American Express rewards balance.\u003c/p\u003e"},"Classes/BTDataCollector.html":{"name":"BTDataCollector","abstract":"\u003cp\u003eBraintree\u0026rsquo;s advanced fraud protection solution.\u003c/p\u003e"},"Classes/BTApplePayCardNonce.html":{"name":"BTApplePayCardNonce","abstract":"\u003cp\u003eContains information about a tokenized Apple Pay card.\u003c/p\u003e"},"Classes/BTApplePayClient.html":{"name":"BTApplePayClient","abstract":"\u003cp\u003eUsed to process Apple Pay payments\u003c/p\u003e"},"Classes/BTLocalPaymentClient.html":{"name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentRequest.html":{"name":"BTLocalPaymentRequest","abstract":"\u003cp\u003eUsed to initialize a local payment flow\u003c/p\u003e"},"Classes/BTLocalPaymentResult.html":{"name":"BTLocalPaymentResult"},"Classes/BTThreeDSecureAdditionalInformation.html":{"name":"BTThreeDSecureAdditionalInformation","abstract":"\u003cp\u003eAdditional information for a 3DS lookup. Used in 3DS 2.0+ flows.\u003c/p\u003e"},"Classes/BTThreeDSecureClient.html":{"name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureLookup.html":{"name":"BTThreeDSecureLookup","abstract":"\u003cp\u003eThe result of a 3DS lookup."},"Classes/BTThreeDSecurePostalAddress.html":{"name":"BTThreeDSecurePostalAddress","abstract":"\u003cp\u003ePostal address for 3D Secure flows\u003c/p\u003e"},"Classes/BTThreeDSecureRenderType.html":{"name":"BTThreeDSecureRenderType","abstract":"\u003cp\u003eRender types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Classes/BTThreeDSecureRequest.html":{"name":"BTThreeDSecureRequest","abstract":"\u003cp\u003eUsed to initialize a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureResult.html":{"name":"BTThreeDSecureResult","abstract":"\u003cp\u003eThe result of a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureV2BaseCustomization.html":{"name":"BTThreeDSecureV2BaseCustomization","abstract":"\u003cp\u003eBase customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ButtonCustomization.html":{"name":"BTThreeDSecureV2ButtonCustomization","abstract":"\u003cp\u003eButton customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2LabelCustomization.html":{"name":"BTThreeDSecureV2LabelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2TextBoxCustomization.html":{"name":"BTThreeDSecureV2TextBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ToolbarCustomization.html":{"name":"BTThreeDSecureV2ToolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2UICustomization.html":{"name":"BTThreeDSecureV2UICustomization","abstract":"\u003cp\u003eUI customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTAuthenticationInsight.html":{"name":"BTAuthenticationInsight","abstract":"\u003cp\u003eInformation pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.\u003c/p\u003e"},"Classes/BTCard.html":{"name":"BTCard","abstract":"\u003cp\u003eThe card tokenization request represents raw credit or debit card data provided by the customer."},"Classes/BTCardClient.html":{"name":"BTCardClient","abstract":"\u003cp\u003eUsed to process cards\u003c/p\u003e"},"Classes/BTCardNonce.html":{"name":"BTCardNonce","abstract":"\u003cp\u003eContains information about a tokenized card.\u003c/p\u003e"},"Classes/BTCardRequest.html":{"name":"BTCardRequest","abstract":"\u003cp\u003eContains information about a card to tokenize\u003c/p\u003e"},"Classes/BTThreeDSecureInfo.html":{"name":"BTThreeDSecureInfo","abstract":"\u003cp\u003eContains information about the 3D Secure status of a payment method\u003c/p\u003e"},"Classes/BTPayPalAccountNonce.html":{"name":"BTPayPalAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method\u003c/p\u003e"},"Classes/BTPayPalCheckoutRequest.html":{"name":"BTPayPalCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalClient.html":{"name":"BTPayPalClient"},"Classes/BTPayPalCreditFinancing.html":{"name":"BTPayPalCreditFinancing","abstract":"\u003cp\u003eContains information about a PayPal credit financing option\u003c/p\u003e"},"Classes/BTPayPalCreditFinancingAmount.html":{"name":"BTPayPalCreditFinancingAmount","abstract":"\u003cp\u003eContains information about a PayPal credit amount\u003c/p\u003e"},"Classes/BTPayPalLineItem.html":{"name":"BTPayPalLineItem","abstract":"\u003cp\u003eA PayPal line item to be displayed in the PayPal checkout flow.\u003c/p\u003e"},"Classes/BTPayPalRequest.html":{"name":"BTPayPalRequest","abstract":"\u003cp\u003eBase options for PayPal Checkout and PayPal Vault flows.\u003c/p\u003e"},"Classes/BTPayPalVaultBaseRequest.html":{"name":"BTPayPalVaultBaseRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTPayPalVaultRequest.html":{"name":"BTPayPalVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTVenmoAccountNonce.html":{"name":"BTVenmoAccountNonce","abstract":"\u003cp\u003eContains information about a Venmo Account payment method\u003c/p\u003e"},"Classes/BTVenmoClient.html":{"name":"BTVenmoClient","abstract":"\u003cp\u003eUsed to process Venmo payments\u003c/p\u003e"},"Classes/BTVenmoLineItem.html":{"name":"BTVenmoLineItem","abstract":"\u003cp\u003eA Venmo line item to be displayed in the Venmo Paysheet.\u003c/p\u003e"},"Classes/BTVenmoRequest.html":{"name":"BTVenmoRequest","abstract":"\u003cp\u003eA BTVenmoRequest specifies options that contribute to the Venmo flow\u003c/p\u003e"},"Classes/BTPayPalMessagingView.html":{"name":"BTPayPalMessagingView","abstract":"\u003cp\u003eUse \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e"},"Classes/BTShopperInsightsClient.html":{"name":"BTShopperInsightsClient","abstract":"\u003cp\u003eUse \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI."},"Classes.html":{"name":"Classes","abstract":"\u003cp\u003eThe following classes are available globally.\u003c/p\u003e"},"Enums.html":{"name":"Enumerations","abstract":"\u003cp\u003eThe following enumerations are available globally.\u003c/p\u003e"},"Extensions.html":{"name":"Extensions","abstract":"\u003cp\u003eThe following extensions are available globally.\u003c/p\u003e"},"Protocols.html":{"name":"Protocols","abstract":"\u003cp\u003eThe following protocols are available globally.\u003c/p\u003e"},"Structs.html":{"name":"Structures","abstract":"\u003cp\u003eThe following structures are available globally.\u003c/p\u003e"}} \ No newline at end of file diff --git a/6.23.1/undocumented.json b/6.23.1/undocumented.json new file mode 100644 index 0000000000..d7d84e6967 --- /dev/null +++ b/6.23.1/undocumented.json @@ -0,0 +1,6 @@ +{ + "warnings": [ + + ], + "source_directory": "/Users/runner/work/braintree_ios/braintree_ios" +} \ No newline at end of file diff --git a/current b/current index 206f848d32..b5ffb110b0 120000 --- a/current +++ b/current @@ -1 +1 @@ -6.23.0 \ No newline at end of file +6.23.1 \ No newline at end of file