Dimas Aditama Fikri Dimas Aditama Fikri All projects

Making cash and crypto transfers feel like one simple flow.

CASHI Mobile app Cross-border payments
Cashi wallet app shown in light and dark modes

Overview

Cashi is a 0→1 mobile wallet for moving money across cash and crypto. I focused on three core journeys—Send, Deposit, and Convert—working through very different requirements across wallets, blockchain networks, local payment methods, and third-party providers.

Cashi is aimed for non-crypto natives

Role

UI/UX Design

Design System

Impact

Early first month signals 10,000+ downloads

Cannot disclose transaction volume

Designing features around user’s intent

Moving money in Cashi can follow very different routes. A user might send to another Cashi user, transfer crypto to an external wallet, deposit through a blockchain network, or fund their balance through a local bank or mobile wallet.

Rather than exposing those technical differences upfront, I designed the flows to begin with what the user wants to do, then progressively reveal the information needed for that route.

Cashi wallet home screen
Cashi icon system
Cashi design system color tokens
Send Crypto Sending crypto could mean transferring to another Cashi user or sending to an external wallet. I designed a single recipient input that supports both. Initial testing showed that some users were not sure the differences between internal Cashi or external wallet We tested this to 10 internal employee, they are mostly a crypto native people. But once they type the entry, they understand that the system guides them automatically. Overall, all user can finish the task. But the initial reaction were that users were not aware on the differences between internal cashi or external wallet, presenting both options will add extra mental load to the user that are not familiar with the system.
Cashi send crypto flow
Cashi recipient search decision flow
Cashi recipient search flow
One input, two different paths I defined the logic behind the recipient field so Cashi could interpret what the user entered. If the input matches a crypto-address format, the system treats it as an external wallet and checks network compatibility. Otherwise, the input is treated as a Cashi username and triggers user search. This lets users start by entering what they already know instead of first deciding what type of recipient they are sending to.
Cashi wallet address search flow
Keeping technical details contextual Network information only becomes relevant when the destination is an external crypto wallet. By revealing it only when needed, the flow stays lightweight for Cashi-to-Cashi transfers while still giving external transfers the technical information required to complete them safely.

Deposit Crypto

Depositing crypto introduces an important constraint: the same asset can exist across multiple networks, and sending through an unsupported network can result in lost funds.

The initial design doesn’t communicate enough that user can only send certain assets

It causes real problem, this address can only receive USDT in EVM Network, although the information is available that this is address for USDT on BNB Smart Chain, users were trying to send other assets that Cashi don’t support.

It leads to around 10% of the transaction needs to be refunded manually, this costs manual effort and blockchain fees.

New design introduces warning text that explicitly shows the risk of sending the wrong assets

The page is redesigned along with app rebranding, but the structure is relatively similar, the only difference is more clear copy located near the main CTA.

Results were clear, tickets related to crypto refunds dropped by 95%.

Cashi deposit crypto flow

Deposit Cash

20+ payment methods, 3 core patterns

Cash deposits were much more fragmented.

Requirements were provided by TransFi and varied significantly across markets and payment methods. One method might require bank-account details, another a QR code, while others depended on redirects to external mobile wallets or payment apps.

Designing a unique page for every provider would have created an inconsistent experience that would become harder to maintain as Cashi expanded.

Cashi deposit cash flow
Cashi payment detail layouts
Cashi payment-detail variants

Convert

Supporting both sides of the conversion

Users do not always approach conversion from the asset they currently hold. Sometimes they think: “I want to convert 100 USDT.” Other times: “I want to receive $200 worth of BTC.”

For that reason, I made both the From and To amounts editable rather than forcing users to calculate the conversion from only one direction.

Cashi asset conversion flow
Cashi conversion interaction
Cashi conversion processing screen

Reflection

Designing Cashi showed me how AI can accelerate the entire design process—from prototyping and localization to integrating real data from third-party providers. Moving forward, I want to bridge the gap between design and code, while exploring new ways to use AI for faster, more meaningful iteration.