Global delivery from Hanoi, Vietnam ISO 9001:2015   ISO 27001:2013 hello@agiletech.vn (+84) 989 324 830

How to build an e-wallet app: ledger first, license early, loop always

In short

An e-wallet is a stored-value ledger wearing a payments app: users top up from banks or cards, the balance lives on your books under an e-money license (or a licensed partner's), and the product is how fast, cheap and safe money moves in, around and out. Build the ledger first and treat it as the product: double-entry, append-only, idempotent, reconciled daily against the trust account where user funds actually sit, because every regulator conversation and every 2 a.m. incident routes through it. Around the ledger go the rails: bank and card top-ups, QR payments at merchants (interoperable with the national QR standard in most Asian markets), peer transfers, bill pay, and withdrawals. The floor is the same as any fintech: tiered KYC, device binding, transaction PINs, velocity limits and a fraud queue worked daily. A credible first release built offshore runs roughly 90,000 to 250,000 dollars over five to nine months depending on license path and merchant scope, and the strategic truth from every successful Asian wallet is that the build is the cheap part: distribution and a daily-use loop, transit, bills, one anchor merchant network, decide whether the wallet becomes infrastructure or shelfware.

The e-wallet is Southeast Asia's signature fintech product: hundreds of millions of users who skipped cards entirely and went from cash to QR codes, an entire merchant economy running on scan-to-pay, and a graveyard of hundreds of licensed wallets that built the same app and never found a reason for anyone to open it twice. Both facts matter to anyone planning a build. The technology is well understood and honestly not exotic; the difference between MoMo and the wallet nobody remembers is almost never in the code.

This guide covers both halves honestly: the build, the stored-value model and the license behind it, the ledger that deserves most of the engineering respect, the top-up and payment rails, the security and KYC floor, the merchant side that doubles the scope, with a phased plan and offshore costs, and the strategy, the daily-use loop and distribution reality that should be settled before the first sprint, because it changes what you build first.

It completes a fintech cluster: the mobile banking build guide covers the regulated-account sibling wallets often graduate into, and the MoMo and ZaloPay case studies show, in production detail, where wallet strategies in Vietnam actually led.

Key takeaways

  • The ledger is the product: double-entry, append-only, idempotent and reconciled daily against the trust account. Everything else is a client of it.
  • The e-money license is the lighter, faster cousin of a banking license: stored value and payments without lending, and the choice of holding one versus partnering shapes the whole plan.
  • Money-in decides growth: top-up friction is the number one funnel killer, and free, instant bank top-ups are worth real engineering and real fees.
  • QR at merchants is the volume engine in Asian markets, and interoperability with the national QR standard is now table stakes, not a differentiator.
  • The merchant side is half the product: onboarding, settlement, disputes and a dashboard. Wallets that budget only the consumer app discover this in month four.
  • Distribution beats features: every wallet that won paired the app with a daily-use loop and an anchor network. Plan that before writing code.

The stored-value model and the license behind it

An e-wallet's legal skeleton is stored value: users hand you money, you record a liability to them on your ledger, and the actual cash sits in a safeguarded trust account at a bank, segregated from your operating funds and reconciled against the sum of user balances. This is what the e-money license regulates: capital requirements, safeguarding rules, transaction and balance limits, KYC obligations, and reporting. It is deliberately lighter than a banking license, no lending, no interest on balances in most regimes, which is exactly why wallets ship in months where banks take years, and why the wallet is the standard first move for Southeast Asian fintechs.

The license path is the first fork in the plan. Holding your own e-money license gives you the economics and the roadmap freedom, at the price of capital requirements, a licensing process measured in quarters, and a permanent compliance function; this is the path for funded companies whose core business is the wallet. Partnering with a licensed institution, riding a bank's or an existing e-money holder's license through a commercial agreement, compresses time to market and defers the capital burden, at the price of revenue share, roadmap veto points, and a partner in every regulator conversation. The pattern across the region: partner to prove the loop, license once volume justifies the capital.

The regulatory geography matters more than in most software because the license does not travel. Vietnam, Indonesia, the Philippines and Thailand each run their own e-money regimes with different limits, KYC tiers and safeguarding rules, and a wallet expanding across them is running parallel licensing projects, one reason regional wallet consolidation happened through acquisition rather than expansion. For a first build, pick one market, read its e-money circular before the architecture review, and encode its tier limits into the ledger from day one, because retrofitting per-tier balance caps into a live ledger is miserable, auditable work.

License path decides the project shape

DimensionOwn e-money licenseLicensed partner
Time to marketQuarters of licensing before launchMonths; partner certification only
CapitalRegulatory minimum locked upDeferred; partner carries it
EconomicsFull margin on float and feesRevenue share, per-transaction costs
RoadmapYours, inside the regulationsPartner approval on regulated features
ComplianceYour function, built from scratchShared, but you still own your conduct
The patternLicense once volume justifies itPartner first to prove the loop

Both paths ship the same app. They ship different companies.

Where a wallet's revenue actually comes from at maturityDonut chart of an illustrative mature e-wallet revenue mix. Merchant fees on QR and online payments dominate at 45 percent, which is why acceptance is the volume engine. Distribution of financial services, loans, insurance and investments sold in-app, contributes 25 percent and is where mature wallets grow. Bill pay and top-up commissions from utilities and telco contribute 15 percent and anchor the daily-use loop. Withdrawal and transfer fees contribute 8 percent and are deliberately kept low because friction there kills growth. Float income on the safeguarded balance contributes 7 percent, is regulated and often restricted, and should never be the plan.Revenue mix Merchant fees on payments 45% The volume engine: QR and online acceptance Financial services distribution 25% Loans, insurance, investments sold in-app Bill pay and top-up commissions 15% Utilities, telco, the daily-use loop Withdrawal and transfer fees 8% Kept low; friction here kills growth Float income 7% Regulated, often restricted, never the plan
Illustrative revenue mix for a mature e-wallet. Payments margin is thin; the durable economics live in the services layered on top of the balance.

The ledger is the product

Every screen in a wallet is a view over one system: the ledger that records who holds what. Build it double-entry from the first commit: every movement is a balanced transaction, a top-up debits the trust-account mirror and credits the user, a payment debits the user and credits the merchant net of fees, with fee lines as explicit entries rather than arithmetic scattered through service code. Double-entry is not accounting pedantry; it is the property that makes the system provable, the books balance or they do not, and the shape every auditor, partner bank and regulator will ask to see.

Three engineering properties are non-negotiable because every incident in wallet history traces to missing one. Append-only: entries are never updated or deleted, corrections are new reversing entries, so the ledger is also the audit trail. Idempotent: every mutation carries a client-generated key, and a retried top-up callback or a double-tapped payment button executes once, because networks retry and users double-tap as a law of nature. And serialized per account: two simultaneous spends against one balance must linearize, through row locking or single-writer account streams, because the alternative is negative balances discovered at reconciliation, and explaining those to a regulator is a career event.

Reconciliation is the ledger's external proof and runs on two seams. Inward: the trust account statement against the ledger's trust mirror, daily at minimum, because safeguarding rules assume you can demonstrate the match on demand. Outward: every rail partner's settlement file, bank top-ups, card acquirer, QR switch, biller aggregator, against the ledger's view of the same flows, with every mismatch in an exception queue owned by a named human. Wallets that treat reconciliation as a monthly finance chore run blind between checks; wallets that treat it as a daily engineering output with alarms catch their bugs, and their fraud, in hours.

One architectural consequence deserves emphasis because it saves a future migration: build balance reads and statement queries on read models projected from the ledger stream, not on the write path. Wallet read traffic, balance checks before every payment, transaction histories scrolled daily, outweighs writes enormously, and read models keep the hot ledger tables small and the queries instant. This is the same read-model discipline as the banking middleware, applied one layer down, and it is also the graduation insurance: a wallet ledger built this way survives the audit when the company later reaches for regulated accounts.

Ledger discipline

Do this

  • Double-entry with explicit fee linesEvery movement balances. Fees are entries, not arithmetic hidden in services.
  • Append-only with reversing correctionsThe ledger is the audit trail. History is never rewritten, only extended.
  • Idempotency keys on every mutationRetried callbacks and double taps execute once. This is table stakes, not polish.
  • Daily reconciliation with a worked queueTrust account and every rail partner, matched daily, mismatches owned by name.

Not this

  • Balances as a mutable columnAn update statement is not a ledger. The first dispute proves it.
  • Fees computed in application codeUnbalanced books that no one can explain at audit, guaranteed.
  • Concurrent spends left to chanceNegative balances at reconciliation, and a very hard regulator meeting.
  • Reconciliation as a monthly choreA month of blindness between checks is where fraud and bugs compound.

The properties that make a stored-value ledger provable rather than merely plausible.

The rails: money in, money around, money out

Money-in is the growth constraint, and top-up friction is the most reliable funnel killer in the category. The baseline is bank top-up over the local instant rail, ideally free to the user and instant in the balance, plus card top-up for the card-holding minority, plus, in cash-heavy markets, an agent and convenience-store network, which is a business development project as much as an integration. Each rail arrives as an asynchronous callback that must be verified, matched to a pending intent, and posted idempotently to the ledger; the engineering is exactly the payment-saga discipline of any money product, and the product bar is one screen, a few seconds, and a balance that updates before the user's doubt does.

Money-around is where the wallet earns its place on the home screen. Peer transfers by phone number with the contact book as the interface, instant and free, because peer transfer is the viral loop, not a revenue line. QR payments at merchants, both wallet-scans-merchant and merchant-scans-wallet, and in most Asian markets interoperable with the national QR standard, VietQR, QRIS, PromptPay and their siblings, which converts every existing acceptance point into your acceptance point and is now table stakes. Bill pay and telco top-up through a biller aggregator, unglamorous and the single stickiest feature in most wallets' retention data. Every flow ends in an unambiguous terminal state with an instant push notification, the same discipline as banking, because ambiguity is where support queues are born.

Money-out is where trust is proven: withdrawals back to bank accounts, priced gently and delivered reliably, because the moment a user cannot get money out is the moment the wallet becomes a story on social media. Operationally, money-out is also the fraud choke point, the place where stolen balances try to leave, so it carries the tightest velocity limits, the step-up authentication, and the risk scoring described in the next section. The design tension is real: security wants friction at withdrawal, growth wants none anywhere, and the resolution is risk-based, invisible checks for the normal case, ceremony only when the signals disagree.

A QR payment, end to end, in the seconds it must takeSwimlane diagram of an interoperable QR payment across customer app, wallet backend and merchant. In the scan phase the customer app scans and parses the standard QR payload while the backend decodes it, validates the merchant and risk-scores the transaction, against a static or dynamic code the merchant presented. In the authorize phase the customer confirms the amount with PIN or biometric while the backend reserves funds and serializes the spend on the account. In the post phase the customer sees the success screen and push receipt, the backend posts balanced ledger entries and notifies both sides, and the merchant gets the paid notification and releases the order. In the settle phase the customer's history updates from the read model, the backend batches to the QR switch and reconciles the settlement file next day, and the merchant receives net settlement to their balance. Scan Authorize Post Settle Customer app Scan code, parsestandard payload Amount confirmed,PIN or biometric Success screen,push receipt History updatedfrom read model Wallet backend Decode, validatemerchant, riskscore Reserve funds,serialize onaccount Ledger entriesposted, notifyboth sides Batch to switch,reconcile filenext day Merchant side Static or dynamiccode presented Awaitingconfirmation Paid notification,order released Net settlement tomerchant balance
The actors and steps behind a single QR payment. Everything in this lane budget has to complete before the customer's patience does.

The floor: KYC tiers, device trust, and the fraud queue

Wallet KYC is tiered by design, and the tiers are a product feature as much as a compliance one. The typical regime: a minimal tier opened with a phone number and basic identity, carrying tight balance and transaction caps; a verified tier unlocked by document capture and a liveness-checked selfie match, carrying the useful limits; and sometimes a premium tier with enhanced diligence for the heaviest users. The product craft is treating tier upgrades as contextual moments, prompt the upgrade when the user first hits a cap, mid-intent, with the benefit explicit, rather than demanding maximum KYC at signup and paying for it in abandoned installs. The vendor-versus-funnel split is the same as banking: buy the verification, own every screen around it.

Device and session security follows the fintech baseline with wallet-specific emphasis. Device binding at registration, a key in secure hardware, so a credential thief without the device still cannot transact; biometric or PIN on open, and a transaction PIN ceremony on money movement, scaled by amount; SIM-swap awareness in markets where the phone number is the identity, meaning re-verification when the device or SIM changes; and the runtime protections, root detection, overlay defense, screen-capture suppression on sensitive views, that the banking build guide details, all of which apply unchanged.

Fraud in wallets concentrates in three patterns and the defense is a worked queue, not a model alone. Account takeover, phished credentials cashing out through withdrawals or peer transfers to mule accounts, countered by device binding, velocity limits and risk-scored step-up at money-out. Social-engineering payments, victims persuaded to send, countered by warnings on first-time recipients, cooling periods on unusual amounts, and a reporting path that can freeze mule accounts fast. And promotion abuse, fake accounts farming top-up bonuses and referral rewards, countered by device fingerprinting and KYC-tier gates on incentives, and worth engineering before the first cashback campaign rather than after it burns six figures in a weekend. Every rule feeds a case queue with service levels and resolution codes tuning the rules, the identical rhythm to banking, fleet fuel, and every other exception-driven system this site documents.

The risk build, in the order it earns its keep

  1. Device binding and transaction PINBefore launch

    Kills pure credential theft on day one. The cheapest, highest-yield control in the stack.

  2. Velocity limits by KYC tierBefore launch

    Caps the blast radius of anything that gets through. Encoded in the ledger, not the UI.

  3. Risk-scored step-up at money-outBefore launch

    Friction only when signals disagree. Withdrawals are where stolen value tries to leave.

  4. First-recipient warnings and cooling periodsFirst quarter

    The social-engineering counter. Saves users from themselves at the moment it matters.

  5. Promotion-abuse fingerprintingBefore growth spend

    Before the first cashback campaign. Bonus farms assemble faster than dashboards notice.

  6. The worked queue with resolution codesLaunch, permanently

    Humans on service levels, dispositions tuning rules. The system that makes the rest improve.

Each layer pays for itself against a specific, dated pattern of loss.

Where wallet fraud losses actually concentrateBar chart of illustrative shares of gross e-wallet fraud loss by pattern. Social-engineering payments, where the victim authorizes the transfer, lead at 34 percent and are countered by first-recipient warnings and cooling periods. Account takeover cash-out follows at 26 percent, countered by device binding and step-up authentication at withdrawal. Promotion and referral abuse by bonus farms accounts for 22 percent, countered by device fingerprinting and KYC-tier gates on incentives. Merchant collusion and fake sales account for 11 percent, managed with settlement holds and merchant risk scoring. Card top-up fraud with stolen cards accounts for 7 percent, managed with acquirer tools. The annotation notes the largest slice is victim-authorized, which is why UX warnings are a fraud control rather than a courtesy. 0 10 20 30 40share of gross fraud loss, illustrative, percent Social-engineeringpayments 34 Warnings and cooling periods Account takeovercash-out 26 Device binding, step-up Promotion and referralabuse 22 Fingerprinting and tier gates Merchant collusion andfake sales 11 Holds and merchant scoring Card top-up fraud 7 Stolen card loads; acquirer The largest slice is authorized by the victim, which iswhy UX warnings are a fraud control, not a courtesy.
Illustrative distribution of gross fraud loss by pattern. The largest share is authorized by the victim, which reshapes where the controls belong.

The merchant half nobody budgets

Every wallet plan begins as a consumer app and every successful wallet becomes a two-sided product, because the revenue chart earlier in this guide is blunt: merchant payments are the engine. The merchant side is its own build: onboarding with business KYC (lighter for market stalls, heavier for chains), a merchant app or dashboard showing payments in real time, because the stall owner's trust depends on the phone buzzing before the customer leaves, settlement on a schedule with fees transparently lined out, refunds and disputes with a workflow rather than a hotline, and, for larger merchants, APIs and plugins for online acceptance. Budget it as roughly forty percent of the total build, because that is what it historically consumes.

The settlement design has a subtlety worth stating: merchant balances are ledger accounts like any other, credited net of fees at payment time or at batch, with payouts to bank accounts as ordinary money-out flows under the same reconciliation regime. Holding merchant funds even briefly makes you a counterparty risk in their cash flow, so payout reliability is a trust product for the acceptance side exactly as withdrawals are for consumers, and the operational alarms on delayed settlement batches should wake someone up. Disputes deserve a state machine from day one, claim, evidence, resolution, ledger adjustment via reversing entries, because the ad-hoc version becomes a spreadsheet that fails its first audit.

The field reality: merchant acquisition in QR-first markets is boots and stickers, agents onboarding stalls one by one, and the interoperable-QR era has restructured the economics of it. Where any wallet can pay at the national-standard code, the acquiring wallet earns its fee by being the merchant's operating tool, the dashboard, the settlement, the credit line against payment history, rather than by owning the code on the counter. That reframes the merchant product from a network land grab into a services business, and it is a better business, but only for teams that actually build the services.

Consumer build versus merchant build

Consumer sideMerchant side
OnboardingTiered personal KYC, contextual upgradesBusiness KYC, tiered by merchant size
Core surfaceApp: pay, transfer, top up, billsDashboard and app: live payments, settlement
Money movementTop-ups in, QR and transfers aroundNet settlement out, refunds as reversals
RiskTakeover, social engineering, promo abuseCollusion, fake sales, settlement fraud
Support loadPayment states, KYC, account accessDisputes, settlement timing, reconciliation
Build shareRoughly sixty percentRoughly forty percent, reliably underestimated

Two products, one ledger. The merchant column is the one first budgets forget.

The build plan and what it costs

Phase one, the first two to three months, is the ledger and the license path in parallel: the double-entry core with its idempotency and serialization guarantees, the read models, the reconciliation harness with the trust-account mirror, and, on the business track, the partner agreement signed or the license application moving, plus the KYC vendor integrated end to end. The exit test mirrors banking's: a test user passes tiered KYC, tops up from a real bank sandbox, and the ledger, the read model and the reconciliation report all agree about it.

Phase two, months three to six, builds both halves of the product in vertical slices: peer transfers with the contact-book UX, interoperable QR payment with the national switch certification (a scheduled external dependency, start the paperwork in phase one), bill pay through the aggregator, withdrawals with the risk-scored step-up, and the merchant dashboard with settlement and refunds. The risk stack from the security section lands here as each money-out and incentive surface arrives, and the fraud queue goes live with staffed rotations before any growth spend, not after.

Phase three is hardening and the seeded launch: load tests against the read models at concert-ticket concurrency, chaos drills on rail callbacks (the top-up that succeeds at the bank and times out at your API is a certainty, not a scenario), the reconciliation dry run for the regulator or partner, penetration testing with time to fix, and store review. Then launch into the daily-use loop the strategy section demands: a city, a corridor, an anchor merchant network or biller set where the wallet is immediately useful, expanding by cohort as the fraud and support queues prove workable, exactly the cohort discipline of a banking launch.

The budget, offshore: roughly 90,000 to 250,000 dollars to first launch. The bottom is a partner-license build, consumer app plus a lean merchant dashboard, one market, leaning on the national QR switch and a biller aggregator; the top adds an own-license compliance build-out, a full merchant product with APIs, agent tooling for cash networks, and the deeper risk stack. Steady state after launch: a product and engineering group of six to ten, one to three risk and support operators scaling with volume, KYC per-verification fees coupling to growth, and switch, aggregator and infrastructure costs forming a five-figure monthly floor, the same honest arithmetic as banking, one license class lighter.

A seven-month wallet build, phase by phase

  1. Ledger and licenseMonths one to three

    Double-entry core, reconciliation harness, KYC vendor, partner or license track

    Done when Sandbox top-up posts, reconciles, and survives a duplicate callback

  2. Both halvesMonths three to six

    Transfers, interoperable QR, bills, withdrawals, merchant dashboard, risk stack

    Done when Full consumer and merchant loop on staging with fraud queue staffed

  3. HardeningMonth six

    Load, chaos on callbacks, reconciliation dry run, pen test, store review

    Done when Drills pass; regulator or partner sign-off on the evidence pack

  4. Seeded launchMonth seven

    One corridor, anchor merchants and billers live, cohort ramp on queue health

    Done when Daily-use loop measurably running: repeat usage, not installs

Partner-license path shown; an own-license path adds quarters of regulatory lead time in parallel, not in series.

The planning numbers

$90k to $250k Build to first launch License path and merchant scope set the point in the range
5 to 9 months To seeded launch QR switch certification and license track are the external clocks
~40% Of the build is the merchant side Dashboard, settlement, disputes; the half first budgets forget
6 to 10 people Steady-state product and engineering Plus risk and support operators scaling with volume

Illustrative figures for an offshore e-wallet build on the partner-license path.

The e-wallet stack, tier by tierArchitecture diagram of an e-wallet in four tiers. The client tier serves both sides of the market: the consumer app, the merchant app and dashboard, and merchant APIs for online acceptance. The product services tier holds the flows over the ledger: payments and transfers, top-up and withdrawal sagas, tiered KYC, and the risk engine with its fraud queue. The ledger core tier is the actual product: the double-entry ledger, its read models, and the reconciliation engine. The rails and partners tier holds the external clocks and callbacks: the instant rail and banks, the national QR switch, the biller aggregator, and the KYC vendor plus the trust bank holding safeguarded funds.ClientsBoth sides ofthe market Consumer app Merchant app anddashboard Merchant APIs ProductservicesFlows over theledger Payments andtransfers Top-up andwithdrawal sagas KYC tiers Risk and fraudqueue Ledger coreThe actualproduct Double-entry ledger Read models Reconciliation engine Rails andpartnersExternal clocksand callbacks Instant rail,banks National QRswitch Biller aggregator KYC vendor, trustbank
The reference stack for an e-wallet build. The ledger and risk tiers carry the engineering weight; the app tier is the smallest slice.

The loop that decides everything

The uncomfortable statistic behind this category: most licensed wallets that launched in Southeast Asia over the past decade are functionally dead, and almost none died of engineering. They died because nothing brought users back on Tuesday. The winners are monotonously alike in this one respect: each paired the app with a loop the user runs anyway, MoMo with bills, top-ups and an enormous merchant push, ZaloPay with the Zalo messaging graph, the ride-hailing wallets with the daily commute, and used that loop to make the balance worth keeping loaded. A wallet without a loop is a balance with no reason to exist, and users correctly refuse to fund it.

For a new entrant the loop question is answerable before any code: what does your user do weekly that this wallet makes cheaper, faster or possible, and what anchor, an employer disbursing salaries, a transit system, a market's stall network, a platform you already operate, gives distribution without buying every install. The strongest current answers are wallets attached to businesses that already have the audience: the platform adding stored value to its checkout, the employer channel disbursing wages into a wallet with bill pay attached, the vertical wallet for a community whose payments the big players serve badly. Standalone consumer wallets funded by cashback are, at this point, a well-documented way to convert venture money into merchant subsidies.

This is also the honest frame for the build-versus-wait decision. If the loop and the anchor exist, the build in this guide is a well-marked road: ledger first, partner license, interoperable QR, both halves of the product, seeded launch, and the banking graduation later if the economics call for it. If they do not exist, the missing work is business development, not software, and the kindest thing a technical partner can tell you is to spend the first budget on the anchor rather than the app.

Frequently asked questions

How much does it cost to build an e-wallet app?

A credible first launch built offshore runs roughly 90,000 to 250,000 dollars over five to nine months. The bottom of the range is a partner-license build in one market: consumer app, lean merchant dashboard, national QR interoperability and a biller aggregator. The top adds an own-license compliance build-out, a full merchant product with APIs, agent tooling for cash top-up networks, and a deeper risk stack. Ongoing costs include KYC per-verification fees, QR switch and aggregator charges, infrastructure, and the risk and support operators, a five-figure monthly floor at modest scale.

Do we need a license to launch an e-wallet?

Stored value always sits under an e-money license, but it does not have to be yours. Partnering with a licensed institution, a bank or an existing e-money holder, gets a wallet to market in months and defers the capital requirement, in exchange for revenue share and roadmap approval rights on regulated features. Holding your own license takes quarters, locks up regulatory capital and requires a permanent compliance function, but keeps the full economics. The regional pattern is to partner first to prove the daily-use loop, then license once volume justifies the capital.

What is the difference between an e-wallet and a mobile banking app?

The license class and the ledger it permits. An e-wallet holds stored value under an e-money license: balances, payments and transfers, but no lending and usually no interest, with user funds safeguarded in a trust account. A banking app fronts regulated deposit accounts under a banking license, with lending, interest and far heavier capital and compliance requirements. The wallet is the faster, lighter build and the standard Southeast Asian first move; many then graduate, upgrading the ledger and compliance program to banking grade, which is why building the wallet ledger to audit-quality standards from day one is graduation insurance.

How do e-wallets make money?

At maturity, mostly from the merchant side: acceptance fees on QR and online payments are typically the largest line. Distribution of financial services, loans, insurance and investments offered in-app against the wallet's data and audience, is the growth engine for mature wallets. Bill pay and top-up commissions add a steady, loop-reinforcing stream. Withdrawal and transfer fees are kept deliberately low because friction there kills growth, and float income on safeguarded balances is regulated, often restricted, and never a sound plan. Early wallets run at a loss on payments to build the loop; the model works only if the loop does.

What is the hardest part of building an e-wallet?

Engineering-wise, the ledger and its reconciliation: double-entry, append-only, idempotent under retried callbacks, serialized against concurrent spends, and proven daily against the trust account and every rail partner's settlement files. Most wallet incidents trace to shortcuts in exactly these properties. Strategically, the hardest part is not technical at all: it is the daily-use loop and distribution anchor, the reason a user opens the app next Tuesday, without which a flawlessly engineered wallet joins the region's large population of licensed, launched and abandoned ones.

How long does it take to build an e-wallet app?

Five to nine months to a seeded launch with a focused team on the partner-license path: two to three months for the ledger core, reconciliation harness and KYC integration, three more for both halves of the product, consumer flows, interoperable QR, bills, withdrawals and the merchant dashboard, and the remainder for hardening, certification and a corridor-by-corridor launch. The external clocks are the QR switch certification and the license or partner track, both started in month one. An own-license path adds quarters of regulatory lead time running in parallel.

When the wallet needs a ledger built to audit grade, AgileTech is a top software house in Hanoi with payment and wallet systems running in production.

Consult Industry Specialists

Connect with us today to discuss your software development needs and discover how our tailored outsourcing services can propel your business forward.

Start a conversation
AgileTech Vietnam team at the office

Privacy choices

We use one category of strictly necessary first-party storage, which keeps the site working and remembers this choice; it is always active. Every other category is optional and stays off until you switch it on, wherever you are in the world. Two optional categories have something behind them today: Analytics, which is Google Analytics, and External content, which is the Google map of our Hanoi office on the Contact page. Neither runs until you allow it.

Our worldwide approach. We apply one standard to everyone: nothing outside strictly necessary storage runs until you allow it. That meets the EU and UK requirement for prior consent, Vietnam's Law 91/2025/QH15 on personal data protection, the notification and consent requirements of Singapore's PDPA, and US state privacy law. You can withdraw or change your choice at any time, as easily as you gave it, from Privacy choices in the footer.

Where you are connecting from. Our network tells us the country associated with your connection, and we use it to choose which consent policy to apply. We do not use it to work out your address, we do not put it in a cookie, and we never send your IP address to the page. Today every country receives the same strict policy, so it makes no difference to what you see. If your country cannot be determined, or you are using Tor, you get the strict policy too: an unknown location always means the more protective setting, never the weaker one.

If you are in the United States. We do not sell your personal information and we do not share it for cross-context behavioral advertising, so there is nothing to opt out of. We still honor an opt-out preference signal from your browser: if your browser sends Global Privacy Control, the optional categories stay off without you having to do anything.

Full detail, including the name and lifetime of the one cookie we set, is in the Cookie Policy.