Commission Configuration
Access Prerequisites
- Permission (module):
manageCommissions(the screen is visible withviewCommissionsORmanageCommissions; to create/delete the management module is required) - License/Feature: None
- Menu container: GENERAL → group Commissions and Rewards
What it is / when to use
This screen defines the platform's multilevel commission table: for each level in the referral chain you register a value (as a percentage) that will be automatically distributed when an end user performs a commission-generating action (deposit, purchase, order, etc.).
The model works in cascade: level 1 is the direct referrer of the user who performed the action; level 2 is whoever referred that referrer; and so on. Each level has its own percentage. Use this screen when you need to create the referral bonus structure or adjust the percentages for each tier.
Prerequisites
- Permission:
manageCommissionsregistered for the operator role (remember: permission is dual — CPM enum on the backend + dynamic module in the DB). Without the management module, the screen opens in read-only mode and the create/delete buttons do not appear. - License/Feature: None specific.
- Dependencies on other screens: the referral chain is formed when users sign up using another user's referral code. The level configuration here only has practical effect if real referral chains exist.
Step by step
- Access the menu Commissions and Rewards → Commission Configuration (
/manage-commissions). - The table lists the already-configured levels (sorted by level number) with the Level and Value columns.
- Click New to open the level creation modal.
- Enter the Level (integer ≥ 1) and the Value (percentage > 0) and confirm.
- To remove a level, use the trash icon on the corresponding row and confirm in the footer.
Fields
| Field | What it is | Required? | System/backend effect |
|---|---|---|---|
Level (level_id) | Position in the referral chain (1 = direct referrer, 2 = referrer's referrer, …) | Yes | Configuration key in CustomerProfileService (CPM). It is the logical PK of the level — creating an already-existing level updates/collides; deletion uses this number. The modal validates level >= 1. |
Value (amount) | Commission percentage paid to users at that level | Yes | Absolute percentage applied to the calculation base of the generating operation. The modal validates, via BigNumber, that the value is greater than 0. Persisted as a level configuration in CPM and consumed by the multilevel commission engine when processing an action. |
Actions and modals
- New: opens the
Create commissionmodal. Requires Level and Value to be filled in; the confirm button only enables whenlevelis defined andamount > 0(BigNumber validation). On save, callscreateCommissionsConfigurationand reloads the list. - Delete (trash icon): opens a confirmation sheet (bottom-sheet). On confirmation, calls
deleteCommissionConfiguration(level_id)and reloads the list.
Business rules / notes
Attention
- The value is a percentage, not a fixed monetary amount. It is applied to the base of the operation that triggers the commission.
- The level number is the identity of the record: registering a duplicate level may overwrite the existing configuration. Keep the sequence (1, 2, 3, …) without gaps so that the cascade works as expected.
- This table does not pay commissions on its own — it only defines the percentages. The actual generation happens when an end-user action triggers the multilevel engine; the resulting entries appear in Commission Payment.
- Financial values: the percentage and derived values are treated as BigNumber — no rounding in the interface; check the decimal places when auditing payments.
- Interaction with the house spread: in market operations, the multilevel commission coexists with the house spread/revenue. The commission cost must be sized considering the operation margin so as not to compromise revenue.