Scope
Provides a central repository of subscription package definitions with pricing of individual items covering all product domains (deposits, loans, cards, transactions, etc.).
Subscription definition is structured as follows
Subscription structure = included products & services in different tiers/tariffs
Examples of included products & services: number of free payments, number of free ATM withdrawals, number of free physical cards, availability of BNPL, availability of personal loan, etc
Subscription fee per tier/tariff
Limits for individual items included in a tier/tariff + price beyond/above that (e.g. 10 bill payments included for free + 20 PHP per bill payment above 10, etc)
Bonus operations may be awarded (e.g. from engagement or BO)
Maintains current & future subscriptions purchased by the customer
Responsible for charging the subscription fees periodically
Supervisor smart contract acting as a “Dept Manager” is responsible for the actual fee charging and dealing with situations where there is not enough balance, etc.
Subscription fees are due at the start of subscription period
Maintains current progress of spent products & services included in the purchased subscription
Maintains current progress of spent products & services included in redeemed engagement benefits
The subscription fee can be waived by the customer a limited number of times
A free subscription fee can be awarded to the customer (e.g. from engagement or BO)
Subscriptions can be frozen
Customer with a frozen subscription doesn’t have to pay the monthly subscription fee
Several conditions need to be fulfilled so customers can freeze their subscription ( e.g. no founds, no loans, no pending transactions)
Overview
Loans domain specifics
There is a concept of customer’s credit-score with essential impact on the pricing and availability of loan products to individual customers. The basic idea is the ability to define and execute business rules to calculate interest rate, min-max loan amount and min-max loan term for a particular customer based on the customer’s current credit-score, purchased subscription and redeemed engagement benefits.
The customer’s credit-score is calculated and managed by the Risk domain. Integration with the Risk domain’s services is in scope of Loan Manager service capabilities.
Product Manager takes the credit-score as one of the input parameter’s provided by Loan Manager to evaluate the availability and pricing of loan products.
Component | Description |
---|---|
Mobile App | Customer facing mobile banking app. |
Backoffice Web App | Backoffice web application used by bank’s employees. |
Product manager | Main micro-service in the Products domain. Entry point for all communication to the domain. Responsible for orchestrating the processes within the domain. E.g. The customer buys a benefit → Product manager deducts the price from customer’s points and applies the benefit |
Subscription Access | Access layer to storage of the currently active subscription for each customer |
Subscriptions | Data store dedicated to the persistence of subscription data. |
Scheduler | Central scheduler will be responsible for triggering of planned or recurring activities realized by Product Manager. |
TM Vault Access | Client library responsible for technical aspects of communication with TM Vault. Integration with TM Vault required in order to charge subscription fees. |
TM Vault | Core banking system. |
Audit Log Events | Product Manager publishes audit relevant events to be stored by Audit Log. |
Product Events | Events representing significant activities realized by the Product domain are published to the corresponding topics. |
Attachments:
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
~drawio~557058:27349720-65fa-4129-b290-8abf5953e7fb~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
~product-manager.tmp (application/vnd.jgraph.mxfile)
product-manager (application/vnd.jgraph.mxfile)
product-manager.png (image/png)