<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/1e47ff86-f2e4-4455-a921-e047cdf6846c/07532275-72a5-4500-938b-6d77994e18ea/1010520-200.png" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/1e47ff86-f2e4-4455-a921-e047cdf6846c/07532275-72a5-4500-938b-6d77994e18ea/1010520-200.png" width="40px" /> Table of contents

Documents scanning and identity verification

# Question Answer Summary
1 What is the process of residence permit recognition? Do we use OCR via KBY-AI API?
It’s not in the list of supported documents (only passport, id and driving license) https://docs.kby-ai.com/help/product/id-card-sdk/supported-documents we will train the model for ID cards that are not in the system:

For example, even if something like Macao isn’t supported - we still display the ID card option - two attempts errors - then manual entry

Pangea: WE SUPPORT THE THINGS THAT THIRD-Party services support, so we show error if we don’t support something

  1. By default we support all doc types that are supported by KBY-AI
  2. If user tries to upload not supported document type:
  1. Client should be able to edit collected information (not the highest priority item, but should be included into product backlog)
  2. Client should be able to contact partner’s customer support to get the help immediately in case they have some issues with recognition
  1. That should be possible to submit additional docs (not the highest priority item, should be brainstormed) | | 2 | How do we ensure the data are correctly retrieved? Will we give an opportunity to our clients to review and confirm data? What about data editing? | - Businesses can etiher enable manual entry to their end customer or not

Pangea: NO MANUAL EDITS ARE NEEDED (WE ARE RELYING ON THIRD-PARTY) - | 1. Client should be able to edit collected information (not the highest priority item, but should be included into product backlog) 2. Options:

  1. In Pangia mobile app we allow to upload multiple documents of the same type | | 4 | If yes for previous questions - do we check consistency of data between documents saved for different countries. | - all information should be the same no matter how many passports you have | 1. In Pangia mobile app - We might show warning message if the data doesn’t correspond in different documents uploaded by user
  2. Match should happen by photo in uploaded documents - it MUST be the same person | | 5 | Do we suggest document upload (as a scanned image or photo of this document)? | - Personr.co API plugin needed to make sure that the person is actually showing the real document in front | Post-MVP | | 6 | Do we save passport if it’s expired? Other documents? | - in an SDK choice needs to be given to businesses - do they want their users to upload expired passports or no?
  1. In Panjia mobile app - we will not accept expired docs | | 7 | Do we save passport if it’s ABOUT to expire? Other documents? | Not a problem | 1. In SDK we do not highlight documents that are about to expire
  2. In Panjia mobile app we warn user about upcoming expiration date | | 8 | Do we save driving license/residence permit if photo or any other information doesn’t correspond to previously saved? (e.g. passport keeps new family name, taken from husband, but driving license still keeps maiden name of a woman) | - two surnames are not allowed - confirm if this is the new surname - allow change only once. If more than one time - then create a new account
  1. In Panjia mobile app:

We could try guessing what is this document by scanned set of fields and suggest client to change doc type. | | No guessing, the process is straight forward: if Client chooses passport document type, then system tries to read the data via NFC, if no RFID chip is detected, then system reads the data via OCR; for other document types: whatever KBY will share with us we’ll show to the user | | 11 | Country selector: what is the standard we are going to use to pull all the relevant countries? ISO 3166? The member states of the United nations? | - all list that is available in KBYAI

When it’s possible to read expiration date: at MRZ reading stage or later during RFID scanning? | The passport expiration date is usually obtained from the MRZ during the initial stage of scanning (source: chatGPT) - to be confirmed with dev team | | | 13 | Instructions for NFC property switching on: they are different for iOS and Android and different mobile models. How do we show general instructions? | Examples of guidance:

To use the app with NFC, please follow these steps based on your device: For iOS:

  1. Open the "Settings" app.
  2. Navigate to "Bluetooth & NFC" (iOS 14 and later) or "General" > "NFC" (older versions).
  3. Toggle the switch to enable NFC. For Android:
  4. Open the "Settings" app.
  5. Look for "Connected devices" or "Connections."
  6. Enable NFC by toggling the switch under "NFC" or "Android Beam." If you encounter any issues, refer to your device's user manual or official documentation for more detailed instructions.

More general instructions! | More general instruction should be shown, without mentioning particular steps or devices/OS | | 15 | Does Sing pass share client’s photo? | | No, they do not. So we skip face verification part for Singpass | | 16 | Is there a way out of Sing pass app to trigger information sharing process? Or it should be done by taping button in Panjia app after successful authorization? | | Full integration flow is described here: https://www.notion.so/tgrgroup/Singpass-integration-details-ebf43ead910b4622a121cb98671720f7 | | 17 | Should there be a link to legal docs? Are those docs provided by Panjia or Partner? Should Client sign any Terms and conditions within our module? | | | | 18 | [DEV] Is there an expiration of MRZ reading? E.g. Client scans MRZ zone, then waits for 3-5 mins, then navigates to RFID chip scanning - will it still be available for scanning, or Client should be back to scan MRZ again? | MRZ doesn’t expire, however it should be confirmed with dev team | | | 19 | [DEV] Is it possible to check NFC availability on each device? Is it possible to check on every stage, even before start scanning? | | | | 20 | [DEV] Is it possible to understand if the device doesn’t have NFC feature OR it has, but the feature is switched off? | | |

Panjia Mobile app: User onboarding

# Question Answer Summary
1 [DEV] At what stage of user registration DID should be created?
What else should happen at this stage (from blockchain perspective), that is worth to mention in functional requirements?
2 Do we validate email (via verification code) during registration? Yes Validation of email via verification code is required in order to continue registration
3 Should we encourage user to update their password every 3 (6,9) months? No We do not require password update every 3 (6,9) month
4 Should we implement account lockout policies after a certain number of failed login? ?
5 Do we double check the seed phrase during registration process? (When user inputs phrase in the right order) Yes We require the double check of seed phrase
6 Face verification and mobile verification - optional steps for account registration? Optional for registrations, but remind after Face ID and Mobile check are optional for registration, but reminder is shown to the User on Home page every time unless they decide to protect their account
7 Any profile information during onboarding? Country, first, last name etc? No No information during onboarding is collected
8 [Dev]
Mobile number validation: by format? by length?
9 “Users receive a seed phrase for account recovery or when switching devices” - If user inputs valid login/pass on new device, do we still require seed phrase input? I assume yes, but please confirm.
I guess for new devices login should start with seed phrase.

Replicate from MetaMask (think about new password) | https://www.notion.so/tgrgroup/User-Onboarding-and-Authentication-1258290cd8a84cb28317d696cb3518bb?pvs=4#ca26affb2506435488a99e0da0e36e41 | | 10 | Do we need to logout client every time they close the app/the session is over? (like mobile banking?) | I assume yes, but please confirm

When session is expired (> 10 mins) or when app is shut down | User is logged out from Panjia app every time the session is expired or they close the app | | 11 | What kind of login process Client should follow every time they open the app:

  1. Client inputs email/pass + passes face verification or mobile verification
  2. Client chooses either to pass face verification or mobile verification or email/pass | by default - face ID. if face ID not available then password | Every time user logs in they have to pass face iD or mobile validation or enter password | | 12 | If Client lost access to their email they have to create another account, recovery is impossible - please confirm | Recovery via customer support? | To recover - the seed phrase is required, email is not required | | 13 | Is it allowed to take screenshots of mobile app? | No, for some pages | | | 14 | Is it important to have valid email to recover your account, or seed phrase is enough? | Rainbow wallet | Seed phrase is enough | | 15 | If User has forgotten their email AND seed phrase - is it still possible to recover the account? via CS | | No |

Panjia Mobile app: Documents management and scanning

# Question Answer Summary
1 For passport: do we allow scanning via OCR or is it banned? We recommend to upload NFC passport first. If we cannot recognize passport with RFID chip, then we switch to OCR check
2 When we remove initially scanned passport, what should we rely on as source of truth when uploading new docs?
Imagine that user has made plastic surgery and we cannot recognize them anymore. Suggestion:
not allowing user to remove passport. They can either:

If new passport’s photo doesn’t correspond to previous one, we suggest to either:

Panjia Mobile app: QR code generation and sharing

# Question Answer Summary
1 [Dev]
What information should be stored in QR code?
data hash?