Skip to content

cedikit

A Python toolkit for Ghanaian phone numbers, cedi amounts and Mobile Money transactions.

Not a programmer?

Start with cedikit in plain words: what it does, explained with a story and no technical terms.

Almost every Ghanaian digital product handles the same data: phone numbers typed five different ways, cedi amounts, and Mobile Money (MoMo) SMS alerts. cedikit handles them once, carefully, with tests.

pip install cedikit            # core + command line
pip install "cedikit[all]"     # + pandas, Excel, charts, ML, Pydantic, Django, Flask
Module What it does
phone Normalise, validate, format and mask numbers; guess the network
money Exact Decimal parsing, formatting, words and the float-proof Cedi type
sms MTN MoMo and Telecel Cash SMS → structured transactions; anonymiser
fraud Rates payment SMS as LOW / MEDIUM / HIGH risk and explains why
ledger Summaries, cash flow, categories, balance gaps, Excel/CSV/JSON export, charts
fees Fee and E-Levy estimates from dated, sourced tables
ids Ghana Card and GhanaPostGPS format checks
Integrations pandas accessor, Pydantic types, Django and Flask validators
Web API Use cedikit from JavaScript, PHP, Flutter or any other language

Principles

  • Offline. No network calls anywhere. No data leaves the device.
  • Honest outputs. Networks are likely (numbers can be ported), fees are estimates, fraud results are risk indicators. Unknown values are reported as unknown, never guessed.
  • Money is never a float.
  • Data lives in data files. Prefixes, SMS templates, fee tables and scam phrases are YAML, so they can be updated without code changes.

Always confirm payments

No SMS check can prove a payment is real. Before releasing goods, confirm the payment in your official Mobile Money app or through your network's official USSD menu.

Built in Ghana, for Ghana.