Value Added & Services

Latest from ProTax

Product launches, engineering deep-dives, partner announcements, and platform updates.

🏢
ProductApr 5, 20253 min read
B2B Paybill API Now Available for Business Settlements
Send payments from your merchant wallet directly to any Kenyan paybill or till number via the new B2B endpoint.
B2BPaybill
📶
EngineeringMar 28, 20256 min read
How We Built Offline Mode: Guaranteed Transaction Delivery During Outages
An engineering deep-dive into the queue architecture, retry logic, and state machine behind the new offline_mode flag.
EngineeringReliability
🔒
SecurityJan 15, 20254 min read
v2 Security Hardening: HMAC-SHA256 Only, TLS 1.2+, and API Key Rotation
With v2.0 we retired MD5 signatures and TLS 1.0/1.1. Here's what changed and why it matters for your integration security.
Securityv2.0
📱
ProductOct 18, 20243 min read
Faiba Data Bundle Packages Now Available via the Airtime API
Vend Faiba data bundles — from 100MB daily packages to 225GB 90-day plans — directly from your platform.
FaibaAirtimev1.9
🖐️
ProductOct 5, 20244 min read
Biometric Attendance API: Schools and Enterprises Can Now Track Attendance Programmatically
New bulk and single attendance endpoints let HR systems and school management platforms pull real-time check-in records by UID.
BiometricsHREducation
EngineeringJul 22, 20245 min read
OTP Delivery Now Under 5 Seconds: What Changed in Our SMS Routing
We rebuilt our SMS routing layer to cut OTP delivery time by 60%. Here's the technical story behind the improvement.
SMSOTPPerformance
💧
ProductOct 3, 20232 min read
Water Billing Is Here: Pay Nairobi City Water via the Pay Bill API
The NAIROBI_WTR channel is now supported in the Pay Bill API, joining Kenya Power and TV subscription providers.
UtilitiesPay Bill
🕐Updated April 2025
ProductApr 12, 20255 min read

Introducing UPI Inter-Institutional Transfer: Move Money Between Banks, Fintechs, and Saccos

Kenya's first open developer API for inter-institutional KES transfers is now live on the ProTax platform.

JN
Josphat Nyota
Head of Product · ProTax
🔗

Today we're launching the UPI Inter-Institutional Transfer API — a single endpoint that enables secure, real-time KES transfers between Banks, Fintechs, and Saccos in Kenya. No more siloed money movement. No more manual EFTs. Just one POST request.

How it works

Each participating institution is assigned a numeric channel code. Banks start at 101, Fintechs at 201, and Saccos at 301. Your integration specifies the sender account, recipient account, their respective channel codes, the currency, and the amount — and we handle the routing.

💡 Tip: Both sender and recipient currency fields must be provided. Cross-currency transfers with automatic FX conversion are on the roadmap.

Who is this for?

  • SACCOs that need to disburse loans to member bank accounts
  • Fintechs collecting from bank customers and settling to their own wallets
  • Enterprises running payroll across mixed account types
  • Aggregators building multi-rail payment infrastructure

Getting started

The endpoint is available immediately on both sandbox and production. Add your institution codes to the request and you're live. See the API reference for the full payload spec and response format.

✅ UPI transfers are covered by the same HMAC-SHA256 request signing and IPN callback system as all other ProTax payment APIs.

Related

Back toAll News
Next storyB2B Paybill API
ProductApr 5, 20253 min read

B2B Paybill API Now Available for Business Settlements

Send payments from your merchant wallet to any Kenyan paybill or till number — fully automated, with HMAC-SHA256 verification.

JN
Josphat Nyota
Head of Product · ProTax
🏢

The B2B Paybill API is now live on POST /billing/v3/b2b/create. It supports the BusinessPayBill channel and enables businesses to settle invoices, pay suppliers, and make inter-business transfers directly from their ProTax merchant wallet.

Use cases

  • Supplier invoice settlement to their MPESA paybill
  • Automated recurring payments for business subscriptions
  • Payroll disbursement to staff SACCO paybills
  • Tax payments to KRA paybill numbers

Signature

The B2B signature concatenation order is: MerchantID + channel + shortCode + identifier + amount. This is different from the Mobile Payout signature — make sure you update your signing logic.

⚠️ The resultUrl field is required. B2B transactions are asynchronous — your endpoint will receive an IPN when the transaction completes.

Related

PreviousUPI Launch
NextOffline Mode
EngineeringMar 28, 20256 min read

How We Built Offline Mode: Guaranteed Transaction Delivery During Outages

An engineering deep-dive into the queue architecture, state machine, and retry logic behind the new offline_mode flag.

JN
Josphat Nyota
Engineering Lead · ProTax
📶

When downstream networks are unreachable — whether that's a Telco maintenance window, a bank's nightly batch cut-off, or a brief internet blip — transactions submitted to the ProTax API should not simply fail. With Offline Mode, they don't.

The problem with synchronous-only APIs

Most payment APIs are purely synchronous: you POST a request, the server forwards it downstream, and you get a response. If the downstream system is unreachable, you get an error. Your customer doesn't get their airtime. Your application has to decide whether to retry, when, and how many times — and you have to build all of that yourself.

Our queue architecture

When "offline_mode": true is included in a request body, the ProTax API accepts the transaction immediately and returns a 200 with status QUEUED. The transaction is durably stored and joins our internal retry queue.

The queue uses an exponential backoff schedule: first retry at 1 minute, then 5, 15, 60, and 360 minutes. If all five retries fail, a payment.failed webhook is dispatched and the transaction is marked terminal.

State machine

Every queued transaction moves through a strict state machine: QUEUED → PROCESSING → SUCCESS | FAILED | PENDING_RETRY. State transitions are atomic — a transaction can only be in one state at any time, preventing double-processing even under concurrent retry workers.

🏗️ The queue is backed by a persistent message broker with at-least-once delivery guarantees. Idempotency keys prevent duplicate transactions even on network splits.

How to use it

Simply add "offline_mode": true to any request payload. No other changes to your integration are required. You'll receive an IPN callback when the transaction reaches a terminal state — subscribe to the payment.success and payment.failed webhook events for clean handling.

Related

PreviousB2B API
Nextv2 Security
SecurityJan 15, 20254 min read

v2 Security Hardening: HMAC-SHA256, TLS 1.2+, and API Key Rotation

With v2.0 we raised the security baseline for every API integration. Here's what changed and how to migrate.

JN
Josphat Nyota
Security Engineering · ProTax
🔒

When we designed v1 of the ProTax API, MD5-based signatures were a pragmatic choice for simplicity. By 2024 they were a liability. v2.0 removes them entirely and raises the baseline across three security dimensions.

1. HMAC-SHA256 signatures

All request signatures must now use HMAC-SHA256. MD5 signatures are rejected with error 1104 Signature Mismatch. The migration is a one-line change in most languages — see the Migration Guide for per-language examples.

2. TLS 1.2+ enforcement

Production endpoints no longer accept TLS 1.0 or 1.1 connections. Most modern HTTP clients default to TLS 1.2+ already. If you're using an older OpenSSL build or a legacy HTTP client, you'll need to update your TLS configuration.

3. Zero-downtime API key rotation

Dashboard API key rotation now generates a new key while the old one remains valid for 24 hours. This gives your team time to deploy the new key to all environments before the old one expires — no service interruption required.

💡 Enterprise accounts also gained IP allowlisting in this release — restrict API access to specific CIDR ranges from the merchant Dashboard.

Related

PreviousOffline Mode
NextFaiba Bundles
ProductOct 18, 20243 min read

Faiba Data Bundle Packages Now Available via the Airtime API

Vend Faiba data bundles — from 100MB daily packages to 225GB 90-day plans — directly from your platform using telco: "FAIBA_B".

JN
Josphat Nyota
Head of Product · ProTax
📱

The ProTax Airtime API already supported pinless Faiba airtime via telco: "FAIBA". Today we're adding full data bundle vending via the new FAIBA_B channel — 11 bundle products spanning daily, weekly, monthly, 60-day, and 90-day plans.

Available bundle products

Bundles range from DAILY_DATA_100MB (KES 10) to 90_DAY_DATA_225GB (KES 6,000), with autorenew variants for daily and monthly plans. The new Chui, Kifaru, Ndovu, and Simba combo plans include minutes and SMS alongside data.

How to use it

Use the existing Airtime API endpoint with telco: "FAIBA_B" and the productCode field set to your desired bundle code. For combo plans, set telco: "FAIBA_B" and use the combo product codes like SIMBA_DATA_20GB.

⚠️ productCode is required when telco is FAIBA_B. Omitting it returns error 1108 Missing parameter.

Related

Previousv2 Security
NextBiometrics API
ProductOct 5, 20244 min read

Biometric Attendance API: Track Attendance Programmatically

New bulk and single attendance endpoints give schools and HR systems real-time access to biometric check-in records by UID.

JN
Josphat Nyota
Head of Product · ProTax
🖐️

The ProTax Biometrics API is now live — connecting physical biometric devices (fingerprint scanners, face recognition units) to your digital systems via a simple REST interface.

Two endpoints

Use GET /api-biometric to pull all attendance records for your merchant partner ID. Use GET /api-single with a UID to fetch the attendance record for a specific student or employee.

Who is it for?

  • Schools — automate student attendance from biometric registers into school management systems
  • Enterprises — connect HR payroll systems to real biometric clock-in data
  • Security companies — log access control events programmatically

Records include check time, employee/student name, status, gender, SN, and SMS notification status — everything needed to drive downstream workflows.

Related

PreviousFaiba Bundles
NextOTP Speed
EngineeringJul 22, 20245 min read

OTP Delivery Now Under 5 Seconds: What Changed in Our SMS Routing

We rebuilt the ProTax SMS routing layer and cut OTP delivery time by 60%. Here's the technical story.

JN
Josphat Nyota
Engineering Lead · ProTax

OTP latency is one of those things that feels invisible until it breaks. A login flow that takes 12 seconds to deliver a code feels slow. One that takes 3 seconds feels instant. We spent Q2 2024 driving that number down.

What we changed

The old routing layer used a single primary aggregator with a secondary fallback. If the primary was slow, every message waited for a timeout before falling over. The new layer is parallel-first: we submit to multiple aggregators simultaneously and accept whichever responds first, cancelling the others.

Results across networks

  • Safaricom: 12s avg → 3.2s avg
  • Airtel: 18s avg → 4.1s avg
  • Telkom: 22s avg → 4.8s avg

No changes to the API are required on your side. All SMS and OTP requests automatically use the new routing layer.

✅ Bulk SMS also benefits from the new routing — throughput increased from ~200 messages/min to ~800 messages/min per API key.

Related

PreviousBiometrics API
NextWater Billing
ProductOct 3, 20232 min read

Water Billing Is Here: Pay Nairobi City Water via the Pay Bill API

The NAIROBI_WTR channel joins Kenya Power, DSTV, GOTV, ZUKU, and STARTIMES in the ProTax Pay Bill API.

JN
Josphat Nyota
Head of Product · ProTax
💧

Nairobi City Water & Sewerage Company (NCWSC) bill payments are now supported in the ProTax Pay Bill API via the NAIROBI_WTR channel code.

This means your platform can now vend all major household utility payments in Kenya — electricity, water, and TV subscriptions — through a single unified API. No separate integrations, no separate contracts.

How to use it

Use the Pay Bill endpoint (POST /billing/v1/bill/create) with "telco": "NAIROBI_WTR" and the customer's NCWSC account number in the account field. The signature concatenation is the same as all other Pay Bill channels: amount + account + telco + initiatorPhone + MerchantID.

💡 More water utility providers across Kenya are on the roadmap. Contact apisupport@ to request a specific provider.

Related

PreviousOTP Speed
Category · Product Updates

🚀 Product Updates

New features, API launches, and platform expansions.

🔗
ProductApr 12, 2025
UPI Inter-Institutional Transfer Launch
Move money between Banks, Fintechs, and Saccos via a unified endpoint.
🏢
ProductApr 5, 2025
B2B Paybill API Now Available
Automated business-to-business payment settlements.
📱
ProductOct 18, 2024
Faiba Bundle Packages
11 data bundle product codes now live in the Airtime API.
🖐️
ProductOct 5, 2024
Biometrics Attendance API
Bulk and single attendance record endpoints for schools and enterprises.
💧
ProductOct 3, 2023
Water Billing Added
NAIROBI_WTR channel joins Kenya Power and TV providers.
Category · Engineering

⚙️ Engineering

Technical deep-dives from the ProTax engineering team.

📶
EngineeringMar 28, 2025
How We Built Offline Mode
Queue architecture, state machines, and exponential backoff in production.
EngineeringJul 22, 2024
OTP Delivery Now Under 5 Seconds
Parallel SMS routing cuts delivery time by 60% across all Kenyan networks.
Category · Security

🔒 Security

Security updates, advisories, and hardening releases.

🔒
SecurityJan 15, 2025
v2 Security Hardening
HMAC-SHA256, TLS 1.2+, and zero-downtime key rotation in v2.0.
Category · Partnerships

🤝 Partnerships

New integrations, partnerships, and ecosystem announcements.

💡 No partnership announcements yet. Back to all news →

Category · Policy

📜 Policy & Compliance

Regulatory updates, compliance guidance, and policy changes.

💡 No policy articles yet. Back to all news →

Category · Community

🌍 Community

Developer events, community spotlights, and ecosystem stories.

💡 No community articles yet. Back to all news →

Archive · 2023

2023 Archive

All news and product updates from the ProTax platform in 2023.

💧
ProductOct 3, 2023
Water Billing Added to Pay Bill API
NAIROBI_WTR joins Kenya Power and TV providers.
🚀
ReleaseJul 2023
ProTax API v1.0 — Initial Public Launch
Mobile Wallet, Bank Payout, Airtime, Pay Bill, SMS, and USSD APIs go live.
?
Unknown
Incoming Call
Kemru Technologies
Voice · WhatsApp · Instagram
FREE
Dialer
Contacts
History
Numbers
WhatsApp
Instagram
Packages
Recorded
Credits
Settings
Balance 0.00 mins
0 missed call(s)
?
00:00
Connecting…
Recording in progress 0 KB
Conference Call
Ready to connect
Request Callback
Agents busy — leave your number for a callback
Call Centre
Connecting…
Select your language
1
English
2
Deutsch
3
Français
 Saved Contacts
 Call History
Loading numbers…
Voice Minute Packages
PlanMinsPrice/min
Starter30$3.00$0.100
Pro250$17.50$22$0.070
Business600$36.00$45$0.060
WhatsApp Message Credits
PlanMessagesPrice/msg
Starter500$5.00$0.010
Scale10,000$60.00$80$0.006
Instagram DM Credits
PlanMessagesPrice/msg
Basic300$4.50$0.015
Enterprise5,000$50.00$70$0.010
Secure payment · Instant activation · Credits never expire
 Call Recordings
0.00
minutes remaining
Buy Minutes
Secure payment · Instant activation
Voice Announcements
Speak caller name & status
Low Balance Warnings
Alert when below 2 mins
Auto-record All Calls
Automatically record every call
Missed Call Alerts
Badge & banner for missed calls
Clear all call history
Delete all recordings