Case Study // Enterprise Software

Ordering at
enterprise scale.

My Guardian and other large NDIS and aged-care providers run high-volume consumable ordering through custom software we built from scratch. Fast to order. Easy to run. Accounting-grade. Hosted entirely in Australia.

ClientAngels Link
SectorNDIS / Aged Care
DeliveryUnder 3 weeks
Year2026
Angels Link enterprise ordering portal dashboard
Catalogue183
User Roles3
TenancyMulti
HostingSydney
AuthMFA
Audit7yr
(01) The Challenge

A storefront could sell the products. It could not run the operation.

Angels Link supplies NDIS and aged-care consumables to large providers. Their enterprise customers do not buy like retail shoppers. A single coordinator at a provider like My Guardian places orders for hundreds of participants, over and over, each order claimed under a specific funding type.

Every order has to carry the right participant identifiers, the correct NDIS or aged-care claim code per line, a compliant invoice, and a daily reconciliation file the provider's finance team can import. Orders need to wait on a hold until funds are approved, then release for fulfilment.

A public storefront, wholesale apps, and shared spreadsheets could not hold any of that. They lost leading zeros on participant codes, could not model invoice corrections or payment approval, and left no audit trail. The work needed a real piece of software.

(02) The Solution

A purpose-built ordering portal on top of Shopify.

New front end, new workflow, Shopify left to do what it does well

Shopify stays the catalogue, inventory, and fulfilment engine. The portal is an entirely new interface built on top of it, talking to Shopify through the Admin API. Coordinators never touch the public store.

The portal owns everything Shopify was never built for: participant records, per-account pricing, claimability, invoicing, exports, payment allocation, and fulfilment release. The 183-product catalogue stays in sync automatically.

Portal catalogue with funding-episode selector and per-product claimability badges across 183 NDIS and aged-care products
Claimability

The funding rules, built into the catalogue

Every product carries its NDIS and aged-care codes. A coordinator picks a funding type once, and the portal labels each line claimable or private purchase automatically. No guessing, no cross-checking a spreadsheet.

Speed

Built for repeat ordering, not browsing

Find a participant by name, code, alias, or NDIS number, set the funding type, and fill a cart. Reorder repeats a past order in two clicks with current pricing and stock. It is a work tool, tuned for staff doing this all day.

Accounting

Invoices and reconciliation that run themselves

Each order issues an NDIS-compliant invoice automatically and feeds a daily CSV export into the provider's finance system. Payments are allocated against invoices, and stock stays on hold until funds are approved for release.

(03) The Workflow

One participant. One funding type. One clean order.

An order starts with the person it is for. The coordinator picks a participant and the funding type the order will be claimed under, then every line is checked against that context as the cart is built. The structure that finance needs is captured at the source, not patched up afterwards.

Start a new order screen with participant search and funding episode selection, showing per-line claimability is evaluated against the chosen funding type
Step 01

Pick the participant

Search by name, participant code, alias, NDIS number, or suburb. Codes keep their leading zeros, so identifiers stay valid into the invoice and export.

Step 02

Set the funding type

Choose NDIS Plan-Managed or aged-care Support at Home. The portal evaluates every line against it and flags anything that is private purchase.

Step 03

Submit and account

Submission creates a held Shopify order, issues the invoice, and queues the line for the next daily export. Release happens once payment is approved.

(04) The Release

Nothing ships until the money is accounted for.

When a coordinator submits an order, the portal creates the Shopify order straight away but puts a hold on it, so stock is reserved while fulfilment waits. The order cannot ship yet.

We built Angels Link their own admin back office for the other side of that. As provider payments come in, an admin records each one against the matching invoices and ticks them off as approved. That single action lifts the hold on the linked Shopify order on the backend, and the warehouse can pick, pack, and dispatch.

Nothing ships before it is paid or approved, and nothing approved sits forgotten. The whole loop, from order to dispatch, is one auditable trail.

Angels Link admin payments back office listing recorded payments across all portal accounts, used to approve invoices and release held Shopify orders for fulfilment
Step 01

Record the payment

An admin logs the provider's bank transfer or approval and allocates it against the relevant invoices, with exact-match or permissive modes.

Step 02

Approve for release

Ticked invoices are marked approved for release, one at a time or in bulk. Every approval is written to the audit log with actor and timestamp.

Step 03

Shopify hold lifts

The portal releases the fulfilment hold on the linked Shopify order on the backend, and the warehouse fulfils it through their normal process.

Product detail page showing claim codes, claimability status, specifications, and add-to-cart for a mobility hoist
(05) The Catalogue

Every product knows how it can be claimed.

Product data, codes, pricing, and stock sync from Shopify, with the funding metadata the scheme requires layered on top. A coordinator sees the claim status, the applied price for their account, and live stock before anything goes in the cart.

Items still pending clinical sign-off are flagged for review rather than blocked, so the people who carry the decision stay in control. Products with no price for an account show as price on application instead of an order they cannot place.

(06) Enterprise-Grade

Multi-tenant, role-based, and Australian-hosted by design.

Multi-tenant

Many providers, one system

Each enterprise customer is a separate tenant with its own users, pricing, participants, and exports, fully isolated. New providers onboard without a code change.

Least privilege

Three roles, clear boundaries

Coordinators order, account admins manage their own people and data, and Angels Link admins handle pricing, approvals, and release. Nobody sees more than their role allows.

Data residency

Hosted entirely in Sydney

Database, file storage, and authentication all run on Australian infrastructure. Sensitive participant data never leaves the country.

Traceable

Audited and MFA-protected

Multi-factor authentication is mandatory for every user, and every sensitive action is logged. Financial events are retained for seven years to match ATO requirements.

(07) The Result

Every order, invoice, and claim accounted for, in one place.

The whole system, front end and admin back office, was delivered in just under three weeks. Coordinators at enterprise providers now place high-volume orders in minutes instead of working around a retail checkout. Finance receives a compliant invoice for every order and a daily file that imports straight into their systems. Angels Link controls pricing, approval, and fulfilment release from a single admin surface.

Stock is reserved the moment an order is placed and held until funds are approved, so nothing ships unpaid and nothing sits forgotten. Corrections run through proper invoice revisions, not edited spreadsheets, and every step is on the record.

The same model is built to take on the next enterprise customer as a new tenant, with its own pricing and isolation, without rebuilding the system underneath.

Build Highlights
183Products synced from Shopify
3Access roles, least privilege
100%Australian-hosted
7yrFinancial audit retention
FAQ

Common questions about custom enterprise software

Built WithNext.js 16React 19Tailwind v4Supabase (Sydney)Shopify Admin APIResendVercel
Your Turn

Need software your operation can actually run on?

We build custom enterprise software for businesses that have outgrown spreadsheets and off-the-shelf tools. Hosted in Australia, built to a real spec, shipped slice by slice.