Life Cycle
Example of a Rebate Agreement that is paid semi-annually.
Agreement
Before the year starts:
the agreement conditions are negotiated
the agreement is approved
During the validity of the agreement (i.e. usually a year period):
the user can open the read-only agreement to see overview of the rebate estimations and accruals
Rebate Record
During the validity of the RR:
the Rebate Record is periodically recalculated to have the new rebate estimations & accruals. It uses the actual data of Transactions available to calculate the estimations & accruals. The results of those recalculations are usually presented to business users on dashboards.
the RR can create and calculate also 1 or more PayoutRecords, if it need to calculate the accruals on more fine-grained level.
After the validity:
the rebate money amount is reviewed and approved by a business user.
once approved, the rebate amount is exported to expternal system to be paid to the customer.
Entity Relationship
Below is a schema that gives a broad perspective of the domain types.