Escrow Fees Engine: eine Regel, berechnet, wenn das Geld fließt
Wie Verkäuferauszahlung, Plattformgebührenanteile und Käufererstattung bei jeder Freigabe, Erstattung oder Teilung berechnet und geschrieben werden — aus einer einzigen plattformweiten Regel.
Ein Escrow-Übergang, der Geld bewegt, muss das atomar tun. Wird die Verkäuferauszahlung geschrieben, die Plattformgebühr aber nicht, haben Sie eine Inkonsistenz, die am Freitagnachmittag von Hand repariert werden will. Die Fees Engine verhindert das, indem sie jeden Anteil in einer Transaktion berechnet und pro Geldbewegung eine Settlement-Zeile schreibt, bevor das Escrow den Status überhaupt wechseln darf.
Eine Regel für die ganze Plattform
Es gibt genau eine Gebührenkonfiguration, gesetzt von ReVend. Sie hat einen Typ — prozentual, pauschal oder hybrid (Prozentsatz plus Pauschale) — und eine Aufteilung: Käufer zahlt, Verkäufer zahlt, 50/50 oder ein eigener Käufer-Verkäufer-Anteil. Tenants konfigurieren keine Gebühren, nicht pro Kategorie, nicht pro Ausgang, nicht nach Volumenstufe. Was ein Tenant bekommt, ist /escrow/fees: eine schreibgeschützte Ansicht der aktuellen Regel, der Käufer- und Verkäuferanteile, ein durchgerechnetes Beispiel an einem Musterdeal und das Datum der letzten Änderung. Ein Gebührenbildschirm, den alle bearbeiten dürften, wäre demokratisch, temperamentvoll und finanziell katastrophal.
Wann die Gebühr berechnet wird
Bei der Freigabe — nicht beim Anlegen des Escrows. Der Grund ist der Split: Teilt die Compliance einen strittigen Betrag, muss die Gebühr auf dem berechnet werden, was jede Partei tatsächlich erhält, nicht auf der ursprünglichen Summe. Früh zu rechnen hieße später neu zu rechnen, und Geld neu zu berechnen ist die Geburtsstunde jedes Abstimmungsmeetings.
Die Aufteilungsrechnung
Bei einer normalen Freigabe: Die Gebühr ist der Betrag mal Prozentsatz, oder die Pauschale, oder beides; zuerst gerundet, dann gedeckelt, damit sie den Escrow-Betrag nie übersteigen kann. Die gesamte Gebühr wird dem Betrag entnommen, den der Käufer eingezahlt hat, und die Auszahlung an den Verkäufer ist das, was übrig bleibt. Käufer- und Verkäuferanteil sind buchhalterische Zuordnung und keine zwei getrennten Belastungen: Zusammen ergeben sie dieselbe Gesamtgebühr, und es gibt sie, damit die Finanzabteilung den Erlös je Seite verbuchen kann. Die Engine schreibt eine seller_payout-Zeile, eine platform_fee_buyer-Zeile und eine platform_fee_seller-Zeile.
Bei einer Erstattung: Der Käufer bekommt den vollen Betrag zurück, und es wird überhaupt keine Gebühr erhoben. Eine buyer_refund-Zeile. Das ist eine bewusste Entscheidung — ein Käufer, der recht hatte, soll nicht dafür zahlen, recht gehabt zu haben, und eine Gebühr auf Erstattungen würde genau die Streitfälle abschrecken, die eingereicht gehören. Dieselbe Regel gilt, wenn eine Outbound-Order storniert wird, bevor etwas versendet wurde, und das gehaltene Escrow automatisch erstattet wird.
Bei einem Split: Die Gebühr wird nur auf dem Teil berechnet, der an den Verkäufer freigegeben wird, und der an den Käufer erstattete Teil trägt nichts davon. Der Compliance-Beauftragte sieht beide Zahlen, bevor er die Entscheidung bestätigt.
Fail-closed
Zuerst werden die Settlement-Zeilen geschrieben, dann der Statuswechsel, beides in derselben Datenbanktransaktion. Fehlt die Gebührenkonfiguration, wirft der Schreibvorgang und die ganze Transaktion rollt zurück: Das Escrow bleibt held (oder in Dispute), und der nächste Versuch läuft erneut, sobald die Konfiguration existiert. Ein blockiertes Escrow ist ärgerlich. Ein freigegebenes Escrow ohne Auszahlungszeile ist ein Vorfall.
Währung
Beträge tragen die Währung des Escrows. Kreuzt ein Deal Währungen, wird der Wechselkurs bei der Annahme auf dem Escrow selbst fixiert — Kurs, Zeitstempel und Quelle — auf Basis der täglich um 07:00 aufgefrischten Kurse, damit ein Streit sechs Monate später den exakten Kurs rekonstruiert und nicht den von heute. Auf der Settlements-Seite werden Auszahlungen in verschiedenen Währungen nie zu einer Zahl addiert; die Finanzabteilung bekommt einen Batch-Button pro Währung.