Guides • Accept Payments
Get started
doc

Get started with the Revolut Reader SDK for iOS

Welcome to the guide on how to get started with the Revolut Reader SDK for iOS. This SDK is designed to facilitate seamless integration of the Revolut Reader into your iOS applications, enabling efficient card payment processing.

Requirements

  • iOS version: iOS 13+ or iPadOS 13+
  • Device: Must be run on a physical device as Bluetooth doesn't work on virtual devices
  • Location permission: The SDK requires location permission to scan and connect to Bluetooth devices properly
  • Revolut Reader: You need to obtain a Revolut Reader device to connect to your app

1. Registration

Before using the SDK, you need to create an account on the Revolut Developer Portal.

  1. Open the Revolut Developer Portal and register an account on our partner program.
  2. Create an application with terminal SDK scope.
  3. Set the redirect URL to handle the verification code.

2. Install the Revolut Reader SDK for iOS

Drag and drop the binary frameworks from the RevolutCardReader folder into your Xcode project:

RevolutCardReader.xcframework
UCube.xcframework
...

3. Set up your Xcode project

You need to set up several configurations in your Xcode project to use the Revolut Card Reader SDK.

3.1 Add background mode in Signing & capabilities

Enable the use of bluetooth LE accessories, by adding:

<key>UIBackgroundModes</key>
<array>
<string>bluetooth-central</string>
</array>

3.2 Add keys to Info.plist file

Include the following keys for bluetooth usage descriptions in your Info.plist file:

<dict>
...
<key>NSBluetoothAlwaysUsageDescription</key>
<string>Revolut uses Bluetooth to communicate with printers, and credit card readers</string>
<key>NSBluetoothPeripheralUsageDescription</key>
<string>Revolut uses Bluetooth to communicate with printers, and credit card readers</string>
...
</dict>
note

The texts for the keys will be displayed when iOS prompts the user for permissions to access bluetooth capabilities. You can customize these texts to align with your app's requirements.

Was this page helpful?