Scorecards
A Scorecard converts several business factors into one explainable numeric result. Each factor contributes a partial score, and the platform adds those contributions to the initial score to produce FinalScore.
Common uses include credit and fraud risk, lead prioritization, customer health, application quality, and supplier assessment.
When to use a Scorecard
Use a Scorecard when stakeholders think in points or weighted bands: “age 25–40 adds 10 points” or “three overdue payments subtract 30 points.” Use a Decision Table when combinations directly produce categories, or a Ruleset when the main outcome is a series of mutations.
A common pattern is:
Scorecard calculates FinalScore
↓
Decision Table converts the score into Low / Medium / High
↓
Workflow routes each band to the next action
Configure the initial score
The Initial Score is the starting value before partial scores are applied. Use 0 for additive scoring. Use another value only when the business model intentionally starts from a baseline, such as 100 points with penalties subtracted.
Document whether higher means better or worse. A model that mixes positive “quality” points and positive “risk” points is difficult to interpret.
Add partial scores
Each partial-score section selects a model attribute and includes a description. Add cases for exact values, ranges, or the all-other-values fallback. Each case has a label and numeric score.
Labels are important evidence. Stable income: 5+ years communicates more than Case 3, particularly when a reviewer sees the debug result.
Worked example: application risk
Assume higher scores mean higher risk and the initial score is 0.
Age
| Value/range | Label | Score |
|---|---|---|
| Under 21 | Limited credit history | 20 |
| 21–65 | Standard age range | 0 |
| Over 65 | Additional affordability review | 10 |
| All other values | Age unavailable | 25 |
Debt-to-income ratio
| Value/range | Label | Score |
|---|---|---|
| 0–0.20 | Low debt | 0 |
| Over 0.20–0.40 | Moderate debt | 15 |
| Over 0.40–0.60 | High debt | 35 |
| Over 0.60 | Very high debt | 60 |
| All other values | Ratio unavailable | 40 |
Payment history
| Value | Label | Score |
|---|---|---|
| Clear | No adverse history | 0 |
| Minor | Minor late payments | 15 |
| Adverse | Significant adverse history | 50 |
| All other values | Unknown history | 30 |
Request:
{
"age": 34,
"debtToIncomeRatio": 0.47,
"paymentHistory": "Minor"
}
Calculation:
Initial score 0
Age 21–65 0
Debt ratio over 0.40–0.60 35
Minor payment history 15
FinalScore 50
Response:
{
"FinalScore": 50
}
Ranges and fallbacks
Avoid gaps and accidental overlaps. Decide which case owns an exact boundary such as 0.40 and verify it in Testing Zone. Add an all-other-values case when missing, unknown, or new categories must have a deliberate score.
Bulk input can accelerate entry of long bands or category lists, but review the generated cases. Sorting visually does not correct overlapping definitions by itself.
Convert a score into a decision
A Scorecard produces a number, not an entire business process. In a Workflow, follow it with a Condition or Rule node:
FinalScore < 30 → Low risk → automatic approval
FinalScore 30–59 → Medium risk → manual review
FinalScore >= 60 → High risk → decline
Keep the banding logic separate when policy owners need to change thresholds without changing how points are calculated.
Test and explain
Save tests for:
- exact lower and upper range boundaries;
- a value in every band;
- missing and unknown values;
- the lowest and highest possible score;
- combinations that land exactly on a downstream decision threshold.
Debug output identifies each partial-score contribution. Use the labels and descriptions to explain why the final score was produced.
Common problems
| Symptom | Check |
|---|---|
| Score is higher/lower than expected | Initial score, overlapping ranges, and sign of each contribution |
| A factor contributes nothing | Field mapping, missing input, or no matching/fallback case |
| Exact boundary enters wrong band | Inclusive/exclusive boundary configuration |
| Workflow route is wrong | Map FinalScore correctly and inspect downstream thresholds |
| Reviewers cannot explain the result | Add meaningful partial-score descriptions and case labels |