Live on Zoom · starts 25 Nov 2026 · 2 weeks, daily

UNAJIITA SHARP BOY
NA HUJUI KUPROMPT

Learn to build the payment rails behind real products: M-Pesa STK Push with Daraja, crypto checkout with wallets and smart contracts, and Web3 apps you can ship.

No coding experience needed. We start from zero.


Reserve your seat · KSh 2,000
stk_push.php
POST /mpesa/stkpush/v1/processrequest
{ "Amount": 2000, "PhoneNumber": "2547…" }
→ ResponseCode: 0  (prompt sent)
CALLBACK ResultCode: 0
✓ MpesaReceiptNumber: QK7…
WEB3 wallet.sendTransaction({ to, value })
✓ confirmed · webhook fired

M-Pesa gateway

  1. Customer
  2. STK Push
  3. Daraja API
  4. Your server
  5. Callback
  6. Paid

Auth tokens, STK Push, callbacks, reconciliation and going live.

Crypto gateway

  1. Wallet
  2. Smart contract
  3. Blockchain
  4. Webhook
  5. Paid

Wallet connect, BTC/ETH/USDT payments, confirmations and Web3 app integration.

M-PESA Pay KSh 2,000?Enter your PIN Send
The M-Pesa STK Push prompt your customers will see. You will build it in Week 1.
block block paid ₿ Ξ
A wallet paying into a smart contract, confirmed on the blockchain. You will build it in Week 2.

Class outline: two weeks, one class a day on Zoom

Every class is live and you get the recording afterwards. Tap a day to see what you will learn and a sample of the code. You do not need to understand the code yet: we explain every line from scratch.

Week 1: M-Pesa payment gateway (25 Nov to 1 Dec)

Day 1 Wed 25 Nov How payment gateways work

Actors, money flow and architecture of a gateway. Set up your dev environment and project.

Day 2 Thu 26 Nov Daraja setup and authentication

Create a Daraja app, use the sandbox, and fetch OAuth access tokens.

$r = http($base . '/oauth/v1/generate?grant_type=client_credentials',
  ['Authorization: Basic ' . base64_encode($key . ':' . $secret)]);
$token = $r['access_token'];
Day 3 Fri 27 Nov Send an STK Push

Build the request, password and timestamp, and trigger the PIN prompt on a phone.

$ts = date('YmdHis');
$body = [
  'BusinessShortCode' => $shortcode,
  'Password'  => base64_encode($shortcode . $passkey . $ts),
  'Timestamp' => $ts,
  'TransactionType' => 'CustomerPayBillOnline',
  'Amount' => 2000, 'PartyA' => $phone, 'PartyB' => $shortcode,
  'PhoneNumber' => $phone, 'CallBackURL' => $callbackUrl,
  'AccountReference' => 'ORDER42', 'TransactionDesc' => 'Payment',
];
Day 4 Sat 28 Nov Callbacks and saving payments

Receive Safaricom callbacks, store receipts and update order status.

$cb = json_decode(file_get_contents('php://input'), true)['Body']['stkCallback'];
if ($cb['ResultCode'] === 0) {
    // mark the order as paid and store the M-Pesa receipt
}
echo '{"ResultCode":0,"ResultDesc":"Accepted"}';
Day 5 Sun 29 Nov Status checks and errors

Query transaction status, handle timeouts and cancellations, and avoid double charges.

Day 6 Mon 30 Nov Security and going live

Callback secrets, validation, logging and the Go Live checklist.

Day 7 Tue 1 Dec Project: M-Pesa checkout

Build and deploy a working checkout page that collects money by STK Push.

Week 2: Crypto payments and Web3 apps (2 to 8 Dec)

Day 8 Wed 2 Dec Crypto and blockchain basics

Wallets, networks, gas fees and testnets. How a crypto payment is confirmed.

Day 9 Thu 3 Dec Accepting crypto payments

Create orders, show payment details and wait for confirmations.

Day 10 Fri 4 Dec Smart contract payments

Write and deploy a simple payment contract that emits an event for every payment.

event Paid(address indexed payer, uint256 orderId, uint256 amount);

function pay(uint256 orderId) external payable {
    require(msg.value > 0, "No payment");
    emit Paid(msg.sender, orderId, msg.value);
}
Day 11 Sat 5 Dec Web3 front end

Connect a wallet and send a payment from your web app with ethers.js.

const provider = new ethers.BrowserProvider(window.ethereum);
const signer = await provider.getSigner();
const tx = await signer.sendTransaction({
  to: SHOP_ADDRESS, value: ethers.parseEther("0.01")
});
await tx.wait(); // payment confirmed on-chain
Day 12 Sun 6 Dec Listening for payments

Watch blockchain events and match each payment to the right order.

contract.on("Paid", (payer, orderId, amount) => {
  markOrderPaid(orderId, payer, amount); // match on-chain payment to your order
});
Day 13 Mon 7 Dec One checkout, two ways to pay

Combine M-Pesa and crypto, then handle refunds and reconciliation.

Day 14 Tue 8 Dec Final project and Q&A

Demo your gateway, deploy it and get feedback.

Times and topics may be adjusted slightly by your instructor. Class time will be shared in the WhatsApp group.

200+students have registered for our classes so far
No programming experience needed. Every class starts from the basics and builds up step by step. If you can use a phone and a laptop, you can join.

Classes we have taught

Completed

Crypto Wallets and Security for Beginners

Set up wallets, send and receive crypto safely, and avoid common scams.

Completed

Introduction to Web3 and NFTs

What Web3 is, how NFTs work and how people earn in this space.

Completed

Blockchain Made Simple

How blockchains, blocks and transactions work, explained without jargon.

Completed

AI Tools and Prompt Engineering

Use AI tools to write, research and automate everyday work.

Completed

Building AI Chatbots for Business

Create a chatbot that answers customer questions and takes orders.

Completed

DeFi Explained

Lending, swaps and stablecoins: how decentralized finance really works.

Coming up next

Coming soon

AI Agents for Fintech Automation

Build AI assistants that handle customer support, reports and reminders for a financial business.

Coming soon

Build a Crypto Wallet and Token App

Create your own token and a simple wallet interface on a test network.

Coming soon

AI-Powered Fraud Detection and Risk Scoring

See how AI spots suspicious transactions and scores risk, with hands-on examples.

Coming soon

Smart Contract Security Basics

Learn the common mistakes behind crypto hacks and how to avoid them.

Coming soon

Stablecoins and Cross-Border Payments

Send and receive money across borders with stablecoins and build a simple demo.

Coming soon

Web3 Apps with AI

Combine AI and blockchain to build smarter decentralized apps.

Want first access to new classes? Message us on WhatsApp and we will add you to the list.

What you get

  • No programming experience needed. We start from the basics
  • Daily live classes on Zoom for two weeks, from 25 November 2026
  • Recording of every class, sent after each session
  • Zoom link and a WhatsApp group once your payment is confirmed
KSh 2,000one-time class fee

An M-Pesa prompt will appear on your phone. Enter your PIN to confirm.