Code Samples for Web Integrations

Core-module integrations

The following examples refer to the Incode core modules: ID Validation and Face Match

Code SampleGuide / TutorialCode Sample Repository
Vanilla JavascriptHow-to use Web SDKonboarding-core-javascript
React JS (Clean)onboarding-core-react
Next.jsNextJs Integration Guideonboarding-core-nextjs

Extended integrations

The following examples refer to the Incode core modules: Desktop-to-mobile redirection, Device fingerprint, User consent, ID Validation, and Face Match

Code SampleGuide / TutorialCode Sample Repository
Extended Onboarding Example in React using TypescriptGuideonboarding-extended-react
Extended Onboarding Example in Vanilla Javascriptonboarding-extended-javascript

Web Authentication

Code SampleGuide / TutorialCode Sample Repository
Vanilla JS Web AuthenticationFace Authenticationauthentication-javascript

Low-Code integrations

Code SampleGuide / TutorialCode Sample Repository
Redirect and BackRedirect and Backonboarding-lowcode-redirect
Embedded IframeEmbedded Iframeonboarding-lowcode-iframe

Backend Sample Server

All our frontend samples require a working backend that will communicate directly with Incode's API; for that, we have created a Backend Sample Server that goes along with the frontend samples; this sample has endpoints used in one or more types of integrations.

Backend Server in NodeJS

Considerations

Use HTTPS for local development

The sample server exposes itself in thehttp://localhost:3000/ this means it wont directly work for you during development.

You will need to be able to access it from your phone in the local network that means stricter CORS rules will be applied (browsers relax CORS rules when pointing to localhost, but apply them fully when pointing to an IP), It also means that you will be required to access it trough HTTPS.

Most of our samples are created with Vite and configured to proxy http\://localhost:3000/ into https://your-local.ip/api this way samples don't hit into CORS issues when running locally.

For the ones that doesn't implement that, you will need to expose the backend server using something like Ngrok