Android SDK Version Matrix
Activation runs on top of the Paper Receipt SDK, and the two are released in lockstep: every Paper Receipt SDK release that supports Activation is built and verified against exactly one Activation SDK version. Use the pairs in the table below as they are; don't mix versions across rows.
Compatibility matrix
Versions are BOM versions: com.microblink.blinkreceipt:blinkreceipt-bom for the Paper Receipt SDK and com.actualplatform:activation-bom for the Activation SDK.
| Paper Receipt SDK | Activation SDK | AGP | compileSdk | minSdk | Release notes |
|---|---|---|---|---|---|
| 2.5.0 | 1.2.0 | 9.3.1 | 37 | 24 | 1.2.0 |
| 2.4.1 | 1.2.0 | 9.3.1 | 37 | 24 | 1.2.0 |
| 2.4.0 | 1.2.0 | 9.3.1 | 37 | 24 | 1.2.0 |
| 2.3.1 | 1.1.2 | 9.3.1 | 37 | 24 | 1.1.2 |
| 2.3.0 | 1.1.1 | 9.3.1 | 37 | 24 | 1.1.1 |
| 2.2.1 | 1.1.1 | 9.2.1 | 37 | 24 | 1.1.1 |
| 2.2.0 | 1.1.0 | 9.2.1 | 36 | 24 | 1.1.0 |
| 2.1.1 | 1.0.0 | 9.2.1 | 36 | 24 | 1.0.0 |
| 2.1.0 | 1.0.0 | 9.2.0 | 36 | 24 | 1.0.0 |
| 2.0.x | — | — | 36 | 23 | No Activation support |
How to read the columns:
- AGP (Android Gradle Plugin) is the version the pairing was built and verified with — the nearest version known to work. Start from it if you hit build or manifest-merge problems after an upgrade.
compileSdkis the minimum your app must compile against. Your app'stargetSdkis independent of it and does not need to change.minSdkis the lowest Android API level the pairing supports.
Each Paper Receipt SDK release is built and verified against the Activation SDK version in its row, and no other combination is tested or supported. When you upgrade one SDK, upgrade the other to the same row.
Declaring the dependencies
The Paper Receipt SDK does not bring the Activation SDK in transitively — declare both, each through its own BOM, at the versions from the same row:
dependencies {
// Paper Receipt SDK
implementation(platform("com.microblink.blinkreceipt:blinkreceipt-bom:2.5.0"))
implementation("com.microblink.blinkreceipt:blinkreceipt-recognizer")
implementation("com.microblink.blinkreceipt:blinkreceipt-camera-ui")
// Activation SDK
implementation(platform("com.actualplatform:activation-bom:1.2.0"))
implementation("com.actualplatform:activation")
}
Each BOM keeps every artifact of its SDK on one matching version, so you never declare individual module versions.
Upgrading across rows
Move one row at a time when you can, and read each Activation release's upgrade checklist on the way — every Activation release requires recompiling your app against it, and several contain breaking changes:
| Upgrade | What to read |
|---|---|
| To 2.5.0 / 1.2.0 | Paper Receipt 2.5.0 release notes — Activation stays on 1.2.0 |
| To 2.4.x / 1.2.0 | 1.2.0 release notes — Error Flows and per-scan sessions |
| To 2.3.1 / 1.1.2 | 1.1.2 release notes — TestOptions.Ads removed, new Rewards subtypes |
| To 2.2.1 or 2.3.0 / 1.1.1 | 1.1.1 release notes — compileSdk 37 required |
| To 2.2.0 / 1.1.0 | 1.1.0 release notes — reward-currency and theming rework |
See Prerequisites for the rest of the setup requirements.