X3DStudios

Store

The ready-made desk clocks, lamps and PetalGlow candle holders sold at /store: prices, colours, options, how a finished product differs from a custom print, and lead time.

The store at /store sells thirteen finished products — eight desk clocks, four lamps and the PetalGlow candle holder set — that we designed and print ourselves. There is no file to upload and no quote to wait for: you pick a colour, pick a quantity, and pay the catalogue price plus postage. The clocks and lamps are printed to order in PLA on the same farm that runs custom jobs, so they are made after you order, on the live lead time /farm shows, before they ship. PetalGlow is in stock.

What is in the catalogue#

Thirteen products in three collections, from $19.99 to $41.99. Browse everything at /store, or a single collection at /store/desk-clocks, /store/lamps and /store/home-decor. A collection has its own page and a tab on /store only while something in it is on sale.

ProductCatalogue idPriceSizeWeight
AngleTime Desk Clockangletime$29.9990 × 90 × 100 mm150 g
ArcTick Desk Clockarctick$22.99110 × 35 × 110 mm200 g
CubeTick Desk Clockcubetick$24.99110 × 110 × 60 mm240 g
CurlClock Desk Clockcurlclock$19.99119 × 101 × 88 mm140 g
Keyline Desk Clockkeyline$32.9987 × 87 × 71 mm200 g
QuirkyCube Desk Clockquirkycube$24.9980 × 80 × 80 mm240 g
RippleRound Table Clockrippleround$24.99110 × 110 × 110 mm200 g
Ziggy Desk Clockziggy$24.9990 × 79 × 110 mm160 g
Geoglow Table Lampgeoglowfrom $34.99125 × 125 × 220 mm180 g
Lava Table Lamplavafrom $39.99100 × 100 × 260 mm360 g
WavyGlow Table Lampwavyglow$34.99130 × 130 × 240 mm225 g
Aurora Shade Lampaurorafrom $41.99178 × 178 × 238 mm270 g
PetalGlow – Sculptural LED Candle Holders, Set of 6petalglowon its page3.22 × 3.25 × 2.20 in (81.8 × 82.6 × 55.9 mm) eachnot published
Desk clocks, then lamps, then home décor. The catalogue id is what the checkout endpoint takes. PetalGlow's price is on its page while its launch price runs.

Three lamps are listed with a From price on the collection pages. That is a listing label, not a configurator: checkout charges the price above whichever options you choose, because no option in the catalogue carries a price of its own.

What you can choose#

Two things: a colour, and — on some products — one named option. Both come from a fixed list held on the server. Every lamp has a Bulb Type option; ArcTick has a Face option; nothing else has an option beyond colour.

ProductColoursOther option
AngleTimeWhite with Black Base · Mint green with Olive green Base · Orange with Red Base · Pink with Cyan Base—
ArcTickWhite with Pink Base · Cyan with White Base · Red with Black BaseFace: Line Face or Flat Face
CubeTickMint green with Red Base · White with Black Base · Yellow with Orange Base · White with Cyan Base—
CurlClockPink · Red · Black · Yellow · White · Orange—
KeylineRed · Yellow · Cyan · Orange—
QuirkyCubeRed with Black Base · Black with White Base · Mint Green with Yellow Base—
RippleRoundCyan with Red Base · White with Black Base · Pink with Blue Base · Mint green with Red Base—
ZiggyBlack · Blue · Red · Cyan · Mint green · Pink—
GeoglowWhite with Black BaseBulb Type: Cord or Cordless
LavaRed with Black BaseBulb Type: Cord or Cordless
WavyGlowPink with White Stand · Yellow with White Stand · Orange with White StandBulb Type: Cord or Cordless
Aurora ShadeYellow · Pink · White · Orange · Mint greenBulb Type: Cordless or Cord
PetalGlowSunset Ember · Ruby Bloom · Golden Hour · Silver Mist · Mocha Glow · Emerald Leaf. Chosen by set: "Mixed set (one of each color)" (the default), or "Single color: <colour>" for all six in one colour. Any other value is refused; an old cart's "Set of six (one of each color)" checks out as the mixed set—
The list is the whole list
Colour and option values are resolved against the catalogue on the server. A value that is not on the product's list is not an error — it silently falls back to the first entry, so a request for a colour we do not make ships the default colour rather than failing. A set (PetalGlow) is the exception: its value says which set to pack, so anything but one of its choices is refused. There is no free-text colour field, no scaling, no material choice and no engraving on a store product. If you need any of those, order it as a custom print.

Geoglow's description names six interchangeable shades — Crystal Dome, Facet Barrel, Prism Glow, Glaciar Drum, Ripple Spiral and Geo Gem. They are not a selectable option in the catalogue, so ask at /contact if you want a specific one.

How it is made#

SpecValue
MaterialPLA
Layer heightClocks and lamps: 0.2 mm
Printed inClocks and lamps: Austin, Texas, USA, after you order. PetalGlow: designed and 3D-printed by X3D Studios
Quantity per line1 to 20
ProcessingClocks and lamps: printed after you order; the live lead time is on /farm. PetalGlow: in stock, ships in 1–2 business days
ShippingUS standard 4–6 business days, US express 2–3 business days, or international
Returns14 days from delivery, in original condition

The clocks and lamps are not held in stock. Each unit is printed after the order lands and inspected before it is packed, which is why it is not same-day. PetalGlow is the exception: sets are in stock and come with six battery-operated flickering LED tealights. Its holders are for those LED tealights only — never a real candle, an open flame, wax or any other heat source, because PLA softens with heat. PLA also sets the limits on where any of them can live: keep it out of prolonged direct sunlight, wipe it with a dry or slightly damp cloth, and keep it out of the dishwasher. A clock or lamp should not get above 60 °C (140 °F); a PetalGlow holder should not be near any heat source at all.

Store product versus custom print#

The clocks and lamps come off the same printers as a custom print. What differs is where the price comes from, and how much of the job you have to specify.

Store productCustom print at /print
What you supplyNothing — pick from the catalogueAn STL, GLB or 3MF file
PriceFixed catalogue price × quantityBillable grams × the material's rate per gram, $1.00 minimum per part
QuoteNone neededFrom a real slice of your model, before you pay
MaterialPLA onlyPLA, PETG, ABS, ASA or flexible TPU
Layer height0.2 mm (clocks and lamps)0.2 mm standard, or 0.1 mm premium at 1.75×
ColourThe product's listTwelve stock colours, or a custom colour at a $0.20/g floor
Bulk discountNone at checkout (PetalGlow bulk orders by email, no published prices)5% at 5 units, 10% at 10
Quantity1 to 20 per lineSet on the quote

The full print calculation is on /docs/pricing, and what each plastic is good for is on /docs/materials.

The two ways to buy#

A product page has a Buy Now button and an Add to Cart button, and they are not the same checkout. Buy Now sends that one product straight to Stripe. Add to Cart puts it in /cart, where it can travel with custom prints and where discounts apply.

Buy NowCart
EndpointPOST /api/checkoutPOST /api/cart-checkout
What it carriesOne productAny mix of products and custom prints
PostageSame rates as the cart, for that one product: $7 standard or $15 express in the US, standard free over $49.50 of goods; $30 international, free over $500$7 standard or $15 express in the US, standard free over $49.50 of goods; $30 international, free over $500
Gift cardNo field for oneApplied in the cart before checkout
First-order discountNot applied10% of goods on a first order
Address countriesUS only, or 23 countries when you choose InternationalUS only, or 23 countries when you choose International
Order idA number, such as 2610014 (STORE-… before numbering)A number, such as 2610014 (CART-… before numbering)
Print speedNone to chooseOffered only when the cart also holds a custom print

Priority print, the checkout choice that puts a custom print first in the queue, is never offered or charged for store products: not on Buy Now, and not in a cart that holds store products alone. A cart that mixes products with a custom print can choose it, and it is charged once for the order.

Each product page shows the reviews customers have left for it. A review is written from the signed link we email when an order is delivered, so only a customer can leave one, and it is published as written. See /docs/studio/orders for how reviews work.

Sign in first
Both routes require a signed-in session and answer 401 otherwise. Pressing Buy Now while signed out sends you to /auth/signup rather than to Stripe.

Buying one product directly#

POST/api/checkoutSigned in

Create a Stripe Checkout session for a single catalogue product.

Body
typestringrequired
The same endpoint also handles subscription and credits; product is the store path.product
productIdstringrequired
A catalogue id from the table above. An unknown id answers 400.
quantityintegeroptionaldefault 1
Rounded and clamped to 1–20.
colorstringoptional
Must match one of the product's colours exactly. Anything else falls back to the first colour — except PetalGlow, where it names the set: "Mixed set (one of each color)" or "Single color: Ruby Bloom" (any of its six colours), and anything else, or nothing, answers 400.
optionsobjectoptional
Keyed by the product's option names, such as Bulb Type. A value not on that option's list falls back to the option's first value.
internationalbooleanoptionaldefault false
true ships outside the US: postage is $30, free once the goods reach $500, and Stripe accepts an address in any of the 23 international countries. Omitted, or anything other than true, means a US address only at the US rates, so a buyer abroad must send true or Stripe will refuse their address.
shippingSpeedstringoptionaldefault standard
standard is $7, free once the goods reach $49.50; express is $15 and never free. US only: ignored when international is true, and anything unrecognised is read as standard.standardexpress
From the browser, signed in at x3dstudios.com
const res = await fetch("https://x3dstudios.com/api/checkout", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    type: "product",
    productId: "wavyglow",
    quantity: 2,
    color: "Pink with White Stand",
    options: { "Bulb Type": "Cordless" },
    international: false,
    shippingSpeed: "standard",
  }),
});

const { url } = await res.json();
window.location.href = url; // Stripe Checkout
Launch prices
A product on a launch price says so beside its price, with the regular price and the day it starts, and only until the launch ends. The checkout endpoints charge the price the page shows, launch or not.
Price comes from the server, never from the request
Title, price and image sent in the body are ignored. The product is looked up by id and charged at its catalogue price, so a request edited in the console cannot buy a $41.99 lamp for $4.

After you pay#

The order is created by Stripe's webhook once the payment succeeds, not when you press the button, and it appears at /orders. It moves through six stages (placed, queued, printed, packed, shipped, delivered), each set by hand by the operator as the work actually happens. Every stage after placed emails you by default; placed already had its confirmation at checkout. The shipped email is the one that carries a tracking number.

Questions

Can I get a store product in a colour that is not listed?

No. Each product has a fixed colour list and the server falls back to the first colour if you ask for anything else. If you want a colour outside the list, order the shape you want as a custom print at /print instead. PetalGlow is chosen by set instead: a mixed set (one of each of its six colours) or a single-colour set (all six in one of them), at the same price; checkout refuses any other value rather than falling back.

How long does a store order take?

The desk clocks and lamps are printed after you order them, and how long that takes depends on the print queue, which /farm shows live. PetalGlow is in stock and ships in 1–2 business days. Transit starts once it ships: 4–6 business days on standard, or 2–3 business days on express in the US.

Do the 5-unit and 10-unit bulk discounts apply to store products?

No. Bulk tiers belong to custom prints, which are priced by weight. A store product is the catalogue price times quantity, and quantity is capped at 20 per line.

What does a launch price mean?

A new product can open at a launch price. Its page says so beside the price: a Launch price tag, and the regular price, crossed out, labelled with the day it starts (for example "$29.99 regular price from December 1, 2026"). All of it comes down by itself when the launch ends. Checkout charges the price on the page. The regular price is never shown as a former or "was" price, because the product has not sold at it yet.

Can I buy PetalGlow in one colour?

Yes. Choose "Single-color set" on its page and pick one of the six colours: you get six holders in that colour, with the six LED tealights, at the same price as the mixed set. The photos show the mixed set.

Can I buy PetalGlow in bulk?

Yes: email [email protected]. Bulk orders are agreed by email; there are no published bulk prices, and the cart and checkout charge the price on the product page.

Can I return a store product?

Yes, within 14 days of delivery, in original condition. Email [email protected] to start a return.

Related guides