Sub-stores
Merchants can open their own storefront on their own domain, selling your products, their own, or both.
First make sure their merchant tier grants sub-store permission — see member and merchant tiers.
Showing main-store products
Under User centre → My store, the merchant chooses whether your products appear:
- Shown — they sell your catalogue and earn sub-store commission
- Hidden — they sell only what they list themselves, effectively an independent store (requires supplier permission)
Binding a subdomain
For merchants to use xxx.your-domain.com, you need to do three things first.
1. Configure the panel
Under Site settings → Other:
- Main domain — for example
abc.com, making sub-storesxxx.abc.com - DNS CNAME — either
abc.comorcname.abc.com; any domain that points at your server IP and is not behind a CDN
2. Add a wildcard DNS record
At your DNS provider, add a record with the value * pointing at your server IP:
*.abc.com → 158.65.45.13. Bind the wildcard domain on the server
This is the step people miss. DNS alone is not enough — the web server also has to accept the domain.
If your site currently has www.abc.com and abc.com bound, add one more:
*.abc.comIn aaPanel: Website → click your site → Domain Management → add *.abc.com.
With all three done, merchants can bind a subdomain prefix from the user centre.
One more thing: a wildcard certificate. Subdomains are created dynamically, so a normal certificate cannot cover them — you need
*.abc.com, and it can only be validated over DNS. See domains and HTTPS certificates.
Binding a custom domain
If a merchant has their own domain and their tier grants domain binding, have them point it at your DNS CNAME with a CNAME record.
If it resolves but still will not load, your server has no default site configured. When a server receives a domain it does not recognise, it hands the request to the default site — so make your store the default.
In aaPanel: set your store as the default site on the Website page.
Who owns sub-store users
Users who register on a sub-store belong to that sub-store's owner. Their future spending earns the owner referral commission.
Sub-store markup
Sub-store owners can mark up your products in their own store and keep the difference.
Product controls
Platform delisting
When a product a merchant listed themselves breaks your rules, go to Admin panel → Products and click the Delisted by Platform button in its action column. You can add a Delisting reason (optional); the merchant sees it in their own product list.
- The merchant cannot relist the product
- Only you can undo it, with Lift platform delisting. The product stays unlisted afterwards, and the merchant relists it themselves
- To see them all at once, filter the product list by Delisted by Platform → Delisted by platform only
Your own main-store products do not need this — just unlist them.
Blocking sub-store sales
In the product editor for a main-store product, Restrictions has a Block Sub-site Sales switch. When it is on, no sub-store shows the product and it cannot be bought through a direct link either — it sells on the main store only.
Beyond that, a sub-store only sells what it actually displays. Other merchants' products, and main-store products the sub-store does not display (because it hides main-store products, the product blocks sub-store sales, or the sub-store owner hid the product or its category), cannot be opened or ordered on that sub-store, even through a direct link.
Checklist
| Symptom | Cause |
|---|---|
| Subdomain will not load | No wildcard DNS record, or *.domain not bound on the server |
| Custom domain will not load | No default site configured on the server |
| "Domain unavailable" when binding | Main domain or DNS CNAME not configured in the panel |
| DNS is right but it still fails | The DNS CNAME target is behind a CDN — use one that is not |
| A downstream site's integration orders fail with a message about fund verification or the integration whitelist | The account used for the integration either has Fund operation verification on with no whitelist entries yet, or has an integration IP whitelist that does not include the downstream server's IP. Have the downstream sign in to that account's user centre and add their server's IP on the Integration whitelist page (in other themes, the Two-step verification page). 3.8.1 has no whitelist, so the only option there is to turn fund operation verification off for that account (Two-step verification can stay on) |
