Build on UTL Protocol
UTL Protocol is open blockchain infrastructure that any platform can use to distribute BEP-20 tokens based on merit, achievement, or educational completion β with built-in staking, fee collection, and treasury management. All 5 contracts are live on BSC mainnet. Kenostod Blockchain Academy is the first platform built on it. You can be next.
Just as Uniswap is built on Ethereum, Kenostod is built on UTL Protocol. The protocol itself is open β any platform, any use case, any token reward model. Kenostod is the first implementation. You can build the second, third, or tenth.
Every platform that integrates UTL Protocol generates fee revenue through the FeeCollector contract. A portion flows back to KENO stakers and the T.D.I.R. Foundation. You build. The protocol rewards everyone in the ecosystem.
Who Can Build On UTL Protocol
UTL Protocol was designed for any platform that rewards users for completion, achievement, or contribution. Kenostod uses it for blockchain education. The use cases go far beyond that.
Course completion triggers KENO distribution. Students earn real tokens finishing your curriculum β not certificates that collect dust.
Reward employees for completing compliance training, skills development, or onboarding programs with on-chain tokens.
Financial literacy, civic education, or community programs that need a transparent, auditable token distribution system.
Distribute token rewards for project completion, hackathon wins, or skill certifications β verifiable on-chain forever.
Reward users for achieving fitness goals, completing challenges, or maintaining streaks with real token incentives.
Any dApp that needs a robust, auditable token distribution and staking system without building it from scratch.
Protocol Architecture
UTL Protocol is a 5-contract system deployed on BSC mainnet. Each contract handles a specific function. They work together to form a complete token economy infrastructure.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ β YOUR PLATFORM β β (Kenostod, your app, or any dApp) β βββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ β calls βββββββββββββββββββββββββΌββββββββββββββββββββββββββββββ β UTL Distribution Contract β β Sends KENO to users on completion events β ββββββββββ¬βββββββββββββββ¬βββββββββββββββ¬βββββββββββββββ β β β ββββββββββΌββββ ββββββββββΌββββ ββββββββΌβββββββββββββββ βKENO Token β βFeeCollectorβ β UTL Treasury β β(BEP-20) β βCollects % β β Holds protocol funds β βTransfer β βon each tx β β Governance controlledβ ββββββββββββββ ββββββββββ¬ββββ ββββββββββββββββββββββββ β ββββββββββΌβββββββββββββββββββββ β UTL Staking Contract β β Distributes fee revenue to β β KENO stakers + KENO holders β βββββββββββββββββββββββββββββββ
Live Contract Addresses
All 5 UTL Protocol contracts are deployed and verified on BSC Mainnet. These are the canonical addresses. Do not use any others.
| Contract | Address | BscScan | |
|---|---|---|---|
| KENO Token (BEP-20) | 0x65791E0B5Cbac5F40c76cDe31bf4F074D982FD0E | View β | |
| UTL Staking | 0x49961979c93f43f823BB3593b207724194019d1d | View β | |
| UTL FeeCollector | 0xfE537c43d202C455Cedc141B882c808287BB662f | View β | |
| UTL Treasury | 0x3B3538b955647d811D42400084e9409e6593bE97 | View β | |
| UTL Distribution | 0xE6918cdBB9D8cd0d3532A88D974734B2F1A793c7 | View β |
BSC Mainnet β Chain ID: 56 | RPC: https://bsc-dataseed.binance.org/
Key Functions
The most commonly used functions when integrating UTL Protocol into your platform.
Distribution Contract β Send KENO to a user
// Called when a user completes a course, module, or achievement // Only callable by authorized platform addresses function distributeTokens( address recipient, // User's wallet address uint256 amount, // Amount of KENO in wei (250 KENO = 250e18) string calldata reason // e.g. "Course 1 Completion" ) external returns (bool)
Staking Contract β Check staking balance
// Returns the amount of KENO a user has staked function stakedBalance(address user) external view returns (uint256) // Returns pending staking rewards for a user function pendingRewards(address user) external view returns (uint256)
KENO Token β Standard BEP-20
// Standard BEP-20 β full ERC-20 compatibility function balanceOf(address account) external view returns (uint256) function transfer(address to, uint256 amount) external returns (bool) function approve(address spender, uint256 amount) external returns (bool)
Quickstart Integration Guide
Get your platform distributing KENO tokens in 4 steps. This covers the most common integration pattern β trigger token distribution when a user completes a defined action.
Contact UTL Protocol to get authorized
The Distribution contract only accepts calls from authorized platform addresses. Send your platform's deployer wallet address to kenostod21@gmail.com with subject line "UTL Protocol Integration Request." We'll whitelist your address within 48 hours.
Install ethers.js or web3.js
npm install ethers
Initialize the Distribution contract
import { ethers } from 'ethers'; // UTL Protocol β Distribution Contract const UTL_DISTRIBUTION = '0xE6918cdBB9D8cd0d3532A88D974734B2F1A793c7'; const KENO_TOKEN = '0x65791E0B5Cbac5F40c76cDe31bf4F074D982FD0E'; const ABI = [ 'function distributeTokens(address recipient, uint256 amount, string reason) returns (bool)', 'function stakedBalance(address user) view returns (uint256)', ]; const provider = new ethers.JsonRpcProvider('https://bsc-dataseed.binance.org/'); const signer = new ethers.Wallet(process.env.PLATFORM_PRIVATE_KEY, provider); const utl = new ethers.Contract(UTL_DISTRIBUTION, ABI, signer);
Trigger distribution on completion events
// Call this when your user completes a course, module, or task async function rewardUser(walletAddress, courseName) { const amount = ethers.parseUnits('250', 18); // 250 KENO const tx = await utl.distributeTokens( walletAddress, amount, `Completed: ${courseName}` ); await tx.wait(); console.log(`β Distributed 250 KENO to ${walletAddress}`); return tx.hash; }
Token Distribution Patterns
UTL Protocol is flexible β you define what triggers a distribution. Here are common patterns used by Kenostod and applicable to other platforms.
// Pattern 1: Course / Module Completion (Kenostod model) await rewardUser(wallet, 'Blockchain Fundamentals', 250); // Pattern 2: Milestone Achievement await rewardUser(wallet, '5-Course Milestone Bonus', 500); // Pattern 3: Quiz / Assessment Score if (score >= 90) await rewardUser(wallet, 'Perfect Score Bonus', 50); // Pattern 4: Referral Reward await rewardUser(referrerWallet, 'Referral: New Student Enrolled', 100); // Pattern 5: Graduation / Full Completion await rewardUser(wallet, 'Full Curriculum Graduation', 1000);
Staking Integration
Platforms can display users' staking balances and pending rewards from within their own UI β giving students a reason to stake and hold KENO instead of immediately spending it.
const STAKING_ABI = [ 'function stakedBalance(address) view returns (uint256)', 'function pendingRewards(address) view returns (uint256)', 'function totalStaked() view returns (uint256)', ]; const staking = new ethers.Contract( '0x49961979c93f43f823BB3593b207724194019d1d', STAKING_ABI, provider ); // Display in your user dashboard async function getUserStakingInfo(walletAddress) { const [staked, rewards] = await Promise.all([ staking.stakedBalance(walletAddress), staking.pendingRewards(walletAddress), ]); return { staked: ethers.formatUnits(staked, 18), // e.g. "500.0" rewards: ethers.formatUnits(rewards, 18), // e.g. "12.5" }; }
MetaMask Snap
UTL Protocol has a MetaMask Snap in review for the official Snap Directory (PR #1459). Once approved, any platform integrating UTL Protocol can point users to install the Snap β giving them a native wallet interface for all UTL functionality.
UTL Protocol MetaMask Snap
The Snap gives MetaMask users a dedicated UTL panel inside their wallet β KENO balance, staking rewards, course completion history, and distribution notifications. No additional apps required.
Once approved, any platform that integrates UTL Protocol can reference the same Snap. One installation works across every UTL-powered platform β the same MetaMask wallet, the same Snap, multiple platforms.
PR #1459 β Pending Approval BSC Mainnet Ready// Request Snap installation from your platform's UI await window.ethereum.request({ method: 'wallet_requestSnaps', params: { 'npm:@kenostod/utl-protocol-snap': {} } }); // Invoke UTL Snap to get user's KENO balance const balance = await window.ethereum.request({ method: 'wallet_invokeSnap', params: { snapId: 'npm:@kenostod/utl-protocol-snap', request: { method: 'keno_getBalance' } } });
Fee Structure
Every transaction routed through UTL Protocol generates a small fee collected by the FeeCollector contract. This creates a self-sustaining revenue stream that flows back to KENO stakers and the protocol treasury.
| Transaction Type | Fee | Destination |
|---|---|---|
| Token Distribution | 1% | FeeCollector β Staking Rewards Pool |
| KUTL Card Settlement | 0.5% | FeeCollector β Treasury |
| Staking Deposit/Withdrawal | 0.25% | FeeCollector β Staking Rewards Pool |
| Flash Arbitrage Loans (FALβ’) | 0.09% | FeeCollector β KENO Holders |
| Third-party Platform Distributions | 1% | FeeCollector β Staking Pool + T.D.I.R. Foundation |
You built the road. Every platform that drives on it pays a toll. Every toll flows back to KENO holders. The more platforms that integrate UTL Protocol, the more fee revenue the ecosystem generates β for everyone.
Revenue Sharing
Fee revenue collected by the FeeCollector is distributed across the ecosystem automatically. No manual claims required for staking rewards.
Proportional to stake size
Scholarship + operations
Development + liquidity
Platforms that integrate UTL Protocol and generate significant transaction volume can apply for a revenue share arrangement. Contact us to discuss partnership tiers once your integration is live.
GitHub & Source Code
UTL Protocol contracts are open source. Review, fork, and audit before integrating.
github.com/Keno2121/kenostod-blockchain
Contracts located in /utl/contracts/
git clone https://github.com/Keno2121/kenostod-blockchain.git cd kenostod-blockchain/utl/contracts # Key contract files: # UTLTreasury.sol β Treasury management # UTLFeeCollector.sol β Fee collection and routing # v1.1/ β Latest verified versions
Ready to Build on UTL Protocol?
Kenostod is the first platform built on UTL Protocol. You can be the next. Whether you're an online course platform, a corporate training company, a bootcamp, or a dApp β if you distribute value based on achievement, UTL Protocol was built for you.
Send your integration request to get your platform address whitelisted and start distributing KENO to your users within 48 hours.