Logo Lanfrica

Zidoun-Abdou/cordova-plugin-cortixia-kyc

Domain:

digital infrastructure

Record type:

software
Creator:
Zid
Host:
Algerian eKYC for Cordova / OutSystems O11: guided MRZ + NFC + liveness # cordova-plugin-cortixia-kyc Algerian eKYC for Cordova apps (incl. **OutSystems O11 Reactive**): guided **MRZ scan → NFC chip read → liveness**, with the same UX as the Cortixia Flutter SDK, returning one result object. The chip cannot be read from JavaScript — the native layer performs the eMRTD BAC/secure-messaging read (jMRTD on Android, NFCPassportReader on iOS) and posts the raw datagroups to the Cortixia server for decoding. All other calls (`init`, `mrz`, `liveness`, `events`) are the stable `/api/sdk/v1/*` REST API. ## Status - **Phase 0 (done):** plugin packaging + JS↔native bridge proven on Android (`ping`). Java (not Kotlin — see below). - **Phase 1 (done):** REST client + guided **MRZ** (`scanMrz`) + **liveness** (`checkLiveness`) on Android. - **Phase 2 (done):** Android **NFC chip read** (jMRTD BAC/SM, `readChip`) and the composed **`scanIdCard`** flow — MRZ → chip → liveness → one `KycResult`, with liveness matching the live face against the chip portrait. Device-verified on a Xiaomi with a real Algerian ID card; all three packs (`mrz`/`nfc`/ `liveness`) bill on the portal. See `docs/INTEGRATION.md`. - **Phase 3 (done):** **iOS** — MRZ (Vision), NFC eMRTD chip read (CoreNFC + in-plugin BAC/secure-messaging, CommonCrypto — no third-party library), and liveness (AVFoundation), with the same composed `scanIdCard`/`scanPassport` flow. Device-verified on an iPhone with a real Algerian ID card + passport; all three packs bill. iOS setup (paid team + NFC capability) is in `docs/INTEGRATION.md` §8. Both platforms, both documents (Algerian ID card + passport), full MRZ + NFC + liveness pack — device-verified end to end. **Integration guide:** `docs/INTEGRATION.md` (install, OutSystems import, JS API, iOS setup, billing, troubleshooting). ## Build notes (learned the hard way) - **Java 17+ required** (Cordova-android 15). Point `JAVA_HOME` at Android Studio's JBR; a system Java 11 fails at the Gradle step. - **Gradle must be on `PATH`** — Cordova does n …