Platform Features
Everything you need for business SMS
From contact management to API integration, Kimisms gives your team a complete toolkit for sending, tracking, and managing SMS at scale.
Core capabilities
Built for reliability and scale
Every feature is designed around real business workflows — so you can focus on messaging, not infrastructure.
SMS Sending — Quick & Bulk
Send a single message or blast thousands at once. Multi-provider routing ensures every number reaches the right network.
- Quick send to a single number instantly
- Bulk campaigns to entire contact groups
- Auto-routing to Safaricom, Airtel, Telkom
- Duplicate contact removal
Contact Groups & CSV Upload
Organise recipients into targeted segments. Upload thousands of contacts via CSV in seconds.
- Unlimited contact groups
- CSV bulk import (up to 7 columns)
- 6 custom fields per contact
- Auto provider detection from prefix
Billing & M-Pesa Payments
Top up SMS credit instantly with M-Pesa STK push or Jambopay. Balance deducted per message unit.
- M-Pesa STK push top-up
- Jambopay integration
- Float balance per Sender ID
- Full transaction history
Reports & Delivery Analytics
Real-time delivery tracking with visual charts, provider breakdowns, and searchable message logs.
- INITIATED → SENT → DELIVERED status trail
- Dashboard charts with ApexCharts
- Campaign logs & telco breakdown
- Success rate calculation
Developer API
Integrate SMS into your applications
Use the Kimisms REST API to send OTPs, notifications, and alerts programmatically. OAuth 2.0 authentication, idempotency support, and delivery callbacks included.
REST API with JSON — client credentials flow
Idempotency-Key header to prevent duplicates
Delivery callback to your own URL
Swagger UI interactive documentation
api_example.py
import requests # Step 1: Get access token token_resp = requests.post( "/api/generate-token", json={ "grant_type": "client_credentials", "client_id": "your_id", "client_secret": "your_secret" } ) token = token_resp.json()["access_token"] # Step 2: Send SMS resp = requests.post("/api/send-sms", headers={"Authorization": f"Bearer {token}"}, json={ "sender_name": "KIMISMS", "contact": "254712345678", "message": "Your OTP is 482910" } ) # {"message_id":"...","status":"INITIATED"}
Platform strengths
What makes Kimisms different
Designed with production requirements in mind.
3 Network Providers
Automatically route messages to Safaricom, Airtel, and Telkom Kenya based on each contact's number prefix.
Secure by Default
Email verification, role-based access, confirmation modals, and atomic balance deductions protect every operation.
Team-ready Admin
Configure email SMTP, manage sender IDs, set SMS rates, and control USSD — all from one admin portal.
Start sending SMS today
Create your account in under 2 minutes. No credit card required.