Keep biometric work local
Capture fingerprints, create standards-based templates, enroll users, and verify or identify them on the user’s device by default.
Add fingerprint capture, enrollment, verification, and identification to web, desktop, and mobile apps through Connect Bridge. Call one consistent local HTTP API directly—or use an optional Connect SDK—while Connect Bridge handles the reader and native integration.
No platform-specific or language-specific application code.
Connect Bridge runs on the user’s device, turns local API requests into fingerprint operations, and returns consistent responses to your app. Licensing, policy, and optional cloud services remain separate from the core app-to-reader integration.
Capture fingerprints, create standards-based templates, enroll users, and verify or identify them on the user’s device by default.
Call the API from any HTTP-capable language, or use an optional Connect SDK for native ergonomics. Your application stays independent of reader-specific libraries.
Add authenticated sessions, signed licensing, policy controls, and auditability without changing the core integration.
SecuGen Connect combines policy controls, lifecycle automation, and auditable biometric workflows so platform, security, and revenue teams move in sync.
Set TTL, refresh windows, feature scope, and grace rules centrally. Ed25519/EdDSA-signed entitlements keep local runtime validation tamper-evident.
Issue, activate, suspend, and revoke seat entitlements with complete auditability across customer and operator accounts.
Rate limiting, brute-force defenses, and strict origin/session controls reduce attack surface without slowing delivery teams.
Standardized API contracts align enrollment, verification, and support processes across web, desktop, and service integrations.
Checkout, payment state, and entitlement activation stay synchronized so monetization and product access remain consistent.
Request/response telemetry and session events are retained in a compliance-aligned trail for incident response and governance reporting.
Connect Bridge turns supported SecuGen readers into one consistent loopback HTTP API. Integrate directly—or use an optional Connect SDK—without embedding device-specific SDK code in every application.
Access supported SecuGen readers through Connect Bridge. Platform packages provide the reader integration, so your application does not call driver APIs directly.
Capture and compare ANSI 378, ISO/IEC 19794-2, and SecuGen SG400 templates. Capture does not upload biometric data; your application controls storage and any network transfer.
Use SGDISC for bounded loopback discovery and REST/JSON for operations. Any stack that can call local HTTP can integrate, including JavaScript, .NET, Python, Go, Swift, and Kotlin.
Install the platform package on the device paired with or connected to the reader. It configures Connect Bridge as a local service; activate a license and allow your application origin when your deployment requires it.
Probe 127.0.0.1 ports 4499 through 4494 with SGDISC /v1/discover and verify the protocol marker. Reader capture stays local; licensing, update checks, and application-directed transfers are separate network activity.
Start a short-lived session, supply a unique one-time nonce, and call the capture and match endpoints. The hosted Connect demo shows local capture and 1:1 matching end-to-end.
Scan the bounded loopback range with the discovery verb, verify the protocol marker, then call the REST/JSON endpoints. Supply a one-time nonce issued by your application backend for each capture.
const loopbackPorts = [4499, 4498, 4497, 4496, 4495, 4494];
async function discoverBridge() {
for (const port of loopbackPorts) {
try {
const response = await fetch(
`http://127.0.0.1:${port}/v1/discover`,
{ method: 'SGDISC' }
);
if (!response.ok) continue;
const metadata = await response.json();
const expectedBase = `http://127.0.0.1:${port}`;
if (metadata.product === 'SecuGen Connect' &&
metadata.protocol === 'secugen-connect/1' &&
metadata.method === 'SGDISC' &&
metadata.baseUrl === expectedBase) return expectedBase;
} catch (_) { /* try the next bounded loopback port */ }
}
throw new Error('connect_bridge_not_found');
}
async function readJson(response) {
const body = await response.json();
if (!response.ok || body.ok === false) {
throw new Error(body.error || `http_${response.status}`);
}
return body;
}
// enrolledTemplate: { format: 'ISO19794_2', dataBase64: '...' }
async function captureAndMatch(serverNonce, enrolledTemplate) {
const base = await discoverBridge();
const health = await fetch(base + '/v1/health').then(readJson);
if (!health.ok) throw new Error('connect_bridge_not_ready');
const session = await fetch(base + '/v1/session/start', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ client: { name: 'my-app', version: '1.0.0' } })
}).then(readJson);
const capture = await fetch(base + '/v1/fingerprint/capture', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + session.sessionToken,
'Content-Type': 'application/json'
},
body: JSON.stringify({
nonce: serverNonce,
timeoutMs: 10000,
minQuality: 50,
templateFormat: 'ISO19794_2',
returnImage: false,
smartCapture: true,
blinkLed: true,
touchGate: true
})
}).then(readJson);
if (enrolledTemplate.format !== capture.templateFormat) {
throw new Error('template_format_mismatch');
}
return fetch(base + '/v1/match/score', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + session.sessionToken,
'Content-Type': 'application/json'
},
body: JSON.stringify({
template1: {
format: capture.templateFormat,
dataBase64: capture.templateBase64
},
template2: enrolledTemplate,
securityLevel: 5
})
}).then(readJson);
}
Teller workstations, branch kiosks, and customer onboarding on managed devices.
Patient check-in, clinician authentication, and medication-dispense verification.
Point-of-sale, clock-in, and loyalty sign-ups — anywhere a password is too much friction.
Field deployment without artifact guesswork. Every Connect Bridge runtime, SDK wrapper, and reference app is logged with its commit hash, size, and SHA256 checksum — ready for customer handoff across Windows, macOS, Linux, Android, and iOS.
Architecture, the local bridge HTTP contract, browser integration, native WebAPI compatibility, and SDK wrapper guidance for existing FDxSDK Pro / JSGFPLib applications. Each guide opens as a printable HTML page; the Print / Save PDF button uses your browser's print dialog so you can keep an offline copy.
Architecture overview, integration model, and a quick-start walkthrough. Read this first if you're new to SecuGen Connect.
The stable loopback HTTP API: endpoints, request and response schemas, authentication model, error codes, and versioning policy.
CORS preflight, Private Network Access, HTTP loopback, HTTPS fallback, and a recommended capture flow that degrades gracefully when the bridge is missing.
The Linux C API and Windows C# wrappers that let FDxSDK Pro applications target Connect with the same lifecycle and method names.
This site is currently in pre-release. We are still fine-tuning features, content, and pricing, so you might run into small issues while we finalize everything.