What's new in OpenSPP v2#

For: All audiences

OpenSPP v2 is a major platform evolution bringing modern architecture, enhanced security, and powerful new features for social protection programs.

Executive summary#

Area

What's new

Foundation

Odoo 19 with improved performance

Architecture

Unified spp.* namespace, streamlined modules

API

REST API V2 with OAuth 2.0 and bundle transactions

Standards

DCI integration, W3C Verifiable Credentials

Security

Data classification, PII encryption, field-level access

Configuration

OpenSPP Studio for no-code customization

Data management

Configuration-driven change requests, enhanced event tracking

Grievances

Built-in GRM module for complaints and appeals

Platform changes#

Odoo 19 upgrade#

OpenSPP v2 runs on Odoo 19:

  • Performance: 2-3x faster database queries with PostgreSQL 17/18

  • UI/UX: Modern interface with improved mobile support

  • Security: Updated cryptography and security patches

  • Requirements: Python 3.11+, PostgreSQL 12+ (17/18 recommended)

New namespace#

All modules now use the unified spp.* namespace.

Before

After

Mixed g2p.* and spp.*

Everything is spp.*

Unclear ownership

Clear OpenSPP identity

Migration: Automatic database scripts handle the rename. External integrations need to update model references from g2p.* to spp.*.

New features#

API v2#

A complete API redesign using FastAPI and FHIR-inspired patterns:

  • External identifiers only: Never exposes database IDs

  • Consent-based filtering: Field-level access based on user consent

  • Bundle transactions: Atomic multi-operation requests

  • OAuth 2.0: JWT tokens with scoped access

  • Performance: <100ms for single reads, <500ms for 100-result searches

DCI compliance#

Native Digital Convergence Initiative (DCI) integration for government interoperability:

  • Social Registry Server: Expose beneficiary data to MIS systems

  • CRVS Client: Import birth/death events from civil registration

  • IBR Client: Check enrollment in other programs (prevent duplication)

  • Federated Lookups: Query other social registries

Verifiable credentials#

Issue cryptographically verifiable credentials for beneficiaries:

Credential type

Purpose

Entitlement

Prove benefit eligibility

Program membership

Prove enrollment

Profile/identity

Prove identity

Features selective disclosure (holder chooses what to reveal), offline verification, and efficient revocation checking.

OpenSPP Studio#

No-code configuration for implementers who work with tools like KoBoToolbox:

  • Registry field builder: Add custom fields without developers

  • Event type designer: Create event types, import from Kobo

  • Change request builder: Define modification workflows

  • Eligibility rule builder: Visual criteria, auto-generates CEL

See OpenSPP Studio for details.

Change request v2#

Replaces 10+ specialized modules with one configurable system:

  • Configuration-driven: Create types without code

  • 11 built-in types: Add/remove member, split/merge household, etc.

  • Approval workflows with audit trails

  • Event tracking for full history

See Change request types for configuration.

Grievance Redress Mechanism#

Built-in module for complaints, appeals, and feedback:

  • Multi-channel intake (portal, call center, field staff)

  • Configurable SLAs with auto-escalation

  • Appeals process with independent review

  • Confidentiality handling for sensitive cases

Security enhancements#

Data classification & PII encryption#

Comprehensive data protection with four sensitivity levels:

Level

Examples

Protection

Public

Program names

None

Internal

Gender, status

Audit logging

Confidential

Names, DOB

Masking, recommended encryption

Restricted

National IDs, bank accounts

Required encryption, strict access

Encryption features:

  • AES-256-GCM with searchable blind indexes

  • Key management: Vault, AWS/GCP/Azure KMS, or config file

  • Transparent to users

Vocabulary system#

Replace hardcoded selection lists with international standards:

Domain

Standard

Gender

ISO 5218

Disability

WHO ICF

Occupation

ILO ISCO-08

Country

ISO 3166-1

Extensible via UI, multi-language, hierarchical. See Vocabulary System.

Breaking changes#

API#

  • V1 endpoints deprecated (compatibility layer available)

  • Database IDs no longer exposed in responses

Models#

  • All g2p.* models renamed to spp.* (automatic migration)

  • Change request modules consolidated into spp_change_request_v2

  • Some selection fields replaced with vocabulary references

Security#

  • PII fields require data classification

  • Field-level access control enforced

  • New security groups for Studio

Requirements#

  • Python 3.11+ (was 3.10+)

  • PostgreSQL 12+ (17/18 recommended)

New deployments#

  1. Choose deployment profile (Agriculture, Social Protection, etc.)

  2. Install core modules (typically 10-15)

  3. Configure via Studio

  4. Import master data (areas, programs, vocabularies)

  5. Set up security and go live

See Get started to begin.

Next steps#