Client SDKs
Flutter SDK
The sprint_check plugin runs BVN and NIN verification with photo capture, face detection and liveness checking. Supports Android, iOS, Web, Linux, macOS and Windows.
Install
dependencies:
sprint_check: ^0.1.8flutter pub getOn Android, add camera and storage permissions to android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />Initialize & verify
Create the plugin and initialize it with your keys — typically in initState — then call checkout() with a BuildContext, the method, and the customer's identifier.
import 'package:sprint_check/sprint_check.dart';
final SprintCheck plugin = SprintCheck();
@override
void initState() {
super.initState();
plugin.initialize(
apiKey: sprintCheckApiKey,
encryptionKey: sprintCheckEncryptionKey,
);
}
Future<void> verifyBvn() async {
final CheckoutResponse response = await plugin.checkout(
context,
CheckoutMethod.bvn, // or CheckoutMethod.nin
'user@example.com', // identifier for this customer
bvn: '12345678901', // optional: skips the number input UI
);
if (response.status && response.verify) {
print('Verified: ${response.message} (score ${response.score})');
}
}CheckoutResponse includes message, reference, status, verify, a masked name and bvn/nin, and the confidence score.
The SDK needs your
api_key and encryption_key — both are under Developers in your dashboard. Every completed verification also lands on your webhook and in your dashboard's verification history.