Making global payments work like local ones.
Designing a financial ecosystem that connects digital assets, local payment methods, merchants, and liquidity providers through clear, secure, and trustworthy experiences.
ROLE
Brand & Product Designer
· Product Strategist
MARKET
Global · USA / Canada
SCOPE
Brand Strategy · Brand Identity · Product Strategy · UX/UI · Financial Systems · Design System

Global commerce was open, Payment access was not
Customers in emerging markets could discover products and services from around the world, but completing the purchase was often much harder.
Many did not have an internationally enabled card or access to a dollar balance. Even when they had the money locally, overseas merchants frequently depended on payment methods and currencies that were unavailable to them.
The barrier was not the customer’s ability to pay. It was the incompatibility between local financial systems and global online commerce.
Friddy created a bridge
Friddy allowed customers to purchase from international merchants using familiar local payment methods and their own currency.
Behind the transaction, the platform coordinated the payment network, liquidity, digital assets, and merchant settlement required to move value between both sides.
The customer paid locally. The merchant received a global payment.
Making global checkout accessible through local payments
Friddy lets customers pay international merchants using familiar local payment methods and their own currency—while the network handles the complexity behind the transaction.
WITHOUT FRIDDY
International checkouts often require payment access that customers in emerging markets do not have.
Local customer
International checkout
No international card
Unsupported payment method
No USD balance
PURCHASE BLOCKED
WITH FRIDDY
Customers pay locally while Friddy coordinates the international transaction.
Local customer
Local payment method
Local currency
FRIDDY PAYMENT NETWORK
International merchant
PURCHASE COMPLETED
MY ROLE
Designing the brand and product as one connected system
As Friddy’s sole designer, I operated with the scope of a founding designer and product lead—working across business definition, brand strategy, product architecture, and hands-on product design.
I translated the company’s financial model into a structured product, defined how its participants and services connected, and carried that direction through the brand, customer journeys, interfaces, and design system.
Working directly with founders, stakeholders, investors, the startup incubator, and marketing and business teams, I aligned commercial ambition, product priorities, and customer needs throughout the work.
Brand direction
Defining Friddy’s identity, positioning, and visual language across the company and its products.
Product direction
Translating the business model into a coherent product architecture, user roles, capabilities, and priorities.
Hands-on product design
Designing key journeys, financial flows, interfaces, prototypes, and transaction states from strategy through execution.
Design systems
Building reusable foundations and components to create consistency across Friddy’s connected product ecosystem.
PRODUCT STRATEGY
One transaction three different experiences.
Friddy was not designed around a single user journey. A buyer wanted to pay using familiar local methods, a merchant needed reliable international settlement, and a liquidity provider needed eligible requests, clear instructions, and a visible reward.
All three participated in the same transaction, but each entered at a different moment, carried different responsibilities, and faced different risks. A universal experience would either expose too much system complexity or hide the information someone needed to act with confidence.
How do you make one transaction feel clear when every participant experiences a different part of it?
Rather than forcing every participant through the same interface, I structured Friddy around a shared transaction model with role-specific experiences.
The network coordinated eligibility, matching, escrow, confirmation, settlement, and exceptions behind the scenes. Each participant saw only the information, decisions, and transaction states relevant to their role.
One shared transaction Three focused experiences.
Friddy separates each participant’s responsibilities while keeping every action connected to the same transaction.
ROLE-SPECIFIC EXPERIENCES
Each participant sees only the information, actions, and transaction states needed to complete their part.
BUYER EXPERIENCE
Pay locally
Use local currency
Receive confirmation
MERCHANT EXPERIENCE
Create payment request
Track progress
Receive settlement
LIQUIDITY PROVIDER EXPERIENCE
Review eligible requests
Facilitate the exchange
Receieve a bounty
FRIDDY TRANSACTION CORE
Eligiblity
Matching Escrow
Confirmation
Settlement
EXCEPTIONS AND RESOLUTION
Dispute remain connected to the shared transaction
DIFFERENT PROMOTION MECHANICS
Different triggers, rewards, values, and fulfillment conditions.
Buy X → Same item free
Buy X → Different item free
Buy X → Discounted reward
Buy X → Choose reward
Multi-buy → Tiered reward
SHARED BEHAVIORAL VARIABLES
The variables that change across offer types.
Trigger
Reward
Application
Value
Inventory
ONE SHARED INTERACTION MODEL
One predictable customer journey across every promotion mechanic.
Discover
Qualify
Redeem
Confirm
Apply
Promotion behavior & state model
Defining how offers progress—and how the experience responds when eligibility, inventory, or promotion conditions change.
S0
PROGRESSING
Moves toward eligibility by meeting offer requirements.
S1
QUALIFIED
Meets requirements to unlock the reward.
S2
REWARD AVAILABLE
Reward is validated and ready to be applied.
S2A
REWARD UNAVAILABLE
Reward unavailable due to inventory or eligibility.
S3
APPLIED
Promotional value is added to the customer’s cart.
S4
CONFIRMED
Final promotional value is clearly shown at checkout.
Exception scenarios
Key situations that can change the offer state — and how the system responds.
REWARD REMOVED
Customer removes the reward from the cart.
REWARD CHANGED
Customer selects another eligible reward.
QUANTITY INCREASES
Added quantity may unlock a higher reward tier.
QUALIFYING ITEM REMOVED
A required qualifying item is removed from the cart.
REWARD OUT OF STOCK
Selected reward is no longer available.
QUANTITY REDUCED
Cart quantity falls below the eligibility threshold.
PRICE CHANGES
Price update affects qualifying spend or value.
ITEM SUBSTITUTED
Replacement item requires eligibility validation.
FULFILLMENT CHANGES
Delivery method or location affects eligibility.
OFFER CONFLICT
Another promotion takes priority over this offer.
ELIGIBILITY CHANGES
Customer or cart no longer meets requirements.
OFFER EXPIRES
Promotion expires while the customer is shopping.
Exception response in practice
A closer look at how one exception is evaluated, resolved, and communicated to the customer.
QUANTITY REDUCED
Cart quantity falls below the eligibility threshold.
SYSTEM EVALUATION
Cart quantity · qualifying threshold
SYSTEM ACTION
Recalculate progress and reward eligibility
UI RESPONSE
Show remaining requirement
S0
PROGRESSING
Moves toward eligibility by meeting offer requirements.
A shared recovery model
Different exceptions trigger different checks, but follow the same recovery logic: re-evaluate the offer, transition to a valid state, and communicate the change.
Different exceptions. One predictable recovery model.
BOGO customer journey
A simple path from discovering the offer to receiving the reward and completing checkout.
DISCOVER
Sees the offer
SELECT
Adds eligible item
QUALIFY
Unlocks reward
REDEEM
Receives free item
CHECKOUT
Completes purchase
CART
Reviews paid + free
CONFIRM
Sees reward applied
Behind the BOGO journey
A simple “Buy 1, Get 1 Free” experience depends on coordinated decisions across promotion logic, inventory, pricing, and fulfillment.
ADDED ITEM
Eligible product enters cart
CHECK OFFER RULES
SKU · quantity · user · region · offer status
ElIGIBLE?
Meets offer conditions?
NO
YES
KEEP NORMAL STATE
Offer not applied
CHECK REWARD STOCK
Validate reward inventory
AVAILABLE?
Reward item in stock?
NO
YES
SHOW UNAVAILABLE STATE
Reward unavailable
CREATE REWARD
1 promotional unit · SAR 0
RESERVE INVENTORY
1 paid + 1 free · 2 physical units
RECALCULATE CART
Preserve paid + promotional value
CONFIRM IN UI
1 Free Added
SEND TO FULFILLMENT
Pick quantity ×2
CHALLENGE 01
Buy 1, Get 1 Free
Making “free” unmistakable.
Problem
When a customer buys an eligible item, another unit of the same product becomes free. But simply increasing the quantity from one to two could make it appear that the customer was purchasing two items.
The experience needed to distinguish between what the customer bought and what Ninja added as the reward.
Solution
The offer is communicated directly on the product, then surfaced for explicit redemption once the customer becomes eligible.
After redemption, the product state confirms that the offer has been applied, while the cart separates the purchased item from the free unit and shows its original price reduced to zero.
Key UX decision
Treat the offer as 1 purchased item + 1 promotional item — not quantity 2.


CHALLENGE 02
Buy 1, Get the Second Item 30% Off
Showing where the discount actually goes.
Problem
A discounted second item introduces a different mental model. Both units have value, but only one receives the promotional price.
If represented as a single quantity and combined price, customers could struggle to understand which item was discounted and how the total was calculated.
Solution
I kept the redemption interaction consistent with the free-item model, but changed the pricing representation.
The discounted unit remains visibly separate, showing its original and promotional price so customers can understand exactly where the saving has been applied.
Key UX decision
Keep the interaction familiar while allowing the pricing model to change.
CHALLENGE 03
Buy 1, Get a Different Item
Turning a promotion into a selection experience.
Problem
Different-item promotions introduce another layer of complexity: the reward is no longer predetermined.
The system needed to tell customers that they had unlocked an offer, show which products qualified, allow only the permitted selection, and communicate how the discount would be calculated.
Solution
Instead of automatically adding a reward, the eligible state opens a focused selection experience.
Qualified products are presented together, selection is constrained by the promotion rules, and supporting copy explains how pricing is applied before the customer continues shopping.
Key UX decision
When the reward requires a decision, make selection part of redemption.

One framework. Different promotion mechanics.
Same-item rewards, discounted rewards, and customer-selected rewards introduced different business rules, but followed the same underlying interaction model.
Discover
Qualify
Redeem
Confirm
Cart
Separating promotion mechanics from customer-facing behavior allowed new offer types to reuse the same interaction model.
DIGITAL ORDERS
Bringing digital and physical products into one order.
Ninja was expanding beyond products that could be picked, packed, and delivered. Digital cards introduced a different fulfillment model — purchased alongside groceries, but available instantly.
Digital and physical products could exist in the same order, but behaved differently after purchase. The experience needed to make what gets delivered, what becomes available instantly, and what happens next immediately clear.
How do you introduce instantly fulfilled digital products into a commerce journey designed around physical delivery?
Rather than creating a separate experience, I integrated digital goods into the existing commerce model — sharing checkout and order history while introducing the behaviors needed for instant access.
Extending one order across two fulfillment models
Physical products and digital goods shared the same order, but followed different paths after purchase. The experience needed to support both without creating two separate journeys.
ONE ORDER
Contains both product types
PHYSICAL PRODUCTS
Purchase → Prepare → Deliver
DIGITAL GOODS
Purchase → Generate → Reveal → Use
SHARED ORDER EXPERIENCE
One place to access and manage both
Designing for instant access
Unlike physical products, digital goods become usable immediately after purchase. The order experience needed to make access clear while protecting the value until the customer chose to reveal it.
Purchased
Unrevealed
Revealed
Copied
PURCHASED
Payment confirmed; digital value generated.
UNREVEALED
Value available, protected by default.
REVEALED
Value intentionally exposed by the customer.
COPIED
Value copied with immediate confirmation.
One digital product, multiple access states.
One order, two timelines
Physical and digital products share the same transaction, while progressing through different fulfillment states.
ORDER CONFIRMED
One transaction, two fulfillment paths.
PHYSICAL FULFILLMENT
DIGITAL FULFILLMENT
PREPARING
GENERATED
OUT FOR DELIVERY
DELIVERED
AVAILABLE
One order model, without forcing different products into the same fulfillment lifecycle.
When digital fulfillment doesn’t go as planned
Instant fulfillment creates a different class of exceptions from physical delivery. The experience needed to communicate these states without breaking the shared order model.
GENERATION
// How the digital value is created.
Generating
Generated
Generating
Failed
ACCESS
// How the customer accesses the digital value.
Unrevealed
Revealed
Copied
AVAILABILITY
// Whether the digital value can be accessed.
Available
Unavailable
ORDER
// How order changes affect the digital product.
Active
Cancelled
Refunded
Handle digital exceptions at the product level while keeping the order as the shared experience.
Exception response in practice
A closer look at how a failed digital fulfillment state is detected, contained, and communicated without affecting the rest of the order.
GENERATION FAILED
Digital value could not be generated.
SYSTEM EVALUATION
Digital item · generation status
SYSTEM ACTION
Isolate failed digital item
UI RESPONSE
Show failure state and next action
S0
ORDER CONTINUITY
Physical fulfillment continues
Handle digital exceptions at the product level while keeping the order as the shared experience.
CHALLENGE 01
Mixed-product orders
One checkout. Two fulfillment models.
Problem
A single order could contain both groceries and a digital card. Although customers paid for them together, the products behaved differently after purchase: physical goods required delivery while the digital product became available directly inside the app.
Creating separate orders would fragment the experience. Treating them identically would hide an important difference in how customers receive what they purchased.
Solution
I kept both product types within the same order while creating clear grouping inside Order Details.
Digital products received their own section and interaction model, while physical products continued to follow the familiar grocery structure.
This preserved one transaction and one order history while making the different fulfillment models understandable.
Key UX decision
Separate by fulfillment behavior, not by transaction.


CHALLENGE 02
A product that becomes a credential
Making digital value accessible without exposing it by default.
Problem
Unlike a grocery item, the value of a digital card exists in its redeemable code. Once purchased, customers needed an easy way to retrieve and copy that code — without permanently exposing it whenever Order Details was opened.
Solution
The code remains concealed by default and can be deliberately revealed when needed.
Once visible, customers can copy it directly, with immediate system feedback confirming that the action succeeded.
Key UX decision
Treat the card code as an actionable credential, not ordinary order information.
CHALLENGE 03
Reordering across product types
Making “Order Again” work when not everything behaves the same.
Problem
Reordering a mixed purchase introduced a different problem: the previous order could contain products with fundamentally different behaviours. A digital card and a grocery item could be purchased together, but they could not simply be treated as identical line items when rebuilding the order.
The experience needed to translate the previous mixed order back into purchasable items while preserving the distinction between product types and allowing customers to adjust quantities before placing the new order.
Solution
The Order Again experience reconstructs the previous purchase as an editable cart, grouping Digital Cards and Grocery separately while maintaining a single order action and combined total.
Key UX decision
Preserve product-type differences without fragmenting the repurchase journey.

One commerce experience. Different fulfillment models.
Digital cards joined Ninja’s existing commerce model, sharing checkout and order history while introducing instant digital fulfillment.
Ninja could expand what it offered without changing how customers understood an order.
Discover
Purchase
Fulfill
Access
NINJA PRIME
Introducing membership without interrupting the shop.
Ninja Prime introduced a new relationship between customers and the product. Instead of engaging only when placing an order, customers could subscribe for ongoing benefits such as free delivery and cashback.
Prime needed to be discoverable within the existing shopping journey, communicate enough value to justify a recurring commitment, and make joining feel like a natural extension of ordering from Ninja.
How do you introduce a paid membership into a transactional Q-commerce experience without adding friction to the shopping journey?
Rather than treating Prime as a separate product, I integrated membership discovery, plan selection, and payment into the existing commerce experience — keeping the journey connected to behaviors customers already understood.
CHALLENGE 01
Introducing Prime inside an existing shopping journey.
Make membership visible without turning commerce into an ad.
Problem
Prime needed enough visibility for customers to discover it, but Ninja’s home experience was already focused on getting users quickly into products, categories, offers, and repeat purchases.
Making Prime too passive would hurt discovery. Making it too dominant could interrupt the core shopping journey.
Solution
Prime was introduced within the existing commerce experience rather than treated as a disconnected destination.
The entry point communicates the proposition at the moment customers are already thinking about ordering, creating a bridge from transactional value to membership value without changing the primary purpose of Home.
Key UX decision
Introduce membership in the context where its benefits become relevant.


CHALLENGE 02
Turning benefits into a reason to subscribe.
Explain the value before asking for commitment.
Problem
A recurring subscription requires a different decision from purchasing groceries. Customers needed to understand what they would receive in return before being asked to choose a plan or provide payment.
Prime therefore couldn't rely on branding or a generic “Subscribe” CTA alone.
Solution
The Prime experience establishes the value proposition first, surfacing the membership benefits before introducing plan selection.
Benefits such as free delivery and cash back are presented as concrete advantages connected to how customers already use Ninja, making the subscription easier to evaluate in practical terms.
Key UX decision
Sell the value before selling the plan.
CHALLENGE 03
Turning recurring commitment into a simple decision
From benefits to plan selection without unnecessary friction.
Problem
Once customers understood Prime, the next decision was no longer whether Prime has value, but which commitment makes sense for them.
Introducing multiple durations, pricing and savings could easily turn a lightweight subscription into a comparison exercise.
Solution
Plan options were consolidated into a focused selection step where duration, price and relative value could be compared without leaving the Prime journey.
The selected plan then carries forward into confirmation, keeping the transition from consideration to commitment explicit.
Key UX decision
Reduce subscription choice to the information required to make the decision.


CHALLENGE 04
Making payment feel like continuation, not another journey.
Complete the subscription inside a familiar payment model.
Problem
After deciding to subscribe, customers still needed to complete payment. Introducing an unfamiliar checkout specifically for Prime would add friction at the point of highest intent.
Solution
The subscription moves into familiar payment patterns, allowing customers to use an existing payment method or add a new card without breaking the flow.
This keeps the final step focused on completing the decision customers have already made rather than asking them to learn another interaction model.
Key UX decision
Reuse familiar commerce patterns when the mental model doesn't need to change.

Prime changed the commercial model without making Ninja feel like a different product.
Prime extended Ninja beyond individual transactions, integrating membership discovery, plan selection, and payment into the existing commerce experience.
Discover
Understand
Choose
Confirm
Pay
Prime
OUTCOMES
Designing for the next stage of growth.
The strongest outcome wasn't a single feature. It was creating a product foundation that could accommodate new business models and experiences without fragmenting the customer journey.
This work supported Ninja’s evolution from a focused Q-commerce experience into a broader multi-vertical platform.
A more extensible product
Promotions, digital goods, subscriptions, and new verticals could build on shared patterns rather than creating disconnected experiences.
Greater consistency at scale
Reusable components, interaction patterns, and product behaviours created greater coherence across features, Arabic and English.
A stronger foundation for teams
Shared patterns and design-system principles gave Product, Design, and Engineering a common framework for evolving the experience.
WHAT I TOOK FROM IT
Absorb complexity into the system, not the customer experience.
Ninja reinforced something that has shaped how I approach product design: growth inevitably creates complexity, but customers shouldn't have to carry that complexity themselves.
The most effective solutions were rarely isolated screens. They came from understanding the underlying product logic, finding behaviours that repeated across different problems, and turning those behaviours into systems that could scale.
It also reinforced the value of staying hands-on while leading. Staying close to the product connected detailed interaction decisions with broader product direction, while leadership created the structure for those decisions to scale beyond an individual designer or feature.
As products scale, design shifts from solving individual experiences to building the systems that allow many experiences — and many teams — to evolve coherently.

© 2026 Moe Slah. All rights reserved.































