Overview
The Verification feature provides satellite-based ground truth verification for sustainability-linked loans using Sentinel-2 imagery, NDVI analysis, and TorchGeo ResNet-50 land use classification. It includes both live verification workflows and portfolio monitoring dashboards. Code Reference:client/src/components/VerificationDashboard.tsx, client/src/components/GroundTruthDashboard.tsx, app/agents/verifier.py, app/agents/classifier.py
Key Features
Live Verification Workflow
- Document Upload: Upload credit agreement PDF
- SPT Extraction: Extract Sustainability Performance Targets (SPTs)
- Address Geocoding: Convert addresses to coordinates
- Satellite Imagery: Fetch Sentinel-2 imagery
- NDVI Analysis: Calculate Normalized Difference Vegetation Index
- Compliance Check: Determine COMPLIANCE or BREACH status
client/src/components/VerificationDashboard.tsx, app/agents/verifier.py
Ground Truth Dashboard
- Portfolio View: Monitor all verified assets on global map
- Status Indicators: Green (Compliant), Red (Breach), Yellow (Warning)
- Asset Management: Manually onboard new loans
- Map Visualization: Interactive map with Leaflet/React-Leaflet
- Filtering: Filter by status, location, or asset type
client/src/components/GroundTruthDashboard.tsx
Enhanced Satellite Features
- OpenStreetMap Integration: Street map data for context
- Air Quality Monitoring: Air quality index (AQI) data
- Green Infrastructure: Green infrastructure detection
- Pollution Monitoring: Methane and pollution detection
- Sustainability Scoring: Multi-dimensional sustainability scores
app/services/green_finance_service.py, app/agents/verifier.py
Workflow
1. Verification Demo
- Upload Document: Upload credit agreement PDF
- Extract SPTs: System extracts Sustainability Performance Targets
- Geocode Address: Convert collateral address to coordinates
- Fetch Imagery: Retrieve Sentinel-2 satellite imagery
- Analyze NDVI: Calculate NDVI score
- Classify Land Use: TorchGeo ResNet-50 classification
- Determine Status: COMPLIANCE or BREACH based on SPTs
2. Ground Truth Monitoring
- View Portfolio: Open Ground Truth Dashboard
- Map View: See all assets on global map
- Filter Assets: Filter by status or location
- View Details: Click asset for detailed information
- Re-verify: Re-run verification for assets
3. Breach Detection
- Automatic Detection: System detects breaches automatically
- FDC3 Broadcast: Broadcasts breach alerts via FDC3
- Risk War Room: Risk War Room receives alerts
- Investigation: Risk officers investigate breaches
API Endpoints
Create Loan Asset
Create a loan asset for verification. Request Body:app/api/routes.py (create_loan_asset endpoint)
Run Verification
Run or re-run verification for a loan asset. Response: Updated verification results with NDVI score and compliance status Code Reference:app/api/routes.py (verify_loan_asset endpoint)
Get Verification Status
Get current verification status. Response: Verification status, NDVI score, compliance statusSatellite Data Sources
Sentinel-2
- Provider: SentinelHub
- Resolution: 10m spatial resolution
- Frequency: 5-day revisit time
- Bands: Multispectral bands for NDVI calculation
app/agents/verifier.py (Sentinel-2 integration)
TorchGeo ResNet-50
- Model: Pre-trained ResNet-50 for land use classification
- Classes: Agricultural, urban, forest, water, etc.
- Accuracy: High accuracy land use classification
app/agents/classifier.py
NDVI Analysis
NDVI Calculation
Normalized Difference Vegetation Index:- > 0.7: Healthy vegetation (high compliance)
- 0.4 - 0.7: Moderate vegetation
- < 0.4: Low vegetation (potential breach)
app/agents/verifier.py (NDVI calculation)
Configuration
Environment Variables
SentinelHub OAuth client ID
SentinelHub OAuth client secret
Enable enhanced satellite features. Default:
trueUser Interface
Verification Dashboard
Location:client/src/components/VerificationDashboard.tsx
Features:
- Document Upload: Upload credit agreements
- Agent Terminal: Real-time verification logs
- Map View: Visualize verification results
- Progress Tracking: Track verification progress
- CDM Events: View generated CDM events
Ground Truth Dashboard
Location:client/src/components/GroundTruthDashboard.tsx
Features:
- Global Map: Interactive map of all assets
- Status Filtering: Filter by compliance status
- Asset Details: Detailed asset information
- Re-verification: Re-run verification for assets
- Export: Export asset data
FDC3 Integration
Verification broadcasts FDC3 contexts:- Breach Alerts: Broadcast breach detection
- Compliance Updates: Broadcast compliance status changes
- Risk War Room: Risk War Room receives alerts automatically
client/src/components/VerificationDashboard.tsx (FDC3 broadcasting)
Best Practices
- SPT Accuracy: Ensure SPTs are accurately extracted
- Address Quality: Use complete, accurate addresses
- Regular Verification: Re-verify assets periodically
- Breach Response: Respond promptly to breach alerts
- Documentation: Maintain verification records
Additional Resources
Last Updated: 2026-01-14
Code Reference:
client/src/components/VerificationDashboard.tsx, app/agents/verifier.py, app/api/routes.py