Final Project — CS, Fintech & Algorithmic Trading
Amit Zamir · Noa Elmakies · May Gurevich · Hai Tal
Supervisor: Ari Ben Ephraim
01 — Problem
No Way to Check Financial Trust
Forgeable Documents
Salary slips and bank statements are easy to fake
Gut Feeling
Personal references are subjective and unreliable
No Consumer Tool
Credit bureaus serve banks, not everyday people
Can I trust this person with a financial obligation?
No standardized tool answers this for landlords, lenders, or individuals.
02 — Market
What Exists Today
Captain Credit
OpenGrade
Data source
BDI credit bureau (Bank of Israel)
Live bank data via PSD2
Score type
Credit score (debt history)
Behavioral trust score (7 factors)
Who uses it
Individual checks own score
Client checks another person
Direction
Backward-looking (debt history)
Forward-looking (live behavior)
Data stored
Full credit profile
Score only — zero raw data
Operator
Dun & Bradstreet Israel
Independent platform
Captain Credit: 330K+ users, free app. Powerful for self-check — but doesn't answer "Can I trust someone else?"
03 — Background
From Identity to Financial Scoring
ProvIDe — Original Idea
Bank-verified digital identity
Problem: Open Finance APIs return no name, no ID, no phone, no DOB
Identity verification is infeasible
OpenGrade — The Pivot
Financial trust scoring platform
Available: Transactions, balances,
card spending (MCC), savings, loans
3-6 months of behavioral data
Israeli Open Finance regulation · Bank of Israel · NextGenPSD2 standard · PSD2 via OpenFinance.ai
04 — Platform
What Is OpenGrade?
A general-purpose financial trust scoring platform. Any client can check any applicant's financial reliability — and get a standardized score from real banking behavior.
Client
Requests a check · Buys tokens · Views scores
Applicant
Verifies email · Authenticates with bank · Consents to data
Rentals
Leasing
Roommates
P2P Lending
Freelancers
One model · Same score · Every use case
05 — Flow
How It Works
01
Create Check
Client enters applicant email + label
02
Email Link
Applicant receives verification link (72h TTL)
03
Verify & Auth
Email OTP, attestation, bank OAuth
04
Score In-Memory
Data fetched, scored, then discarded
05
Deliver Score
Client dashboard + applicant email
CHECK LIFECYCLE
PENDING→SENT→VERIFIED→BANK_AUTH→SCORING→COMPLETED
Recurring Rescoring
One-time bank consent with PSD2 recurring access.
Platform refreshes data on schedule automatically.
06 — Scoring
7-Factor Trust Model
Income Stability
25%
Balance Health
20%
Expense Discipline
15%
Payment Consistency
15%
Savings Behavior
10%
Credit Utilization
10%
Risk Flags
5%
75
Green
70 – 100
52
Yellow
40 – 69
28
Red
0 – 39
Rule-based, weighted scoring · No ML · Fully explainable · Each factor scored 0-100 independently
07 — Architecture
Stateless Scoring Pipeline
Client Dashboard
React · Tailwind
Applicant Verification
OTP · Attestation · OAuth
API Gateway
JWT · Rate Limit · Routing
Check Orchestrator
Lifecycle mgmt
Bank Integration
OpenFinance.ai PSD2
Client Management
Auth · Tokens
Scoring Engine
Stateless · 7-factor · In-memory only
Score Storage
PostgreSQL · Prisma
Audit Logger
Immutable log
Scheduler
Rescore jobs
Node.js · Express · PostgreSQL · Redis · Docker
08 — Privacy
Zero-Storage Principle
No PII Stored
No names, IDs, phone numbers, or addresses
No Financial Data Stored
Transactions and balances discarded after scoring
Score + Audit Only
Only scores, factor labels, and audit logs persisted
Consent-Scoped
Explicit bank consent per check · Right to erasure
JWT RS256
Client auth
OAuth 2.0 + PKCE
Bank auth
AES-256 + TLS 1.3
Encryption
09 — Business & Scope
Token Pricing & POC Scope
1 Token = 1 Check
Initial score or rescore · Tokens never expire
5
Starter
20
Standard
50
Bulk
POC Deliverables
Client registration & dashboard
Check creation & email flow
Applicant verification & bank OAuth
7-factor scoring pipeline
Score delivery (dashboard + email)
Mock bank API simulator
Token balance management
Recurring rescore scheduling
Out of scope: Real payments · Multi-bank · Mobile app · Hebrew UI