A resident pays for a train journey in one app, parking in another, and a sports facility on a separate website. A shared interface can simplify these tasks, but operators still need accurate charges, clear responsibilities, and reliable settlement.
Digital wallets for urban services connect these journeys through shared payment and account functions. This guide explains the available models, international examples, and practical development decisions. It also looks at SDK.finance, a FinTech software provider whose platform can serve as the foundation for your own digital wallet for urban services.
Ready backend, APIs, and integrations
Talk to Our TeamWhat are digital wallets for urban services?

A digital wallet for urban services is a payment service that gives people access to several city-related services through stored funds, connected payment methods, or a combination of both. It might cover transport, parking, electric vehicle charging, or payments within a campus or residential development.
A mobility wallet focuses on travel, including payments across transport options or a funded travel allowance. Here, the focus is payments and mobility budgets, rather than digital identity or cryptocurrency wallets.
These distinctions matter when defining a product:
- A municipal payment portal may be sufficient for finding and paying individual bills.
- A transport app may sell tickets without maintaining a wallet balance.
- An interface that stores bank cards may initiate payments without holding the user’s money.
A shared interface does not automatically create a shared balance across operators.
Urban-service payments in numbers
Wallet adoption and transport usage provide useful context. The figures below measure spending, people, journeys, and programme design, so they should not be combined into a single market-size estimate.

- 56% of global e-commerce spending was paid through digital wallets in 2025, according to Worldpay’s GPR 2026. This shows how familiar wallet payments have become, but it is a share of spending, not of users or urban-service payments.
- 42% of adults in low- and middle-income countries made a digital merchant payment in 2024, up from 35% in 2021, according to the World Bank’s Global Findex 2025. The increase is seven percentage points and includes payment methods beyond wallets.
- More than two million rail journeys used PAYG tap-on, tap-off payments in South East Wales, Transport for Wales reported in November 2025, one year after launch. The figure counts journeys, including card payments, rather than unique wallet users.
- $1,800 per participant over 12 months was the travel budget specified for 2,000 participants in Los Angeles Mobility Wallet Phase II, according to LADOT. These are programme parameters, not measured spending or outcomes.
For a local business case, measure payment frequency, abandoned journeys, support enquiries, and time spent matching financial records. These reveal where a common wallet could help.
Where an urban-services wallet can add value
A shared wallet is useful when it removes recurring checkout or support problems. The table links each benefit to the system needed to deliver it.
| Service | User benefit | Integration dependency |
|---|---|---|
| Public transport and shared mobility | Repeat travel with clear payment and access status | Ticketing, fare engine, validators, and operator systems |
| Parking and EV charging | Start, pay for, and finish a session in one journey | Parking management or charging platform |
| Property and campus services | Book and pay with the correct access permissions | Access management and service billing |
| Municipal services | Match payment to the correct fee or bill | Departmental billing and financial accounting |
Public transport and shared mobility
Paying, buying a ticket, and proving entitlement to travel are separate actions. Agree when a payment creates a ticket or access right and how users see that confirmation.
Parking, EV charging, and property services
For sessions whose final price is unknown at the start, agree whether the payment arrangement reserves funds, charges later, or uses another supported approach. Explain the behaviour before the user begins, including what happens when a session ends unexpectedly.
Municipal services and campus payments
Shared permissions can connect repeat facility bookings and paid services. For an occasional bill payment, a portal may be sufficient. Define the extra user benefit before adding a wallet account or another registration step.
How do digital wallets for urban services work?
Several systems cooperate behind a payment. The service operator determines what the user owes. The wallet backend manages applicable accounts and transaction rules. Payment providers handle the external payment, while finance teams check records and amounts received.

Each service needs its own payment timing and confirmation rules.
Open-loop transit payments can separate the initial tap, fare calculation, and final charge. A gate opening is therefore not always evidence that the final payment has completed. Littlepay’s explanation of transit fare processing illustrates why transport requires its own payment and fare logic.
In this hypothetical parking journey, the parking system owns the price and session status; the wallet coordinates payment. The example illustrates a design, not the architecture of Kyiv Digital or an SDK.finance deployment.

Agree how the teams will resolve these exceptions before launch:
| Situation | Decision required before launch |
|---|---|
| Payment succeeds; parking is not activated | Name the team that restores the session or initiates a refund, using linked service and payment references. |
| A user retries after a timeout | Prevent a second charge and recover the original transaction status. |
| An operator receives a different amount | Assign responsibility for checking fees, provider reports, and settlement discrepancies. |
Types of urban-service payments: who pays whom?
Classify each flow by its actual payer and recipient. Citizen-to-Government (C2G) corresponds to the broader Person-to-Government (P2G) category; “citizen” does not restrict eligibility to citizens. Similarly, C2B corresponds to P2B, and G2C to G2P.
| Type | Payer | Recipient | Urban example | Implementation requirement |
|---|---|---|---|---|
| C2G | Individual | Public authority | Permit or municipal fee | Bill reference and authority reporting |
| C2B | Individual | Service business | Parking or EV charging | Merchant records and service confirmation |
| B2G | Business | Public authority | Operating permit | Corporate roles and approvals |
| G2C/G2P | Public programme | Individual | Mobility allowance | Eligibility and spending controls |
| G2B | Public authority | Business | Reimbursement for subsidised trips | Evidence, approval, and external payment |
| B2B | Business | Business | Payment to a service operator | Contractual allocation and settlement records |
This classification follows the payer-and-payee approach used in the World Bank’s retail payments guide.
- Classify recipients by their contractual role. City ownership alone does not make an operator’s payments C2G; utility payments also depend on the actual recipient.
- Retain authority bill references and refund histories, and agree merchant onboarding and reporting requirements.
- For mobility budgets, define eligibility, funding, permitted spending, and unused-fund rules. Keep programme and personal funds distinct. A fare discount alone is not a G2P transfer.
- Include corporate approvals only where businesses are in scope. Require evidence for reimbursements, even when treasury processes remain separate.
- Agree operator fees and payout schedules. An internal balance entry records an obligation, not proof that external funds reached the operator.
Payment direction, funding, and acceptance are separate decisions. QR and NFC describe transaction interaction, not necessarily the funding source. Topping up a wallet is not itself payment for a city service.
Choosing the funding and acceptance model
Make two separate decisions: how payments are funded, and where the chosen instrument is accepted.
Choose how users fund their payments
With a stored balance, decide how users add money, check available funds, and recover unused value. With a connected payment instrument, such as a supported bank card, the service can request payment without requiring a separate city-wallet top-up. Agree how failed or delayed charges will be handled. A wallet ledger records the movements behind each stored balance, including top-ups, spending, fees, and refunds.
A mobility allowance may use a prepaid card or wallet balance. Confirm who supplies the funds and apply the programme rules described in the payment-flow guidance above.
Choose where payments are accepted
Match closed-loop, open-loop transit, or hybrid acceptance to your users and existing infrastructure. The comparison below summarises the trade-offs.

| Criterion | Closed-loop | Open-loop transit | Hybrid |
|---|---|---|---|
| Acceptance | Defined service network | Participating card-enabled transport services | Both environments |
| User instrument | Operator card, app, or identifier | Supported bank card or mobile wallet | Choice of supported instruments |
| Top-up | Usually for stored value; passes differ | No separate transit top-up for direct card payment | Depends on the selected method |
| Concessions | Linked to operator rules and entitlement | Requires supported entitlement and fare logic | Consistent policy across methods |
| Infrastructure | Account or ticket system and readers | Compatible validators, fare processing, and acquiring | Both, with coordinated records |
| Suitable context | Campus, property, or limited network | Networks serving regular and occasional travellers | Networks needing several access options |
Mastercard’s comparison explains the acceptance distinction. Account-based ticketing places journey and entitlement records in a backend and can support different media; it is not synonymous with open-loop, as Cubic explains.
Fare capping limits eligible fares over a defined period and needs coordinated fare logic whichever model you choose. Contactless interaction alone does not provide it. Likewise, the label “closed-loop” does not establish a regulatory exemption. For wider context, see the explanation of closed-loop payment systems.
Real-world examples of urban-service payments
These examples show different ways to organise city-related payments. They are external programmes and products, not SDK.finance customer cases or evidence of a common technical architecture.
Kyiv Digital, Ukraine: a municipal service app

Kyiv Digital, officially Київ Цифровий, brings transport ticketing and parking into one municipal app. It shows how a shared mobile interface can connect services with different payment and access rules.
For public transport, users can buy a transfer QR ticket in the app. Kyiv’s ICT department describes a ticket that allows transfers between the metro, buses, trolleybuses, trams, and the funicular for 90 minutes after its first validation. Passengers validate the same QR code again at each transfer.
For parking, the app can identify the relevant parking location automatically or let the driver select it from a list. Users can pay for hourly parking or buy a parking pass. The city’s parking guidance also tells drivers to check the location number and end their session in the app when they leave.
For a team building an urban-services wallet, the lesson is to bring these journeys into one interface while preserving each operator’s rules. The cited sources do not establish a shared stored-value balance across services.
Los Angeles Mobility Wallet, United States: a funded mobility budget

Illustrative TAP app views provide local transit context; TAP is a separate service from the Mobility Wallet programme described below.
The Metro and LADOT programme uses a prepaid debit card to let eligible participants spend a transport allowance across permitted categories. Published Phase II categories include public transport, bikeshare, ride-hailing, and certain bicycle-related purchases.
Participants choose among eligible travel options using programme funds. For product teams, the lesson is to design spending controls and participant support alongside the payment interface. This was a targeted pilot, not a universal municipal wallet or an invitation to apply today.
Touch ‘n Go eWallet, Malaysia: a wallet connected to everyday mobility

TNG eWallet’s transport offering connects toll payments, street parking, EV charging, and supported travel passes. Its PayDirect service links a physical Touch ‘n Go card to the eWallet for participating toll and parking uses.
The physical card can provide access while the linked wallet funds the charge. Card and eWallet balances are distinct, and acceptance must be checked for each road, parking location, or transport service.
Ready backend, APIs, and integrations
Talk to Our TeamHow to build a digital wallet for urban services
Wallet development starts with an agreed operating model and clear responsibilities for the product owner, technical team, operators, payment partners, and finance team.
Define the first service and users
Choose one service and user group, such as campus parking before shuttle tickets. Document the minimum viable product (MVP), operator rules, and support arrangements. Set one primary outcome: fewer unresolved municipal payments, easier repeat facility access, or consistent operator settlement reports.
Map funding, spending, refunds, and settlement
Finance and payment partners should map where money enters, who receives it, and when obligations are discharged. Include fees and assign an owner to each exception in the earlier table. This becomes the funds-flow diagram used for implementation and testing.
Choose the software foundation and delivery approach
Compare building in-house, a white-label wallet, and an adaptable platform against the same workflows. Assess configuration limits, integration scope, deployment control, and maintenance responsibilities. Ask suppliers to identify reusable components and custom work, then demonstrate their testing and handover approach.
Integrate service systems and payment providers
Record each connection’s owner, authoritative data, transaction references, statuses, timeouts, and safe retry behaviour in an integration map with testable requirements.
Check device compatibility and offline continuity
Test supported phones, operating systems, cards, QR readers, and contactless validators against the actual service journey. Check phone and validator connectivity separately: displaying an existing ticket and buying a new one are different functions. Agree what remains available during an outage, how delayed records synchronise, and which fallback lets a resident continue. Do not promise offline payments without testing the chosen providers and devices.
Design for adoption and everyday use
Test whether residents and visitors can find a service, understand its price, pay, and confirm access. Include receipts, remaining travel funds, lost-phone recovery, and suitable physical-card or assisted routes. Measure registration and payment abandonment, separating interface problems from provider declines.
Assign responsibility for funds and resident data
Name the party that holds funds, approves refunds, handles disputes, and supports account recovery. Document who stores payment credentials and who may view location or journey history. Limit staff access to the records needed for their role, and agree retention and deletion procedures. Have qualified advisers and financial partners assess licensing, funds handling, identity checks, and data protection for the chosen jurisdiction.
Pilot, reconcile, and expand
Pilot complete journeys, including failure and recovery paths. Use payment reconciliation to match provider reports, internal records, and funds received. Agree three measures:
- Payment success: completed payments as a share of valid attempts.
- Service fulfilment: confirmed tickets or sessions as a share of successfully paid requests.
- Reconciliation: number and value of transactions unmatched at the daily cut-off.
Track repeat use, refund completion time, and support enquiries by cause. Expand when the team meets agreed pilot criteria and unresolved failures have owners.
What determines implementation cost and complexity?
Cost follows distinct rules and connections. Each operator can add tariffs, merchant arrangements, refund rules, reporting, and settlement schedules.
Separate estimates for the software foundation, integration work, hardware, payment services, and ongoing operations. Legacy APIs, unreliable connectivity, and device compatibility can create substantial work. Migration also needs attention when existing users, balances, tickets, or transaction histories must move safely.
Compare estimates against the same journeys, exceptions, deployment scope, and support responsibilities. Require explicit assumptions rather than a universal budget or timeline.
SDK.finance as a software foundation for an urban-services wallet

SDK.finance provides a ready-made software foundation for developing and launching digital wallets for urban services. Its Transaction Platform supplies the financial technology core, allowing city service providers, development companies, and systems integrators to build on an existing backend and focus on resident payment journeys and connections to local services.
Start with the SDK.finance core as your foundation
Use the SDK.finance Transaction Platform under a source code licence as the backend on which you build the wallet. It gives your development team financial components to work with from the outset:
- Individual and merchant accounts, wallet balances, and transaction histories for residents and participating operators.
- Top-up, withdrawal, transfer, merchant-payment, and invoice workflows for funding accounts and paying for services.
- Backoffice tools for transaction investigations, supported refunds, staff permissions, and user-action history.
Your team deploys and adapts the licensed core in its chosen infrastructure. The licence and implementation agreements define modification rights, maintenance responsibilities, and ownership of custom work.
Configure the wallet around your city-service model
Next, turn the available financial functions into the account and payment setup your project needs:
- Configure how resident funding and service payments affect account balances, and how transactions are allocated to participating operators.
- Configure wallet fees and limits by transaction amount, count, volume, and period. Implement parking tariffs, fare caps, and mobility-budget restrictions in the relevant service logic or custom extensions.
- Where an accounting layer is required, use SDK.finance General Ledger to map events into balanced debit and credit entries for operator obligations, fees, refunds, and provider movements.
Connect payments to the services residents use
Use the Platform’s 650+ APIs and configured webhooks to build the connections between the wallet, financial providers, and city-service systems:
- Connect funding and payout providers, with processing and result synchronisation implemented through the relevant integrations.
- Link ticket, parking-session, charging-session, and bill identifiers to payment references. The operator’s system issues the ticket or confirms the service; the integration connects that result to the payment.
- Adapt a customisable client-interface template or separately licensed mobile app source code. Add service selection, ticket display, parking controls, local languages, and accessibility to the resident journey.
Validate the configured wallet with your first operators
Use SDK.finance’s operational tools to check the configured flows with your first operators:
- Inspect payment statuses and provider references in the backoffice, and match them to the linked ticket or service-session records.
- Run supported refund workflows and verify the resulting transaction and balance records.
- Verify operator fees and, where General Ledger is used, accounting entries. Reconcile against provider reports through implemented data feeds and matching rules.
This approach lets your team concentrate on configuring the core and delivering the city-specific integrations and experience. SDK.finance provides the software foundation; your team and delivery partners implement the product, while financial partners supply the regulated services.
Start with one service and a clear payment model
Expand when the pilot demonstrates repeat use, accurate operator accounting, and effective support. Apply those tested workflows to each new operator’s rules.
To assess fit, bring your first service journey, funds-flow map, and integration list to SDK.finance. These give the team a concrete basis for discussing reusable components, delivery responsibilities, and the work required for your urban-services wallet.
Ready backend, APIs, and integrations
Talk to Our Team