Api Endpoint

Afriref - Africa reference data

Statutory interest calculator for African countries: simple interest on a principal between two dates at the cited statutory-interest rate (Actual/365), with the rate, day count and workings. Countries whose statute sets no numeric rate are refused without charge.

Open interactive test console

Offering

Provider
afriref.dev
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Financial Analysis
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://afriref.dev/v1/answers/statutory-interest
MIME type
Not provided
First seen
2026-10-16T01:50:24.663Z
Last seen
Tags
statutory-interest, interest-rates, africa

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.02 USDC
Atomic price: 20000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "20000",
    "payTo": "0x1F0409ccD20A2fb497d4DeCeF4E17e9d0688FeA6"
  }
]

Observed health

Status
Healthy
Latest latency
1346 ms
Average latency
1351 ms
HTTP status
204
Last checked
Reachability
100% over 14 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "body": {
      "properties": {
        "country": {
          "description": "ISO country code that holds a statutory-interest series on this brand",
          "enum": [
            "ao",
            "bf",
            "bj",
            "bw",
            "cd",
            "cf",
            "cg",
            "ci",
            "cm",
            "dz",
            "eg",
            "et",
            "ga",
            "gh",
            "gq",
            "ke",
            "ls",
            "ma",
            "ml",
            "mu",
            "mz",
            "na",
            "ne",
            "ng",
            "rw",
            "sn",
            "sz",
            "td",
            "tg",
            "tn",
            "tz",
            "ug",
            "za",
            "zm"
          ],
          "type": "string"
        },
        "days": {
          "description": "Day-count days, finite and greater than 0. Supply this, or from and to. If both are sent they must agree.",
          "type": "number"
        },
        "from": {
          "description": "Period start, inclusive (YYYY-MM-DD, UTC). With `to`: day count is to − from. `to` is exclusive.",
          "format": "date",
          "type": "string"
        },
        "principal": {
          "description": "Principal in the country's own currency, finite and greater than 0",
          "type": "number"
        },
        "receipt": {
          "description": "Optional. true adds an Ed25519 answer receipt on a paid 200, included in this price. Not a certified extract.",
          "type": "boolean"
        },
        "to": {
          "description": "Period end, exclusive (YYYY-MM-DD, UTC).",
          "format": "date",
          "type": "string"
        }
      },
      "required": [
        "country",
        "principal"
      ],
      "type": "object"
    },
    "bodyType": {
      "enum": [
        "json",
        "form-data",
        "text"
      ],
      "type": "string"
    },
    "method": {
      "enum": [
        "POST"
      ],
      "type": "string"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "type": "object"
}

Output schema

{
  "properties": {
    "example": {
      "properties": {
        "day_count_basis": {
          "description": "actual/365_simple — no jurisdiction compounding",
          "type": "string"
        },
        "days": {
          "type": "number"
        },
        "disclaimer": {
          "type": "string"
        },
        "interest": {
          "description": "principal × (rate/100) × (days/365), rounded to 2 decimal places",
          "type": "number"
        },
        "limitations": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "principal": {
          "type": "number"
        },
        "provenance": {
          "description": "The statutory instrument the answer rests on: effective_from, last_confirmed, official source URL, notes",
          "type": "object"
        },
        "rate": {
          "description": "Headline statutory-interest series rate, percent, after derived materialization",
          "type": "number"
        },
        "rate_unit": {
          "type": "string"
        },
        "receipt": {
          "description": "Only when receipt=true on a paid 200. kind answer_receipt. Verify at /certified/public-key.",
          "type": "object"
        },
        "status": {
          "enum": [
            "ok"
          ],
          "type": "string"
        },
        "workings": {
          "type": "string"
        }
      },
      "required": [
        "status",
        "rate",
        "interest",
        "workings"
      ],
      "type": "object"
    },
    "type": {
      "type": "string"
    }
  },
  "required": [
    "type"
  ],
  "type": "object"
}