Dolapy for Business
Turn try-on into fewer returns.
Drop an embeddable try-on widget into your product pages so shoppers see fit on their own body, not a model's. Fewer size guesses in the cart, fewer returns at the door.
The problem
Sizing guesswork is your silent margin-killer
A product photo on a model tells a shopper almost nothing about how it'll fit their own body. So they guess — order a size up, order two sizes to compare, or buy anyway and hope. Every guess that goes wrong comes back to you as a return: shipping both ways, restocking labor, and a shopper who's now less confident about ordering from you again.
Guessing happens upstream of checkout
By the time an order ships, the fit question was already answered with a shrug. The return is just where that guess becomes visible on your P&L.
Wrong-size and wrong-fit guesses are a leading, avoidable driver of returns
Shoppers aren't unhappy with the product — they're unhappy with how it fits them. That's a solvable problem, not a quality problem.
Every return is a cost you already paid to avoid
Outbound shipping, return shipping, inspection, restocking, and the discount it takes to resell an opened item all stack up before the item ever finds its buyer.
How it works
Three steps to a fitted product page
Embed one snippet
Drop a single script tag into your product template. No app install, no checkout changes, no rebuild of your storefront.
Shoppers try items on their body
Customers build a photoreal twin once, then see every product rendered on their own body, right on the page — not on a model.
You measure fewer returns
We run a causal holdout alongside the rollout, so you see the return-rate difference the widget actually caused — not a correlation.
The measurement
How we prove it — not just claim it
Anyone can say a feature reduces returns. We measure it with a holdout, the same way a controlled experiment works, so the number you see is causal, not a coincidence.
Holdout
The normal experience
A small, randomly-selected slice of your shoppers keeps seeing your product pages exactly as they are today — no try-on widget. This is the baseline.
Treatment
The try-on experience
Everyone else sees the embedded widget and can try items on their own twin before adding to cart. This is the group we expect fewer size-driven returns from.
return-rate(holdout) − return-rate(treatment) = the effect we report
We report the gap alongside its sample size and a significance signal, so you know whether the difference is real or noise before you act on it. No number is published until the holdout has collected enough orders to say so honestly.
Integration
One snippet, any platform
A publishable key runs in the browser and reports session and try-on activity. A secret key runs on your server and posts order and return outcomes — the two never share scope.
Browser embed · publishable key
Drop this in your product page template. It starts a session and logs try-on events.
<!-- publishable key: browser — session + try-on events -->
<script
src="https://cdn.dolapy.app/returns.js"
data-key="pk_live_…"
async
></script>Server postback · secret key
Call this from your order and returns pipeline, server-to-server. The publishable key is rejected for these event types.
# secret key: server — order + return events
POST https://ingest.dolapy.app/b2b_ingest
x-api-key: sk_live_…
content-type: application/json
{
"kind": "event",
"type": "order",
"externalOrderId": "ORD-10293",
"externalSessionId": "sess_abc123",
"valueCents": 8400
}Keys shown above are placeholders — yours are issued per retailer at onboarding.
What you get
Everything to launch a pilot
The widget and the ingest API are live today. The dashboard below is a preview of what's next.
Widget / SDK
The embeddable script from the snippet above — renders the try-on experience on your product pages.
Ingest API
The session, try-on, order, and return endpoints your storefront and backend post to, scoped by key type.
Returns dashboard
A read-out of the holdout-vs-treatment gap, built for the numbers your pilot collects.
—
Sessions
—
Try-ons
—
Return-rate gap
Not built yet — coming to early-access partners. Values shown are illustrative, not live data.
Coverage
Built for fashion & apparel retailers
Platform-agnostic — the widget and ingest API sit on top of whatever storefront and order pipeline you already run.
- Shopify
- WooCommerce
- Magento
- Custom storefront
FAQ
Questions retailers ask
With a holdout, not a before/after comparison. A randomly-selected slice of shoppers keeps seeing your product pages exactly as they are today; everyone else sees the try-on widget. The gap between the two groups' return rates is causal, and we report it alongside its sample size and a significance signal — so you know whether the number is real before you act on it.
Your shoppers stay your shoppers. Their try-on sessions and measurements are handled under a data processing agreement with your business — they never become Dolapy app accounts, and they're not shared across retailers.
One script tag on your product pages (publishable key), plus a server-to-server postback from your order and returns pipeline (secret key). No checkout changes, no storefront rebuild.
We're in early access, so pricing isn't published yet — let's talk about your catalog and order volume and figure out a pilot that makes sense.
The widget is platform-agnostic — it runs on Shopify, WooCommerce, Magento, or a custom storefront, since it's just a script tag and an HTTP postback, not a platform-specific app.
Fewer returns, proven.
Request early access and we'll set up a pilot with your team.