Client-side Connect Flow
AvailabilityBraintree Auth is in closed beta. Contact us to express interest.
Important
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+ Android SDK to version 4.45.0+ or version 5.0.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.
The following Connect flow will guide merchants through authorization in your Android mobile app without exposing your clientSecret:
- The merchant taps the Connect with Braintree button in your app
- Your app sends the merchant to Braintree for authorization using an
Intentand theconnect_urlsupplied by your server. - Once the merchant has authorized, Braintree redirects them to the
redirect_urispecified by theconnect_url. - Your server performs the OAuth exchange.
- Your server redirects the merchant to a URL that is captured by an
IntentFilterin your mobile app.
Button
- Download the connect-braintree-android assets.
- Add them to your project's
resfolder. - Display the Connect with Braintree button in an
ImageButtonor similar element in your view:
- Swift
<ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/btn_bt_connect_normal" android:background="@android:color/transparent" android:id="@+id/connect" android:layout_marginTop="128dp" />Intent filters
Add the following to your app's manifest.xml:
- Swift
<activity android:name="com.my.example.app.MyActivity" android:launchMode="singleTask" android:exported="true"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="https://" android:host="example.com" android:path="/merchant-connected" /> </intent-filter> </activity>Note Future versions of the Android SDK will require you to verify your app's Intent Filters.
Intent
When a merchant taps the Connect button, your mobile app should send them to Braintree using an Intent and the connect_url from your server:
After authorizing, your server will redirect your merchant back to the /merchant-connected path, which will be picked up by your mobile app's IntentFilter and launch the activity that you configured in your app's manifest.xml earlier.