Verihubs Logo
HomeBlogLiveness Detection for Philippine Apps: SDK Guide
8 min read•Liveness Detection•Published on April 18, 2026

Liveness Detection for Philippine Apps: SDK Guide

Liveness Detection for Philippine Apps: SDK Guide

Liveness detection checks that a selfie comes from a real, present person rather than a photo, a screen replay, a mask, or injected video. Philippine apps add it through an SDK that runs during selfie capture, either passively from a single frame or actively with prompts such as turning the head. Choose passive for low friction, add active steps for high-risk moments, and tune capture for the entry-level Android phones many Filipino users carry.

What Liveness Detection Does in eKYC

Face matching asks whether two faces look alike. Liveness, by contrast, asks whether the selfie was taken from a breathing person just now. Without that step, anyone holding a stolen card plus a picture of its owner can slip through face matching.

That is why, in a Philippine eKYC flow, liveness sits between ID capture and face comparison.

  1. ID capture and record check. First, the app reads the ID and confirms its details with official sources.
  2. Liveness. Next, the SDK rules out photos, replays, and masks during capture.
  3. Face comparison. Then the backend scores the verified selfie against the card photo.

The same check also protects later moments, such as a new device login or a large transfer. For the threat side, meanwhile, read how deepfake attacks target local apps.

Passive vs Active Liveness

Liveness comes in two styles. In fact, most mature apps use both, picking one or the other by risk.

AspectPassive livenessActive liveness
User actionNone beyond taking a selfieFollow prompts, such as turning the head or opening the mouth
TimeAbout as fast as a normal photoA few extra seconds
Drop-offLowestHigher, especially for older users
StrengthStrong against photos and many replaysAdds resistance to pre-recorded video
Best useStandard onboarding, routine step-upHigh-value accounts, repeated failures, suspicious sessions

A practical pattern is to start passive for everyone, then trigger an active check when risk rises. For example, ask for a head turn after a failed passive attempt, or before a transfer to a new recipient. Verihubs supports both: a passive liveness API that works from one image, and a web SDK that adds active prompts.

Spoofing Attacks It Stops: Photos, Replays, Masks, Deepfakes

Spoofing attacks stopped by liveness detection: printed photo, screen replay, mask, injected deepfake

Attackers escalate as defenses improve. So here is what a liveness check should catch.

AttackHow it worksWhat catches it
Printed photoA paper copy of the victim’s face held to the cameraTexture, depth, and reflection cues
Screen replayA photo or video of the victim played on another deviceMoire patterns, screen edges, and glare
MaskA 2D cut-out or 3D mask of the victim’s faceDepth and skin cues, plus active prompts
Injected videoA deepfake fed straight into the camera stream by malware or an emulatorDevice integrity signals and injection detection

Injection attacks deserve special attention, since they bypass the camera entirely. So a liveness SDK should also check the device itself. Verihubs’ VeriSecure SDK, for instance, pairs liveness and deepfake checks with detection of emulators, rooted devices, hooking tools, and traffic interception. Standards such as ISO/IEC 30107-3 describe how presentation attack detection is tested, which helps when comparing vendor claims.

SDK Integration for Android and iOS

Integrating a liveness SDK follows a similar path on every platform. First, confirm which native and web SDKs your provider offers, then plan these steps.

  1. Add the SDK. First, include the library in your Android or iOS project, or load the web SDK in your onboarding page.
  2. Request camera permission. Next, explain why you need the camera before the system prompt appears; otherwise many users tap “deny.”
  3. Launch the capture flow. Then start the SDK’s selfie screen, with on-screen guidance in English and Filipino.
  4. Receive the result. After capture, the SDK returns a result or a token for your backend.
  5. Verify on the server. Then your backend confirms the liveness result with the provider, never trusting the app’s word alone.
  6. Chain face matching. Finally, the backend compares the verified selfie with the ID portrait.

Server-side confirmation matters because a tampered app can fake a “pass” message. So treat the client result as a claim and the server check as the decision. When you are ready to evaluate a provider, Verihubs liveness and face recognition can be tested on your own app flow.

Tuning for Low-End Phones and Poor Lighting

Many Filipino users onboard with entry-level Android devices, often in dim rooms or bright sun. Therefore, tuning for real conditions matters more than lab accuracy.

ConditionProblemFix
Low-resolution front cameraFewer detail cues for the modelCapture at the highest available resolution; avoid digital zoom
Dim indoor lightNoise and blurDetect low light and ask users to face a window or lamp
Strong backlightFace appears darkPrompt users to turn so light falls on their face
Weak connectionUploads time outCompress carefully, retry automatically, and resume sessions
Older OS versionsSDK features unavailableCheck minimum versions and provide a web fallback

Also measure failure rates by device model and region. If one popular handset fails far more often, adjust guidance or thresholds for it rather than for everyone. Also give users one guided retry before routing them to review, since a single failed selfie is usually a lighting problem, not fraud.

Measuring Liveness Performance

Two error rates matter, and, unfortunately, they pull in opposite directions.

  • Attack acceptance: the share of spoof attempts that pass. Here, lower is safer.
  • Genuine rejection: the share of real users who fail. Likewise, lower means better conversion.

Tightening the check reduces attacks but rejects more real users, and loosening it does the opposite. So track both every week, alongside completion rate and time to complete. For background on independent face technology testing, see our article on NIST benchmarks.

Where to Use Liveness Beyond Onboarding

Many apps run liveness only at sign-up. However, fraud often arrives later, after an account already looks trusted. So consider these extra checkpoints.

MomentWhy it is riskySuggested check
New device loginScammers often take over accounts from their own phonesPassive liveness plus face match to the enrolled face
Phone number or email changeThe first step of many takeoversActive liveness
Large or first-time transferThe moment money actually leavesPassive liveness, with active as a fallback
Dormant account reactivationSold or rented accounts often wake up suddenlyActive liveness and a fresh record check
Account recoverySocial engineering targets recovery flowsLiveness plus face match before access is restored

These checks take seconds, yet they block scammers who obtained a customer’s login details, because the scammer cannot supply the customer’s live face. Our guide to account takeover describes how such attacks unfold, while our overview of biometric verification covers the wider toolkit.

Frequently Asked Questions

What is liveness detection?

In short, it proves that a real human took the selfie at that moment, rather than a photo, screen, mask, or injected video standing in for one.

How do passive and active liveness differ?

Passive liveness works from a normal selfie with no extra action. By contrast, the active style has users follow prompts, such as turning their head, which adds friction but also resistance to some attacks.

Do I need a native SDK, or is a web SDK enough?

A web SDK suits browser-based onboarding and quick launches. However, native SDKs usually give better camera control and device integrity checks inside mobile apps. Many teams use both.

Can liveness detection stop deepfakes?

It stops many, especially when combined with device integrity and injection detection. Deepfakes fed directly into the camera stream are the main reason those device checks matter.

Why might a real customer fail the check?

Typically, the causes are poor lighting, low-quality cameras, and unclear guidance. Better capture prompts and one guided retry fix most cases.

Prove Presence, Then Compare Faces

Liveness detection is what turns a selfie into evidence. For Philippine apps, start with passive checks for everyone, add active prompts and device integrity signals when risk rises, verify every result on your server, and tune for the phones your users actually own. Then face matching can do its job on a selfie you know is real.

Adding liveness to your onboarding or step-up flow? Test the Verihubs liveness SDK on real devices.

facebooktwitterlinkedinwhatsapp
Client Verihubs
Find out how accurate Verihubs Liveness Detection
Get FREE Trial
View Blog