Client-Side Implementation
Setup
Before you can add PayPal, you will need to:
- Create, verify, and link your PayPal account in the Braintree Control Panel
- Set up your Android SDK and obtain your client token
- Declare a URL scheme in your AndroidManifest
Using our Drop-in UI
Starting July 14, 2025 the Drop-in SDK will move to a deprecated status and we will no longer make any updates to this SDK. Processing will be supported for 1 year after the deprecation date, but you should upgrade immediately to avoid any disruption.
Starting July 14, 2026 the Drop-in SDK will move to an unsupported status and will no longer supported by Braintree developers or Braintree Support. Processing for unsupported SDKs can be suspended at any time.
Please migrate to the Braintree SDK to continue processing and receiving updates.
When using the Drop-in UI, a PayPal payment option will be shown alongside any other payment methods you've enabled.
For more details, see the Drop-in UI guide.
Using a Custom UI
You can optionally implement a custom button to start a PayPal flow.
Get the SDK
Add the following in your app-level build.gradle
:
- Kotlin
- Groovy
dependencies {
implementation("com.braintreepayments.api:paypal:4.49.1")
}
Initialization
Create a BraintreeClient
with a ClientTokenProvider
or Tokenization Key. Construct a PayPalClient
, and add a click listener to your button to initiate the PayPal flow. For a complete integration example, see the Vault or Checkout pages.
- Kotlin
- Java
class MyActivity : AppCompatActivity() {
private lateinit var braintreeClient: BraintreeClient
private lateinit var payPalClient: PayPalClient
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
braintreeClient = BraintreeClient(this, ExampleClientTokenProvider())
payPalClient = PayPalClient(this, braintreeClient)
}
private fun onPayPalButtonClick(view: View) {
// The PayPalRequest type will be based on integration type (Checkout vs. Vault)
payPalClient.tokenizePayPalAccount(this, payPalRequest)
}
}
Collecting additional data
There is additional data you can gather about your customers as they complete the payment process.
Next: Choose your integration
The rest of your configuration will be determined by how you'd like to use PayPal.
- Want a checkout from your cart or product page? Use One-Time Payments.
- Need a combination of features and Pay Later offers? Use Vaulted Payments.
- Want one-click payments for repeat customers? Have a subscription model? Use Recurring Payments.
See a detailed comparison of One-Time Payments, Vaulted Payments, and Recurring Payments.