Home/Work/Orders that print their own Royal Mail labels
E-commerce · Integrations · Case study

Orders that print their own Royal Maillabels, tested in a sandbox where nothingis charged.

A Next.js store for a UK supplier with labels generated from orders through the Royal Mail Pro Shipping API, a mock mode for staff testing, and embeddable modules for partner sites.

1click from order to label
£0postage charged in staging
0duplicate labels by design
partner sites via embeddables
Fulfilment · Royal Mail live
Labels today42
Sandboxon
Duplicates0
Happening now
  • Order #10480 · addressvalidated
  • Labelcreatedidempotent
  • Postage charged£0.00sandbox
  • Tracking webhookreceived
The problem

Typos and duplicate labels; staging could not be tested because every label cost money. Copying addresses, paying to test.

The approach

Verified requests, idempotency keys, delivery logs; a mock that mirrors the API per environment; iframe modules with a stable contract. Reliability layer plus a mock mode.

Architecture & AI decisions

Idempotent labels, switchable sandbox

A retry finds the existing label instead of creating another; staff rehearse fulfilment in staging with realistic labels and zero charge.

01

Royal Mail Pro Shipping API behind the standard reliability layer

Royal Mail Pro Shipping API behind the standard reliability layer

02

Tracking webhooks and returns flow

Tracking webhooks and returns flow

03

Embeddable storefront modules for partners

Embeddable storefront modules for partners

04

Checks that keep partner embeds in step

Checks that keep partner embeds in step

What shipped.

01

Next.js storefront

Server-rendered
02

Royal Mail labels

From the order
03

Sandbox & mock

Per environment
04

Partner embeds

Stable iframe contract
05

Delivery logs

Every request once
06

Tracking webhooks

Status back to the store
07

Returns flow

Label on demand
08

Vercel

Previews
Result
1click
0duplicates
£0test postage
1embed contract
Next.jsTypeScriptRoyal Mail Pro Shipping APIVercelEmbeddable iframe modulesNext.jsTypeScriptRoyal Mail Pro Shipping APIVercelEmbeddable iframe modules
Selected work

More in production.

All case studies
Retail · Commerce platform

One back office, eight markets, seven currencies — prices set by hand in every one of them.

Per-market price ladders set by hand, a region engine at the request, DDP checkout, entity routing for payments, and a 17-module admin built as one system with roles.

8markets from one codebase
7currencies, never converted
17back-office modules
Read the case study
Back office · Orders
27
#10482 · United Arab EmiratesShipped DDP
#10481 · SingaporePaid
#10480 · United KingdomMade-to-order · day 3 of 12
MedTech · Flutter PWA

A partner programme that pays out through UK open banking, notifies once and never creates a partner twice.

Custom claims for roles, Firestore, Cloud Functions with dedup keys and delivery logs; writes serialised; Fena to Tide without interrupting withdrawals.

1codebase for iOS, Android, desktop
8Cloud Function triggers
0duplicate notifications
Read the case study
Partner portal
£1,240
Withdrawal #221paid
Referral bonuscredited
Notificationsent once

Have a system
like this in mind?

Send the problem, not a brief. An engineer replies within one business day.

Start a project