Ghanesh RS
Jisr · Spend management

Spend, simplified: highlights from Jisr

Contract work across expenses, travel and health insurance on a Saudi HR and finance platform, from a full UX audit to an OCR receipt flow that shipped.

Spend, simplified: highlights from Jisr
RoleSenior product designer, contract
TimelineOct 2025 to Apr 2026
PlatformWeb and mobile
ShippedOCR receipt capture
Context

A contract role on a growing spend platform.

Jisr is an HR and finance platform for companies in Saudi Arabia. As a contract senior product designer, I worked across its spend modules: expenses, travel and health insurance. I started with a UX audit, then redesigned the flows the audit flagged, on web and mobile.

UX audit

Mapped inconsistent statuses, approval flows that differed by module, and the gaps that slowed people down.

Receipt capture with OCR

A photo of the receipt fills in the claim, on web and mobile. This shipped.

Non-SAR currencies

Claims in any currency, converted to SAR with the rate shown and policy limits checked.

Health insurance profile

A guided setup so HR admins enter policy details once and get renewal reminders.

Receipt capture

Snap the receipt. The claim fills itself.

Typing date, amount and merchant from a crumpled receipt was the slowest part of claiming an expense. Now the receipt fills those fields, marked with a sparkle so people know what to double-check. I designed every state, because OCR is not always instant or right: success, a delayed result people can apply when ready, and a clear fallback when extraction fails.

Mobile claim form: empty, extracted, delayed with "Apply details", and extraction delayed.
Mobile claim form: empty, extracted, delayed with "Apply details", and extraction delayed.
Reports and claims on mobile, with one status language: draft, in review, approved, rejected, paid, plus policy warnings.
Reports and claims on mobile, with one status language: draft, in review, approved, rejected, paid, plus policy warnings.
The same statuses on web, with a "Needs attention" toggle for claims that break policy.
The same statuses on web, with a "Needs attention" toggle for claims that break policy.
Currencies

Spend in dollars, claim in riyals, without the math.

Teams travel, but policy limits are in SAR. People claiming a USD or EUR expense had to convert it themselves and hope it stayed under the limit. I designed the claim to pick the currency, convert it with the exchange rate on show, and check the limit before submission. A warning still lets people save. A blocking limit tells them why.

Pick the currency the receipt is in.
Pick the currency the receipt is in.
Auto-converted to SAR with the rate shown, and a policy warning before submit.
Auto-converted to SAR with the rate shown, and a policy warning before submit.
Health insurance

Enter the policy once. Get reminded before it lapses.

HR admins kept insurance details in files and inboxes, and renewals slipped. I designed a two-step profile setup: provider and policy first, then coverage and documents, with progress shown. The profile then warns as the contract nears expiry and points to providers for quotes. Every screen works in English and Arabic.

Why set it up, in four plain benefits.
Why set it up, in four plain benefits.
Step 1: provider and policy details, three questions.
Step 1: provider and policy details, three questions.
The profile warns before the contract expires.
The profile warns before the contract expires.
The same profile in Arabic, right to left.
The same profile in Arabic, right to left.
Status

What shipped.

The OCR receipt flow went live. The other designs were handed over before launch when my contract ended. I'm happy to walk you through the decisions on a call.