What works today
Setting up a physical product
1
Turn on shipping address collection
Go to Settings → Advanced → Checkout and enable Collect shipping address.
2
Restrict the countries you ship to
In the same screen, set Allowed countries to the places you are willing to post to. Leaving it empty means anyone, anywhere, can buy — including someone whose parcel would cost more to send than the item is worth.
3
Set the tax code
On the product, open the tax section and choose General - Tangible Goods. The account default is the digital-products code, which will calculate the wrong tax on a physical item in most jurisdictions.
4
Add a price variant with a quantity
Create the price variant and set quantity available to how many units you physically have. This is what stops you selling stock you cannot ship.For sizes or colours, create one price variant per option — “T-shirt — Medium”, “T-shirt — Large” — each with its own quantity. They appear to the buyer as a flat list of options.
5
Attach an experience
Every product needs at least one experience on a price variant before it can go active. There is no “physical item” experience type, so attach something that makes sense to the buyer after they pay.
6
Activate and fulfil by hand
Set the product to Active. When an order comes in, open it, copy the shipping address, and post the item.
What Crevio does not do
Crevio has no fulfilment system. These are the real gaps, and the best workaround for each.There are no shipping rates
Checkout collects an address but never charges for delivery. There is no shipping-cost line, no flat rate, no weight-based or carrier-calculated rate, and no free-shipping-over-a-threshold rule. Workarounds:- Build postage into the price. Simplest, and works if you ship to one region.
- Create a price variant per region — “Ships to UK — £29”, “Ships to Europe — £39”, “Ships worldwide — £49” — and rely on the country restriction to keep buyers honest. Nothing enforces that the variant matches the address they type, so check each order before posting.
There is no fulfilment status
Order status tracks payment only: succeeded, pending, failed, refunded, partially refunded, disputed. There is no packed, shipped, or delivered state, and nowhere to store a tracking number. Workarounds:- Keep a spreadsheet keyed on the order number for anything beyond a handful of orders a week.
- Use customer tags as a rough state marker — tag a buyer
shippedonce their parcel goes out, and filter on it. - Ask Crevio in chat: “Which orders from this week contain the Medium t-shirt?” It can pull the list for you, but it cannot mark them as shipped.
The shipping address is dashboard-only
This is the biggest limitation if you ship any volume. The shipping address is visible on the order detail page in your dashboard — and nowhere else. It is not in the API order object and not in theorder.paid webhook payload.
You cannot pipe addresses automatically into a 3PL, a label printer, or a shipping app. You copy them one at a time.
Workarounds:
- Use the copy button on the order page and paste into your carrier’s site.
- Pull the address from your Stripe dashboard, which has it on the underlying payment.
There are no carrier integrations
No label printing, no rate shopping, no tracking numbers, and no automatic “your order has shipped” email. Crevio will never tell your buyer where their parcel is. Workaround: send it yourself. Set up an automation that emails the buyer when an order is paid — “Thanks! Your order ships within two working days.” — and then send the tracking number manually from the customer record once you have it.Returns are money-only
A refund reverses the payment and restores inventory. It does nothing about getting the item back. There is no returns request, no RMA number, no return label. Workaround: publish your returns policy on a legal page, handle requests over email, and issue the refund once the item is back in your hands.Do not use the waitlist for backorders
The waitlist toggle on a price variant is incomplete. A buyer can still pay for a waitlisted variant, and when they do they receive nothing — there is no release step that grants access or notifies you. Workaround: when you sell out, set quantity available to0. That cleanly blocks purchase. Capture interest with a form — “Tell me when this is back” — and email that list when you restock.
Other things to know
- No address validation. Stripe formats the address; nobody checks the parcel can actually get there. Typos reach you as typos.
- No dimensions or weight anywhere on a product, so nothing downstream can estimate postage.
- The buyer’s purchase page shows experiences, not objects. It lists what they can open or access. A physical item shows nothing there unless you attached the written-content page described above.
- Orders cannot be exported to CSV from the dashboard. For bulk fulfilment you would read them through the API, which — as above — omits the address.
Is Crevio the right place to sell this?
Be honest with yourself about volume. Crevio works well when:- The parcel is a side of the business rather than the business — merch for a course, a printed companion to a service, a product you hand over on a job.
- You ship a low, hand-packable number of orders: a few a day, not a few hundred.
- You run limited drops with a fixed quantity and one flat price.
- You ship to one country, or a small group of countries, at a postage price you can bake in.
- You have dozens of SKUs with a size × colour matrix.
- You need live carrier rates or international duties calculated at checkout.
- You use a warehouse or 3PL that expects orders pushed to it automatically.
- Shipping cost varies enough that guessing it would eat your margin.
Nothing stops you doing both — run the rest of your business on Crevio and keep a separate store for the stock you post. You can link to it from your website like any other page.

