Shopper Insights (Beta)
Shopper Insights is currently only available for merchants using iOS v6+ and Android v4+ of the SDK. It is not currently available for merchants using the Javascript or Drop-in SDK.
The SSL certificates for Braintree Mobile (iOS and Android) SDKs are set to expire on March 30, 2026. This will impact existing versions of the SDK in published versions of your app. To reduce the impact, upgrade the iOS SDK to version 6.17.0+ for the new SSL certifications.
If you do not decommission your app versions that include the older SDK versions or force upgrade your app with the updated certificates by the expiration date, 100% of your customer traffic will fail.
Overview
Use Shopper Insights
to optimize your checkout experience by prioritizing the
customer’s preferred payment methods in your UI. Customizing the checkout experience can improve
conversion, increase repeat buys and boost user retention.
Integration
The getRecommendedPaymentMethods
method returns PayPal or Venmo as recommended payment
using their email.
Before using this method, obtain consent from the customer to share this information with PayPal services.
Presentment of PayPal Checkout You agree to confirm your customer’s PayPal network payment eligibility before any other payment method. When PayPal network eligibility is confirmed, preferential placement should be given to the recommended payment method(s) on any page offering payment options. Also, if available, the recommended payment method(s) should be preselected. If PayPal network payment eligibility cannot be confirmed, PayPal should be positioned at least at parity with other payment methods.
You must use a Client Token to initialize the SDK. This feature is not supported with Tokenization Keys.
- Swift
let apiClient = BTAPIClient(authorization: “CLIENT_TOKEN”)
let shopperInsightsClient = BTShopperInsightsClient(apiClient: apiClient)
let shopperInsightsRequest = BTShopperInsightsRequest(email: “fake-email@email.com”)
do {
let result = try await shopperInsightsClient.getRecommendedPaymentMethods(request: shopperInsightsRequest)
if result.isPayPalRecommended {
// PayPal was recommended
} else if result.isVenmoRecommended {
// Venmo was recommended
}
} catch {
// handle error
}