Client-Side Implementation

Collecting device dataAnchorIcon

BraintreeDataCollector enables you to collect data about a customer's device and correlate it with a session identifier on your server.

Get the SDKAnchorIcon

CocoaPodsAnchorIcon

Include Braintree/DataCollector in your Podfile:

  1. Ruby
# Podfile
pod 'Braintree/DataCollector'

Swift Package ManagerAnchorIcon

Include the BraintreeDataCollector framework.

CarthageAnchorIcon

Include the BraintreeDataCollector and PPRiskMagnes frameworks.

ImplementationAnchorIcon

BraintreeDataCollector collects data about a customer's device and returns a device_data string that contains one or more identifiers that correlate with the collected data. Collecting and passing this data with transactions helps reduce decline rates.

  1. Before making a request to your server, get the device data string by intializing a BTDataCollector instance and calling collectDeviceData.
  1. Swift
let apiClient = BTAPIClient("<TOKENIZATION_KEY_OR_CLIENT_TOKEN>")
let dataCollector = BTDataCollector(apiClient: apiClient)

dataCollector.collectDeviceData { deviceData, error in
    // print("Send this device data to your server: \(deviceData)")
}
  1. Send the device data string to your server along with transaction or verification data (e.g. Transaction.sale calls). Your server will include this device_data parameter when submitting the request to the Braintree gateway.

PayPalAnchorIcon

If you're accepting PayPal using the Vault flow, collecting device data via BraintreeDataCollector is required.

See also


    Next Page: Server-side