USCT-01-Registration
USE CASE STEP | USE CASE: Unconditional Social Cash Transfer STEP: REGISTRATION TYPE: ON-DEMAND REGISTRATION |
PRECONDITIONS (list of conditions that MUST be met in order to be able to successfully execute this process) |
|
DATA INPUTS | Beneficiary
-Payment info Bank account-
|
ACTORS | Human:
System:
|
NORMAL COURSE | The registration form screen for program provides a list of eligibility criteria required to participate in the program. (person verification, required documents). Step 1: Applicant is authenticated. Requires ID [Identity BB]Feature: Get authentication token
Scenario: Applicant use credentials to get token
Given: Applicant has been registered in Fundational ID System
And Registration App is connected to Registry BB
When: Applicant enters data required for authentication
Then: The Identity BB returns Auth Token and National Identification Number Relevant Identity BB endpoints:
Relevant Digital Registry endpoints:
Step 2: Consent Agreement for fetching the relevant details and data processing is pulled and signed by applicantStep 2.1: Fetch relevant consent agreement for USCT registration.Feature: Get Consent Agreement
Scenario: Registration App retrieves Consent Agreement for applicant
Given an Agreement for beneficiary application registration exists in Consent BB
And Registration App has Applicant's <ID> and auth token for the registration session
When Registration App fetches a Consent Agreement for user registration
Then Registration App gets a valid Draft Consent Agreement associated with Applicant's ID Relevant Consent BB endpoints:
Step 2.2: Sign consent agreement digitallyStep 2.2.1 (optional): Create individual in Consent systemFeature: Create Applicant entry in the Consent BB registry
Scenario: Registration App create Individual in Consent BB on behalf of the Applicant
Given Applicant is not recorded in Consent BB
When consent agreement is send
Then Consent BB creates new Individual entity in Consent system Relevant Consent BB endpoints:
Step 2.2.2: Sign consent agreement for existing individual Relevant Consent BB endpoints:
Step 3: When agreement is given core user information is pulled via API from the system (Digital Registry). Applicant fills required data (Register application) for USCT for program eligibility decision, contact and payment.Relevant Endpoints:
Step 4: Form with registration is sent to the Registration BB and validated. Applicant gets information about the success of submission.Relevant Endpoints:
Step 5: Application is submitted and awaiting approvalRelevant endpoints:
Step 6: Registration form is approved by workerRelevant Endpoints:
Step 6.1 Workflow distributed data and notified applicant Relevant Endpoints [MessagingBB]:
|
ALTERNATIVE COURSE | TBA (Worker didn’t approve registration form, workflow failed in the process) |
DATA OUTPUT | The successful completion of the registration process will result in validated Applicant data stored in digital-registry relevant for USCT decision making, new consent record for USCT enrollment purposes, confirmation and issuance of a program-specific ID that can be used by the Applicant future interactions with the program. |
POST-CONDITIONS (SUCCESS CRITERIA) | Applicant can be enrolled in USCT program based on submitted registration data |
EXCEPTIONS |
|
RELATED BBs |
|
SEQUENCE DIAGRAM |
sequenceDiagram actor A as Applicant participant App as Registration App participant IBB as Identity BB participant RBB as Registration BB participant DRBB as Digital Registries BB participant CBB as Consent BB participant PBB as Payments BB participant MBB as Messaging BB participant WBB as Workflow BB actor B as Worker
A->>App: Start Registration activate App App->>IBB: Request person authentication activate IBB IBB->>A: Request ID and auth details A->>IBB: Provide auth data IBB->>IBB: Authenticate using population registry Note right of IBB: More details in ID BB 6.3.1 Use Case IBB->>App: Authentication token deactivate IBB App->>CBB: Request consent agreement activate CBB CBB->>A: Consent agreement A->>CBB: Signed consent agreement opt Individual doesn't exist CBB->>A: ConsentBB Individual Form A->>CBB: Filled ConsentBB Individual Form CBB->>CBB: Create individual end CBB->>CBB: Create ConsentRecord CBB->>App: ConsentRecord confirmation deactivate CBB App->>RBB: Request form template activate RBB RBB->>App: Form template App->>DRBB: Request base personal data activate DRBB DRBB->>App: Base personal data deactivate DRBB App->>A: Partially filled form A->>App: Filled form App->>RBB: Submit form loop Form Validation RBB->>App: Request adjustments App->>A: Request adjustments A->>App: Adjustments App->>RBB: Submit updated form end RBB->>App: Application submition confirmation App->>A: Confirm registration submission App--)WBB: Start registration form submition process deactivate App activate WBB WBB->>DRBB: Change form status to `Needs Approval` WBB->>MBB: Request worker notification activate MBB MBB--)B: Notify worker about new form awaiting approval MBB->>WBB: Confirm notification sent deactivate MBB deactivate WBB B->>App: Approve form activate App App--)WBB: Start form approval process activate WBB
deactivate App
par Approve form WBB->>DRBB: Save Application activate DRBB DRBB->>WBB: Confirmation deactivate DRBB and Save Payment details WBB->>PBB: Save Payment method details activate PBB PBB->>WBB: Confirmation deactivate PBB and Save Messaging details WBB->>MBB: Save communication method activate MBB MBB->>WBB: Confirmation deactivate MBB end par Notify applicant WBB->>MBB: Request applicant notification activate MBB MBB--)A: Send notification MBB->>WBB: Confirm notificaiton sent deactivate MBB and Notify worker WBB->>MBB: Notify worker about succesfull form approval activate MBB MBB--)B: Send notification MBB->>WBB: Confirm notificaiton sent deactivate MBB end deactivate WBB
|
LINK TO CODE |
|
|
|