|  FACEIO  |  Knowledge Sharing & Public Forums


Custom face recognition and security integration for my WordPress platform using the FACEIO API

Asked
Modified
Viewed 8046 times
9

Hi FACEIO Support Team,


I am building a custom security integration for my WordPress platform using the FACEIO infrastructure, and I need a quick architectural confirmation regarding a single master key workflow.



Our security protocol requires a manual onboarding flow:


1. Administrative Enrollment: The site administrator manually uploads a photo of a student's National ID or Passport card inside a secure backend dashboard.


2. Automated Face Extraction: We want the system to automatically extract and crop the face portrait from that document image using your built-in framework capabilities to avoid "multiple or no faces detected" errors caused by ID card text/borders.


3. Live Web-SDK Verification: Later, when the student accesses a protected page, the front-end camera interface initializes via the standard fio.js Web-SDK library to map their live webcam feed directly against the biometric vector template generated from that uploaded ID document.




Could you please officially confirm:

* Does our single Master REST API Secret Key / Public ID credential package automatically cover the backend automated document face extraction/cropping workflow (via your partnership/integration with PixLab endpoints), or do we need to register for a separate, independent PixLab account and billing plan?


* Is our approach of enrolling a student via a single backend document image file, and then authenticating them via the live front-end fio.authenticate() webcam loop, natively supported under your core 1:1 biometric matching architecture?




Thank you in advance!


✓ Accepted Solution

43

Hi Roberto,

Thank you for reaching out, and welcome to the FACEIO support center. To answer your questions:

  1. Use PixLab DOCSCAN on the backend

For the ID/passport processing workflow, use PixLab DOCSCAN on your backend with your PixLab API key.

DOCSCAN can process official identity documents and extract the relevant document data and portrait image:

https://pixlab.io/id-scan-api/

DOCSCAN documentation:

https://pixlab.io/id-scan-api/docscan

Despite FACEIO being part of PixLab, they do not share the same backend, so your FACEIO credentials do not automatically provide access to PixLab API endpoints. You will need a PixLab account and API key for the backend document-processing portion.

A recommended architecture is:

  • Your backend receives the student's ID/passport image.

  • Your backend sends it to PixLab DOCSCAN using your PixLab API key.

  • DOCSCAN extracts the document data and portrait.

  • FACEIO is then used on the frontend to enroll the student through the live camera using fio.enroll().

  • Subsequent logins are performed through fio.authenticate().

FACEIO Getting Started:

https://faceio.net/getting-started

FACEIO Integration Guide:

https://faceio.net/integration-guide

  1. FACEIO enrollment must use the live Web SDK flow

A stored ID/passport photograph cannot be used to silently create a FACEIO enrollment that can later be authenticated with fio.authenticate().

The student should complete the standard FACEIO enrollment through the frontend camera interface. After enrollment, FACEIO can authenticate that user during future sessions.

  1. Image storage

Neither FACEIO nor PixLab is intended to act as your image storage layer. Image processing is performed without keeping the submitted image data.

If you need to retain the passport image, extracted portrait, selfie, or other source images for your application workflow, you should securely store and manage those files within your own infrastructure.

  1. Alternative 1:1 verification workflow

If you do not want to enroll users through the FACEIO Web SDK, another option is to perform direct 1:1 face comparison through the FACEIO REST API.

For example, your backend can compare:

  • A previously saved selfie encoded as Base64

  • A passport or ID portrait encoded as Base64

This allows you to verify whether the two submitted images belong to the same person without using the standard fio.enroll() / fio.authenticate() flow.

You can find the FACEIO REST API documentation here:

https://faceio.net/rest-api

In summary, the cleanest architecture for your use case is:

PixLab DOCSCAN on the backend for ID document processing and portrait extraction, and FACEIO on the frontend for live enrollment and authentication.

Alternatively, use the FACEIO REST API for direct 1:1 comparison between two Base64-encoded face images.