- File — upload once. Shoppex delivers the same download link to every buyer.
- Serials — upload a pool of codes. Each buyer gets a unique one.
- Subscription — charge on a recurring schedule, with auto-renewal.
- Service — manual fulfillment. You get notified, then you deliver the order yourself.
- Dynamic — your own webhook returns the delivery payload for each order.
- Info card — information-only. Use it for listings, ads, or “request a quote” placeholders that need no automated delivery.
File
The File fulfillment mode delivers a download link to every buyer immediately after payment. The buyer can access the download from their customer dashboard for as long as the order stays valid.Uploading
Open your product, go to the Files tab, and upload. If you want buyers to receive a bundle (for example, a ZIP, a PDF, and a license file), attach multiple files to the same product.File size
Product file uploads are capped at 50 MB per file in the dashboard UI. The effective hard ceiling is 16 MB at the API gateway, so anything larger fails the upload regardless of the UI cap. For larger assets, host the file on your own storage (S3, Cloudflare R2, your CDN) and point the product at an external URL. Shoppex delivers the URL through the same protected delivery flow, so the buyer experience stays identical.Updating the file
Replace files at any time from the product’s Files tab.Download protection
Downloads are gated by the buyer’s logged-in customer dashboard session. Anyone who is not signed into the buyer’s customer account cannot pull the file, and there is no public sharable URL that can leak. If you suspect abuse on a specific order, for example one buyer’s link shared widely, revoke the order from your dashboard. The buyer loses access immediately.Stock behavior
File products have unlimited stock. Shoppex delivers the same file to every buyer.Serials
Shoppex delivers a unique code from a pool you upload, one per buyer. See Serials and licenses for setup, hardware-locked licenses, and the event audit trail.Stock behavior
Serials are inventoried. Shoppex tracks how many codes remain in your pool, and the listing automatically becomes “out of stock” when the pool hits zero.Subscription
Subscription mode charges the buyer on a recurring schedule, with auto-renewal. See Subscriptions for billing cycles, retries, and cancellation.Stock behavior
Subscription products are not inventoried. They do not run out.Service
Use Service mode when you deliver the product yourself, for example design work, game-boosting, account services, or custom orders. Shoppex collects payment and notifies you. The actual delivery happens off-platform.How an order moves
- Buyer pays. The order is marked Paid but pending fulfillment.
- You receive an email and a dashboard notification.
- You do the work, outside Shoppex, on your own schedule.
- Mark the order fulfilled from its detail page, optionally attaching a note or file for the buyer.
- The buyer is emailed your completion message.
Custom fields
Service products almost always need information from the buyer, for example a username, target server, game tag, or Discord ID. Add custom fields to the product, and Shoppex prompts the buyer at checkout. The submitted values appear on the order page when you open it. Field types are text, textarea, number, checkbox, or hidden. Each field can be required or optional. You can also attach an optional regex pattern for client-side validation, for example to check emails, URL formats, or any custom shape you need.Communicating with the buyer
The order page has a built-in conversation thread between you and the buyer. Use it instead of moving the conversation to Discord or email. Every message stays attached to the order, and that message history becomes useful evidence if the buyer later disputes the charge.Dispute risk
Service products are the most dispute-prone category on Shoppex, because there is no automatic proof of delivery. To stay safe:- Keep the conversation in the Shoppex order thread.
- Attach screenshots, videos, or logs of completed work to the order.
- Mark the order fulfilled only after the buyer has confirmed receipt.
Stock behavior
Service products are not inventoried. They do not run out.Dynamic
Dynamic fulfillment lets you generate each buyer’s delivery payload at order time, instead of pre-uploading a pool of files or codes. Use it when:- The product is generated per-buyer (rendered PDFs, signed binaries, account credentials).
- You are sourcing from an external system you control (your own license server, a third-party API, a database of generated codes).
- Stock is effectively infinite, but you do not want to pre-upload anything.
How it works
- You configure a dynamic delivery URL on the product, an endpoint on your own backend.
- When a buyer pays, Shoppex sends a request to that endpoint with the order details.
- Your endpoint returns the delivery payload, for example text, a code, or a URL.
- Shoppex stores that payload against the order and shows it to the buyer.
Setting up the endpoint
You provide an HTTPS URL on your own infrastructure. Shoppex sends a signedPOST request with the order data. You respond with the payload. The full request and response contract is documented in the Dynamic delivery reference.
Failures
If your endpoint is down or returns an error, the order moves to a failed-fulfillment state. The buyer sees a “delivery pending” message, and you get a dashboard notification. Once you have fixed your endpoint, you can retry the delivery from the order detail page. Dynamic delivery does not retry automatically. Shoppex cannot tell whether a 500 response from your endpoint is a temporary error or a sign that you are rate-limiting requests. You decide how to handle retries.When not to use Dynamic
If the same file or code works for every buyer, use File or Serials instead. Use Dynamic fulfillment only when the payload is different for each buyer.Stock behavior
Dynamic products are not inventoried. They do not run out.Info card
Info card mode is information-only. Use it for listings, ads, or “request a quote” placeholders that need no automated delivery. There is no download, code, or manual step attached to the order.Stock behavior
Info card products are not inventoried. They do not run out.Variants and pricing
A product can have variants, such as sizes, tiers, or region-specific versions. Each variant has its own price, stock, and fulfillment payload. Set one price for the whole product, or set a separate price for each variant.Bundles, addons, and quantity deals
On top of base products, you can configure:- Bundles — sell multiple products as a single SKU at a bundle price.
- Addons — optional upsells shown on the checkout page.
- Quantity deals — automatic discount tiers. For example, set 10% off at 5 units and 20% off at 10 units.