Back to Project

Payments & Payouts

Booking → Hold → Settle → Split → Disburse

Payments & PayoutsBooking · Deposit Hold · Settle · Split · Disburse1 · GUEST BOOKS A TABLEGuest selects table · party size · arrival time · optional bottle pre-orderMobile app gathers payment method · deposit-split computes hold amount2 · PLATFORM HOLDS DEPOSITdeposit-splitEdge FunctionComputes club + promoter shareAuthorization HoldQorCommerce charge.createcapture=false · funds reservedBooking pendingPostgres state machineRealtime → Tonight cockpit3 · DOOR CHECK-IN · TAB · SETTLEguest-checkin-confirmBooking → activeHost marks party arrivedOpen tab · Bottle addsBottle server adds itemsModifiers · Comps · Discountssettle-bookingCapture final amountTip + tax split logic4 · WEBHOOK · NIGHTLY SPLIT · DISBURSEpayment-webhookIdempotent dispatchercharge.succeededcharge.refundeddispute.createdpayout.paidUpdates booking · ledgerdaily-club-payoutCron · per-club scheduleGross revenue− platform commission− promoter commissions− refunds · chargebacks= net club sharedisburse-payoutsQorCommerce transfers→ Club sub-merchant→ Promoter sub-merchant→ Platform fee accountAudit row per legRe-runnable + idempotentAll amounts stored as integer cents · Re-runnable nightly · Ledger-first design