看得見的架構,讀得到的程式碼
四個系統如何協作、第三方服務如何接入、核心規則如何實現。程式碼窗口裡是從核心平台抽取的真實片段,已脫敏並逐一人工稽核。
系統架構
Veloziq Core 是核心平台,H5、落地頁和監管端都通過 API 與它通訊;第三方服務的回撥全部經過驗籤。
程式碼導覽
從檔案樹選一個檔案,按步驟閱讀關鍵邏輯。高亮的是目前步驟講到的行。
KYC 四層評分主流程
Didit 的狀態先做預處理:直接拒絕、標記人工稽核,或進入下一層。
分數 → 額度
高分段、低分段自動通過並計算額度,人工稽核段和拒絕段不計算額度。
風控補充規則(結構)
同一證件號已被其他使用者通過認證則拒絕。
機器人稽核:加權風險分
每條規則的得分乘以權重累加,出錯的規則跳過。
4 種逾期模式
月、年期限按日曆同日累加,天期限可選放款當天計入。
自動放款流水線
單個租戶失敗不會影響其他租戶。
放款前校驗
失敗次數達到上限後跳過,轉人工處理,避免失敗記錄堆積。
瀑布銷帳
逾期費 → 罰息,順序固定。
還款計畫生成
等額本息、先息後本、等額本金分別生成。
提額規則匹配
滿足門檻的規則裡取提額比例最高的一條,並列取 id 最小。
按域名識別租戶
優先讀 X-Tenant-Domain 頭,打包成 App 後也能識別租戶。
Curlec 回撥校驗
用渠道金鑰按規定欄位重新計算。
Didit Webhook 驗籤
對原始請求體計算 HMAC-SHA256,用 hash_equals 與 X-Signature-V2 比較。
RAFFTECH 信封加密
請求報文先用 AES 加密。
定時任務一覽
每小時檢查逾期貸款,更新逾期天數與罰息。
- 程式碼摘自核心平台,已脫敏:風控閾值等引數替換為配置項。
技術棧
核心平台
- PHP 8.2+
- Laravel 12
- Filament 4
- Octane
- Sanctum
- Scribe
- spatie/activitylog
- PostgreSQL
- Redis
前端
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- shadcn/ui
- next-intl
- Zustand
- PWA
基礎設施
- AWS S3
- Nginx
- Cloudflare
- Laravel Scheduler
- Queues
- Blade (Supervisor)
整合
- Didit
- Curlec Payout
- Razorpay
- RAFFTECH
- AWS SES
- AWS SNS
- Web Push
- BlueBird
- NXCloud
自動化任務
Laravel Scheduler 驅動的定時任務,全部 withoutOverlapping,關鍵任務 onOneServer。
自動放款流水線每分鐘
自動放款掃描每 3 分鐘
RAFFTECH 簽署對帳每 5 分鐘
逾期檢查每小時
清理操作日誌每天 01:00
清理服務用量日誌每天 01:30
全域性統計更新每天 02:00
清理過期 OTP 日誌每天 03:00
清理 RAFFTECH 日誌每天 03:00
快取預熱每天 04:00
清理過期合同每天 05:00
還款提醒每天 09:00
API 概覽
約 100 個 REST 端點,按 27 個業務分組組織,文件由 Scribe 生成。
認證
Authentication
使用者
User-Management
KYC
KYC
人臉識別
Face-Recognition
貸款產品
Loan-Products
貸款申請
Loan-Application
借款訂單
Loan-Management
貸款協議
Loan-Agreement
流程分流
Loan-Flow-Choice
貸款諮詢
Loan-Consultation
電子合約
Contract
簽署影片
Sign-Video
還款
Repayment
支付
Payment
銀行卡
Bank-Cards
地址
Address
通知
Notification
推送
Push-Notification
驗證碼
OTP
註冊配置
Registration
主題
Theme
語言
Language
平台條款
Platform-Terms
服務配置
Service-Config
客服
Customer-Service
圖片上傳
Image-Upload
S3 上傳
S3-Upload
安全設計
加密
敏感欄位加密儲存並建立雜湊索引,監管端使用 AES-256。
簽名校驗
Didit HMAC-SHA256 與 Curlec checksum 用 hash_equals 常量時間比較,RAFFTECH 報文附帶 MAC 完整性校驗。
限流
OTP、登入、表單等介面按 IP 與租戶限流。
租戶隔離
模型全域性作用域按 tenant_id 過濾,平台可以模擬登入租戶排查問題。
審計
操作日誌、管理員訪問日誌與貸後調整日誌,全部可追溯。
