Connecting ecommerce, stores and operational systems:format(webp):no_upscale())
:format(webp):no_upscale())
Turnbull & Asser
Previous work
For Turnbull & Asser, personal service is inseparable from the product. Skywire’s previous work brought that attention to detail into UK and US Shopify Plus storefronts, made-to-measure interfaces and a custom Shopify POS embroidery application.
The in-store extension connected a chargeable service to the individual item being personalised and to the order that followed.
:format(webp):no_upscale())
Preserving personal service across retail channels
The historical storefront work covered product, collection, search, cart and account journeys, combining technical strategy, UX/UI and Shopify engineering. Made-to-measure interfaces extended the brand’s craft and attention to individual choices online.
Two distinct engineering surfaces
Custom Vue components within the storefront theme supported made-to-measure monogramming, presenting choices for initials, font, punctuation, thread colour and placement.
The in-store application was a separate React/TypeScript Shopify POS UI extension. It used Shopify’s POS APIs within the platform’s hosted extension environment.
:format(webp):no_upscale())
Extending POS around a staff-led service
Store colleagues opened the embroidery interface from the selected cart item. They could add, edit or remove the service as needed. The extension used the POS session’s currency and calculated a GBP or USD charge from the selected pricing band and letter count.
It added that charge as a Shopify custom-sale line, without needing an inventory product for every embroidery configuration.
Linking the charge to the individual item
The original cart item carried structured properties linking its pricing selection, letter count and amount to the associated charge. The application could therefore find the right charge when staff edited or removed the service.
That item-level relationship also supported matching products with different personalisation in the same cart: each selection and charge belonged to the appropriate item.
Connecting personalisation with order handling
The product properties and separate charge carried through to the Shopify order. The historic delivery also supported the Brightpearl operational workflow, connecting the in-store service with downstream order handling.
The engagement brought bespoke retail application engineering together with broader storefront development, using Shopify’s cart and order model to support a staff-led service.
:format(webp):no_upscale())
Discuss a bespoke retail application or Shopify integration.
:format(webp):no_upscale())
:format(webp):no_upscale())
:format(webp):no_upscale())