Commerce · sell from your own site

Put a real cart on your site.
Get paid in your own Stripe.

Xuda Commerce gives you a real product catalog, a cart and a checkout that drop onto any website with one script tag. Every charge is a direct charge on your own Stripe account, so the payouts, the refunds and the disputes stay yours.

One script tag
Your Stripe account, not ours
Every total priced server side
Stock held for 20 minutes
Your cartStep 1 of 3
Studio Tee
Size M · Black
1
$28.00
Enamel Mug
One size
2
$36.00
Discount code
SUMMER10
Apply
Subtotal$64.00
Discount (SUMMER10)-$6.40
Delivery, 3 to 5 days$6.90
Handling$1.50
Total$66.00
Continue to delivery

Every amount above was computed on the server from your stored products. The page never sends a price.

Three steps in one drawer:CartAddress and deliveryPay on Stripe
One tag

Puts a working cart on a site you already have

Direct

Charges land on your own Stripe account

20 min

Stock held, and only at the payment step

10

Separate storefronts on a single account

Your site. Your Stripe. Your orders.

A checkout you own, not a storefront you rent.

Commerce does not ask you to rebuild your website somewhere else. You keep the pages you have, add one script tag, and mark your buy buttons with a SKU. Behind it sits a real catalog with variants, stock, delivery pricing and discount codes, and an order record that tells you what you were paid and what the delivery actually cost you.

From nothing to a working cart

Four steps, in the order the dashboard asks for them.

Each step is a screen in the Commerce module. Nothing goes live until you list the websites allowed to run your cart, so you cannot accidentally publish a half-built store.

  1. 01

    Switch Commerce on

    Open Commerce in the dashboard and pick a tier. That single choice turns the module on and opens your first storefront in the same click, so there is nothing to provision.

  2. 02

    Point it at the account that gets paid

    In Getting paid, choose one of your connected Stripe accounts. Every charge is made directly on it, so you are the merchant and the payouts are yours from the first order.

  3. 03

    Add what you sell

    Title, price, kind and status, then variants with a SKU, an option, a price and a stock count. A shippable product also wants a weight, a country of origin and an HS code before it goes live.

  4. 04

    Publish the cart on your site

    Copy the script tag, mark your buy buttons with a SKU, then list the domains allowed to run the cart. Until that list has something in it, the cart stays off.

What comes in the box

Everything between a product page and a paid order.

Catalog, cart, checkout, stock, delivery, discounts and orders. All of it priced and enforced on the server, because that is the only side a buyer cannot edit.

A real product record

Title, handle, descriptions, physical, digital or service, price, compare-at and cost, media, tags, and up to three option axes turned into variants. Not a price glued to a button.

Server-side pricing, twice

A cart line holds a product, a variant and a quantity. Subtotal, discount, delivery, handling and total are computed from your stored records on every read, and recomputed at payment time.

Stock that does not oversell

Track stock per variant. A checkout reserves every line or none of them, and the counters use a conflict-safe write loop so two people counting stock at once cannot merge a stale number forward.

Delivery priced your way

Flat rates by country with delivery days, a free-over-this-amount threshold and a separate handling fee, or live carrier rates quoted through Xuda Shipping at checkout.

Discount codes with rules

Percent off, a fixed amount or free delivery, with a minimum subtotal, a usage cap and a start and end date. Codes belong to a storefront, so two of your stores can each run their own.

Orders that separate the facts

Order state, payment state and fulfilment state are three separate fields, never squeezed into one status column, and each order carries what delivery was charged next to what the label cost.

More than one storefront

Each store has its own key, domain list, catalog, discount codes and order numbering, while the monthly order allowance stays one pool across the account.

Payment read from Stripe

The thank-you page asks Stripe what happened rather than trusting the redirect, then commits the stock, numbers the order and records the payment. Calling it twice is safe.

Publish checks that prevent wrong prices

A shippable product cannot go live without a weight, and nothing goes live without a price. A missing HS code or country of origin comes back as a note on a successful save, not a wall.

Putting the cart on your website

One script tag. One attribute per button.

Copy the snippet from your store settings, paste it into your site, and put a data-xuda-sku attribute on the buttons you already have. The loader paints the buy buttons and opens the cart drawer. It never reads a price off the page, so the numbers written into your HTML are decoration and the server decides what anyone actually pays.

  • The loader paints your buy buttons and opens the cart drawer at the corner of the page.
  • Every storefront call happens inside a same-origin iframe, so no third-party cookie is involved.
  • The cart token lives in your own page storage and travels back by message, not by cookie.
  • List up to 25 domains. Subdomains of a listed domain are allowed automatically.
index.htmlOne tag, one attribute
<!-- once, anywhere on the page -->
<script src=".../dist/runtime/js/store-loader.js"
        data-store="st_9f4c2b81e07a3d16"></script>

<!-- on every buy button you already have -->
<button data-xuda-sku="TEE-BLK-M">
  Add to cart
</button>
Websites allowed to use this cart
mystore.comwww.mystore.comshop.mystore.com

Subdomains of a listed domain count. Anything else is refused, and an empty list means the cart is switched off.

The orders screen

Two shipping pots, side by side, on every order.

Most order lists tell you what the buyer paid for delivery. This one also carries what the label cost from your Xuda Shipping wallet, and the difference between them. When that difference goes negative you are paying to ship, and the screen says so instead of hiding it inside your monthly total.

OrdersMy store
AllPaidUnpaid
Delivery charged to buyers
$412.60
Labels paid from your wallet
$448.15
Difference
-$35.55

You are charging less for delivery than the labels cost.

OrderBuyerPaymentFulfilmentDelivery netTotalPlaced
#1004[email protected]PaidNot shipped-$4.10$128.002 hours agoShip
#1003[email protected]PaidOn the way+$1.20$64.50Yesterday
#1002[email protected]UnpaidNot shipped$0.00$39.00Yesterday
#1001[email protected]PaidDelivered-$2.35$212.403 days ago
#1000[email protected]PaidReady to ship-$0.90$88.004 days ago
Shipping an order creates the delivery. Buying the label is a separate step in Shipping, because that is what spends your shipping wallet.
Order

Where the order itself stands, from the moment it is created to the moment it is closed out.

PendingOpenCompletedCancelled
Payment

Whether you have the money. Refunds and disputes are settled in the Stripe account the charge was made on, which is yours.

UnpaidAuthorizedPaidFailed
Fulfilment

Where the parcel is. Read back from Xuda Shipping when you open the order, so the screen does not depend on a webhook having arrived.

Not shippedReady to shipPart shippedOn the wayDeliveredReturned
Built for the hostile case

A public checkout is a target. This one assumes it.

The moment a cart endpoint is reachable from the open web, someone will point a script at it. These four rules are in the product because of that, not as options you have to find and switch on.

Only your domains

The cart is refused unless the page asking for it is on a domain you listed, taken from the request headers rather than a query string. The list is never handed back to the page.

Stock held late

Nothing is reserved when a buyer adds to the cart, only when they reach the payment step. The hold lasts 20 minutes and is committed once Stripe confirms the payment.

Payment proven, not assumed

Anyone can open a success URL, so the confirmation reads the session back from Stripe before anything is committed, and it is safe to run again on a reload.

The pay step is throttled

Catalog, product and cart calls are limited to 300 requests per 15 minutes, and the pay step to 10 in the same window, which is what makes card testing expensive rather than free.

Four tiers

Pick the shape of the store you are running.

A tier sets four things that matter: how many products you can publish, how many orders a month are included, how many storefronts you can open, and whether you can use live carrier rates. Moving up takes effect immediately; moving down is refused with a sentence naming what to clear first.

Free

Start here
No card needed

Sell your first thing, and prove the whole flow before you pay for any of it.

50
orders a month included
  • Flat delivery rates by country, with a free-over-this-amount threshold
  • 2 percent of each order, delivery and handling included, goes to Xuda
Products you can publish
10
Variants per product
3
Past the allowance
Store stops for the month
Storefronts
1
Discount codes
1
Live carrier rates
Xuda fee per order
2%

Starter

Pricing to be confirmed

Run a real store, with delivery priced by a carrier rather than a guess.

500
orders a month included
Everything in Free, plus
  • Live carrier rates quoted through Xuda Shipping at checkout
  • No Xuda transaction fee on an order
  • Orders past the allowance keep selling, metered as overage
Products you can publish
100
Variants per product
25
Past the allowance
Metered as overage
Storefronts
1
Discount codes
25
Live carrier rates
Xuda fee per order
None

Growth

Most room to grow
Pricing to be confirmed

Sell across channels, from three separate storefronts on one account.

3,000
orders a month included
Everything in Starter, plus
  • Three storefronts, each with its own key, catalog, codes and order numbers
  • Unlimited discount codes
  • Flat rates stand behind live carrier rates when a quote comes back empty
Products you can publish
1,000
Variants per product
100
Past the allowance
Metered as overage
Storefronts
3
Discount codes
Unlimited
Live carrier rates
Xuda fee per order
None

Scale

Pricing to be confirmed

Sell at volume, with no ceiling on the catalog and the lowest overage rate.

20,000
orders a month included
Everything in Growth, plus
  • Unlimited products
  • Ten storefronts, sharing one account-wide monthly order pool
  • The lowest overage rate on the ladder past the allowance
Products you can publish
Unlimited
Variants per product
100
Past the allowance
Metered as overage
Storefronts
10
Discount codes
Unlimited
Live carrier rates
Xuda fee per order
None

Commerce is in early access and no plan is being billed yet, so choosing a tier today simply sets these limits and nothing is charged. Prices will be published here before that changes. Every limit above is enforced in code today. Checkout is hosted by Stripe on every tier, and the external API, outbound webhooks, subscription products and digital file delivery are not built yet.

Commerce vs the alternatives

Keep your website. Add the part that takes money.

The usual choices are rebuilding your site on a hosted store platform, or dropping in a payment button and living without a catalog. Here is what each one actually gives you.

Xuda Commerce You
A hosted store platform
A payment button
Add it to the website you already haveRebuild on their platform
Catalog with options, variants and SKUs
Stock counted, and held at the payment step20 minutes
Delivery priced per country, with a free-over threshold
Live carrier rates from your own shipping walletVaries
What the label cost, next to what the buyer paidVaries
Charges made directly on your own Stripe accountVaries
Discount codes with a usage cap and a date windowVaries
Cart refused on any domain you did not listVaries
Several storefronts on one accountUp to 10Varies
Order numbers a buyer can read out over the phone
Best forSelling from a site you already runStarting from a blank storefrontA single product or a one-off
Common questions

The things a seller asks before trusting a checkout.

Your catalog. Your cart. Your Stripe account.

Switch Commerce on, connect the Stripe account that gets paid, add your first product and paste one script tag into the site you already have. The cart stays switched off until you list the websites allowed to run it.

You keep the website you already built. This is the part that sells from it.