Installation
Add the Bridge to the Project
First, add the following snippet to your project root /.npmrc file (create the file if it doesn’t exist yet). This will inform your npm/yarn installation to search in the correct location for our packages.
@sensibill:registry=https://npm.pkg.github.comNow, add the bridge to your project using the dependency manager of your choice.
With Yarn:
yarn add @sensibill/reactnative-bridge-sdk@2025.0.1With Npm:
npm install --save @sensibill/reactnative-bridge-sdk@2025.0.1Configure Applications (Platform-Specific)
Once the bridge is added to the project, configure the iOS and Android applications, as explained below.
Adding Sensibill SDK and Bridge to the Application
Add the Sensibill SDK for iOS as a dependency to your project’s
Podfilein the following format:pod 'Sensibill', :git => 'git@github.com:getsensibill/sdk-ios.git', :tag => 'vX.Y.Z'where
vX.Y.Zcorresponds to the version of the SDK specified in thesensibill-reactnative-bridge-sdk.podspecfile.Run
pod installfrom the root directory of your application’s project in your terminal. This will add the Sensibill SDK for iOS, as well as the bridge to your project’s Pods.
Installation Validation
Open your application’s workspace in Xcode, and ensure that the
sensibill-reactnative-bridge-sdkis listed in theDevelopment Pods, andSensibillSDK is includes inPodssection of the Pods.Build the project using your regular method to ensure it compiles successfully.
Note: the sensibill-reactnative-bridge-sdk’s
podspecassumes that Sensibill SDK can be located at$(PODS_ROOT)/Sensibill/Sensibill/folder in your application. If this is not the case, the build will fail with the error: “Module ‘Sensibill’ was not found”. In such case, adjustFRAMEWORK_SEARCH_PATHSof the sensibill-reactnative-bridge-sdk to include a location where Sensibill SDK can be found. The location must be included either using a “recursively” flag, or using the.../Sensibill/Sensibill/**notation.
Adding Entitlements
When a user navigates to the Capture Receipt screen of the Sensibill SDK, the SDK will use device’s camera to capture receipts. In order to allow camera usage, your application must prompt the user for consent to use their device’s camera, and thus requires a Privacy - Camera Usage Description entitlement.
By default, the
enableImageGalleryfeature flag is set totrue, which allows the Sensibill SDK to select existing receipt images from the device’s photo gallery. To allow this functionality, add the Privacy - Photo Library Usage Description entitlement. Otherwise, set theenableImageGalleryfeature flag to false.If you plan to enable the
attachLocationDatafeature flag to attach the location where the receipts were taken, thePrivacy - Location When In Use Usage Descriptionentitlement is required. By default theattachLocationDataflag is disabled.Note: While the Sensibill SDK will ask for Camera and Photo Gallery permissions when they are required, the “Location When In Use” permission must be requested by your app prior to starting the Capture. See Reading Exif Data section of the Usage page for more information.
Some extra steps are required to install the Android component of the Bridge & SDK. Namely, that the main Native Sensibill SDK dependency must be properly resolved so it can be referenced by the bridge. The Android Sensibill SDK is hosted on Sensibill’s own Maven repository, so access to that repository must be given to the Android subproject so the dependency can be resolved.
Add Sensibill Maven
To add Sensibill’s Maven server to the list of android repositories, the below maven block must be added to the app’s repositories block of the appropriate build.gradle file.
Info
Reach out to Sensibill’s Support team in order to be provided valid credentials to access the Sensibill Maven artifacts.
// (1)
repositories {
// Other repositories...
maven {
url 'https://maven.pkg.github.com/getsensibill/sdk-android'
credentials {
username 'PROVIDED BY SENSIBILL'
password 'PROVIDED BY SENSIBILL'
}
}
}
// (2) or...
allprojects {
repositories {
// Other repositories...
maven {
url 'https://maven.pkg.github.com/getsensibill/sdk-android'
credentials {
username 'PROVIDED BY SENSIBILL'
password 'PROVIDED BY SENSIBILL'
}
}
}
}Depending on project setup, the appropriate build.gradle file is likely in one of two places:
IF you have two build.gradle files, one at /android/build.gradle and one at /android/app/build.gradle:
You’ll need to add the (2) block to the /android/build.gradle file.
- If the
allprojects.repositoriesblock already exists, add the abovemavenblock to it. - If the
allprojectsblock already exists, add the aboverepositoriesblock to it. - If the
allprojectsblock doesn’t exist, paste in exactly what is above in section(2).
IF you have one build.gradle file, existing at /android/build.gradle:
You’ll need to add the (1) block to the /android/build.gradle file.
- Find the top level
repositoriesblock (not the one in thebuildscriptblock). If it doesn’t exist, create one above the top leveldependenciesblock. - Paste the
mavenblock above to add the Sensibill Maven repository