← Go Pivot Edge · workJahda Jewellery — client work
Jahda Jewellery · handmade, made to order

Five shopfronts.
One bench.

Jahda sell handmade jewellery on Shopify, WooCommerce, Amazon, Etsy and eBay. Five admin panels, one workshop. We built the layer that reads all five, keeps a single order book, works out what each order actually earns after that channel’s cut — and hands the docket straight to the person who’ll make the piece.

Same piece, five shopfronts

Simulated · representative figures

One physical nara pendant — hand-hammered brass on silk cord. Same bench, same materials, same parcel. The only thing that changes is where it sold.

SH Shopify2.9% + 30¢ card feebest %keeps $56.66 · 67.5%
WC WooCommerce2.9% + 30¢ via Stripekeeps $55.69 · 67.1%
AZ Amazon15% referral feethinnest cashthinnest %keeps $53.60 · 58.3%
ET Etsy6.5% + 3% + listingmost cashkeeps $59.07 · 63.6%
EB eBay13.25% final value + 30¢keeps $53.61 · 59.2%

Two different winners: one channel hands back the most cash, another keeps the biggest share of every dollar. Both readings are true at once — which is exactly why one number was never enough.

Shopify ◆ WooCommerce ◆ Amazon ◆ Etsy ◆ eBay
I · The situation

Every order has to reach a pair of hands.

Nothing at Jahda ships from a shelf. A sale means a specific craftsperson picks up a specific set of materials and makes the piece. Which is why it mattered that orders arrived in five separate admin panels — Shopify, WooCommerce, Amazon, Etsy, eBay — and reached the workshop only when somebody remembered to go looking. Five logins, checked whenever. The order pipeline was, functionally, a person’s memory.

And margins were guesswork. Each channel takes a different cut, in a different way, on a different schedule. Nobody could say what a given necklace had actually earned — only what it had sold for, which is a very different number.

II · What was actually broken

Five APIs, five vocabularies for the same thing.

The problem was never the absence of a dashboard. It was the absence of one truth. Shopify hands you an order as a tidy webhook. Etsy calls it a receipt and splits the fees off into a payment ledger that arrives separately — sometimes days later, which is awkward when the whole point is margin per order and the margin isn’t knowable yet. Amazon doesn’t really hand you orders at all: you request a report, poll until it deigns to be ready, and the fees you see are estimates until the settlement report lands on its own fortnightly schedule. eBay is fine right up until it isn’t. WooCommerce is self-hosted, so it’s exactly as truthful as the site’s plugin stack that week.

Then currencies — buyers paying in pounds, euros and dollars, each channel converting at its own rate on its own day, all of it needing to land in one book as one number.

And SKUs. The same pendant was one code on Shopify, a different one on the Woo site, an Etsy listing with three variations, and two eBay listings — one of them a typo from years back that nobody had dared delete. Matching physical pieces across five catalogues came down to a hand-built mapping table and a long, deeply unglamorous week.

That mapping table is the least impressive artefact in the system and the most valuable. Without it, “margin per piece” is fiction.

III · What we built

A reconciliation layer, not a dashboard.

Pollers and webhooks per channel, each translating its dialect into one order shape: piece, quantity, money in, fees out, currency, timestamps. Fees get written twice — an estimate the moment the order lands, and the real number when the channel’s ledger finally admits it. If the two disagree by more than a rounding error, the order gets flagged instead of silently corrupting the month.

Every order maps to a physical piece, every piece maps to a bench, and the moment an order is unified it’s forwarded to the craftsperson who’ll make it — what to make, which materials, when it’s due. Nobody checks a panel. The owner opens one book and sees every channel, every order, priced honestly after fees, materials and postage.

IV · What changed

The workshop finds out in minutes, not whenever.

The five-login ritual stopped. Orders reach the bench the moment they exist, whichever shopfront they came through. And per-order margins surfaced the thing nobody enjoys learning: pieces that looked like strong sellers on a marketplace were, after that marketplace’s cut plus postage, earning meaningfully less than the identical piece sold through Jahda’s own store. Pricing conversations got shorter.

The client and the work are real; the demo below runs on invented orders, invented names and representative figures over the real fee structures.

The bench — a working replicaSimulated orders · representative figures

The order book

Fees

A running fortnight of orders from five shopfronts, one ledger. Open any row for its docket.

  • JJ-1041Workshop docket✓ ReconciledFinished

    Line items

    Nara Pendant × 1 — hand-hammered brass on silk cord$88.00
    Shipping charged to buyer$4.95
    Money in$92.95

    buyer paid £69.50 · settled $88.00 · fx 1.2662

    Out

    Transaction fee · 6.5% est.−6.04
    Payment processing · 3% + 25¢ est.−3.04
    Listing fee−0.20
    Ledger settled ✓ within tolerance−9.28 −9.37 · Δ +9¢
    Materials−18.40
    Postage & packing−6.20
    What’s actually left$59.07 $58.98 · 63.5%

    Estimate and ledger disagreed by +9¢ — inside tolerance. The margin corrected itself; nobody was interrupted.

    The journey

    1. Tue 08:47Order placed · Etsy · receipt 2841077365
    2. Tue 08:48Pulled and normalised into the order book
    3. Tue 08:49Fees estimated · net margin recorded (reconciles when the ledger lands)
    4. Tue 08:50Routed to A. Noor — chains & pendants
    5. Tue 09:08Acknowledged by A. Noor · piece at the bench
    6. Tue 16:05Finished · checked · shipping label printed

    Bench: A. Noor — chains & pendants. Nobody opened a Etsy admin panel for any of this.

The workshop queue

Each bench sees only its own dockets, forwarded the minute an order lands — on any of the five channels. Watch: it’s running. Craftspeople’s names are invented.

A. Noorchains & pendants
Pending · 2
JJ-1048Nara Pendant × 2SH
JJ-1050Nara PendantAZ
At bench · 1
JJ-1046Nara PendantWC
Finished · 1
JJ-1041Nara PendantET
S. Malikrings & signets
Pending · 1
JJ-1049Basra SignetEB
At bench · 1
JJ-1043Basra SignetSH
I. Rehmanearrings & drops
Pending · 3
JJ-1047Seed Pearl DropsAZ
JJ-1051Seed Pearl DropsET
JJ-1052Meridian HoopsWC
At bench · 2
JJ-1044Seed Pearl DropsEB
JJ-1045Meridian Hoops × 2ET
Finished · 1
JJ-1042Meridian HoopsAZ

If your orders live in five places,
your margins live in none.

We build the unglamorous layer underneath — the one that reconciles, routes and tells you the true number. Tell us where your orders live and we’ll tell you what we’d do first.

Write to usor plainly: contact@gopivotedge.com