Configuration¶
Every system-config key, by plugin and card. All live under Settings → Plugins in the Shopware admin; most are per sales channel for Base.
Per-channel vs global
Base keys are read per sales channel — e.g. you can run the marketplace on one channel and not another. Remote keys are global (one cluster connection).
FlyokaiMarketplace (Base)¶
Config domain FlyokaiMarketplace.config.
Marketplace¶
| Key | Type | Default | Meaning |
|---|---|---|---|
marketplaceEnabled |
bool | true |
When off, the channel ignores seller offers, hides the "Other sellers" widget, and uses Shopware's native price only. Other channels unaffected. |
autoApproveProducts |
bool | false |
On → sellers publish products directly (portal exposes Active). Off → new/edited products land pending approval. |
autoApproveOffers |
bool | false |
On → sellers publish offers directly. Off → new/materially-edited offers land pending approval. |
defaultCommissionPercent |
float | 0 |
Fallback commission when a product has no flyokaiCommissionPercent (or it's 0). Snapshotted onto each PO line at placement. |
defaultTransactionFeeAmount |
float | 0 |
Flat per-PO fee deducted from the seller's payout_amount. Snapshotted at placement. |
priceDisplayMode |
enum | marketplace |
marketplace (buy-box overrides price) · hybrid (native kept + synthetic Platform offer) · native (never override). See Cart & checkout. |
Marketplace shipping¶
| Key | Type | Default | Meaning |
|---|---|---|---|
marketplaceShippingMode |
enum | aggregated |
aggregated (one cart-wide tier picker, total = sum of per-seller carriers) · split (one picker per seller). |
shippingLabelMode |
enum | service |
Split mode only: service (tier name "Standard — $5.99") · carrier (Shopware method name "UPS Ground — $5.99"). Ignored when aggregated. |
See Cart & checkout → Shipping.
Marketplace statements¶
| Key | Type | Default | Meaning |
|---|---|---|---|
includeShippingInPayout |
bool | false |
On → seller payout includes collected shipping. Applied at statement generate/recompute; closed/paid statements stay frozen. See Finance. |
Marketplace mail¶
| Key | Type | Default | Meaning |
|---|---|---|---|
mailFromAddress |
string | — | Sender for marketplace email. Required when Base sends mail in-process. SMTP transport is configured separately at Settings → System → Mailer. |
mailFromName |
string | — | Optional display name. |
operatorInboxUserIds |
component | — | Marketplace users who receive operator-bound seller mail. Empty → all admin/operator users. See Messaging. |
Seller portal¶
| Key | Type | Default | Meaning |
|---|---|---|---|
flyokaiOAuthPublicKeyPath |
string | /www/flyokai/flyokai/storage/oauth.id_rsa.pub |
Absolute path to Flyokai's OAuth RS256 public key, used to verify JWTs from the Flyokai stack. The web user must be able to read it. |
sellerPortalOrigin |
string | http://localhost:5173 |
Browser origin allowed to call /flyok-portal/* (CORS). Dev origin in dev, deployed portal origin in prod. |
Generated keys
The portal OAuth client id / secret are created by
marketplace:oauth:client:create (the secret is stored hashed; the plaintext
is handed to the SPA once). The JWT signing keypair lives at
var/marketplace/oauth.id_rsa{,.pub} — distinct from flyokaiOAuthPublicKeyPath
above. See Seller portal → Authentication.
FlyokaiMarketplaceRemote¶
Config domain FlyokaiMarketplaceRemote.config. Only relevant once
Remote is installed.
Marketplace data location¶
| Key | Type | Default | Meaning |
|---|---|---|---|
dataLocation |
enum | shopware |
Which MySQL holds the data plane. Never edit directly — flip via the migrate commands. shopware · cluster. |
maintenance |
bool | false |
Set by the migration commands while data moves; the backend rejects mutating Requests. Do not toggle manually. |
clusterConfigPath |
string | /www/flyokai/flyokai/storage/flyok.config.json |
Absolute path to the cluster config the migration rewrites (db.connection.active). |
clusterRestartCommand |
string | sudo systemctl restart flyokai-cluster |
Command run to pick up a flipped selector; must block until the cluster is back. Drop sudo if root; swap for Docker/supervisord as needed. |
Shopware MySQL coordinates¶
How the cluster reaches Shopware's MySQL when dataLocation=shopware.
| Key | Type | Default | Meaning |
|---|---|---|---|
shopwareDbHost |
string | 127.0.0.1 |
Shopware MySQL host. |
shopwareDbPort |
int | 3306 |
Port. |
shopwareDbUser |
string | root |
User. |
shopwareDbPassword |
password | — | Password. |
shopwareDbName |
string | (auto) | Defaults to the Shopware install's DB name detected from APP env at install time. |
Flyokai cluster connection¶
| Key | Type | Default | Meaning |
|---|---|---|---|
flyokaiHost |
string | 127.0.0.1 |
Cluster host / IP. |
flyokaiChannelPort |
int | 1439 |
amp-channel-dispatcher port. |
flyokaiHttpPort |
int | 1339 |
Cluster HTTP port (OAuth token fetch). |
flyokaiUseTls |
bool | false |
Use TLS to the cluster. |
flyokaiVerifyPeer |
bool | true |
Verify the TLS peer certificate. |
flyokaiClientId |
string | — | client_credentials id issued on the cluster (flyok-console oauth:client:create). |
flyokaiClientSecret |
password | — | The static access token sent as the channel handshake's first message. |
On-disk artifacts (not system config)¶
| Path | What | Managed by |
|---|---|---|
var/marketplace/oauth.id_rsa{,.pub} |
Portal JWT signing keypair (RS256). | marketplace:oauth:keypair:generate |
var/marketplace/migration.state |
Resumable migration progress. | migrate commands |
var/marketplace/migration.sql |
mysqldump of the data plane during a migration. | migrate commands |
flyok.config.json (clusterConfigPath) |
Cluster connection blocks + db.connection.active. |
marketplace:remote:cluster-config:init, migrate commands |