0% found this document useful (0 votes)
24 views6 pages

Basic Strategy - Fast Tracking Approval

Fast Tracking Decision Engine Script
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views6 pages

Basic Strategy - Fast Tracking Approval

Fast Tracking Decision Engine Script
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Script 1 : Basic Strategy – Fast Tracking Condition

Scenario 1: Branching Logic in Decision/Segmentation Tree

Implementation Overview
Insert a Branch node early in the decision flow that evaluates fast-track conditions. If conditions are met, route directly to an
Outcome node or next-stage object, bypassing intermediate rule sets, models, or treatments.

Sample Data Structure Unsecured Loans


Customer Application Data:
- CustomerID: String
- CustomerType: String (NTB/ETB)
- PriorityFlag: Boolean (Priority Banking, Wealth Management)
- RiskBand: String (Low/Medium/High)
- CreditScore: Integer (300-850)
- MonthlyIncome: Decimal (IDR 5,000,000 - 100,000,000)
- ExistingRelationship: Boolean
- ProductType: String (Credit Card/KTA Personal Loan)
- EmploymentType: String (Karyawan/Wiraswasta/Professional/PNS)
- WorkExperience: Integer (years)
- DebtBurdenRatio: Decimal (percentage)
- ExistingCreditCardLimit: Decimal (IDR)
- BankingHistory: Integer (months with bank)
- BureauScore: String (Thick/Thin/None)

Credit Limit Guidelines


 Credit Card Limits:
o Entry Level: IDR 3,000,000 - 15,000,000 (2-3x monthly income)
o Standard: IDR 15,000,000 - 50,000,000 (3-4x monthly income)
o Premium: IDR 50,000,000 - 200,000,000 (4-5x monthly income)
 KTA Personal Loan Limits:
o Entry Level: IDR 10,000,000 - 50,000,000 (10-15x monthly income)
o Standard: IDR 50,000,000 - 200,000,000 (15-20x monthly income)
o Premium: IDR 200,000,000 - 500,000,000 (20-25x monthly income)
 Maximum DBR (Debt Burden Ratio): 30-40% of monthly income

Example Decision Flow Implementation

Fast-Track Branch Node Configuration


Branch Condition: "Fast Track Eligibility Check Unsecured Loans"

IF (PriorityFlag = TRUE AND MonthlyIncome >= 20000000)


OR (CustomerType = "ETB" AND RiskBand = "Low" AND CreditScore >= 750 AND BankingHistory >= 12)
OR (ExistingRelationship = TRUE AND MonthlyIncome >= 15000000 AND DebtBurdenRatio <= 30 AND
EmploymentType IN ("PNS","Karyawan"))
OR (ProductType = "Credit Card" AND ExistingCreditCardLimit >= 50000000 AND BureauScore = "Thick")
THEN
Route to: "Fast Track Approval Outcome"
ELSE
Route to: "Standard Processing Flow"

Sample Test Cases


Case 1: High-Income Priority Banking Customer (Credit Card)
Input Data:
- CustomerID: "CC001"
- CustomerType: "ETB"
- PriorityFlag: TRUE (Priority Banking)
- RiskBand: "Low"
- CreditScore: 780
- MonthlyIncome: 35000000 (IDR 35 million)
- ExistingRelationship: TRUE
- ProductType: "Credit Card"
- EmploymentType: "Professional"
- WorkExperience: 8
- DebtBurdenRatio: 25
- ExistingCreditCardLimit: 75000000
- BankingHistory: 36
- BureauScore: "Thick"

Flow Result: Routes to "Fast Track Approval Outcome"


Decision: Instant approval - Premium Credit Card
Approved Limit: IDR 140,000,000 (4x monthly income)
Processing Time: 3 minutes vs 2 hours standard
Interest Rate: 1.95% per month (preferential rate)

Case 2: Existing Customer KTA Personal Loan Fast-Track


Input Data:
- CustomerID: "PL002"
- CustomerType: "ETB"
- PriorityFlag: FALSE
- RiskBand: "Low"
- CreditScore: 720
- MonthlyIncome: 18000000 (IDR 18 million)
- ExistingRelationship: TRUE
- ProductType: "KTA Personal Loan"
- EmploymentType: "Karyawan"
- WorkExperience: 5
- DebtBurdenRatio: 28
- ExistingCreditCardLimit: 30000000
- BankingHistory: 24
- BureauScore: "Thick"

Flow Result: Routes to "Fast Track Approval Outcome"


Decision: Auto-approved KTA Personal Loan
Approved Limit: IDR 270,000,000 (15x monthly income)
Processing Time: 5 minutes vs 3 hours standard
Interest Rate: 1.25% per month
Tenor: Up to 60 months

Case 3: PNS (Civil Servant) Fast-Track


Input Data:
- CustomerID: "PL003"
- CustomerType: "NTB"
- PriorityFlag: FALSE
- RiskBand: "Low"
- CreditScore: 695
- MonthlyIncome: 12000000 (IDR 12 million)
- ExistingRelationship: FALSE
- ProductType: "KTA Personal Loan"
- EmploymentType: "PNS"
- WorkExperience: 10
- DebtBurdenRatio: 20
- ExistingCreditCardLimit: 0
- BankingHistory: 0
- BureauScore: "Thin"

Flow Result: Routes to "Fast Track Approval Outcome"


Decision: Auto-approved (PNS preference)
Approved Limit: IDR 144,000,000 (12x monthly income)
Processing Time: 10 minutes vs 4 hours standard
Interest Rate: 1.35% per month (PNS preferential rate)
Required Documents: Payslip + SK PNS only

Case 4: Standard Processing Required - High DBR


Input Data:
- CustomerID: "CC004"
- CustomerType: "NTB"
- PriorityFlag: FALSE
- RiskBand: "Medium"
- CreditScore: 650
- MonthlyIncome: 8000000 (IDR 8 million)
- ExistingRelationship: FALSE
- ProductType: "Credit Card"
- EmploymentType: "Wiraswasta"
- WorkExperience: 3
- DebtBurdenRatio: 45
- ExistingCreditCardLimit: 0
- BankingHistory: 0
- BureauScore: "None"

Flow Result: Routes to "Standard Processing Flow"


Decision: Requires full underwriting review
Processing Time: Standard 4-6 hours
Required Actions: Income verification, business documents, guarantor

Case 5: Wealth Management Customer - Ultra Fast-Track


Input Data:
- CustomerID: "CC005"
- CustomerType: "ETB"
- PriorityFlag: TRUE (Wealth Management)
- RiskBand: "Low"
- CreditScore: 820
- MonthlyIncome: 85000000 (IDR 85 million)
- ExistingRelationship: TRUE
- ProductType: "Credit Card"
- EmploymentType: "Professional"
- WorkExperience: 15
- DebtBurdenRatio: 15
- ExistingCreditCardLimit: 150000000
- BankingHistory: 60
- BureauScore: "Thick"

Flow Result: Routes to "Ultra Fast Track Outcome"


Decision: Instant approval - Platinum/World Elite Card
Approved Limit: IDR 350,000,000 (4x monthly income)
Processing Time: 1 minute
Interest Rate: 1.75% per month
Special Benefits: No annual fee, premium rewards

Decision Tree Structure for Indonesian Unsecured Loans


Start
├── Fast Track Branch Node
│ ├── [TRUE] → Fast Track Outcome
│ │ ├── Ultra Fast (Wealth Mgmt) → 1 min processing
│ │ ├── Priority Fast (Priority Banking) → 3 min processing
│ │ ├── ETB Fast (Existing Low Risk) → 5 min processing
│ │ └── PNS Fast (Civil Servant) → 10 min processing
│ └── [FALSE] → Standard Flow
│ ├── Income Verification (Salary Certificate/Tax Return)
│ ├── Bureau Check (BI Checking/SLIK OJK)
│ ├── Employment Verification
│ ├── DBR Calculation & Affordability
│ ├── A-Score/B-Score Calculation
│ └── Final Decision (2-6 hours)

Scenario 2: Conditional Execution Inside Rule Sets/Code Files

Implementation Overview
Allow the decision flow to continue through all nodes, but use conditional expressions within Rule Sets or Custom Code
Files. When fast-track criteria are met, internal logic is skipped while maintaining structural flow.

Sample Rule Set Implementation


Rule Set 1: "Risk Assessment Rules"
javascript
// Custom Code File: IndonesianRiskAssessmentRules.js

function executeRiskAssessment(customerData) {
var fastTrackEligible = checkFastTrackEligibility(customerData);

if (fastTrackEligible) {
// Skip complex risk calculations, return appropriate defaults
var riskScore = calculateFastTrackRiskScore(customerData);
return {
riskScore: riskScore,
riskBand: determineRiskBand(riskScore),
skipFlag: true,
processingTime: 30,
reviewRequired: false,
fastTrackReason: getFastTrackReason(customerData)
};
} else {
return performFullRiskAssessment(customerData);
}
}

function calculateFastTrackRiskScore(data) {
// Indonesian specific fast-track scoring
if (data.EmploymentType === "PNS") return 90; // Civil servants lowest risk
if (data.PriorityFlag && data.MonthlyIncome >= 50000000) return 95; // Wealth management
if (data.CustomerType === "ETB" && data.BankingHistory >= 36) return 88; // Long relationship
return 85; // Default fast-track score
}

function checkFastTrackEligibility(data) {
// Indonesian specific conditions
return (data.PriorityFlag === true && data.MonthlyIncome >= 20000000) ||
(data.EmploymentType === "PNS" && data.WorkExperience >= 5) ||
(data.CustomerType === "ETB" && data.CreditScore >= 750 && data.DebtBurdenRatio <= 30) ||
(data.ExistingCreditCardLimit >= 50000000 && data.BureauScore === "Thick");
}
Rule Set 2: "Indonesian DBR and Limit Calculation Rules"
javascript
// Custom Code File: IndonesianLimitCalculationRules.js

function executeAffordabilityCheck(customerData) {
var fastTrackEligible = checkFastTrackEligibility(customerData);

if (fastTrackEligible) {
return calculateFastTrackLimit(customerData);
} else {
return performDetailedAffordabilityCheck(customerData);
}
}

function calculateFastTrackLimit(data) {
var baseLimit = 0;
var maxDBR = getMaxDBR(data.EmploymentType);
var availableDBR = (data.MonthlyIncome * maxDBR / 100) - getCurrentDebtPayment(data);

if (data.ProductType === "Credit Card") {


// Credit Card limit calculation
baseLimit = Math.min(
data.MonthlyIncome * getCCMultiplier(data),
availableDBR * 36 // 36 months average CC usage
);
// Indonesian CC specific caps
if (data.MonthlyIncome <= 10000000) baseLimit = Math.min(baseLimit, 30000000);
else if (data.MonthlyIncome <= 25000000) baseLimit = Math.min(baseLimit, 100000000);

} else if (data.ProductType === "KTA Personal Loan") {


// KTA limit calculation
var maxTenor = getMaxTenor(data.EmploymentType);
baseLimit = Math.min(
data.MonthlyIncome * getKTAMultiplier(data),
availableDBR * maxTenor
);

// KTA specific caps based on income tier


if (data.MonthlyIncome <= 15000000) baseLimit = Math.min(baseLimit, 150000000);
else if (data.MonthlyIncome <= 50000000) baseLimit = Math.min(baseLimit, 500000000);
}

return {
approvedLimit: Math.round(baseLimit / 1000000) * 1000000, // Round to nearest million
maxDBR: maxDBR,
availableDBR: availableDBR,
calculationMethod: "Fast Track - Indonesian Standard",
skipFlag: true
};
}

function getCCMultiplier(data) {
if (data.PriorityFlag) return 5.0; // Wealth management
if (data.EmploymentType === "PNS") return 3.5; // Civil servant
if (data.CustomerType === "ETB") return 4.0; // Existing customer
return 3.0; // Standard multiplier
}

function getKTAMultiplier(data) {
if (data.PriorityFlag) return 25.0; // Wealth management
if (data.EmploymentType === "PNS") return 20.0; // Civil servant
if (data.CustomerType === "ETB") return 18.0; // Existing customer
return 15.0; // Standard multiplier
}

function getMaxDBR(employmentType) {
switch(employmentType) {
case "PNS": return 40; // Civil servants higher DBR
case "Karyawan": return 35; // Employees
case "Professional": return 35; // Professionals
case "Wiraswasta": return 30; // Self-employed lower DBR
default: return 30;
}
}

Rule Set 3: "Indonesian Bureau and Document Verification Rules"


javascript
// Custom Code File: IndonesianBureauRules.js

function executeBureauCheck(customerData) {
var fastTrackEligible = checkFastTrackEligibility(customerData);

if (fastTrackEligible) {
return {
bureauStatus: "Fast Track Approved",
slikOjkStatus: customerData.BureauScore,
biCheckingRequired: false,
documentVerification: getMinimalDocuments(customerData),
skipFlag: true,
verificationTime: "Real-time"
};
} else {
return performFullBureauCheck(customerData);
}
}

function getMinimalDocuments(data) {
var docs = ["KTP", "NPWP"];

switch(data.EmploymentType) {
case "PNS":
docs.push("SK PNS", "Slip Gaji");
break;
case "Karyawan":
docs.push("Slip Gaji", "Surat Keterangan Kerja");
break;
case "Professional":
docs.push("Surat Izin Praktik", "SPT Tahunan");
break;
case "Wiraswasta":
docs.push("SIUP", "Laporan Keuangan", "Rekening Koran 3 bulan");
break;
}

if (data.PriorityFlag) {
docs = ["KTP", "NPWP"]; // Minimal docs for priority customers
}

return docs;
}

You might also like