Flyokai Marketplace for Shopware¶
A multi-seller marketplace for Shopware 6.6 / 6.7, built on the Flyokai async stack. Sellers manage their own catalog, offers, shipping, statements and payouts through a dedicated portal; operators approve and oversee everything from the Shopware admin; buyers shop a buy-box across competing seller offers.
The whole thing runs inside Shopware out of the box — no external service to operate. When a shop outgrows the in-process ceiling, a single optional plugin moves marketplace work to a separate Flyokai cluster with no code change and no data loss.
The suite is three plugins¶
| Plugin | Package | Install when |
|---|---|---|
Base — FlyokaiMarketplace |
flyokai/sw-marketplace |
Always. It owns the schema, cart, portal API, OAuth, admin UI and mail. |
Remote — FlyokaiMarketplaceRemote |
flyokai/sw-marketplace-remote |
When PHP-FPM or Shopware's MySQL becomes the bottleneck. Routes work to a Flyokai cluster. |
Bulk — FlyokaiFujinShuttleMarketplace |
flyokai/sw-fujin-shuttle-marketplace |
When sellers need CSV bulk import/export of products, variants, inventory and offers. |
Base is mandatory; Remote and Bulk are independent add-ons that each require Base.
What you get¶
- Buy-box checkout — multiple sellers offer the same product; the cart and product page surface the winning offer. Three price display modes: marketplace, hybrid, native.
- Per-seller orders — one buyer order fans out into one purchase order per seller, each with its own status, shipment tracking, commission and payout.
- Seller portal — a Vue 3 SPA talking to a REST surface
under
/flyok-portal/*, authenticated with portal JWTs. - Operator admin — Vue admin modules for seller management,
offer/product approval, finance (POs, statements, payouts) and shipping,
nested under
sw-customer/sw-catalogue/sw-settings. - Statements & payouts — periodic statement generation with commission and fee snapshotting, plus manual payout execution.
- Messaging — threaded seller ↔ operator mail delivered through Shopware's own mailer.
- Two shipping models — aggregated or split multi-seller shipping, modelled on the classic Unirgy Dropship behaviours.
Pick your path¶
-
New here? Start with Getting started — install Base, create the first operator + seller, and verify the backend.
-
Want the big picture? Read Architecture — the three plugins, the
MarketplaceBackendseam, and how Base vs Remote dispatch differs. -
Need a specific term? The Domain model and Glossary define every noun: seller, offer, purchase order, statement, payout, commission, ownership.
-
Operating it? Configuration, the CLI reference, and Troubleshooting are the operator's bench.
How it fits the Flyokai stack¶
The marketplace business logic lives in framework packages
(flyokai/marketplace-core, marketplace-service-message,
marketplace-embedded) that are the same code whether they run in-process
inside Shopware (Base) or on a Flyokai async cluster (Remote). The plugins are
the Shopware-facing shell: DAL extensions, controllers, admin Vue, console
commands, and the wiring that picks which backend handles a request. For the
framework those packages sit on, see the
Flyokai framework docs.