Skip to content
BENAA homeالعربية

All work

Beauty & personal care · 2026

Online store and app for a beauty brand

A web store and mobile app for a skincare brand selling in several Gulf countries. Customers shop in Arabic or English, pay with local methods, find products through a short skin quiz, and track their orders; the team manages products, offers and stock from one dashboard.

Built by

Tech leadUI/UXFrontendMobileBackendDevOpsQA
Client
Withheld at the client’s request
Markets
Saudi Arabia · UAE · Kuwait
Platforms
Web · iOS · Android
Typical timeline
3–4 months
Squad
7 people · 6 disciplines

Technologies

  • Next.js
  • Flutter
  • Laravel
  • PostgreSQL
  • Redis
  • Meilisearch
  • Mada
  • Apple Pay
  • Shipping APIs
  • Firebase
  • Docker

The product

10 images

01

Brief

A beautiful brand on a slow, English-only store.

Context

The brand sold through Instagram and an off-the-shelf store, with most customers on phones in Saudi Arabia and the UAE.

Problem

The store was slow on mobile, Arabic was an afterthought, local payment methods were missing, and customers didn’t know which product suited their skin.

Goals

  • Arabic-first, fast on any phone
  • Mada, Apple Pay and cards
  • A guide to the right product
  • One stock for web and app

02

Team

The squad behind it.

Tech leadArchitecture, payments and multi-country setup×1Senior
Product designerBrand-led store design and the skin quiz×1Senior
Frontend engineerWeb store and admin dashboard×1Senior
Mobile engineerShopping app for iOS and Android×1Senior
Backend engineerCatalogue, cart, orders, payments and shipping×1Senior
DevOps engineerHosting, CDN and sale-day readiness×1Senior
QA engineerCheckout tests on web and devices×1Senior

Meet the team

03

UI/UX design

The brand’s calm, in both directions.

Who worked on it

UI/UXFrontendMobile

We designed the store in Arabic first, then English, with product photography leading every page. A five-question skin quiz recommends a routine, and checkout fits on one screen.

Arabic first, built around the products
Quiz result as a morning and evening routine, added to cart at the bundle price
  • Arabic firstTypography and layout designed for Arabic.
  • Skin quizA routine, not just a product.
  • One-screen checkoutAddress, delivery and payment together.

04

Frontend

Fast on a phone, even on sale day.

Who worked on it

UI/UXFrontend

The web store renders on the server and caches product pages at the edge, so it opens quickly on mobile data. The team edits products, bundles, offers and banners in both languages from the same dashboard.

Delivery estimate by city on every product
Filters by skin type, concern and ingredient, with the bundle in the grid
  • Server-rendered pagesGood for speed and for search engines.
  • Bundles and offersSet up without a developer.
  • SEO in two languagesArabic and English pages indexed separately.

05

Mobile

The app for customers who come back.

Who worked on it

UI/UXMobileBackend

The app adds what returning customers want: one-tap reorder of their routine, saved addresses and cards, order tracking, and alerts when a favourite product is back in stock.

A routine, not just a product
Reorder the routine before the serum runs out
  • Reorder the routineOne tap, same products.
  • Apple Pay and MadaNative payment sheets.
  • Back-in-stock alertsFor favourite products.

06

Backend & architecture

One catalogue, several countries.

Who worked on it

Tech leadBackend

One backend serves the web store and the app. Prices, currencies, taxes and shipping options are set per country, stock is reserved at checkout, and an order is released to the warehouse only after the payment gateway confirms it.

Checkout on one screen
Live order status from confirmation to delivery, with a delivery code
  1. Decision 1

    Prices and tax set per country

    Each market has its own currency and VAT rules.

    Trade-off · Every product needs a price for each market.

  2. Decision 2

    Stock reserved at checkout, released on timeout

    Popular items mustn’t be oversold during a sale.

    Trade-off · Abandoned checkouts hold stock for a few minutes.

  3. Decision 3

    Orders released only on the payment webhook

    A closed browser must not mean a lost or unpaid order.

    Trade-off · Order confirmation can lag by a few seconds.

07

DevOps

Ready for the big sale nights.

Who worked on it

BackendDevOps

Before big sale seasons, traffic is load-tested and the platform scales up ahead of time. Images are served through a CDN, and dashboards show orders, payment failures and stock in real time.

Revenue in three currencies, with alerts for payment failures and low stock
  • Load-testedBefore every big campaign.
  • Image CDNResized per device automatically.
  • Payment alertsA spike in failures alerts the team.

08

QA

Checkout tested with every payment method.

Who worked on it

FrontendMobileQA

Automated tests place orders on web and app with cards, Mada and Apple Pay in sandbox mode, in every country and both languages. Layout checks catch broken Arabic screens before customers do.

Checks before publishing: both languages, VAT per country, stock and alt text
  • Sandbox paymentsEvery method, every market.
  • RTL layout checksScreenshots compared on each change.
  • Real devicesPopular phones in the Gulf.
Online store and app for a beauty brand

Arrow keys or a swipe to move · Esc to close

Tell us what you’re building.

A short message is enough. A senior engineer replies within 1 working day.