How the money works
Resellers do not check out with a card. They keep a prepaid balance in your shop, top it up themselves, and every wholesale order is charged against that balance instantly. Nothing is invoiced, nothing is on credit, and an order that exceeds the balance is simply rejected. Two consequences worth knowing up front:- A reseller order settles immediately, so their codes or files are delivered right away.
- Reseller top-ups earn no wallet bonuses or reward credits, even if you run a top-up bonus campaign. A bonus on money that is spent at a discount would be a discount twice.
Setting the program up
The Overview tab shows a three-step checklist until you finish it.1
Enable the program
Go to the Settings tab and switch Reseller Program on. While it is off, existing
resellers keep their status but cannot place wholesale orders or use the reseller API.Then pick an Enrollment Mode:
- Manual — only you invite resellers. Customers cannot request access.
- Application — customers apply from their account and you approve or reject each request. You can add an Application Message explaining what you expect, and require applicants to write a note.
- Open — any customer becomes a reseller instantly and lands in your default tier.
2
Create a tier
A tier holds the wholesale discount. On the Tiers tab, choose Create Tier and set a
Name and a Discount Percent — the percentage off your regular price on every enrolled
product.Optionally set Auto-Advance: a Lifetime Revenue and/or Completed Orders threshold
that promotes resellers into this tier as they grow. By default hitting either threshold is
enough; tick “Require both thresholds instead of either one” to demand both.Tiers are ordered from entry level to top tier. When an order pushes a reseller past several
thresholds at once, they land in the highest tier they qualify for — not the next one up.Need an exception for a single product? Use Overrides on the tier row. An override replaces
the tier discount for one product, or for one specific variant.
3
Enroll products
On the Products tab, flip the Enrolled switch for every product resellers may buy.
Enrolled products are the wholesale catalog; everything else is invisible to them.This page never sets a separate reseller price. Resellers always pay your regular price minus
their tier discount, so a price change on the product flows through automatically.Disable Volume Discount on a row stops your normal quantity discounts from stacking on top
of the wholesale discount for that product.
Bringing resellers in
Invite Reseller (top right of the page) takes an email and an optional tier. If that email is new to your shop, the customer account is created for you. Without a tier the reseller pays your regular price until you assign one, so pick one unless you have a reason not to. The invitation email carries a link that expires after 14 days. Until it is accepted the relationship sits in Invited. In Application mode, requests land on the Applications tab. Each shows the applicant’s note and the date. Approve lets you pick the tier they start in; Reject takes an optional reason for your own records — it is not emailed automatically. A rejected applicant keeps their customer account and can apply again later. Every relationship is in exactly one state: Invited, Applied, Active, Suspended, or Rejected. You can suspend an active reseller and reinstate them later — suspending pauses wholesale pricing and their API access but keeps their order history. Relationships are never deleted; only an unaccepted invitation can be withdrawn.What your resellers see
In the customer portal of your shop, an approved reseller gets a Reseller tab with:- their tier, lifetime revenue, lifetime orders, and balance, with Add funds to top up
- the Wholesale catalog — your enrolled products at their tier prices, with a running order summary that shows the total, the saving versus retail, and their balance after the order
- Reseller orders — past wholesale purchases with the delivered keys and a Copy all button
- API keys — up to 5 active keys for ordering from their own system
Dynamic Delivery: reselling someone else’s stock
The relationship also works in the other direction. If you are an active reseller in another Shoppex shop, you can sell that shop’s products in your own store without holding any stock: when a customer buys, Shoppex buys the item from your supplier automatically and hands the supplier’s codes straight to your buyer. Set it up per product, in the product editor’s Supplier source section:- Save the product first, then pick the Supplier — only shops where you are an active reseller with an enabled program are listed.
- Pick the Supplier product it should be bought from, and a Supplier variant if the supplier’s product has variants (or leave it on “Whole product”).
- Check the margin readout — Your price, Purchase price, Margin. It warns you when you would sell below the wholesale price you pay.
- Leave Automatic fulfilment on. Turning it off pauses supplier purchases for that product without losing the configuration.
A product can have a supplier source or a dynamic webhook delivery URL, not both — only one
automatic fulfilment mechanism can own a delivery. Remove the webhook URL under Delivery & Stock
first.
reseller:supplier_order.delivered and reseller:supplier_order.failed
webhooks if you want to be alerted.
Supply chains are allowed to nest — your supplier may itself be reselling — but only three shops
deep, and a shop can never be its own supplier.