- Throw IOException in the SmileIDResult.Error class
- Fixed document back file returned as null in the results for DocV and Enhanced DocV
- Introduce screens for the new Enhanced Selfie Capture Enrollment and Authentication Products.
- Fixed inconsistent document type parameters on sample app
- Fixed extraPartnerParams serialization issues
- Modify access for document capture and selfie capture
- Allow skipApiSubmission for both document capture and selfie capture flows to allow for capture and return of file paths without submitting the job to SmileID
- Fix the camera is closed bug on document capture flow
- Enhanced doc v submitted as doc v
- Correct flow for selfie when showInstructions is false
- Bump up the compileSdk to 35
- Add skipApiSubmission when true will capture smartselfie and return file paths for selfie and liveness images without submitting the job to SmilID
- Added inflow navigation as well as individual navigation for compose screens
- Document capture throw OOM when encountered
- Fix insecure object serialization on fragments
- Changed
initialize()
to return a deferred result (allow partners to handle errors) - Update to Compose Fragment and remove ComposeView
- Fixed upload bug to retry in case a job already exists but zip was not uploaded
- Changed MLKit download modules to throw an exception explicitly if download fails
- Make document captured image confirmation to be optional
- Fixed a bug where prep upload would not work for previously attempted API requests
- Job status history full data parsing causing a crash during polling
- Removed
SmileID.setEnvironment()
since the API Keys are no longer shared between environments
- Handle invalid resource IDs
- Fix fileSavePath not initialized error (missing smile_config.json file)
- Add missing ActionResult responses
- Fixed a bug where the
BiometricKycViewModel
would succeed but use the default error message as it was not being updated when changing state - Fixed a bug where
SmileID.submitJob
would not work for previously attempted API requests
- Wrap Composables in a
Surface
for additional background color customization - Add metadata support
- Added an optional "Strict Mode" to SmartSelfie Enrollment and Authentication to achieve better
pass rates. Set
useStrictMode=true
to enable this new, streamlined UI and associated active liveness tasks
- Fixed a bug where some failed authentication requests were incorrectly handled
- Fixed a bug where errors with no code were not being handled correctly
- Fixed a bug on Selfie and Document capture success screen where the message was wrong
- Fixed a bug where liveness files were missing on document verification jobs
- Update generic errors with actual platform errors
- Fixed a bug where MLKit initialization would sometimes fail due to Application Context
- Verify SDK for Google Play SDK Console
- Increase network call timeout to 120 seconds
- Fixed a bug where invalid file paths were returned and retries did not work
- Update to K2 (aka Kotlin
2.0.0
) - Update Compose BOM to 2024.05.00
- Update AndroidX to 1.13.1
- Update Activity to 1.9.0
- Update Fragment to 1.7.1
- Update Datastore to 1.1.1
- Update Sentry to 7.9.0
- Better error message when the device is low on storage
- Fixed a bug where Gallery selection of document images did not work in some cases
- Fixed a bug where Document Capture would occasionally fail
- Optimize Bitmap processing for less memory usage and improved quality
- Fixed a bug where Document Verification would get stuck on the processing screen
- Added an Offline Mode, enabled by calling
SmileID.setAllowOfflineMode(true)
. If a job is attempted while the device is offline, and offline mode has been enabled, the UI will complete successfully and the job can be submitted at a later time by callingSmileID.submitJob(jobId)
- Improved SmartSelfie Enrollment and Authentication times by moving to a synchronous API endpoint
- Made
KEY_RESULT
constants inFragment
sinternal
to remove a footgun where the constant was easily confused withKEY_REQUEST
- Improved back button behavior on image confirmation and processing dialogs
- Fixed a bug where network retries would occasionally fail
- Bump Compose BOM to 2024.04.00
- Bump CameraX to 1.3.0
- Removed
cameraConfig
fromPrepUploadResponse
- Fixed a bug where, in some cases, logs may not be printed
- Removed the Skip Button from Back of ID Capture
- Added
instructionsHeroImage
as a new parameter toDocumentCaptureScreen
- Added
heroImage
as a new parameter toDocumentCaptureInstructionsScreen
- Updated Document Verification hero images
- Exposed individual components as Composables
- Fixed missing
allowNewEnroll
in Document Verification Fragment
- Added
allowNewEnroll
on SmartSelfie, BiometricKYC, DocV and EnhancedDocV
- Marked
kotlinx-collections-immutable
as anapi
dependency
- Made
code
nullable onSmileIDException.Details
- Bump Kotlin to 1.9.21
- Bump Sentry to 7.0.0
- Removed
model_parameters
fromPrepUploadRequest
- Added missing
showInstructions
on some Composables - Added missing proguard rule and updated consumer rules
- Added missing parameters on Fragments
- Fixed crash when duplicate images are attempted to be zipped
- Fixed a bug where some attributes passed in were not respected
- Fixed a bug when attempting to parcelize
SmileIDException
- Bump Kotlin to 1.9.20
- Bump Compose BOM to 2023.10.01
- Bump AndroidX Activity to 1.8.1
- Bump AndroidX Fragment to 1.6.2
- Bump AndroidX Navigation to 2.7.5
- Bump Sentry to 6.33.1
- Bump Coil to 2.5.0
- Changed the OKHTTP call timeout to 60 seconds
- Rename
partnerParams
toextraPartnerParams
- Added
extras
as optional params on all job types - Added
allowAgentMode
option on Document Verification and Enhanced Document Verification
- Fixed a bug where the document preview showed a black box for some older devices
- Fixed retry document submission on failed document submission
- Fixed missing
entered
key in BiometricKYC
- Added
jobId
onSmartSelfieEnrollmentFragment
andSmartSelfieAuthenticationFragment
- Added
showInstructions
onSmartSelfieEnrollmentFragment
- Fix bug where
showAttirubtion
was not respected on the Consent Denied screen
- Increased selfie capture resolution to 640px
- Bump Sentry to 6.32.0
- Bump OkHttp to 4.12.0
- Added missing
colorScheme
andtypography
parameters onSmileID.BvnConsentScreen
- Added option to set callback URL using
setCallbackUrl(callbackUrl: URL?)
method - Added EnhancedDocumentVerification support
- Added Modifier parameter to all Composables
- Updated KDocs with missing parameter descriptions
- Fix Broken Country Selection on EnhancedKYC and BiometricKYC
- Update Window Insets to avoid content being drawn under system insets
- Show the normal consent screen as part of BVN Verification
- The parameters of BvnConsentScreen have been updated to support inclusion of the consent screen
- Bump Compose BOM to 2023.09.02
- Bump AGP to 8.1.2
- Bump Sentry to 6.30.0
- Global Document Verification support
- BVN Consent Screen
- Dependency on
org.jetbrains.kotlinx:kotlinx-collections-immutable
- Expose Compose Material 3 as an
api
dependency - A bug where all results were being parsed to
JobResult.Entry
- Made
*Result
classes JSON serializable - Renamed
DocVJobStatusResponse
toDocumentVerificationJobStatusResponse
- Renamed
getDocVJobStatus
togetDocumentVerificationJobStatus
- Renamed
pollDocVJobStatus
topollDocumentVerificationJobStatus
- New sealed interface hierarchy for JobResult
- Renamed
DocVEntry
toDocumentVerificationJobResult.Entry
- Renamed
JobResult.Entry
toSmartSelfieJobResult.Entry
- Renamed
BiometricKycEntry
toBiometricKycJobResult.Entry
JobResult.Entry
is now an interface for all job types
- Renamed
- Bump Sentry to 6.29.0
- Bump Compose BOM to 2023.09.01
- Bump AndroidX Core to 1.12.0
- Bump AndroidX Lifecycle to 2.6.2
- Bump AndroidX Navigation to 2.7.2
- Removed
Document
model, so you now passcountryCode
anddocumentType
as separate params inSmileID.DocumentVerification
filename
property fromPrepUploadRequest
, as it is no longer required
- Detection of bad lighting for Document Verification
- Detection of unfocused states for Document Verification
- Document detection for Document Verification
- Fix a Document Verification bug where selfie wasn't captured when also capturing the back of an ID
- Fixed a bug where the document bounding box border was slightly offset from document cutout
- Fixed a bug where the wrong
ImageType
was being specified for back of ID images
resultCode
s,code
s, andBankCode.code
s are all nowString
s in order to maintain leading 0s- Include liveness images for Document Verification jobs, if selfie capture was not bypassed
- Slightly zoom in on the document capture preview and confirmation
- Kotlin 1.9.10
- Bump Compose BOM to 2023.08.00
- Bump CameraX to 1.2.3
- Bump AndroidX Navigation to 2.7.1
- Added OkHttp as an
api
dependency - Updated
LoadingButton
visibility modifier
- Switch from Java 17 to Java 11 to support Flutter
- Allow passing in a custom
Config
instance toSmileID.initialize
- Bump coroutines to 1.7.3
- Bump Sentry to 6.28.0
- Bump AndroidX Fragment to 1.6.1
- Add helper functions which return a Flow of the latest JobStatus for a Job until it is complete
- Add a
JobStatusResponse
interface - Enhanced KYC Async API endpoint
- Fixed a bug where
id_info
was not included in Document Verification network requests
- Kotlin 1.9
- Updated API key exception error message to be actionable
SmileID.useSandbox
getter is now publicly accessible- Bump Sentry to 6.25.2
- Removed polling from SmartSelfie Authentication, Document Verification, and Biometric KYC. The
returned
SmileIDResult
s will now contain only the immediate result of job status without waiting for job completion
- Biometric KYC Fragment
- Made IdInfo Parcelable
- Option to disable Instructions Screen on Document Verification and SmartSelfie™
- Smile ID Attribution
- Fixed bug where Document Captures were incorrectly cropped
- Marked
selfieFile
as a required field in the returnedDocumentVerificationResult
- Updated KDocs
- Rename
ImageType
enums to indicate PNGs are no longer supported - Bump Gradle to 8.2.1
- Bump Coroutines to 1.7.2
- Bump Sentry to 6.25.0
- Biometric KYC
- Document Verification
- Debounce Selfie Capture directive changes to allow user time to read the directions
- Set Release property on Sentry for release tracking
- Products Config API call
- Services API call
- Fix crash on network retries
- Don't report IDE Jetpack Compose Preview crashes to Sentry
- Breaking: Renamed SmartSelfie Registration to SmartSelfie Enrollment
- Breaking: Removed "Screen" suffix from SmartSelfie Composables
- Tweak selfie progress indicator animation
- Minor update to default colours to add contrast
- Submit colour liveness images instead of greyscale
- Update SmartSelfie™ directives copy to be more succinct
- Changed the order of arguments in Composables to ensure required arguments come first and so that Modifier is the first optional argument
- Compile against API level 34
- Bump Gradle to 8.0.2
- Bump Kotlin to 1.8.22
- Bump AndroidX Activity to 1.7.2
- Bump AndroidX Fragment to 1.6.0
- Bump Compose BOM to 2023.06.01
- Bump Camposer to 0.2.2
- Bump Sentry to 6.24
- Add Biometric KYC data models
- Initial Document Verification screens
- Only allow a single face to be in frame for a SmartSelfie™ capture
- Bump Sentry to 6.21.0
- Initial Release
- SmartSelfie™ Authentication and Registration
- Enhanced KYC
- Theming
- Networking