Messages & Returns/First steps

Get started with SacComply

v1.0

Make your first automated API call to SacComply to ingest monthly returns, classify loan books, and calculate real-time SASRA statutory compliance ratios.

Prerequisites

  • A SACCO Manager account on SacComply Console
  • A provisioned sk_live_... API key from /settings/api-keys
  • Your Core Banking or ERP database (Bankers Realm, CoreTec, Streamline, or custom database)
CONSOLE WALKTHROUGH

How to generate and export your secret key

Manager Gated
1
Open API Keys Settings

Go to /settings/api-keys in your dashboard.

2
Name Your Source System

Click "Generate a new API key" and enter a label (e.g. "Core Banking Production").

3
Copy Key Immediately

Save your secret key. SacComply stores a one-way SHA-256 hash and will never display it again.

INTEGRATION ARCHITECTURE & DB MAPPING

How Data Moves: Automated Outbound Push vs. Direct Database Queries

Why SacComply uses an Automated Push (REST API) instead of Direct DB Queries

A SACCO's internal database (Oracle, MS SQL, Postgres) sits on a secure, private corporate network. Opening inbound database ports to an outside service would create a critical security vulnerability and violate SASRA IT Security & Data Protection guidelines.

Instead, the SACCO's Core Banking system (or an automated scheduled job) performs an outbound HTTPS POST to SacComply with your API key. Outbound traffic requires zero inbound firewall holes.

What if your SACCO has different DB table or column names? (Universal Canonical Schema)

SacComply acts as an Anti-Corruption Layer (ACL). It does not require your internal tables or columns to match its database. Your IT team or vendor maps your local fields to SacComply's standard JSON contract:

Core Banking VendorInternal Table NameInternal ColumnSacComply JSON Field
Bankers Realmtbl_loan_mastercust_name, prin_bal, arr_daysborrower_name, amount, days_overdue
Temenos T24LD.LOANS.AND.DISCOUNTSCUSTOMER.NAME, AMOUNTborrower_name, amount
Microsoft Dynamics NAVMember Loan RegisterMember Name, Outstanding Balborrower_name, amount
Automatic Processing: As soon as the payload arrives at SacComply, the Python Risk Engine automatically computes all 5 statutory ratios and evaluates risk flags, and the dashboard immediately updates with the [FETCHED VIA API KEY] tag.

Call the API

  1. 1
    Set your API key

    Export your API key as an environment variable or pass it directly in your HTTP client.

    export SACCOMPLY_API_KEY="sk_live_9f8e4b7a1c3d5e2f..."
  2. 2
    Prepare project & dependencies

    Verify cURL is available on your terminal or server:

    curl --version
  3. 3
    Push monthly return payload

    Submit balance sheet figures to /api/v1/ingest/monthly-return to trigger SASRA ratio calculations:

    quickstart.sh
    curl -X POST https://api.saccomply.co.ke/api/v1/ingest/monthly-return \
      -H "Authorization: Bearer $SACCOMPLY_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "period": "2026-08-01",
        "total_assets": 690000000,
        "core_capital": 70000000,
        "total_deposits": 160000000,
        "short_term_liabilities": 12000000,
        "gross_loans": 410000000,
        "npl_amount": 39000000,
        "liquid_assets": 20000000
      }'
  4. 4
    Inspect real-time SASRA compliance output

    Query GET /api/v1/status to receive instant prudential ratio evaluations:

    Output (JSON)
    {
      "success": true,
      "period": "2026-08-01",
      "overall_status": "compliant",
      "ratios": [
        { "ratio_type": "capital_adequacy", "value": 10.14, "threshold": 10.0, "status": "green" },
        { "ratio_type": "liquidity", "value": 16.67, "threshold": 15.0, "status": "green" },
        { "ratio_type": "core_capital_to_deposits", "value": 43.75, "threshold": 8.0, "status": "green" },
        { "ratio_type": "npl_ratio", "value": 9.51, "threshold": 5.0, "status": "amber" }
      ],
      "open_risk_flags": { "critical": 0, "high": 0, "medium": 1, "low": 0 }
    }

Next steps

You made your first API call. Next, explore the full SASRA statutory automation modules:

Loan Portfolio Ingestion

Stream complete loan rosters and automate 5-tier SASRA loan classifications.

Prudential Risk Rules

Detect insider lending violations and single-borrower 25% capital exposure breaches.

Idempotency & Retries

Protect batch operations from duplicate processing during network drops.

API Key Governance

Rotate live keys and audit actor-level Core Banking integration logs.

Was this page helpful?