Skip to content

Latest commit

 

History

History
1790 lines (1012 loc) · 69.1 KB

File metadata and controls

1790 lines (1012 loc) · 69.1 KB

How do I create a new subject type in Avni?

Subject Types can be created through the App Designer.1. Go to App Designer > Subject Types > Add New Subject Type

File:

How do I add or remove a new field to an existing form?

Fields can be added to forms through the App Designer. You can reach the form through different means.

  1. Go to App Designer > Forms > Select the form
  2. Go to App Designer > Subject Types, Programs or Encounter Types > Select the form you need to edit
  3. Navigate to the section/page you wish to add the field to. If required, add a new section/page As you hover over the left portion, you will see a + button. Click on it to add a new field. Each Form field has a few components.
  4. Question - This is what shows up in your form
  5. Concept - This is the internal name of the field. It is also shown in patient dashboards, reports etc. Normally, we keep the name of the concept to be the same as the question. Remember that there can only be one concept with a certain name in the entire system. Also, a concept can be used only once in a form. Based on the data type of the concept, you will have a few questions to answer to configure it correctly.
  6. Rule - There are three rules that you can configure for a question -
  7. Show/Hide question - This is used to show or hide the question based on a certain condition.
  8. Validation Rule - Based on conditions, you might show an error to the user
  9. Value Rule - Based on conditions, you might set an answer value The rules section is available by clicking on "RULE" section on the left side of the question

File:

What types of data fields are supported in Avni?

Concept DataType - Description Numeric concepts - Numeric concepts are used to capture numbers. When creating a numeric concept, you can define normal ranges and absolute ranges. In the field application, if an observation for a concept collected goes beyond the normal range, then it is highlighted in red. Values above the absolute range are not allowed. For instance for concept: Blood Pressure (Systolic), you can choose a Numeric concept with ranges.

Coded concepts (and NA concepts) - Coded concepts are those that have a fixed set of answers. For instance for Blood Group you would choose a coded concept with values: A+, B+, AB+, etc.

These answers are also defined as concepts of NA datatype.

ID datatype - A concept of Id datatype is used to store autogenerated ids. See Creating identifiers for more information on creating autogenerated ids. For instance PatientIDs, TestIDs, etc.

Media concepts (Image, Video and Audio) - Images and videos can be captured using Image and Video concept datatypes. For audio recording, Audio datatype can be used.

Text (and Notes) concepts - The Text data type helps capture one-line text while the Notes datatype is used to capture longer form text.

Date and time concepts - There are different datatypes that can be used to capture date and time. Date* - A simple date with no time Time* - Just the time of day, with no date DateTime* - To store both date and time in a single observation Duration* - To capture durations such as 4 weeks, 2 days etc. Location concepts - Location concepts can be used to capture locations based on the location types configured in your implementation. Location concepts have 3 attributes:

  • Within Catchment - Denotes whether the location to be captured would be within the catchment already assigned to your field workers. This attribute defaults to true and is mandatory.
  • Lowest Level(s) - Denotes the lowest location type(s) you intend to capture via form elements using this concept. This attribute is mandatory.
  • Highest Level - Denotes the highest location type that you would like to capture via form elements using this concept. This attribute is optional. Subject concepts - Subject concepts can be used to link to other subjects. Each Subject concept can map to a single subject type. Any form element using this concept can capture one or multiple subjects of the specified subject type. Phone Number concepts - For capturing the phone number. It comes with a 10 digit validation. OTP verification can be enabled by turning on the "Switch on Verification" option. Avni uses msg91 for OTP messages, so msg91 Auth key and Template need to be step up using the admin app. Group Affiliation concepts - Whenever automatic addition of a subject to a group is required Group Affiliation concept can be used. It provides the list of all the group subjects in the form and choosing any group will add that subject to that group when the form is saved. Encounter - Encounter concepts can be used to link an encounter to any form. Each Encounter concept can map to a single encounter type. It should also provide the scope to search that encounter. Also, name identifiers can be constructed by specifying the concepts used in the encounter form. Any form element using this concept can capture one or multiple encounters of the specified encounter type.

File:

How can I configure skip logic between form fields?

Skip logic is implemented through rules in Avni. Every field on the Form Designer has a "Rule" section. You can configure skip logic by adding the logic and then clicking on "Show/Hide question".

File:

Can I do regex validations in Avni?

Yes. Regular expression validations are available for Text concepts in Avni. When you choose a text concept for a question, you get to fill in two other fields - "Validation Regex" and "Validation Description Key". These allow you to enter the regex, and a description of the error message to show when the text does not match the regular expression

File:

Can I make a form available only to specific user groups?

Yes. You can make a form available only to specific user groups by adding the group(s) to the form's "User Group" section. The User Group section is available on the Admin section.

File:

How do I configure a program with multiple stages?

Consider what data you need to collect in each stage of the program. Every stage is a different encounter type, and ia associated with a form. Encounter Type rules can be configured to ensure that only forms that are relevant at any point are shown in the app

File:

How do I make a question appear only if another answer is “Yes”?

This can be achieved by adding skip logic rule on the form fields

File:

Can Avni support multi-language forms?

Yes. Avni can be rolled out in multiple languages at once. To have your app in multiple languages,

  1. Set up your language in Admin -> Languages
  2. Go to Translations and download translations. Make changes in the zip file as appropriate and upload the translations back into the system
  3. Usually an external tool like lokalise is used to add translations to the downloaded zip file

File:

How do I mark a field as mandatory?

In the form designer, go to the field you want to mark as mandatory. Check the box, and it will be shown as mandatory. Remember that a field is mandatory only if it is visible. If you have created a visibility rule through which your form field is not visible, then the mandatory field on it will not be respected.

File:

Can I attach media (photos/audio) to a form in Avni?

Yes. Media concepts (image, video and audio) can be used to capture photos, videos, and audio in Avni. Choose the right data type to capture the media that you need

File:

How do I configure a follow-up encounter?

You can create a follow-up by creating a new encounter type. If you want it to be scheduled at a particular point in time, it can be done through the Visit Schedule Rule. You can find the Visit Schedule rule in the "Rules" section of a form. You can navigate to the form either through the "Forms" section of the App Designer or through the "Encounter Types"/"Programs"/"Subject Types" section of the Admin section.

File:

Can I edit a form after it has been deployed?

Yes. You can edit a form after it has been deployed by going to the form either through the "Forms" section of the App Designer or through the "Encounter Types"/"Programs"/"Subject Types" section of the Admin section. Any changes you make will be available to users once they sync the app. Older filled forms will still have any questions you delete, but they cannot be modified anymore.

File:

How do I duplicate an existing form configuration?

In the Forms section, a form has a "Clone form" option. This can be used to duplicate an existing form.

File:

How can I make a numeric field accept only integers?

By applying a validation rule on that particular numeric field

File:

How do I configure a calculated field in Avni?

For a calculated field, a javacript snippet needs to written, sharing sample -

File:

use strict'; ({params, imports}) => { const programEncounter = params.entity; const individual = programEncounter.programEnrolment.individual; const moment = imports.moment; const formElement = params.formElement; const _ = imports.lodash; let visibility = true; let value = null; let answersToSkip = []; let validationErrors = [];

const totalParticipants = individual.getGroupSubjects();

const participants = programEncounter.getObservationReadableValue("d81c0be9-77fb-4673-af36-4b28773a6378");

if(participants && participants.length > 0) value = totalParticipants.length - participants.length;
else value = totalParticipants.length;

return new imports.rulesConfig.FormElementStatus(formElement.uuid, visibility, value, answersToSkip, validationErrors);

};

File:

Can I limit form access based on user roles?

Yes, form access can be configured on basis of the user's role. Under Webapp >> User groups >> Select the user group >> Permissions Under permissions tab there will be different permissions for each entity in Avni, based on requirement it can be configured

File:

What’s the difference between subject, program, and encounter?

A Subject is the base entity for which data is collected. A subject can be a person, a household, a class, or even non-human entities like a waterbody or a toilet.

A Program is used to monitor a subject over a defined period.

Every program has an enrolment form (entry point) and an exit form (exit point).

Example: Pregnancy can be a program, with ANC and Delivery as program encounters. The enrolment form may capture one-time details like LMP and EDD.

In addition, subjects can have general encounters that are not tied to a program.

Example: Monitoring a waterbody daily without any enrolment or exit.

File:

How do I design a workflow for maternal health tracking?

Maternal Health / Pregnancy Workflow in Avni

  1. Create the Subject

Type: Person

Purpose: Represents the pregnant woman whose health is being tracked.

  1. Registration Form

Contains: Basic personal and demographic details.

Captured once at the time of creating the subject.

  1. Configure the Program

Program Name: Pregnancy / Maternal Health

Program Components:

Enrolment Form

Captures one-time pregnancy details:

Last Menstrual Period (LMP)

Expected Delivery Date (EDD)

Height, weight

Previous pregnancy details

ANC (Antenatal Care) Forms

Scheduled automatically based on LMP date.

Tracks visits, vitals, investigations, and interventions during pregnancy.

Delivery Form

Captures delivery details, mode of delivery, complications, birth outcomes.

PNC (Postnatal Care) Forms

Scheduled after delivery.

Tracks maternal and newborn health.

Exit Form

Marks the completion of the program for that subject.

  1. Scheduling

All ANC and PNC visits are scheduled based on the LMP or delivery date.

Reminders and follow-ups can be set automatically.

  1. Data Flow

Subject created → registration form filled

Subject enrolled into Pregnancy Program → enrolment form captures one-time pregnancy details

ANC visits tracked and scheduled automatically

Delivery recorded → triggers PNC scheduling

PNC visits tracked

Exit form completes the program This structure ensures complete lifecycle tracking of maternal health, from registration to postnatal follow-up, with automated scheduling based on pregnancy dates.

File:

How can I model household → individual relationships?

Modeling Household → Individual Relationships in Avni

  1. Define Relationships

Navigate to: Webapp → App Designer → Relationships → Define

Here you can define the types of relationships that exist between individuals in a household.

Examples: Mother, Father, Daughter, Son

You can also specify which gender each relationship applies to.

  1. Configure Relationship Types

Go to: Webapp → App Designer → Relationship Types → Add New

Create a relationship and its reverse.

Example:

Mother → Son → reverse is Son → Mother

Mother → Daughter → reverse is Daughter → Mother

Father → Son → reverse is Son → Father

Father → Daughter → reverse is Daughter → Father

  1. Usage

Once defined, these relationships can be assigned to individuals within a household.

This enables tracking of household members, family hierarchies, and dependent relationships.

File:

How do I track recurring visits for a subject?

Recurring visits for a subject can be tracked by configuring the Visit Schedule Rule under the subject registration form in Webapp → App Designer. You can use the drop-down rule designer to set fixed-frequency visits for any form. For more complex or custom scheduling, a JavaScript rule can be written. Sample rules are available in the README documentation

File:

How do I set up a longitudinal data collection workflow?

Setting Up a Longitudinal Data Collection Workflow in Avni

Understand Longitudinal Data Collection

Avni is designed for longitudinal data collection, allowing you to capture data for a subject (the on-ground entity) over time, at predefined intervals and frequencies.

This ensures structured, continuous tracking of any subject, such as a person, household, or facility.

Configure Data Collection

Define your subjects and forms in Webapp → App Designer.

Set up visit schedules, program encounters, or recurring forms to capture data at the required frequency.

Export Longitudinal Data

Navigate to Webapp → Longitudinal Export.

You can download the data in a format that maintains the chronological order of observations for each subject.

This gives you a ready-to-analyze dataset showing how data for a subject changes over time.

File:

What’s the best way to handle referrals between workers?

Handling Referrals Between Workers in Avni

Set Up User Roles

Navigate to Webapp → User Groups.

Create different roles or user groups based on responsibilities.

Assign appropriate permissions to each group and add the respective users.

Schedule Referral Visits

Using the scheduling feature, you can assign referral visits to the appropriate worker.

These visits appear in the assigned user’s task list for follow-up.

Use Offline Report Cards

Configure offline report cards to highlight records that require referrals.

The responsible user can track and act on these referrals even when offline.

File:

How can I manage cases that get closed and reopened?

Managing Cases that Get Closed and Reopened in Avni

Cases Configured as Programs

When a subject is enrolled in a program, it can be exited (closed) using the Program Exit feature.

Reopening Cases

If a case needs to be reopened, you can undo the program exit.

This makes the subject/case available again for data recording and collection.

File:

How do I configure a multi-step service delivery workflow?

Configuring Multi-Step Service Delivery in Avni

  1. Independent Services

If the services are independent of each other, Avni allows multiple program enrolments for a subject at the same time.

Example: A person can be enrolled in both:

Pregnancy Program

Mental Health Program

Each program runs independently, with its own forms, schedules, and follow-ups.

  1. Dependent Services / Multi-Step Workflow

If the service delivery steps are dependent on each other, you can configure them within the same program:

Use assessment forms scheduled at predefined intervals.

Add logic rules to trigger specific forms based on previous data or conditions.

Example:

Step 1: Initial assessment

Step 2: Trigger counseling form if certain risk indicators are recorded in Step 1

Step 3: Follow-up visit forms automatically scheduled based on Step 2 outcomes

File:

Can I link a child record to a household subject?

Linking a Child Record to a Household Subject in Avni

Yes, you can link a child (or any individual) to a household subject in Avni.

Avni provides a built-in feature to:

Add members to a household

Designate the head of the household

Additionally, you can define relationships between household members to make the mapping clearer

File:

How do I manage subjects across multiple programs?

Managing Subjects Across Multiple Programs in Avni

Avni allows a single subject to be enrolled in multiple programs simultaneously.

There is no extra setup required to manage this.

Each program runs independently, with its own forms, schedules, and follow-ups, allowing flexible tracking of different services for the same subject.

This makes it easy to monitor multiple aspects of a subject’s data without conflicts or additional management overhead.

File:

How can I model seasonal data collection (e.g., crops)?

Modeling Seasonal Data Collection (e.g., Crops) in Avni

1.Schedule Forms at Predefined Times

In Avni, forms can be scheduled to appear at specific times of the year using predefined scheduling rules or logic.

This allows you to capture seasonal crop information at the right time for each subject (e.g., farm, field).

  1. Use Conditional Logic for Fields

If the same form is used across seasons, you can hide or show fields dynamically based on:

Season

Crop type

Other user input or data logic

This ensures that only relevant information is captured during each season.

Multiple approaches in Avni allow flexible and accurate collection of seasonal data without creating separate forms for each season.

File:

How do I configure a one-time survey vs. ongoing case?

  1. One-Time Survey

Can be captured:

Within the subject registration form itself

Or as a general encounter outside any program

Ideal for surveys or data collection that happens only once per subject.

  1. Ongoing Case

Best managed using a program in Avni.

Programs allow you to:

Track the enrolment of the subject

Capture multiple encounters over time (e.g., ANC visits, monitoring forms)

Record exit of the case along with exit reasons (e.g., completed, migrated, dropped out)

Suitable for scenarios requiring longitudinal tracking and multiple touchpoints.

File:

How do I manage data across multiple locations?

In Avni, data can be collected against a specific location, and users (data entry personnel) can be assigned access to a predefined set of locations. This ensures that each user records data only for the locations they are responsible for. Additionally, MIS reports can be configured with location filters, allowing supervisors and managers to analyze and monitor data across multiple locations efficiently. This setup makes it easy to manage data collection, access control, and reporting for projects spread over different geographic areas.

File:

Can I assign subjects to specific users or teams?

Yes, Avni allows you to assign subjects to specific users or teams using the subject assignment feature. This can be configured under Webapp → App Designer → Subject Types → Select Subject, where the toggle “Sync by direct assignment” enables syncing of subjects directly assigned to users. The actual assignment of subjects can then be easily performed from Webapp → Assignment, ensuring that users or teams only access the subjects they are responsible for.

File:

How do I record both baseline and follow-up data?

Baseline data is typically collected at the start of a program, while follow-up data is recorded at subsequent visits. In Avni, both baseline and follow-up data collection can be easily configured using form visit scheduling, allowing you to define when each form should be filled for a subject, ensuring structured and timely data capture throughout the program.

File:

What’s the best way to model school → student tracking?

In Avni, registering a school as a subject can be avoided if no specific information needs to be captured against it. Instead, the school can be configured as a location, and classes and students can be registered under the same school location. Classes can be set up as group subjects, and students as person subject types, assigned to their respective classes. Forms can then be configured for any subject or class where data needs to be captured—for example, classrooms can have daily attendance forms scheduled, which users can fill out directly from the app, enabling efficient tracking of students within the school.

File:

How do I manage multiple identifiers for the same subject?

Avni does support identifiers, and multiple identifiers can be created and used for the same subject. However, since Avni is primarily an offline data collection tool, there are certain corner cases where duplicate identifiers may get assigned—for example, when the same user enters data on two devices or when the web-based data entry app is used. In such situations, it can become difficult to support and debug issues. Therefore, we generally do not recommend using multiple identifiers unless they are strictly distributed or tracked on the ground, where duplication risks are minimized.

File:

How can I record GPS location data with each encounter?

Avni provides the ability to capture GPS location data with each form submission. This can be enabled for any user by going to Webapp → Admin → Users, selecting the desired user, and toggling “Track Location” to true. Once enabled, the GPS coordinates will automatically be recorded whenever that user fills out a form, ensuring location tracking for each encounter.

File:

How do I set up case closure criteria?

If a case is managed as a program in Avni, users can decide when it should be closed based on their training and then complete the exit form with the correct exit information. Alternatively, closure criteria can be built into the workflow by assessing the data entered in each form and guiding the user to exit the program when predefined conditions are met. With some customization, the user flow within forms can also be structured to prompt or direct users toward program closure at the right time, ensuring consistency in case management.

File:

Can I link data from one form into another?

Yes, in Avni you can link data from one form into another. This is done using form element rules with JavaScript, which allow you to fetch data from previous forms and use it within the current form. Once fetched, the data can also be processed further based on your requirements, enabling seamless continuity across different forms.

File:

How do I write a rule to calculate BMI in Avni?

// SAMPLE RULE EXAMPLE: Calculate BMI from Height and Weight 'use strict'; ({ params, imports }) => { const programEnrolment = params.entity; // Current program enrolment const formElement = params.formElement; // The form element this rule is linked to

// Fetch observations for Height and Weight (update names as per your form) let height = programEnrolment.findObservation("Height of women"); let weight = programEnrolment.findObservation("Weight of women");

height = height && height.getValue(); weight = weight && weight.getValue();

let value = '';

// If both height and weight are valid numbers, calculate BMI if (_.isFinite(weight) && _.isFinite(height)) { value = ruleServiceLibraryInterfaceForSharingModules .common .calculateBMI(weight, height); }

// Return the BMI value into the current form element return new imports.rulesConfig.FormElementStatus(formElement.uuid, true, value);
};

Replace "Height of women" and "Weight of women" with the exact observation names in your form.

calculateBMI is already available in the shared rule service library, so no need to manually code the math.

This rule is from the Pregnancy Program Enrolment form

File:

Can I prevent form submission if a rule fails?

No, Avni does not allow you to block form submission if a rule fails. Instead, when a rule fails, it creates an entry in the rule failure table, which helps developers or implementors identify and debug the issue. This ensures that data collection is not disrupted in the field, while still allowing backend teams to track and resolve rule-related errors.

File:

How do I create a rule to send an alert for high blood pressure?

Avni does not provide an in-app alert or notification feature. However, abnormal values like high blood pressure can still be highlighted during data entry. For example, while configuring a numeric field (such as BP Diastolic) in the App Designer, you can set thresholds (e.g., High Normal = 80). If a user enters a value above this, it will automatically be highlighted in red to indicate an abnormal condition. Additionally, these abnormal values can be included in decisions within the form, and the resulting decision outcomes can be displayed in the program summary of that individual, making it easier to track and review cases of high blood pressure. Furthermore, an offline report card can be configured to list and navigate to such cases, allowing field teams to easily identify and follow up on individuals with high BP.

File:

How do I check if a subject is under 5 years old in a rule?

Within a rule it can be easily accessed from the drop down avaiable. Or else in case you want to customise the rule further it can written in javascript like this- individual.getAgeInYears() < 5

File:

Can rules trigger notifications for supervisors?

No, Avni does not have a built-in notification or alert triggering system. However, this need can be addressed by configuring an offline report card on the supervisor’s app dashboard. The report card can be designed to display highlighted cases—such as abnormal conditions or referrals—that supervisors need to track. This way, instead of receiving notifications, supervisors can regularly review the dashboard to monitor the cases that require their attention.

File:

How do I create a rule for conditional program enrollment?

In Avni, conditional program enrollment can be handled using the Enrolment Eligibility Check Rule available under program configuration. You can add a custom rule here to define the eligibility criteria for a subject. When an individual does not meet the defined conditions, the option to enroll them in that program will not appear on their profile.

File:

Can I use JavaScript libraries inside Avni rules?

There are a few Javascript libraries that are present by default in the Avni rules. This include lodash and momentjs.

Security restrictions limit the addition of other Javascript libraries within the rules

File:

How do I write a rule to auto-populate a field?

//Sample rule to autopopulate the height of child from his previously filled encounter - 'use strict'; ({params, imports}) => { const programEncounter = params.entity; const moment = imports.moment; const formElement = params.formElement; const _ = imports.lodash; let visibility = true; let value = null; let answersToSkip = []; let validationErrors = [];

let obs = programEncounter.programEnrolment.findLatestObservationFromEncounters('Height', programEncounter);

if(obs) { value=obs.getReadableValue(); }

return new imports.rulesConfig.FormElementStatus(formElement.uuid, visibility, value, answersToSkip, validationErrors); };

OR it can be easily achieved via rule designer

File:

How do I validate a phone number with a regex rule?

A phone number is typically added as a Text concept with a validation rule. There are different regex rules that you can write. Some examples are

^[0-9]{10}$ - 10 digits only ((+)((0[ -])|((91 )))((\d{12})+|(\d{10})+))|\d{5}([- ]*)\d{6} - All different kinds of phone numbers

File:

How do I enforce that visits happen within 30 days?

You can add two dates when you schedule a visit. Due Date - The earliest date on which a visit is expected to happen Overdue Date - The latest date by when a visit is expected to happen

Visits that are due and overdue can be shown on the app on the dashboard, and on reports. This allows users to understand which visits are due to be completed, and which ones have gone past the due date

File:

Can I access previous encounter data in a rule?

Yes, sample rule to fetch height from a previous encounter is - 'use strict'; ({params, imports}) => { const programEncounter = params.entity; const moment = imports.moment; const formElement = params.formElement; const _ = imports.lodash; let visibility = true; let value = null; let answersToSkip = []; let validationErrors = [];

let obs = programEncounter.programEnrolment.findLatestObservationFromEncounters('Height', programEncounter);

if(obs) { value=obs.getReadableValue(); }

return new imports.rulesConfig.FormElementStatus(formElement.uuid, visibility, value, answersToSkip, validationErrors); }; OR it can be easily achieved via rule designer

File:

How do I create a rule that prevents duplicate registration?

Under subject config on webapp there is a toggle for Unique names - If active then user can't register a subject with duplicate names within their catchment

File:

How can I trigger a follow-up form automatically?

This can achieved via a visit scheduling rule of the form from the form after which the next followup should be scheduled. It can be configured via webapp >> app designer >> form >> Visit scheduling rule

File:

Can I write a rule to calculate gestational age?

Sample rule to calculate - "use strict"; ({params, imports}) => { const programEncounter = params.entity; const formElement = params.formElement;

let edd = programEncounter.programEnrolment .getObservationReadableValueInEntireEnrolment('Estimated Date of Delivery', programEncounter); let dateOfDelivery = programEncounter.getObservationReadableValue('Date of delivery');

const value = imports.motherCalculations .gestationalAgeForEDD(edd,dateOfDelivery);

return new imports.rulesConfig.FormElementStatus(formElement.uuid, true, value); };

File:

How do I enforce minimum and maximum age limits?

You can add a validation rule in the registration form to through a validation if the age limit is not matched. Until validation error is not resolved the registration couldn't be saved

File:

How do I use rules for referral workflows?

For referral workflows, multiple rules can be used -- Decision rules, program Summary rules and Custom offline report cards

File:

How do I debug a failing rule in Avni?

If a rule fails in the avni app, its entry will be available on Web app >> App designer >> Rule failures >> Find the rule failure with individual uuid or the timestamp, it will have further details of the rule failure which can be used to debug the issue and fix it accordingly

File:

Can I export all my rules for review?

No, only rules alone cant be exported. Reviewing code is easy on the webapp interface itself.

File:

Can I use Avni offline for a whole week?

Yes, Avni can be used fully offline for a week or even longer, since data is stored locally on the device. The only thing to keep in mind is that offline use works reliably as long as another user is not using the app for the same set of individuals or doing data entry for the same records during that period. Once you reconnect to the internet, all pending data will sync back to the server.

File:

How do I change the app language?

You can change the app language directly from the Avni mobile app. Just open the app, go to More, tap on your username at the top, and then select from the available languages. Once selected, the app will switch to the chosen language immediately.

File:

How do I search for a subject in the field app?

On the field app home screen, you’ll see a search icon at the top right. Tap on it, select the subject type you want to look for, and then enter the subject details (like name, ID, or other identifiers). After clicking the submit button, the app will display a list of matching records.

File:

Can I update a subject’s information after registration?

Yes, Avni allows to edit the registration information.

File:

How do I record a missed visit?

Avni allows to do data entry for the back dates, just select the date on top of the visit while filling the form

File:

What happens if I accidentally delete a record?

There is no feature to delete a record from the Avni mobile app. So a field user wont be able to do so. Avni allows to void the record which can be reverted by undo void

File:

How do I know if my data is synced?

You can check sync status from the sync button on the home screen (top right corner). If your data is fully synced, there will be no numbers showing on the sync icon. If numbers are visible, it means there are pending activities waiting to be synced.

File:

Can I see my past encounters for a subject?

Yes, you can. On the subject profile or the program profile, all completed encounters are displayed, allowing you to review past data entries.

File:

How do I mark a subject as inactive?

You can simply void the subject

File:

How do I transfer a subject to another worker?

Webapp >> Assignments >> Search the subject and update the user detail for assignment

File:

Can I edit a submitted form?

Yes, until unless you have the permission, you can edit the forms easily in Avni

File:

How do I log out and log back in without losing data?

Logging out wont loose data, once u login back without any other action on the app, the data will sync

File:

What should I do if the app crashes?

Raise an urgent support ticket with proper details on the Freshdesk link provided by Avni team

File:

How do I handle duplicate subjects in the app?

In case there are duplicate subjects registered then void one of them.

File:

Can I use Avni on multiple devices?

Yes, but avoid using Avni app with same login details on different devices

File:

How do I install Avni updates?

Similar to other apps, on Google play store>> Avni >> Install updates

File:

What should I check before starting field data collection?

Make sure after login the sync was successfull 100%

File:

How do I export data from Avni to Excel?

You can download data from Webapp >> Longitudinal export >> It will give you a csv file

File:

Can I schedule automatic data exports?

No, currently there is no automatic data export. Avni has its won backups running so nothing to worry

File:

Can I generate PDF reports from Avni?

added to git

File:

How do I get aggregated data by location?

added to git

File:

Can I query Avni directly with SQL?

added to git

File:

How do I filter data exports by date?

added to git

File:

How do I schedule custom reports?

added to git

File:

What is the structure of Avni’s database?

added to git

File:

How do I create a dropdown field with predefined options?

In Avni single select or mutliselect fields can be created from Webapp >> App Designer>> Form >> New form element >> New concept >> Select Coded datatype >> Add predefined options as answers. Then mark the field if can be single select or multi select

File:

How do I migrate data from another system into Avni?

Avni provides comprehensive bulk data upload functionality through the Admin web console:

  • Supported uploads:

    • Subjects (individuals/entities)
    • Program enrollments
    • Program encounters
    • General encounters
    • Locations and catchments
    • Users and their catchments
  • Process: Download sample CSV templates from the Admin interface, fill with your data, and upload

  • Validation: Basic level of form validations and rules executions are done during upload - mandatory fields are enforced, hidden fields are ignored based on form element rules

  • Automated processing: Visit schedules and decisions are automatically created based on your configured logic

File:

Can I integrate Avni with SMS or WhatsApp alerts?

Answer: Avni provides comprehensive communication capabilities through SMS and WhatsApp integrations:

SMS Integration (MSG91)

  • Password reset OTP and user credential sharing
  • Phone number verification for beneficiaries
  • Multi-language support with secure authentication

WhatsApp Integration (Glific)

  • Trigger WhatsApp messages on events (registration, enrollment, visits)
  • Bulk and individual messaging capabilities

Use cases: Health camp reminders, ANC visit alerts, motivational content, field worker notifications

Setup: Organizations need MSG91 and Glific accounts configured in Avni.

File:

How do I monitor API usage and limits?

Avni does not support API monitoring. Avni does provide RESTful External APIs which can be leveraged to fetch data from Avni or Push data to Avni, API docs for which are available here.

File:

Can I configure cascading dropdowns (state → district → village)?

Answer: yes we can configure cascading drop-downs of Locations or Coded Concepts.

Location Concepts

Yes, for locations, we can do it through Location concepts:

  • Location concept type: Supports hierarchical location selection

  • Configuration attributes:

    • Within Catchment: Whether locations must be within assigned catchments
    • Lowest Level(s): The most granular location types to capture
    • Highest Level: The broadest location type to capture
  • Implementation: Location concepts automatically provide cascading selection based on your configured location hierarchy (state → district → village)

  • Catchment control: Can restrict selections to locations within field workers' assigned areas or across the entire Location heirarchy of the organisation.

Coded Concept Hierarchies

Coded concepts can be structured in multiple levels with parent-child relationships:

  • Level 1: Primary categories (e.g., "Health Services")
  • Level 2: Sub-categories (e.g., "Maternal Health", "Child Health")
  • Level 3: Specific services (e.g., "ANC Visit", "PNC Visit", "Immunization") We can configure FormElementRules to show / hide Answer Concepts at lower levels based on the selection of higher level concepts.

File:

How do I copy a question from one form to another?

Answer: Questions in Avni are based on Concepts, which are reusable across forms:

  • Concept reuse: Once a concept is created, it can be used in multiple forms
  • Form element creation: Add the same concept to different forms as form elements
  • Consistency: Using the same concept ensures data consistency across forms
  • UUID-based: Concepts use UUIDs internally, so the same concept can have different display names via translations

The documentation emphasizes that concepts should be considered "programming keywords" representing ideas that can be reused across multiple forms.

File:

Can I hide a field from data collectors but keep it for admins?

Answer: No in Avni Forms, we cannot hide a field from data collectors but keep it for admins. What you see in the form is what gets stored. You may additionally create Read-Only Form Elements or Configure Decision Concepts which are auto-generated based on the form data.

File:

How do I configure default language for a form?

Answer: Avni supports user language preferences that determine the language used throughout the Avni Mobile App, including forms, report cards, menu items, and button text. Avni does not have form-specific default language configuration.

Translation System

  • Translation framework: Avni supports multiple languages for all user-facing content
  • Language-specific translations: Create translations for each supported language
  • Default language: Configure the primary language for your organization
  • Form element translations: All form elements can have language-specific display text

File:

Can I restrict date fields to future dates only?

Yes, through FormElement / FormElementGroup Rules, we can implement validation to restrict date fields to future dates only.

File:

How do I enable GPS capture in registration forms?

There is a User level "Track Location" setting that needs to be enabled for Geographical coordinates to be captured. Switches on location tracking on the Field App during first time create of Subject or Encounter.

File:

Can I create a calculated field based on two numeric inputs?

Yes, we can auto-calculate values based on other form elements. Example: Calculate BMI from height and weight, or compute totals from multiple numeric fields.

File:

How do I make a field appear only during new subject registration?

We do not recommend this approach, rather based on Business need, recommend setting up a Program or Encounter form that should be used to capture change in subject's status post registration.

File:

How can I reorder questions in a form?

You can move questions up or down when designing the form in the Avni web app. Just drag and drop them into the order you want.

File:

Can I create a checkbox list where multiple options are allowed?

Yes. Avni lets you create a question with multi-select options. While creating the question, select

Date type = Coded Type = Multiselect This will let users tick more than one option for that question.

File:

Can I make a field read-only after first entry?

Yes. It can be done by writing a rule stating that after the first value is entered and form saved, this question should not be editable again.

File:

How do I enforce that one field must be filled if another is empty?

This is also possible with rules. You can write a validation rule: if Field A is empty, then Field B must be filled (i.e. generate validation error if both are empty).

File:

How can I store multiple phone numbers?

You can add this as a question group. While adding the question in the form, add this as a question group and add the queston as Contact Number 1, Contact Number 2 ...

File:

Can I use QR codes for subject IDs in Avni?

No, not currently

File:

How do I configure automatic case closure after 6 months?

No. Avni does not support automatic case closure based on time. Once the program reaches the end, the user must manually exit the beneficiary from the program by clicking the Exit button available next to the program enrollment form.

File:

Can I configure a form to appear only once per program stage?

Yes. It can be done by writing a rule stating that after a certain period or after filling in some other encounter, this form should not appear again.

File:

How do I make a yes/no field mandatory?

Yes. It can be done by setting Concept type = Coded, Data type = Single Select (Yes/No), and marking it as Required.

File:

Can I pre-fill information from previous visits?

Yes. It can be done by writing a rule. For more details, kindly refer to avni readme for rule details

File:

How do I add an image upload field?

In Avni, there are two concepts for handling images: Image and ImageV2, where the main difference is that ImageV2 also captures the location of the image. To configure this, navigate to WebApp → App Designer → Form, create a new form element, and add a new concept with the data type set as either Image or ImageV2. You can then select whether it should be Single Select or Multi Select, and save the element. Additionally, if more specific image dimensions are required, you can define the width and height within the form element settings.

File:

Can I create dynamic labels based on other field values?

Yes, you can create dynamic labels based on other fields by adding a rule to the field, either manually or by using the Rule Builder. For detailed steps, refer to the Avni documentation on ReadMe or reach out to our support team for assistance.

File:

How do I enable conditional skip logic across sections?

You can implement conditional skip logic either by manually writing a rule or by using the Rule Builder. To do this, go to App Designer, then create a new form or open an existing form. You will find the Rule option next to Details, where you can define the skip logic as needed.

File:

Can I configure reminders for upcoming encounters?

Currently, there is no feature available for reminders, but users can track upcoming encounters by adding a dashboard card for it to the dashboard.

File:

How do I configure a repeatable group of fields?

To create a repeatable group of fields, go to WebApp → App Designer → Form, create a new form element, and add a new concept with the data type set to Question Group. This allows you to add multiple fields under it. You will find a checkbox labeled Repeatable — enable it to configure the group as repeatable.

File:

Can I set a numeric field to allow decimals only?

Go to WebApp → App Designer → Form, create a new form element, and add a new concept with the data type set to Numeric. You will need to manually write a rule to ensure the system only accepts decimal values. To learn how to create this rule, refer to the Avni documentation or reach out to our support team for assistance.

File:

How do I configure a program where only supervisors can enroll subjects?

Go to Admin → User Groups, create a new group named Supervisor, and add all users who need supervisor access to this group. Then, click on Permissions, select the program, and toggle the Enrollment option to enable it. This ensures that only users in the Supervisor group can enroll program. Note: Make sure to disable (untoggle) the enrollment option for all other user groups so that only supervisors have this permission.

File:

Can I create a read-only dashboard for workers in Avni?

Yes, this can be done by enabling the View Only permission for the respective user groups.

File:

How do I configure a field that stores household GPS plus notes?

Go to App Designer → Create a new form or open an existing form, then create a new form element and add a new concept with the data type set to Location. This will allow you to capture and record the GPS coordinates.

File:

Can I configure gender-specific forms in Avni?

Yes we can do my adding the rule in the form

File:

How do I set default answers for checkboxes?

Webapp>> App Designer >> Form >> Coded concep field >> form element rule of the field >> The rule designer allows to select action of displaying "Value" with some conditions. Generate and save the rule

File:

How do I configure case assignment based on location?

By default, Avni assigns cases based on location. Each user is linked to a catchment. And each catchment is a set of locations

File:

How do I model a program for chronic disease management?

  1. Create a Subject Type

Go to Webapp → App Designer → Subject Types → Create New.

Give it a name like Person or Individual.

Select Person from the subject type dropdown.

On save, a default registration form is created.

This form already includes first name, last name, age, gender, and location. You can add more fields as needed.

2.Create a Program

Go to Webapp → App Designer → Programs → Create New.

Name it Chronic Disease.

On save, Avni automatically creates an Enrolment Form and an Exit Form.

3 Create Encounters

Go to Webapp → App Designer → Encounters → Create New.

Select your program (Chronic Disease).

Give the encounter a name.

Avni automatically creates and maps the form for this encounter.

Customize Forms

Go to Forms and edit the Registration, Enrolment, Exit, and Encounter forms.

Add fields, rules, and logic as per your requirements.

File:

Can I design workflows for both subjects and facilities?

Yes. In Avni, you can register subjects and enter data against them. Under subject creation, you also have User as a type of subject. This means you can create a subject type for users or facilities and then do data collection and monitoring for them as well.

File:

How do I create a workflow for nutrition tracking?

  1. Create a Subject Type

Go to Webapp → App Designer → Subject Types → Create New.

Name it Person or Individual.

Select Person from the dropdown.

On save, a default registration form is created with fields like name, age, gender, and location. Add child-specific fields if needed.

2.Create a Program

Go to Webapp → App Designer → Programs → Create New.

If the program name is set to Child, Avni automatically generates growth charts for enrolled children.

On save, the Enrolment Form and Exit Form are created automatically.

3.Create Encounters

Go to Webapp → App Designer → Encounters → Create New.

Select the Nutrition Tracking (or Child) program.

Give the encounter a name (e.g., Monthly Nutrition Check).

A form for this encounter is created and mapped automatically.

4.Customize Forms

Go to Forms and edit the Registration, Enrolment, Exit, and Encounter forms.

If the program is for children, make sure to include Height and Weight concepts in the forms—these are required for growth chart generation.

You can also add other nutrition-related fields (e.g., dietary intake, supplementation) and set rules or logic as needed.

File:

Can I model relationships like teacher → student → guardian?

Yes. You can create separate subject types for Teacher, Student, and Guardian. Then, by using the subject type concept in the forms, you can link them together. For example, a Teacher can be added in the Student form (or vice versa), and a Guardian can also be linked to the Student.

You can further enhance this by:

Using summary rules to show the linked values (e.g., Teacher or Guardian name) at the top of a profile.

If you click on the Teacher’s name in a Student’s profile, it will take you directly to the Teacher’s profile.

File:

Can I assign a subject to multiple programs at once?

Yes, a subject can be enrolled in multiple programs at a time

File:

How do I create a workflow for tracking immunizations?

Create a program named Child. Then add a checklist rule at the form level rules and vaccine details in the checklist JSON. The JSON contains information about vaccines and their schedules. Sample rule code and a sample JSON are available in the Avni README documentation.

File:

Can I design a program that ends after a specific milestone?

Yes. This can be achieved in multiple ways:

1.Train users to monitor the condition during each follow-up and exit the program when the milestone is reached.

2.Use a decision rule to highlight when a condition is met, and show it as a counselling point to exit the program.

3.Apply a worklist updation rule to prompt exit on the next button. A sample worklist updation rule is available in the Avni README documentation.

File:

Can I track household-level interventions as well as individuals?

Yes. Avni is designed to support interventions at both the household and individual level. You can also map individuals to households, so data is linked and tracked together.

File:

How do I configure seasonal visits (e.g., annual surveys)?

Avni supports scheduling visits in advance using the visit schedule rule. By configuring the rule logic, you can set up seasonal or recurring visits—such as annual surveys, quarterly check-ins, or any other periodic follow-up.

File:

Can I link subjects across different user groups?

Yes. Subject assignment can be done for multiple users, even if th

File:

How do I model temporary migration of subjects?

Migration of subjects is not supported in the mobile app. However, within a catchment, users can update the subject’s address to reflect their temporary location.

File:

Can I track dropout cases and reasons?

Yes. Dropouts and their reasons can be captured in program exit forms. You can then track exit cases through the mobile app, custom reports, or using the longitudinal export.

File:

Can I design workflows that include supervisor approvals?

Yes. Avni provides an out-of-the-box approval mechanism. Permissions for approving or rejecting entities can be given to specific users through user groups. To include an entity in the approval workflow, simply enable the approval setting while creating the entity in the App Designer.

File:

How do I configure different visit schedules for children and adults?

This can be done by adding an age-based condition in the visit schedule rule designer. That way, children and adults can each have their own visit schedules.

File:

How can I model data for disaster relief beneficiaries?

You can model disaster relief beneficiaries in Avni by:

1.Creating a Subject Type – e.g., Individual or Household, depending on whether relief is tracked per person or per family.

2.Designing Registration Forms – include fields like name, age, gender, address, disaster-affected status, and relief needs.

3.Creating a Program – e.g., Disaster Relief Support. On save, an enrolment and exit form are created automatically.

  1. Adding Encounters – e.g., Relief Distribution, Shelter Support, Medical Check-up.

  2. Customizing Forms – capture details such as type of relief provided, date, follow-up needs, or referrals.

  3. Using Rules (optional) – to highlight vulnerable groups (children, elderly, disabled) or track milestones like completion of relief support.

File:

Can I set up workflows that branch based on eligibility?

Yes. Eligibility checks can be added in the visit schedule rule designer. Based on these conditions, workflows can branch—for example, scheduling different visits or follow-ups only if the subject meets certain criteria.

File:

How do I manage subjects who belong to multiple households?

While this is not a usual situation, Avni does not prevent you from adding the same member to multiple households. Go to a household on the app and add any member that you want

File:

Can I configure Avni to track both individuals and groups?

Avni considers individuals and groups as subject types. A group subject type is a subject type that allows you to add members. This can be used to model households, classrooms and much more.

Create two different subject types, one for the individual and another for the group. Register them separately and add members to the group subject type

File:

Can I create a single program with multiple enrollment points?

Yes, you can create a single program with multiple enrollments. To do this, go to App Designer → Create or edit a program, then look for the "Allow Multiple Enrollments" option. Enable it to allow the system to support multiple enrollments for that program.

File:

How do I configure workflows for child growth monitoring?

Yes, this is possible, but your administrator needs to set it up first.

Why it's possible:

Avni has built-in features specifically designed for tracking child growth The system can automatically calculate growth charts and detect malnutrition It can remind you when children need their next check-up How you can use it:

Ask your supervisor or IT administrator to set up the "Child Growth Monitoring" program for you Once set up, you'll see a "Child Program" option in your mobile app When you register a new child, fill in their weight, height, and age The app will automatically show you if the child's growth is normal or needs attention The app will tell you when to schedule the next visit for each child

File:

Can I model a workflow where visits reduce over time?

Yes, this works automatically once your program is set up.

Why it's possible:

Avni is smart enough to know that older children need fewer check-ups than babies The system can automatically adjust visit schedules based on the child's age This helps you focus more time on children who need it most How it works for you:

When you enroll a baby (0-2 years), the app will schedule monthly visits For toddlers (2-5 years), it will automatically change to every 3 months For older children, visits become less frequent (maybe once a year) You don't need to remember this - the app will show you the correct schedule Your dashboard will always show you who needs a visit and when

File:

How do I check if my app has the latest forms?

Yes, you can easily check and update your forms.

Why it's possible:

Avni automatically keeps your forms up to date The app shows you when new forms are available You can update forms even when you have poor internet connection How you can do it:

Open your Avni app Look for a "Sync" button (usually at the top or in settings) Tap "Sync" - this will check for new forms and updates If you see "Last synced: [recent date/time]" then your forms are current If sync hasn't happened recently, try: Make sure you have internet connection Pull down on the main screen to refresh Go to Settings and tap "Force Sync" The app will show you if any forms were updated

File:

Can I work in two different programs at the same time?

Yes, you can switch between different health programs easily.

Why it's possible:

Many health workers handle multiple programs (like child health AND maternal health) Avni lets you switch between programs without closing the app Each program has its own forms and people to track How you can do it:

On your main screen, look for a program selector (might say "Child Health" or "Maternal Care") Tap on it to see all programs you're assigned to Select the program you want to work on The app will show you only the people and forms for that program To switch programs, just tap the program selector again and choose a different one Your work in each program is kept separate - no mixing up of data

File:

How do I find all subjects assigned to me?

Yes, your app shows you exactly who you're responsible for.

Why it's possible:

Avni knows which areas and people you're assigned to work with The app filters to show only your assigned people You can search and sort to find people quickly How you can do it:

To find someone specific: Use the search box at the top Type their name or ID number To filter your list: Look for filter options (might show "All", "Due for visit", "Overdue") Select the filter you want The app organizes people by: Who needs a visit today Who is overdue for a visit Who you've recently visited

File:

Can I register a new subject without network?

Yes, you can register new people even without internet.

Why it's possible:

Avni works offline - it saves everything on your phone first When you get internet connection later, it uploads the data automatically This is very helpful when working in remote areas How you can do it:

Open your Avni app (works even without internet bars) Tap "Register" or "Add New Person" Fill out the registration form completely Tap "Save" - the information is stored on your phone You'll see the person added to your list immediately When you get internet connection: The app will automatically upload the new registration You'll see a sync notification The person's data is now safely stored on the server

File:

How do I sync partially completed forms?

Yes, your partially filled information is automatically saved.

Why it's possible:

Avni automatically saves what you've filled in as you type If you leave a form incomplete, your information stays there when you come back Only completely finished forms get sent to the server How it works:

Start filling out a form for someone If you can't complete it right now, just go back or close the form Your filled information is automatically saved on your phone Later, go back to that person's profile Tap on the incomplete form - you'll see all your previous answers are still there Continue filling from where you left off Only when you complete the entire form and submit it will it sync to the server Incomplete forms stay only on your phone until you finish them

File:

What happens if two users register the same subject?

Yes, the system will catch this and help fix it.

Why it's handled:

Sometimes two health workers might register the same person by mistake Avni is smart enough to detect when this might happen The system helps merge duplicate records safely How it works:

Before registering someone new, always search first: Use the search box to look for their name Check if they're already in the system If you accidentally register someone who already exists: The system will notice during sync Your supervisor will get a notification about possible duplicates Your administrator can then: Compare the two records Merge them into one correct record Keep all the important information from both Always search before registering to avoid this problem

File:

How do I mark a subject as deceased?

Yes, you can update someone's status when they pass away.

Why it's possible:

Unfortunately, this sometimes happens in health programs Avni needs to know so it stops scheduling visits for that person All their previous health records are kept for reporting How you can do it:

Find the person in your subject list Tap on their name to open their profile Look for "Update Status" or "Mark as Deceased" option Tap on it and confirm the action Fill in the date if asked Save the changes The person will: No longer appear in your active visit list Stop getting scheduled for future visits Their historical data remains for reports

File:

Can I view my assigned workload for the week?

Yes, your app shows you exactly what work you need to do each day.

Why it's possible:

Avni creates a personalized schedule for each health worker It shows you who to visit and when You can plan your week and track your progress.

You'll see: People who need visits today (usually highlighted) People due for visits this week Overdue visits (often shown in red) For each day, you can see: How many people to visit Their names and locations What type of visit (check-up, follow-up, etc.) As you complete visits, they'll be marked as done Your progress for the week is shown as completed vs. remaining tasks

File:

How do I reset my password in the field app?

After login >> home dashboard>> More >> Change password

File:

How do I identify subjects with overdue visits?

By default dashboard displays card to show overdue and due visits both for the subject selected

File:

How do I update subject address information?

By editing subject registration form

File:

Can I work offline for multiple programs simultaneously?

Yes, within same login you can do data entry for multiple programs

File:

How do I capture signatures in the Avni app?

Avni supports upload of signatures as files. However, direct signature using a stylus or finger on the mobile application does not exist

File:

Can I search for subjects by multiple fields (name + phone)?

Yes. On the App Designer, there are two options - the ability to design the exact fields that you can search subjects by, and also decide which fields should be present in the search result fields.

To set this up, go to App Designer -> Search Fields. Configure fields that are relevant to each subject typs. Go to Search Result Fields -> Add the fields you would want to see there.

Remember that search result fields only show registration fields, and not all questions on every form

File:

How do I report an error from the field app?

If you have a paid account, you can use the ticketing system that you have to raise the issue. If not, join the community Discord channel at https://discord.gg/4pcgcQW8pk. The community is pretty friendly, you should be able to find your answer

File:

Can I update my app without losing offline data?

App updates from the PlayStore work seamlessly. Remember not to delete or uninstall your app. If you do so, you will lose all unsynced data

File:

How do I check which data has not yet synced?

On the Avni app, the top right button is the sync button. If there is data that has not yet synced to the server, it will show a badge with the number of items left to sync. If you don't see a badge, the data is in sync with the server.

The app does not specifically show which items have not yet been synced

File:

Can I pause form filling and return later?

To achieve this, there is a feature called "Drafts". On your Admin-> Organisation Details, enable Draft Save option. It will automatically save the form, but will not be sent to the server until you finally save the details

File:

How do I use Avni with multiple languages at once?

There are a few options to achieve this.

If there are multiple users, and a user needs to work on a specific language, you will first need to set up that language and add translations to it. A user can go to their profile on the "More" menu of the home screen of the app, and choose the language of their choice.

You can also add your question in multiple languages within the question itself to achieve this if you want both languages to show up at once

File:

Can I hide sensitive information from field workers?

Since the data comes from field users, it is best not to collect sensitive information if it does not directly help with the programme. If it directly helps, then the field users will need to use them, therefore there is little value in hiding it from them.

If you consider one form in your application to be sensitive, and want to prevent a cadre of workers from accessing it, you can achieve this using User Groups and Permissions. These options are available in the Admin section

File:

How do I ensure GPS accuracy during data collection?

On Android: Settings → Location → Mode → High accuracy (uses GPS + WiFi + mobile networks).

Ask users to wait a few seconds outdoors before capturing, so the GPS can “lock on” to satellites.

Ensure permissions for location services are granted to the Avni app.

Cheaper phones may only give ±20–50m accuracy. Higher-end phones can get within 3–5m. If precision is critical (e.g., mapping households), budget for better devices.

File:

Can I undo the last change in a filled form?

You can go to the form and edit it back to what you want. A direct "Undo" option does not exist on Avni

File:

When I sign in to Avni, it says catchment not set up. What are catchments, and how do I set them up?

Avni works on the basis of catchments, where a user needs to be assigned a group of locations (called catchment). This ringfences the data on their phones to just the area they work in, reducing data usage and storage, preventing accidental changes, improving performance.

In order to work on the Avni field app, you first need to set up

  1. Locations
  2. Catchments

Once you set up a catchment, you should assign the catchment to the user through the Users section on the Admin screens

File:

Is my data stored encrypted on the phone?

Avni has been designed for people with relatively low mobile phone literacy and areas with patchy internet availability. The security measures have been designed to ensure they are able to use the app. As a result, the app does not ask for a login if you have not explicitly logged out.

Security features of the mobile phone is expected to keep the data private with the owner of the phone

If you prefer, or if you are at a place where your phone might be used by others, we recommend you logout of the app before handing over the phone to others.

File:

I signed out from Avni and am now at the field. The app is taking me to the sign-in screen. What can I do?

Unfortunately, signing in requires internet connection and cannot be performed offline

File:

Can I set up two factor authentication on Avni?

At this point, 2 factor authentication is unavailable on Avni

File:

Can I do push notifications on Avni?

Avni is designed to work in offline settings where the app is a primary work app. Any information to the user can be conveyed by directly showing it on the app.

The Broadcasts feature helps with any broadcasts, and Whatsapp broadcasts can be used to send Whatsapp messages to a user if required.

File:

How secure is the data on the cloud?

Data going to the cloud is encrypted. In the cloud databases, data is stored encrypted

File:

Who are Avni's competitors?

Avni is open source tool that provides similar to commcare, ODK

File:

How is Avni better than the competitors products /services?

Avni stands out for advanced case management features, customizable decision support algorithms, multi-language support, offline capabilities, full control over data, and a high level of security/privacy. It is fully open-source, making it more flexible and cost-effective compared to many proprietary competitors like CommCare.

File:

What is the difference between self service, assisted self service and Samanvay managed ?

Self Service: User independently configures and customizes the platform.

Assisted Self Service: Avni provides guidance and support, but the application is primarily built by the user.

Samanvay Managed Service: End-to-end solution where Avni sets up, customizes, and manages the platform for the organization.

File:

Can I add multiple languages to the app?

Yes , multiple languages can be added to the app and as per need toggle between different languages

File:

Will I get data collected on real-time basis to visuale and analyse

Data will available near to real time basis as offine data needs to be synced by users. Auto sync is available that happens every 1 hour but it depends on moinle phone sand app setting

File:

Is Avni free of cost? if not what are charges

No, it is an open source with 3 different options . More details https://avniproject.org/pricing

File: