Capability 37 · MVP Development

MVP Development

Launch the smallest version that proves the product — then grow on evidence.

Before you read: Written from live engineering practice — the money-moving, million-user work our team runs on our own products, set down so anyone building something can learn from it.

01 · What it is

An MVP is not a smaller scope — it is the smallest scope that proves the idea's riskiest assumption. We build it deliberately: scoped to what proves the product rather than what rounds out the feature list, shipped fast so the market answers while the question is current, and measured immediately so you know what worked. The money flow and core loop come first — because if the core loop doesn't work, the polish doesn't matter — and feedback is wired back into the build on a released cadence rather than a hidden long cycle. Iteration releases replace the perfect-v1 myth, and the path to the full system is known in advance so v1 isn't a dead end.

What a mvp development build covers:

  • Scoped to prove the riskiest assumption, nothing more
  • Shipped fast while the market question is still current
  • Measured immediately so you know what worked
  • Money flow & core loop built first, polish later
  • Iteration releases instead of the perfect-v1 myth
  • The path to the full system known before v1 ships
What we do · How we do it — as TGJOF Enterprise

This is how we do MVP Development

MVP is the smallest scope that provably serves a paying customer — the slice that tests the single riskiest bet while remaining true enough to launch. We keep the core loop and the money path in the first release, cut polish with a reason and never cut the floor, and measure from the moment real users arrive. The slice is small enough to ship the first week, honest enough to launch with, and built to survive the rewrite success will eventually demand.

What we do

  • The honest slice — the smallest scope that tests the one assumption whose failure would kill the product, not a checklist of half-built features.
  • The core loop end to end — the single repeated journey that creates value, working for at least one paying customer before anything decorative exists.
  • The money path from day one — where funds move, the wallet, the ledger, the callback verification and the terminal states arrive in the first release at the depth they need.
  • The launch-with-the-truth floor — auth, data integrity and failure handling real enough that every claim a customer will see is one the system actually delivers.
  • Built to survive a rewrite — the data model, the structure and the naming are chosen as if permanent, so v2 grows from v1 instead of replacing it.

How we do it

  • Name the assumption first — the hypothesis, the metric that would prove it and the decision it drives are written down before any code exists.
  • Scope against three filters — the risky assumption, the core loop and the launch floor decide what is in, what is out, and what waits with a dated reason.
  • Wire measurement into the build — the funnel's key events and its error telemetry fire from the first release, so launch produces a verdict rather than a guess.
  • Rehearse the launch — staging, sandbox rehearsals and a written rollback plan are walked before the first real cohort touches the product.
  • Read the verdict and decide — the metric, the churn and the support words are read together without hope distorting them, and the next release is ordered by that evidence.

02 · The full discipline

An MVP is not a smaller scope — it is the smallest scope that proves the most important bet, and it must be launchable with the truth.

The word 'MVP' gets used to justify almost anything — a feature-list sliver that nobody wants, a demo that cannot survive real users, or a rushed product that has to be thrown away before v2. None of that is an MVP. An MVP is the smallest thing that provably serves a paying customer: the smallest scope that proves the product's riskiest assumption while still being true enough to launch. The difference is not size; it is honesty.

We build MVPs the way a studio that runs a live product has to — because KodiiPay is a payment platform we operate ourselves, and we launched it as precisely that kind of honest first version: a small, real, paying system with the money discipline already intact. We have shipped first versions for clients who needed a fast market answer and for clients who needed a money system that could not afford a toy start. The discipline is the same: know the one assumption that matters, scope the smallest thing that can test it, and build the foundations that let the next version grow from this one instead of replacing it.

Below is how we actually scope, build and launch an MVP — the honest philosophy, the 'can we launch with the truth' question, and the corners we deliberately cut along with the ones we deliberately refuse to cut. The same machinery that launches a content platform launches a payments product; the difference is where the floor sits.

03

What an MVP really is

An MVP is not a smaller clone of the final product. It is the smallest scope that proves the product's riskiest assumption through real use — and it only works if the core loop actually works for at least one paying customer. We separate the different things that get lumped together as 'MVP':

  • The sliver — a checklist of half-built features that proves the team can code but proves nothing about the market.
  • The prototype — a throwaway used to test an idea internally; useful, deliberate, and not a product.
  • The honest MVP — a genuinely usable, genuinely sold version of the product with the smallest feature set a real customer will pay for and the core loop working end to end.
  • The core loop — the one repeated journey that creates value, in money, in data or in outcome; it comes first because if it does not work, every feature layered on top is paint on a missing wall.
  • The riskiest assumption — the single belief whose failure kills the product; the MVP exists to test that belief with real users, not to test everything at once.
  • The path forward — the known route from v1 to the full system, so today's corners are deliberate and tomorrow's work is already implied by today's decisions.

The test of an MVP is not 'is it small enough to ship quickly'. It is 'does this version make a true claim about the product to real users'. A version that cannot be launched with the truth is not an MVP; it is a delay in disguise.

04

The riskiest assumption comes first

Every product rests on a belief that, if wrong, kills it. For a market stall app the risky assumption might be that vendors will actually log their stock; for a payments product it might be that landlords will accept rent through a new channel. We start by naming that one belief, because it decides what the MVP contains:

  • One bet at a time — the MVP is scoped around the single riskiest assumption; everything else waits, because two untested bets in one launch make failure unreadable.
  • The question is the scope — if the risky bet is 'will shops adopt this?', the MVP is the smallest path that lets a shop adopt it; if the bet is 'will money clear correctly?', the MVP is the smallest path that moves money with proof.
  • The market question stays current — we ship while the question is still live, because a startup answers a market question that expires while a grander plan is being built.
  • The demo is not the test — a demo proves a screen; the MVP proves behaviour, and behaviour only shows with real users, real data and real money.
  • The wrong answer is still an answer — a failed assumption tested cheaply is a success for the business; the MVP exists to make the expensive failures impossible.
  • The assumption is written down — the hypothesis, the metric that would prove it and the decision that follows are agreed before the build, so launch is a verdict rather than an opinion.

This is why we spend real effort naming the assumption before estimating the scope. A team that skips this step builds the wrong small thing, then celebrates a launch that answered no question.

05

Scoping the slice honestly

Scoping an MVP is the discipline of deciding what is in, what is out, and what is out-for-now with a date. We scope with three filters — the risky assumption, the core loop and the launch-with-the-truth bar:

  • In: the core loop — every step the customer must complete for the product's value to happen, wired end to end, even if some steps are manual.
  • In: the money path — if money changes hands, the path that moves it and records it is in the MVP whether or not it is the 'feature' being tested.
  • In: the launch floor — authentication, basic data integrity, error handling that does not lose work, and the ability to reach a real human when something breaks.
  • Out: breadth — extra customer types, extra channels and extra integrations wait until the core loop has proven itself with the primary user.
  • Out: perfection — admin dashboards, analytics suites and settings screens that the customer never touches wait until the loop is proven.
  • Out-for-now, dated — deferred features get an explicit 'comes back when' trigger, so 'later' is a plan, not a graveyard.
  • Budget-derived scope — the honest boundary is set by money and time; we refuse to promise a launch package smaller than the floor and more expensive than the budget.

The result is an MVP that is genuinely thin and genuinely true. Every exclusion is defended by a reason, not by forgetfulness — which is what makes it safe to launch and safe to grow.

06

Money and the core loop first, polish later

For products that touch money — and in this market, most serious products do — the ordering is non-negotiable: the core loop and the money path come first, and polish comes last. We have seen too many MVPs polish the dashboard and bolt the payments on at the end, then discover the payments were the product all along:

  • The loop beats the looks — a customer forgives an ugly first version far faster than a broken promise; the first version's job is to work, not to win a design award.
  • Money is not a bolt-on — the wallet, the ledger, the callback verification and the statement get built at the depth they need from the first day, because retrofitting money safety is a rewrite, not a patch.
  • The happy path is built first, then the unhappy one — a payment MVP that only works when everything goes right is not an MVP, it is a demo; failure handling is part of the path.
  • Manual for the long tail — operations the MVP does not automate yet are done by a human with a log, and that log is the spec for the next build.
  • Design earns its place — visual effort goes to the moments the customer touches in the loop; the rest gets functional clarity, not decoration.
  • The receipt is a feature — in money products, the proof-of-payment and the error message are customer-facing surfaces, and they get the care of one.

The ordering follows a simple logic: the product fails if the loop fails, and the product fails loudly if the money fails. Polish cannot save either; the loop and the money can carry a rough shell.

07

The 'can we launch with the truth' question

Before any launch we ask a question most launches skip: can this version make a true claim to the customer about what it is and what it does? The answer decides whether we ship, hold, or close a feature without shipping it:

  • The claim is checkable — whatever message the customer will see — the flow, the fee, the guarantee, the timeline — the system actually delivers.
  • No fake progress — the MVP does not pretend a feature exists that is stubbed behind a button, a banner or a 'coming soon' promise.
  • The fee is the fee — if a price, a charge or a charge-never promise is shown, the backend charges exactly that, computed from the same source the screen reads.
  • The fallback is real — where an external service can fail, the true fallback is built or the truth of the failure is told; a dead-end error screen is a lie.
  • Support can be reached — the customer has a real way to reach a real person with a real answer, even if the product is small.
  • The data is not fabricated — demo seed data is not presented as live usage, and early numbers are labelled for what they are.

A v1 that fails this question is not 'launchable later after a few fixes'; it is a habit of shipping hope. The teams that keep asking this question are the ones whose v2 users trust them.

08

When an MVP is the wrong answer

There are builds where a minimal first version is actively dangerous, and we say so before we scope. The honest advice matters more than the engagement:

  • Money without a floor — a payment MVP that skips idempotency, callback verification, escrow and reconciliation is not an MVP, it is a liability the platform may never recover from.
  • Trust with zero depth — products holding money or sensitive data need the safety floor from day one, even at minimal feature count; the first customer's loss is the last customer's absence.
  • The regulated first release — if the first release must satisfy an auditor, a supervisor or a board on day one, the compliance machinery is in scope, not a later phase.
  • Irreversible exposure — if a single bug in v1 permanently damages a brand, a relationship or a data set, the extra weeks up front are the cheap option.
  • The core loop is already proven — a business that already runs the process manually does not need an MVP to test the market question; it may need a proper first system instead.
  • The only win is the full system — when the product is genuinely useless until several pieces exist, an MVP tests nothing and merely delays the real thing.

When we recommend against a minimal launch, it is not because we want a bigger project. It is because the shortest honest path to the first paying customer is sometimes a complete small system, not a shortened version of a big one.

09

The KodiiPay story: launching with the discipline in place

KodiiPay did not launch as a minimal payments sliver and then bolt safety on afterwards. It launched as a small, real, paying product with the money discipline already intact — because we knew a payments platform cannot learn money safety from its first customers. The lesson it taught us is the one we bring to every MVP:

  • The loop was small and real — a tenant paying rent through a wallet with M-Pesa, a landlord receiving it, real money moving through the real Daraja rails with card, PayPal, Stripe, PayStack and bank-transfer corridors on the same layer — small surface, honest product.
  • The money floor predated the polish — the ledger, the callback verification against the gateway's own status API, the terminal states and the reconciliation existed before the marketing screens did.
  • Rate limits and idempotency were in the first release — the retry, the replay and the double-tap were handled on day one because a tiny volume proves nothing about correctness that a large volume will not re-test.
  • The rails were real from the start — STK Push, PayBill, C2B callbacks and B2B disbursement went in at the depth the product needed, not the depth a slide deck needed.
  • The seams were discovered live — running the product under real money taught us exactly where our assumptions were thin, and every lesson became a rule in the architecture.
  • Growth was evolution, not replacement — the system that launched is recognizably the system that now handles the platform; no v2 rewrite was required to become real.

That is the standard we hold any money-adjacent MVP to: a first version can be small in features and blunt in finish, but never small in the discipline that keeps the first customer safe. The market answers fast, and the money stays true.

10

v1 is not a dead end

The tragedy of most MVPs is the corners chosen in the name of speed that guarantee the next version is a rewrite. We scope v1 so it can grow — the data model, the authentication and the money paths are done properly even when the feature set is minimal:

  • The data model outlives the features — tables, keys and relationships are modelled for the full system; cutting features is cheap, re-architecting data is not.
  • Auth is not prototyped — identity, roles and row-level security go in structurally, because retrofitting authorization into a live product is a security event waiting to happen.
  • Money paths are production-shaped — even one payment gets the pipeline the thousandth payment will use: states, references, locks, ledgers, verification.
  • The API is the product's skeleton — thin screens talk to a real API designed for extension, so the next surface is wired, not rewritten.
  • Naming and structure are final — the names of columns, endpoints and states are chosen as if permanent, because they effectively are.
  • The roadmap is reachable — the known path from v1 to the full system is walked backwards from the goal, and v1 decisions are checked against it.

A v1 that degenerates into a rewrite was not a cheap experiment; it was a paid delay wearing an MVP costume. The version we launch is small precisely so the version after it is cheap to make.

11

Measurement wired in from day one

An MVP is only useful if its launch produces an answer, and an answer requires that the signals were wired before the launch, not after. We instrument the first version so that real usage decides the next iteration:

  • The success metric is defined — activation, completion, repeat and (where it applies) first payment are agreed before build, each with its number.
  • Events are wired in the build — the funnel's key steps fire their analytics events in the first release, so the launch cohort is measured, not guessed at.
  • Money events are the sharpest signal — on a payments product, the strongest proof of value is a completed transaction; every completed loop is recorded, referenceable and counted.
  • Errors are telemetry — the places where users drop, stall and fail are captured as data, because the failures of an MVP are its most honest feedback.
  • Support calls are recycled into the roadmap — the words users actually say become specs; the measurement loop includes the humans answering when the loop breaks.
  • The dashboard is small and read daily — a young product needs three numbers read every morning, not forty charts read never.

Measurement does not make an MVP bigger; it makes the MVP mean something. The product answers the market question the moment real users touch it — and the team hears the answer.

12

The building blocks the MVP stands on

Behind the small surface lies the non-negotiable foundation — the layers we never 'MVP' away because every later version stands on them. Call it the safety floor:

  • Authentication and authorization done properly — users, roles, row-level data isolation and the rule that servers, not clients, decide who may act.
  • The single source of truth — one database and one set of governed procedures for the data the product runs on, so no screen or cron can drift from it.
  • Secrets and keys managed, never committed — API keys and gateway credentials live in secure configuration, never in code or client bundles.
  • Idempotency and rate limiting as defaults — every money and mutating action carries a reference, a state and a per-user budget, even in the smallest build.
  • Reversible data destruction — deletes are guarded, destructive commands are fenced, and backups exist before the first paying customer does.
  • Observable operations — logs, errors and health signals exist from day one, because the smallest production system still fails at 2am.

None of these add a feature a customer sees. All of them decide whether the product survives the customers it does see. The floor is not polish; it is the difference between a young product and an incident.

13

A pragmatic security posture for an MVP

A minimal product still faces real adversaries, especially the moment it touches money or personal data. Our MVP security posture is proportionate but structural — fewer controls, none of them optional:

  • Least privilege from the first deploy — service accounts, roles and row-level security are set as if the platform were large, because tightening permissions later is fought against by habit.
  • The callback is a claim, even in v1 — any webhook or payment callback is verified against the source before it is believed; the principle costs little and is ruinous to retrofit.
  • Money moves are protected — a balance is never 'negative' by constraint, a credit is never optimistic, and a retry never double-counts.
  • Enumeration is resisted — the API answers the same whether an account exists or not on the surfaces where that matters.
  • Secrets have an owner and an expiry — keys are rotated, scoped and revocable from the start, with a person named for each.
  • The blast radius is small — a stolen key in an MVP cannot reach the company's whole estate because the MVP never holds one key to everything.

Security for a small product is not a checklist of enterprise theatre; it is the few controls that make a small failure stay small. The MVP's ambition may be modest — its defensive posture is not.

14

Payments in an MVP: the same floor, a smaller surface

If the MVP touches money at all — a fee, a deposit, a sale, a payout — it gets the money machinery, at the depth the feature needs, from the first release. In the Kenyan market that means the real rails the market uses — M-Pesa through Daraja as the home-market example, plus PayPal, Stripe, PayStack, cards and bank transfers — and the real discipline on every one of them:

  • M-Pesa through Daraja, wired properly — STK Push for customer-initiated payment, PayBill or Till (Lipa na M-Pesa) for the account and till flows, with PayPal, Stripe, PayStack, card and bank-transfer adapters behind the same layer, each with real sandbox-to-production rehearsals.
  • C2B and webhook callbacks verified, not trusted — a genuine callback is checked against its gateway's own query or status API before a credit is written, whether it arrived from Daraja, a card processor, PayPal, Stripe, PayStack or a bank.
  • B2B and B2C when money goes out — rent settlement, merchant disbursement and withdrawals are dispatched with correlated references on whichever rail carries them, so a callback is matched to its send.
  • A transaction lifecycle even at small volume — initiated, pending, confirmed, failed, reversed and expired states, with terminal-state protection against replays.
  • One ledger, one truth — the wallet, the float and the books agree by construction, because they are written by the same governed procedures.
  • Reconciliation is not deferred 'until scale' — the first statement is reconciled against the ledger just as carefully as the millionth.

The temptation is to build the 'payment-v1-lite' — a booking call that charges when it feels like it. We refuse that shape, because a first customer who is charged twice or never credited is the last customer who matters.

15

Integrations: the fewest that prove the loop

The MVP integrates exactly the external systems the core loop cannot do without, and explicitly defers the ones it can. We scope integrations by what they prove or block:

  • The loop's necessities are integrated — the payment rail, the notification path and the identity provider the loop depends on are real, production-shaped integrations.
  • Everything else waits — analytics suites, accounting exports, marketing tools and peripheral marketplaces are noted with a trigger date, not built early.
  • Each integration has an owner — someone knows its credentials, its failure behaviour and its vendor relationship from day one.
  • Failures are designed, not discovered — the integration's down behaviour — retry, queue, tell-the-user — is specified in the same build as the integration itself.
  • Sandboxes are rehearsed, then the truth happens live — every external system is tested through its sandbox and then watched through its first real calls.
  • The exit is not ignored — each vendor relationship considers its own data export path, so the product is never held hostage by a widget.

An MVP with two genuine integrations that complete the loop beats an MVP with twelve integrations that decorate it. The loop is the point; each extra connection is a cost until it serves a proven need.

16

Budget, timeline and the honest estimate

We give MVPs honest economics: what the scope costs, what pace buys, and what a smaller budget cannot buy. The estimate is built from the floor up, not the ceiling down:

  • The floor sets the price — the estimate starts from auth, data, the loop and the safety floor, not from a feature count; cut features, not discipline.
  • Pacing is explicit — the build keeps the loop first; money and foundation are never the line items squeezed to fit a date.
  • The calendar is a commitment — we ship on the agreed date to the agreed scope, and we say when scope must move rather than let the date silently slip.
  • The launch gate is in the plan — the 'can we launch with the truth' review is scheduled, not improvised, with the truth criteria agreed up front.
  • Post-launch capacity is budgeted — the weeks after launch are for the bugs, the support answers and the first iteration; an MVP that launches into silence is a wasted bet.
  • The cost of not building is named — a month of market window is priced too, because the real competition is often the calendar.

The honest MVP estimate is rarely the smallest number a client can be quoted; it is the smallest number that delivers a launchable-with-the-truth product. We would rather win on the second conversation than lose a client their market on the first.

17

After launch: the MVP becomes the roadmap

The MVP's real output is not software; it is a verdict plus evidence. The weeks after launch turn that evidence into the roadmap, through a released cadence rather than a perfect-v1 myth:

  • The verdict is read honestly — the success metric, the churn, the completed loops and the support words are read together, including the answers we hoped not to get.
  • Iterations release, they do not accumulate — improvements ship on a cadence, kept small enough to measure each change against the last.
  • Money feedback outranks feature requests — a completed-payment signal or a drop at the payment step is stronger truth than five users asking for a setting.
  • The deferred list gets its dates — features that waited now take their places in the sequence, ordered by what the launch proved.
  • The team follows the product — the people who launched it operate it and read its signals, so the loop of build, observe and decide stays unbroken.
  • The full system is approached deliberately — each new release walks the known path to the full product, so v5 is still recognizably built on v1's bones.

An MVP that launches and learns is a step; a product that launches and forgets is a demo. The cadence after launch is where the first small version becomes a real, growing system.

18

Honesty about MVPs

Because MVP advice is sold with more confidence than almost any other kind, we are direct about the limits of the practice:

  • An MVP cannot tell you everything — it tests the assumptions you wrote down; it will not test the ones you forgot to write down.
  • Small volume is not proof of scale — ten happy users prove the loop can work; they do not prove the system survives a thousand, which is why the foundations carry that burden early.
  • Speed has a price — a genuinely fast launch trades polish, breadth and some foundation work for the market answer; the trade is worth it only when the question is real and current.
  • The market can be slow to answer — sometimes the truth needs more users, more time or more outreach than the product build; a fast MVP does not always produce a fast verdict.
  • Money changes the calculus — for a money product the 'minimum' is defined by the safety floor, not by the designer's idea of elegance; that floor is not negotiable for schedule.
  • We will tell you when MVP is wrong for you — when the riskiest assumption is already proven, or the floor cannot be skipped, the honest smallest build is different from an MVP, and we will scope that instead.

We work with clients to launch the smallest thing that is genuinely launchable — and we will be the voice in the room that says when the smallest thing is bigger than the word 'MVP' suggests. A version that is true beats a version that is small.

The toolchain

The MVP toolchain

The stack behind a lean first version is not 'less of the real stack' — it is the same foundations, selected for speed without sacrificing the floor. This is the machinery we use to ship small, true and growable products.

stack.toolchain

01

Core build

The loop, shipped fast

  • TypeScript end to endOne language across the API, the web and the mobile surfaces keeps the first version coherent and the team small.
  • React / React NativeWeb and mobile from shared logic so the MVP does not multiply its surface area.
  • Node.js APIThe service layer that enforces the business rules the thin screens call.
  • REST API firstScreens against a real API designed for extension, never for rewriting.
  • Progressive web appA zero-install launch channel where the market is web-first.
  • Serverless functionsSmall, isolated pieces — webhooks, verification, integrations — that scale without a fleet.

02

Data & auth

The single source of truth

  • Managed PostgreSQLThe one database the whole product reads, with constraints and row-level security doing real work from day one.
  • Row-level securityData isolation as a database guarantee, not a client preference.
  • Schema designed for the full productThe model outlives the features, so v2 extends rather than rebuilds.
  • Backups before the first customerRepeatable restores exist before real data does.
  • Auth provider with rolesIdentity and session handling that is not prototyped and not retrofit.
  • Exact balance arithmeticMoney as integers (or exact decimals) so numbers can never drift.

03

Payments & rails

The floor when money is in the loop

  • Daraja (M-Pesa) integrationSTK Push, PayBill, Till and C2B callbacks wired through Safaricom's real gateway.
  • Multi-rail adaptersPayPal, Stripe, PayStack, card and bank-transfer connectors behind the same lifecycle and callback discipline.
  • Callback verificationA genuine callback is checked against the gateway's status or query API before anything is credited.
  • Transaction lifecycleStates, references and terminal-state protection from the very first transaction.
  • Idempotency keysReplays and double-taps are absorbed, never executed twice.
  • Escrow semanticsMoney is locked at initiation, consumed on success, released on failure.
  • Rate limitingPer-user budgets on every money action, enforced at the gateway and in logic.

04

Safety floor

The cuts we never make

  • Secrets managerKeys and gateway credentials in secure configuration, never in code or client bundles.
  • Server-side validationThe server, not the client, decides what is true.
  • Atomic state transitionsStatus changes are guarded so no process can double-fire.
  • Audit trailEvery mutating action logged with actor, timestamp and reference from the first release.
  • Input hardeningValidation, sanitization and type safety at the boundary.
  • Freshness constraintsStale writes are refused with a clean retry.

05

Measurement

The launch answers a question

  • Analytics eventsThe funnel's key steps fire real events in the first build.
  • Error captureClient and server failures reported and searchable from day one.
  • Log aggregationOne searchable place for the logs that explain a 2am anomaly.
  • Small daily dashboardThree numbers read every morning beat forty charts never read.
  • Feedback channelThe support inbox and its user words becoming specs.
  • Money signalsCompleted transactions and payment-step drops counted as product telemetry.

06

Delivery

Controlled, repeatable releases

  • Version-controlled repositoryThe whole first version under reviewable, revertible history.
  • CI pipelineAutomated checks run before anything reaches production.
  • Staging environmentThe launch path rehearsed before the launch.
  • Feature flagsSafe release of the pieces that take time to prove.
  • Automated deploymentsReleases are repeatable events, not personal rituals.
  • Rollback planThe known way back written before going forward.

07

Customer & support

The humans behind the small product

  • In-app support channelA real way to reach a real person from inside the first version.
  • Notification pathPush and email that tell the customer what happened, never surprise them.
  • Public statusAn honest place to state what the young product is and is not yet.
  • Feedback captureStructured ways for the first users' words to reach the roadmap.
  • Incident responseWho is paged, what they run, and how the customer is told — decided before it happens.
  • Legal minimumsTerms, privacy and the money disclosures the first release genuinely needs.

Lifecycle

The MVP lifecycle — from assumption to evidence

A first version is a question, not a destination. This is the arc every MVP we ship travels — and the discipline we hold to when the question is about money.

01

Name the assumption

The one belief that would kill the product if wrong, and the metric that would prove it.

02

Scope the slice

The smallest loop that tests the assumption, with what is out and out-for-now made explicit.

03

Set the floor

Auth, data integrity, money safety and error handling agreed as non-negotiable before the build.

04

Ask 'can we launch with the truth'

The claim the customer will see is checked against what the system actually delivers.

05

Build the loop

The core end-to-end journey, the money path first where money moves.

06

Wire measurement

Events, metrics and error telemetry installed with the features, not after launch.

07

Rehearse the launch

Staging, sandbox rehearsals, the rollback plan and the launch checklist walked before the live release.

08

Launch small and true

Ship to the first real cohort with a claim that is honest, even if the polish is plain.

09

Read the verdict

The metric, the churn, the completed loops and the support words read together, without hope distorting the numbers.

10

Decide

Keep, cut or pivot on the evidence — including the answers we hoped not to get.

11

Iterate on a cadence

Small releases, each measured against the last, so the product improves by evidence, not enthusiasm.

12

Grow on the same bones

The roadmap's next builds extend v1's structure rather than replacing it.

Closing

More than development

An MVP is the smallest thing that provably serves a paying customer — and it has to be launchable with the truth. We scope, build and launch first versions the way a studio that runs a live product has to. That includes:

The riskiest assumption named and written down before any code.A scope argued from the assumption, the loop and the budget — never from a feature count.The 'can we launch with the truth' question asked before every launch.The core loop working end to end, before polish is considered.Money paths built at the depth they need from day one, not bolted on later.The safety floor — auth, data integrity, idempotency and rate limits — never negotiated away for schedule.Callbacks verified against the gateway before anything is credited.A transaction lifecycle with terminal states, from the very first transaction.Secrets managed, never committed; least privilege from the first deploy.Measurement wired in the build, so launch produces a verdict.The launch rehearsed, staged and rolled back safely.A version that is true — no stubbed features, no fake progress, no fabricated data.The verdict read honestly, including the answers we hoped not to get.Iteration on a released cadence, measured against the last release.A data model, auth and money paths built so v2 grows from v1.The honest word on when an MVP is the wrong answer for your build.Budget and timeline quoted from the floor up, not the ceiling down.Post-launch capacity budgeted in, not discovered afterwards.The KodiiPay discipline: launch small in scope, never small in the floor.You own the code, the data, the keys and the roadmap.

An MVP is not the smallest thing that can be built. It is the smallest thing that can be built, launched and believed — and that is the standard we hold every first version to.

A version that is true beats a version that is small. We build first versions you can launch with the truth — and grow from the same bones.

Previous capability

Research & Prototyping

Next capability

Scaling

Building something like this?

The discipline above is what we run on our own products every day. If it would help on yours, our door is open.