Mova Credit Scoring
by @mova-compact
Submit a loan application for AI credit risk scoring and human-gated credit decision via MOVA HITL. Trigger when the user mentions a loan application, credit...
clawhub install mova-credit-scoringπ About This Skill
name: mova-credit-scoring description: Submit a loan application for AI credit risk scoring and human-gated credit decision via MOVA HITL. Trigger when the user mentions a loan application, credit assessment, borrower review, or asks to score credit risk. Human credit officer approval is mandatory before any credit decision is issued. license: MIT-0 metadata: {"openclaw":{"plugin":{"name":"MOVA","installCmd":"openclaw plugins install openclaw-mova"},"dataSentToExternalServices":[{"service":"MOVA API (api.mova-lab.eu)","data":"applicant ID, financial data (income, debt, requested amount), bureau score, AI risk band, human decision, audit metadata"},{"service":"Credit scoring model connector (read-only)","data":"applicant financial features evaluated against scoring model"},{"service":"Credit bureau connector (read-only)","data":"applicant ID used for bureau score and credit history lookup"}]}}
> Contract Skill β A ready-to-use MOVA HITL workflow. Requires the openclaw-mova plugin.
MOVA Credit Scoring
Submit a loan application to MOVA for automated credit risk scoring β with explainable risk band, bureau check, and a mandatory human credit officer decision gate backed by a full audit trail.
What it does
1. Risk scoring β AI evaluates income, debt-to-income ratio, bureau score, and repayment history against the scoring model 2. Risk band β applicant assigned a risk band (excellent / good / fair / poor / very_poor) with score 0β1000 3. Credit limit recommendation β AI suggests approved amount based on risk band and requested amount 4. Human gate β credit officer reviews the scoring breakdown and chooses: approve / approve at reduced limit / reject / request more info 5. Audit receipt β model version, all input features, the human identity, and the decision timestamp are logged for regulatory accountability
Mandatory escalation rules enforced by policy:
Requirements
Plugin: MOVA OpenClaw plugin must be installed in your OpenClaw workspace.
Data flows:
api.mova-lab.eu (MOVA platform, EU-hosted)Demo
Step 1 β Application submitted: APP-2026-0041, β¬25K, bureau score 612 !Step 1
Step 2 β AI scoring: risk band fair, DTI 0.017, approve_reduced recommended at β¬5K !Step 2
Step 3 β Decision recorded: approve_reduced + audit receipt !Step 3
Quick start
Say "score credit application APP-2026-0041 for applicant CUST-1501" and provide:
applicant_id: CUST-1501
application_id: APP-2026-0041
requested_amount_eur: 25000
annual_income_eur: 48000
monthly_debt_eur: 800
bureau_score: 610
employment_status: employed
The agent submits the application, shows the AI risk band and score breakdown, then asks for the credit officer's decision.
Why contract execution matters
What the user receives
| Output | Description | |--------|-------------| | Credit score | 0β1000 numerical score | | Risk band | excellent / good / fair / poor / very_poor | | Debt-to-income ratio | Calculated from input data | | Bureau result | Bureau score + credit history summary | | Anomaly flags | high_dti, low_bureau_score, short_history, missing_bureau | | Findings | Structured list with severity codes | | Recommended credit limit | AI-suggested approved amount | | Recommended action | AI-suggested decision | | Decision options | approve / approve_reduced / reject / request_info | | Audit receipt ID | Permanent signed record of the credit decision | | Compact journal | Full event log: scoring β bureau check β human decision |
When to trigger
Activate when the user:
Before starting, confirm: "Submit application [APP-ID] for MOVA credit scoring?"
If applicant ID or requested amount is missing β ask once.
Step 1 β Submit loan application
Call tool mova_hitl_start_credit with:
application_id: application reference (e.g. APP-2026-0041)applicant_id: customer/borrower IDrequested_amount_eur: loan amount requestedannual_income_eur: applicant annual incomemonthly_debt_eur: existing monthly debt obligationsbureau_score: credit bureau score (optional)employment_status: employed / self_employed / unemployed / retiredloan_purpose: optional (mortgage, personal, auto, business)Step 2 β Show scoring result and decision options
If status = "waiting_human" β show risk scoring summary and ask to choose:
Application: APP-ID
Applicant: CUST-ID
Score: SCORE / 1000 (RISK_BAND)
DTI ratio: DTI%
Bureau score: BUREAU_SCORE
Recommended limit: EUR AMOUNT
Findings: [list with severity]
Recommended action: ACTION β RECOMMENDED
| Option | Description |
|---|---|
| approve | Approve at requested amount |
| approve_reduced | Approve at reduced credit limit |
| reject | Reject application |
| request_info | Request additional financial information |
Call tool mova_hitl_decide with:
contract_id: from the response above β this is ctr-crd-xxxxxxxx, NOT the application IDoption: chosen decisionreason: credit officer reasoningStep 3 β Show audit receipt
Call tool mova_hitl_audit with contract_id.
Call tool mova_hitl_audit_compact with contract_id for the full signed scoring chain.
Connect your real credit systems
By default MOVA uses a sandbox mock. To route scoring against your live infrastructure, call mova_list_connectors with keyword: "credit".
Relevant connectors:
| Connector ID | What it covers |
|---|---|
| connector.credit.scoring_model_v1 | Internal credit scoring model |
| connector.credit.bureau_v1 | External credit bureau score and history |
Call mova_register_connector with connector_id, endpoint, optional auth_header and auth_value.
Rules
ctr-crd-xxxxxxxx from the mova_hitl_start_credit response β NOT the application IDπ‘ Examples
Say "score credit application APP-2026-0041 for applicant CUST-1501" and provide:
applicant_id: CUST-1501
application_id: APP-2026-0041
requested_amount_eur: 25000
annual_income_eur: 48000
monthly_debt_eur: 800
bureau_score: 610
employment_status: employed
The agent submits the application, shows the AI risk band and score breakdown, then asks for the credit officer's decision.
π Constraints
ctr-crd-xxxxxxxx from the mova_hitl_start_credit response β NOT the application ID