About this wireframe

What this wireframe is — and isn't

Account pages run on Shopify's new Customer Account system, which Shopify renders directly — not the theme. The layouts below mirror what Shopify ships today, with annotated insertion points for Customer Account UI Extensions. Think Lego, not paint: we can plug content panels into defined slots (block extensions on Orders/Profile/Order Status, full-page routes that auto-add a nav link, and per-order menu actions). We can't restyle Shopify's own components or invent new slots. This is a requirements artifact, not a pixel design spec.

NativeRendered by Shopify; layout and copy are largely fixed.
BrandLogo and brand colors — uploaded in Shopify Admin. The only visual control we have.
ExtensionCustomer Account UI Extension from an app vendor. Vendor controls styling.
ProposedVendor TBD, extension status unverified, or app not yet purchased.
Scenario 1 — First-order welcome block (zero orders)
Empty Orders state, customized. Shopify renders a default "no orders" empty state. The order-index.block.render slot still fires — so this block becomes the empty state for new customers. Treat it as the de-facto dashboard hero, not an afterthought.

Orders

Block extension · order-index Custom build

Welcome to Dovetail.

You're all set up. When you place your first order, it'll show up here for tracking, returns, and quick reorders. In the meantime, here's where to start.

01
Find your fit
Take our fit quiz — three questions, your size and shape.
02
Shop the bestsellers
Britt X Ultralight, GO TO™ Pant, Maven X — what most customers start with.
03
[Exchange / fit guarantee copy — TBD]
Final copy owned by marketing. Verify against current policy (see policies/refund-policy) before publishing.
Already ordered with us as a guest? Email support to link your orders.
Implementation notes. Custom block extension (no vendor ships this). Content blocks are placeholders — final copy + CTAs owned by marketing. The "claim guest orders" link addresses the Phase 2 guest-order-claim gap with a manual CS workaround for launch. Empty-orders state is the only place this block should render — once a customer has any order, it should hide (configurable in the extension).
Scenario 2 — Orders list
Top nav Native + Extension menu links — Orders and Profile are native. Full-page extensions (e.g. a wishlist app) auto-register a menu link, so a third item like "Wishlist" can appear here. We don't control which extensions add nav links — the app vendor does — but the slot exists.

Orders

Block extension · order-index Uppromote
Give $20, get $20
Refer a friend with your code. They get $20 off, you get $20 credit when they buy.
#GetDirty245018
2 items
On its way
Jun 6
$208.00 USD
#GetDirty244201
3 items
Confirmed
May 28
$317.00 USD
#GetDirty243118
1 item
Delivered
Apr 15
$119.00 USD
#GetDirty222995
3 items
Canceled
Feb 16
$0.00 USD
Row "…" menu Native — Shopify renders this menu. Loop's UI extension Loop can inject a "Start a return" item into delivered orders. We do not control the menu chrome itself.
Scenario 3 — Order detail (includes preorder line + Loop CTA)
Page chrome Native — header card, contact / shipping / billing block, line items, totals all rendered by Shopify. Extension-driven elements below: Loop "Start a return" and the preorder ship-date tag (already works via line-item properties).

Order #GetDirty245018

Confirmed Jun 6
On its way
Your order is on the way. Tracking will update as it moves.
Shipped Jun 8

Contact information

Jamie Kerrigan
jamie.k@example.com

Payment

Visa •••• 4242
$228.00 USD
Jun 6

Shipping address

Jamie Kerrigan
2143 SE Stark St
Portland Oregon 97214
United States
+15035551234

Billing address

Jamie Kerrigan
2143 SE Stark St
Portland Oregon 97214
United States
+15035551234

Shipping method

Flat Rate (4–10 Business Days)

Block extension · order-status Cleverific
Change this order
You can change or cancel this order within 1 hour of placing it. After that, contact customer support.
Window: 1h post-checkout, unfulfilled orders only. Powered by Cleverific Customer Portal — vendor-rendered inline on the order page. Shipping cost does not auto-recalculate on address change (Shopify behavior).
Need to make a return? Loop Extension
Renders inside the order page via Loop's Customer Account UI Extension. Clicking redirects to the Loop returns portal.
$228.00 USD
Paid Jun 6
1
GO TO™ Stretch Canvas Pant
Carbon Black / 30 × 30
$119.00
1
Range Crop Pant
Olive / 30 × 28
Preorder · Ships mid-July
$109.00
Subtotal · 2 items$228.00
ShippingFree
Tax$0.00
TotalUSD$228.00
Scenario 4 — Profile
Profile page Native — name, email, addresses, sign-out all rendered by Shopify. Layout is fixed. Sign-in is passwordless (magic link / passkey / social) — Shopify controls the login experience entirely.

Profile

Jamie Kerrigan
Email
jamie.k@example.com

Addresses

Default address
Jamie Kerrigan
2143 SE Stark St
Portland Oregon 97214
United States
+15035551234
Shop
Jamie Kerrigan
521 NW 21st Ave
Portland Oregon 97209
United States
+15035551234
 
Jamie Kerrigan
2143 SE Stark St
Portland Oregon 97214
United States
+15035551234
 
Jamie Kerrigan
2143 SE Stark St
Portland Oregon 97214
United States
+15035551234
Block extension · profile Uppromote
Your referral link
dovetailworkwear.com/r/jamie-k20