Drop-in UI

Customizationanchor

Display a saved payment methodanchor

If you pass a customer_id when generating a client token, Drop-in will display that customer's saved payment methods and automatically add any newly-entered payment methods to their Vault record.

note

Apple Pay will not be automatically vaulted on the client.

Delete a saved payment methodanchor

If you authorize Drop-in using client tokens generated with customer_ids, you can also enable customers to remove saved payment methods from their Vault records. To support this functionality, enable Drop-in's Vault Manager:

  1. Swift
let request =  BTDropInRequest()
request.vaultManager = true

Drop-in will then display an edit button which launches the Vault Manager.

Drop-in ios payment deletion screenshot

important

We do not recommend enabling Vault Manager if you are using Braintree's recurring billing; doing so would give your customers the ability to delete payment methods associated with subscriptions.

Collect cardholder nameanchor

You can collect the cardholder name as part of the credit card form. This field can be marked as optional or required.

  1. Swift
let request =  BTDropInRequest()
request.cardholderNameSetting = .optional
// To make the field required
// request.cardholderNameSetting = .required

Premium Fraud Management Toolsanchor

To use Premium Fraud Management Tools for your Drop-in form, you'll need to complete these 3 steps at the same time:

  1. Enable Premium Fraud Management Tools in the Control Panel
  2. Update your client-side integration to collect device data
  3. Update your server-side integration to pass device data on transaction and verification requests

If there is any delay between enabling in the Control Panel and making the code changes, the integration will not work properly. See the Premium Fraud Management Tools guide for more details.

note

If you choose to automatically vault a customer's new payment method, verifications for those payment methods will not include device data when they are evaluated by our Premium Fraud Management Tools. Subsequent transactions can still pass device data.

Appearanceanchor

Dark theme

To customize the appearance of Drop-in, instantiate BTDropInUICustomization using the light, dark or dynamic color schemes, and then override additional properties as needed. The dynamic color scheme will switch between light and dark based on whether the device is in light or dark mode. The .dynamic scheme is only available in iOS 13+.

View the list of customizable properties.

Set your instance of BTDropInUICustomization on the BTDropInRequest.uiCustomization property.

  1. Swift
let uiCustomization = BTDropInUICustomization(colorScheme: .light)
uiCustomization.fontFamily = "Helvetica"
uiCustomization.boldFontFamily = "Helvetica Bold"

let dropInRequest = BTDropInRequest()
dropInRequest.uiCustomization = uiCustomization

You can also customize Drop-in to utilize your own dynamic colors using Apple's init(dynamicProvider: @escaping (UITraitCollection) -> UIColor).