Calculate commission based on sale amount, region, and agent tier. #246
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Action Pack:
Calculate commission based on sale amount, region, and agent tier.
Base tiers (by amount, USD):
< 1,000 → 3%
1,000–4,999.99 → 5%
5,000–49,999.99 → 7%
≥ 50,000 → 10%
Region adders (percentage points):
NA +5%, EMEA +6%, LATAM +4%, APAC +3%
Agent tier adders (percentage points):
Tier 1 +7%, Tier 2 +4%, Tier 3 +2%, Tier 4 +0%
===== Examples =====
calculateCommission(800, 'NA', 1);
-> { commissionRate: 0.15, saleAmount: 800.00, commissionAmount: 120.00, ... }
Explanation: 3% base + 5% NA + 7% Tier1 = 15%
calculateCommission(6000, 'EMEA', 2);
base 7% + EMEA 6% + Tier2 4% = 17%
=> commissionAmount = 6000 * 0.17 = 1020.00
calculateCommission(55000, 'APAC', 4);
base 10% + APAC 3% + Tier4 0% = 13%