-
Notifications
You must be signed in to change notification settings - Fork 441
Use Cases
Each use case in the core module is a standalone feature of the wallet framework.
Each use case has a set of request values that can be passed to the use case execution and a set of response value that the client can get back after the execution is completed. These use cases should be executed from the presenters in the client app by using UseCaseHandler
Currently, the following use cases are available -
-
AuthenticateUser - Authentication using the self service apis.
RequestValues - username, password
ResponseValues - The authenticated user -
FetchAccount - Fetches the wallet account for the client using the wallet savingsProductId defined in the core module.
RequestValues - clientId ResponseValues - The wallet account associated with the client -
FetchAccounts - Fetches all the savings account for the client
RequestValues - clientId
ResponseValues - List of accounts -
SearchClient - Finds the client using the vpa/mobileNo provided
RequestValues - vpa/externalId of the client
ResponseValues - List of search results -
TransferFunds - Makes a funds transfer between the two wallet accounts using third party transfer from self service apis.
RequestValues - fromClientId, toClientId, amount -
FetchAccountTransactions - Fetches the recent transactions for the account
RequestValues - accountId
ResponseValues - List of transactions -
FetchClientData - Fetches the details of a client
RequestValues - clientId (optional)
ResponseValues - Client details -
RegisterUser - Creates a new user in the fineract backend: creates a new self service user, creates a new client and creates a new wallet account.
RequestValues - RegisterPayload -
BlockUnblockCommand - Blocks or Unblocks an account of a client
RequestValues - accountId, command (Block/Unblock) -
FetchMerchants - Fetches all the registered merchants
RequestValues - None ResponseValues - List of merchants -
FetchAccountTransfer - Fetches transfer details of a specific transaction
RequestValues - transferId ResponseValues - Transfer Details -
FetchTransactionReceipt - Fetches receipt of a transaction
RequestValues - transactionId ResponseValues - Receipt PDF -
FetchClientImage - Fetches client's image
RequestValues - clientId ResponseValues - Image decoded in Base64 -
UpdateClient - Updates mobileNo or any other field of a client RequestValues - clientEntity containing the fields one wants to update (example: mobileNo), clientId
-
FetchClientImage - Fetches client's image
RequestValues - clientId ResponseValues - Image decoded in Base64 -
FetchInvoice - Fetches a specific invoice of a client RequestValues - uniquePaymentLink ResponseValues - Invoice
-
FetchInvoices - Fetches all the invoices of a client
RequestValues - clientId ResponseValues - List of invoices -
FetchKYCLevel1Details - Fetches KYC level 1 details of a client RequestValues - clientId ResponseValues - KYC Level 1 details
-
UpdatesKYCLevel1Details - Updates KYC level 1 details of a client
RequestValues - clientId -
UploadKYCDocs - Uploads KYC documents of a client
RequestValues - entityType, clientId, docname, identityType, file -
UploadKYCLevel1Details - Upload KYC level 1 details of a client RequestValues - clientId, KYC level 1 details
-
FetchNotifications - fetches all the notifications of a client RequestValues - clientId ResponseValues - List of notifications
-
AddCard - Adds a new credit card RequestValues - clientId, card details
-
DeleteCard - Deletes a credit card of a client RequestValues - clientId, cardID
-
EditCard - Updates a credit card of a client RequestValues - clientId, new card details
-
FetchSavedCards - Fetches saved credit cards of a client RequestValues - clientId ResponseValues - List of cards
-
RequestOTP - Sends an OTP on client's registered mobile number or email Id RequestValues - deliveryMethod
-
ValidateOTP - Validates an OTP token
RequestValues - token ResponseValues - accessToken -
UpdateUser - Updates email Id or any other field of a user
RequestValues - userEntity containing the fields one wants to update (example: email), clientId