Reserve+ QR Recognition
Overview
The Reserve+ QR feature lets users create a new person or update the military data of an existing person from a QR code generated by the Reserve+ application.
Unlike the OCR-based document-recognition flow, this scenario does not use Azure Content Understanding. The system decodes the QR code directly, shows the recognized data in a wizard, and writes the data to the person card after user confirmation.
If you need the Azure-based recognition flow for the full eVOD document, see Person Document Recognition — Electronic Military Registration Document.
Where the feature is available
The feature is available in two entry points:
- Create from Reserve+ on the person list, for creating a new person or updating a matched existing one;
- Update from Reserve+ on the person card, for updating the current person.
How QR data can be provided
The wizard supports three ways to get the QR data:
- Camera scanning.
- File upload with a QR code image or PDF.
- Manual paste of the QR text from a handheld scanner or another source.
Supported upload formats:
JPGJPEGPNGBMPPDF
How the Reserve+ wizard works
The wizard has three steps:
Step 1. Scan
The user:
- scans the QR code with a camera;
- or uploads a file;
- or pastes the raw QR text manually.
If the QR code cannot be read or decoded, the wizard shows an error and does not continue.
Step 2. Review
After successful decoding, the wizard shows:
- full name;
- birth date;
- tax ID;
- military status;
- duty relation;
- reservist flag;
- military registration office;
- medical board data;
- reservation or deferral data.
The review step also:
- shows a warning if the
statuscode is not1; - shows an Identity Mismatch block in update mode when name, tax ID, or birth date differs from the current person.
Step 3. Apply
When the user clicks Apply, the system either creates a new person or updates an existing one, depending on the launch mode and the duplicate lookup result.
Create and update logic
Create from Reserve+
In create mode, the system:
- reads tax ID and birth date from the QR payload;
- searches for an existing person with the same values;
- if a person is found, asks whether to update that record instead of creating a new one;
- if no person is found, or the user declines the update, creates a new person card;
- saves both basic personal data and military data.
Update from Reserve+
In update mode, the system:
- compares name, tax ID, and birth date with the QR data;
- shows a confirmation dialog if mismatches are found;
- updates both basic data and military data after confirmation.
If the user does not confirm the mismatch, the update is cancelled.
What data is imported
Basic person data
| QR field | Imported to | Processing logic |
|---|---|---|
fName | Person.First Name | Converted to proper case |
mName | Person.Middle Name | Converted to proper case |
lName | Person.Last Name | Converted to proper case |
bDate | Person.Birth Date | Parsed from ISO date format |
rnokpp | Person.VAT Registration No. | Direct copy |
Military data
| QR field | Imported to | Processing logic |
|---|---|---|
statusLbl | Person.Military Status | Mapped to enum values from the status text |
accType | Person.Militaty Duty Relation | Looked up in Personal Information Codes group Militaty Duty Relation |
isRes | Person.Reservist | Saved as Boolean; when true, duty relation is additionally forced to Резервіст |
tccName | Person.Military Registration Office | Looked up in General Directory type Military Office, first by exact match, then by similarity score |
defTitle | Person.Reservation Status | бронювання → Reserved, values containing відстрочка → Deferral |
contactDate | Person.Deferral Start Date | Saved as reservation or deferral start date |
defDate | Person.Deferral End Date | Saved as reservation or deferral end date |
vlkType | Person.SMAMilitary Service FitnessUA | Looked up in General Directory type Military Service Fitness |
vlkDate | Person Medical Info | Creates a medical-examination entry of type Military Medical Commission |
After a successful import, the system also sets:
- Military Document = SMA Electronic Military Registration Document.
Military status mapping
The statusLbl field is mapped by text:
- contains
на обліку→ On the record - contains
знятий з обліку→ Deregistered - contains
виключений з обліку→ Excluded from the register - all other values → Liable
Reservation and deferral logic
The defTitle field is processed as follows:
- if the value equals
бронювання, the system sets Reservation Status = Reserved; - if the value contains
відстрочка, the system sets Reservation Status = Deferral; - if
defDateis empty and no supported type is detected, the system clears Reservation Status, Deferral Start Date, and Deferral End Date.
Directory lookup logic
Militaty Duty Relation
For accType, the system searches Personal Information Codes:
- first with a starts-with filter on the name;
- then by exact name match.
If no value is found, the import stops with an error.
Military Office and Military Service Fitness
For tccName and vlkType, the system:
- first checks exact matches in Name and Full Name;
- if there is no exact match, calculates similarity scores;
- accepts the best match only when the score is at least
70.
If no valid match is found, the import stops and asks the user to add the required master data.
What is treated as an identity mismatch
In update mode, the system checks:
- Tax ID — current value versus
rnokpp; - Name — current full name versus
lName + fName + mName; - Birth Date — current value versus
bDate.
If at least one check differs, the user must confirm before the update continues.
Medical data
When the QR payload contains vlkDate, the system creates a Person Medical Info record with:
- Type =
Medical Examination - Medical Examination Type =
Military Medical Commission - Starting Date = the value from
vlkDate - Document Details = the value from
vlkType
The record is only inserted if the same person, date, and type combination does not already exist.
Prerequisites for reliable import
Before using the feature, make sure the system already contains:
- Military Office master data;
- Military Service Fitness master data;
- Militaty Duty Relation codes;
- user permissions to update the person card and related military fields.
Testing recommendations
- Test creating a new person through Create from Reserve+.
- Test updating an existing person through Update from Reserve+.
- Test a mismatch scenario for name or tax ID.
- Verify that
tccName,accType, andvlkTypeall have valid matches in your master data.---
Relation to eVOD
The same QR processing logic is also used when recognizing the Electronic Military Registration Document if the analyzer returns the QrCode field.
For the OCR-based document scenario, see Person Document Recognition — Electronic Military Registration Document.