Gebühren
Plattformgebühr
Die Plattformgebühr wird erst beim tatsächlichen Abschluss eines Trades fällig. Deshalb zählt für einen Gebührenverzicht nicht der Zeitpunkt des Angebots, Listings oder Trade-Starts, sondern Trade.finalizedAt.
Wenn ein Verkäufer zum Abschlusszeitpunkt einen aktiven TopTraderReward hat, schreibt das Backend auf dem Trade:
fee = 0platformFeeOriginalmit der regulär berechneten GebührplatformFeeWaived = trueplatformFeeWaiverRewardIdmit dem verwendeten Reward
Die Verkäufer-Wallet-Gutschrift wird dann aus dem Verkaufspreis minus tatsächlicher fee berechnet. Bei einem erlassenen Reward entspricht die Gutschrift dem vollen Verkaufspreis.
Für die Anzeige liefert das Backend zusätzlich geschätzte Fee-Daten für offene Trades. Die endgültige Buchung bleibt aber der Abschlusszeitpunkt.
Stripe-Gebührenmatrix
Die Gebührenmatrix wird aus abgeschlossenen Wallet-Deposit-Transaktionen gelernt. Sie verwendet nur Deposits mit:
type = depositstatus = completedodersucceededgrossAmount,stripeFeeAmount,netAmount,paymentMethodTypeundcurrency- gespeicherter
stripeBalanceTransactionId
Der Hintergrundjob startet automatisch mit dem Backend. Er läuft sofort einmal beim Start und danach alle STRIPE_FEE_MATRIX_REFRESH_INTERVAL_MINUTES Minuten, standardmäßig alle 360 Minuten. Wenn der Wert 0 oder kleiner ist, wird der automatische Job deaktiviert.
Admins können die Matrix zusätzlich manuell aktualisieren:
POST /api/functions/admin/stripe-fee-rules/refresh
Die Admin-Debugansicht zeigt Deposit-Netto-Gutschriften, geschätzte Gebühren, tatsächliche Stripe-Gebühren, Gebührenabweichungen, Zahlungsmethode und verwendete Matrix-Regel.
Stripe-Konfiguration
STRIPE_PUBLISHABLE_KEYliegt in.envund wird als öffentliche Einstellung ans Frontend ausgeliefert.secrets/stripe_secret_keyenthält den Secret Key für serverseitige Stripe-API-Aufrufe.secrets/stripe_webhook_secretenthält das Webhook-Signing-Secret.STRIPE_CURRENCYsteuert die Währung der Wallet-Zahlungen, standardmäßigeur.STRIPE_CONNECT_COUNTRYsteuert das Stripe-Connect-Land für Auszahlungen, standardmäßigDE.- Auszahlungen laufen über Stripe Connect Express.
- Das Backend erstellt bei der ersten Auszahlung ein leeres verbundenes Express-Konto für den Nutzer und leitet ihn zum Stripe-Onboarding weiter.
- Stripe übernimmt dort Bankdaten, Identität/KYC und die weitere Auszahlung auf das hinterlegte Bankkonto.
- Das Stripe-Plattformkonto muss für Connect eingerichtet sein. Das gilt auch für Sandbox/Test-Keys.
STRIPE_PAYMENTS_ENABLED_BY_DEFAULT=falsebedeutet, dass Stripe-Zahlungen pro Nutzer freigeschaltet werden müssen. Das User-Feld dafür iststripePaymentsEnabled.