The questions should be stored in Wallet API DB. There should be a db script (like a migration) that a person can run manually using Mongo DB GUI tools.
Once user completes a questionnaire Wallet makes a request to ~ICO~ Wallet API with ~user email, answers, and~ an EQB address for the reward and Wallet API makes a payment automatically.
User cannot answer the same questionnaire more than once.
~System should save user's answers on fly so that user can stop and continue later.~ (removed)
UPDATE-1 API design (roughly):
one collection for questionnaires (id, description, status=active|closed, reward)
one collection for questionnaire questions (questionnaireId, ...)
one collection for user questionnaire (questionnaireId, started, completed, rewarded)
one collection for user answers (~linked to userQuestionnaire~)
UPDATE-2 (2018-08-01)
we do not need to link answers to users. Thus user can only complete questionnaire at one shot (no saving individual answers on go); user cannot get back and see/change his answers.
once user completes the questionnaire we need to set a flag that its completed and record all his answers as a set (linked together, but not to a user). So, user answers have to be linked to the original questionnaire, and not to userQuestionnaire.
Activities that will create rewards for the user:
Details
1. Questionnaire