Building an Order Management System for a B2B Healthcare Distributor

UltraPain Products sells pain-management devices B2B. As sole designer on a three-person team, I replaced their manual order workflow with a custom platform.


Role: Product Designer (Acting PO)





Team: me + 2 engineers





Industry: B2B healthcare


20%

Increase in orders

200+

Hours saved

The Problem

Current state: Manpower hours were being lost due to every order being handled by an employee. Hours were lost each day to phone orders, data entry, and reconciliation.

Considerations: How would this live alongside UPP’s QuickBooks Desktop?

The Constraint that Shaped Everything

UPP kept QuickBooks Desktop as their system of record and chose to reconcile orders manually. That meant every order had to pass through a human before being recorded — so the design lived or died on how fast admins could review and approve orders.

I built two surfaces in parallel:

  • Customer side — as simple as a consumer marketplace, for medical-office staff who used to order by phone

  • Admin side — built for working through a queue fast, since every order needed manual review

Design Decisions

Order list as the Homepage. Admins process a queue, not single orders — so I surfaced everything needed to triage at a glance and made rows actionable, so routine approvals never required drilling in.

HOMEPAGE (ADMIN) - DESKTOP

HOMEPAGE (ADMIN) - MOBILE

One component set across both surfaces. Shared entities meant shared components — consistent UX, less for engineering to maintain.

COMPONENT LIBRARY

Reorder from history. Offices reorder on a cycle, so saved details and one-tap reordering replaced the phone call entirely.

CHECKOUT (CUSTOMER) - DESKTOP

CHECKOUT (CUSTOMER) - MOBILE

Working With Engineering:

As acting PO, I wrote acceptance criteria alongside designs and handed off in Figma Dev Mode (Supabase + Tailwind). I used Claude Code and Cursor to prototype interactions and scaffold front-end.

What I'd Do Differently

The QuickBooks question dominated the early phase — and was answered by not solving it in the product. Knowing that sooner, I'd have started admin-side design earlier instead of building integration mockups that never shipped.

Building an Order Management System for a B2B Healthcare Distributor

UltraPain Products sells pain-management devices B2B. As sole designer on a three-person team, I replaced their manual order workflow with a custom platform.

Role: Product Designer (Acting PO)
Team: me + 2 engineers
Industry: B2B healthcare


20%

Increase in orders

200+

Hours saved

The Problem

Current state: Manpower hours were being lost due to every order being handled by an employee. Hours were lost each day to phone orders, data entry, and reconciliation.

Considerations: How would this live alongside UPP’s QuickBooks Desktop?

The Constraint that Shaped Everything

UPP kept QuickBooks Desktop as their system of record and chose to reconcile orders manually. That meant every order had to pass through a human before being recorded — so the design lived or died on how fast admins could review and approve orders.

I built two surfaces in parallel:

  • Customer side — as simple as a consumer marketplace, for medical-office staff who used to order by phone

  • Admin side — built for working through a queue fast, since every order needed manual review

Design Decisions

Order list as the Homepage. Admins process a queue, not single orders — so I surfaced everything needed to triage at a glance and made rows actionable, so routine approvals never required drilling in.

HOMEPAGE (ADMIN) - DESKTOP

HOMEPAGE (ADMIN) - MOBILE

TABLE VIEW FOR APPROVING ORDERS AND REQUESTS

TABLE VIEW FOR APPROVING ORDERS AND REQUESTS

One component set across both surfaces. Shared entities meant shared components — consistent UX, less for engineering to maintain.

COMPONENT LIBRARY

COMPONENT LIBRARY

CHECKOUT (CUSTOMER) - DESKTOP

Reorder from history. Offices reorder on a cycle, so saved details and one-tap reordering replaced the phone call entirely.

CHECKOUT (CUSTOMER) - MOBILE

Working With Engineering:

As acting PO, I wrote acceptance criteria alongside designs and handed off in Figma Dev Mode (Supabase + Tailwind). I used Claude Code and Cursor to prototype interactions and scaffold front-end.

What I’d Do Differently

The QuickBooks question dominated the early phase — and was answered by not solving it in the product. Knowing that sooner, I’d have started admin-side design earlier instead of building integration mockups that never shipped.

Building an Order Management System for a B2B Healthcare Distributor

UltraPain Products sells pain-management devices B2B. As sole designer on a three-person team, I replaced their manual order workflow with a custom platform.


Role: Product Designer (Acting PO)





Team: me + 2 engineers





Industry: B2B healthcare


20%

Increase in orders

200+

Hours saved

20%

Increase in orders

200+

Hours saved in phone time on orders

The Problem

Current state: Manpower hours were being lost due to every order being handled by an employee. Hours were lost each day to phone orders, data entry, and reconciliation.

Considerations: How would this live alongside UPP’s QuickBooks Desktop?

The Constraint that Shaped Everything

UPP kept QuickBooks Desktop as their system of record and chose to reconcile orders manually. That meant every order had to pass through a human before being recorded — so the design lived or died on how fast admins could review and approve orders.

I built two surfaces in parallel:

  • Customer side — as simple as a consumer marketplace, for medical-office staff who used to order by phone

  • Admin side — built for working through a queue fast, since every order needed manual review

Design Decisions

Order list as the Homepage. Admins process a queue, not single orders — so I surfaced everything needed to triage at a glance and made rows actionable, so routine approvals never required drilling in.

HOMEPAGE (ADMIN) - DESKTOP

HOMEPAGE (ADMIN) - MOBILE

HOMEPAGE (ADMIN) - MOBILE

HOMEPAGE (ADMIN) - DESKTOP

HOMEPAGE (ADMIN) - MOBILE

HOMEPAGE (ADMIN) - MOBILE

The Problem

Current state: Manpower hours were being lost due to every order being handled by an employee. Hours were lost each day to phone orders, data entry, and reconciliation.

Considerations: How would this live alongside UPP’s QuickBooks Desktop?

One component set across both surfaces. Shared entities meant shared components — consistent UX, less for engineering to maintain.

COMPONENT LIBRARY

COMPONENT LIBRARY

COMPONENT LIBRARY

Reorder from history. Offices reorder on a cycle, so saved details and one-tap reordering replaced the phone call entirely.

CHECKOUT (CUSTOMER) - DESKTOP

COMPONENT LIBRARY

CHECKOUT (CUSTOMER) - MOBILE

Working With Engineering:

As acting PO, I wrote acceptance criteria alongside designs and handed off in Figma Dev Mode (Supabase + Tailwind). I used Claude Code and Cursor to prototype interactions and scaffold front-end.

What I'd Do Differently

The QuickBooks question dominated the early phase — and was answered by not solving it in the product. Knowing that sooner, I'd have started admin-side design earlier instead of building integration mockups that never shipped.