Appearance
Wallets & Withdrawals
Comps.gg supports two distinct user balances: a site credit wallet that can only be spent on the platform, and a cash wallet that holds real-money balances that can be withdrawn to a bank account.
Wallet Types
| Wallet | Source | Spendable on platform | Withdrawable |
|---|---|---|---|
| Site credit | Referral rewards, goodwill credits, prize-choice conversions | Yes | No |
| Cash wallet | Cash prize wins, cash refunds | Yes (card-free checkout) | Yes |
Both balances are shown on the user detail modal and in the admin users table (walletBalance and cashWalletBalance columns, each independently sortable).
Cash Wallet
Where it fills up
- Cash prize wins — When a winner is awarded a
CASHprize, the amount is credited to their cash wallet. - Card refunds routed to wallet — If a refund cannot be returned to the original card, the refund breakdown shows a Wallet Amount which posts to the cash wallet.
What users can do with it
- Spend at checkout — Cash balance applies automatically (like site credit) unless the competition has "Exclude from Wallet Credit" enabled.
- Convert to site credit — Users can convert cash to site credit. Conversions are one-way (you can't convert credit back to cash) and are recorded with full audit trail.
- Request a withdrawal — Users enter bank details (encrypted at rest) and submit a withdrawal request which appears in the admin Withdrawals queue.
Transaction history
Both wallets have full transaction history views on the user detail modal. Each entry shows the source (order, refund, prize, conversion, withdrawal), date, and running balance.
Prize Choices
When a prize has an alternative configured (e.g. "£500 cash or £600 site credit"), the winner is prompted to pick one after the draw:
- Default — Prize is awarded as its primary type.
- Alternative chosen — Prize type is swapped to the alternative (cash → credit, credit → cash, etc.) and logged.
Admins are emailed whenever a winner makes a prize choice, including which option was selected.
Implications
- P&L — Profit/loss is calculated against the actual chosen prize type, not the original. Cash choices taken as credit do not distort cash outlay.
- Cash prizes with credit alternative — No longer auto-credited; winners are always asked.
- Ticket-bundle alternatives — When a prize is taken as competition tickets, an order is created so the entries appear in the user's history.
Withdrawals Admin Page
Route
/admin/withdrawals
Overview
Review, approve, and settle cash withdrawal requests. The page uses the shared admin table with search, filtering, and sorting.
Columns
- User — Who requested the withdrawal
- Amount — Gross amount requested
- Status — Pending, approved, paid, rejected, failed
- Bank Details — Masked, with a "View Details" action that requires step-up authentication before decrypting
- Source Transactions — Which cash wallet credits back this withdrawal (e.g. prize win orders, refunds)
- Requested — Submission timestamp
Bank Details Access
Bank details are encrypted at rest and never logged. Viewing them requires:
- Click "View Details"
- Confirm the intent in the confirmation dialog
- Complete 2FA via the Step-Up Auth dialog (email code)
- View count is tracked and shown as a tooltip on the row
Every view is recorded in the audit log with the admin user, timestamp, and IP.
Processing a Withdrawal
- Verify the user's identity (if policy requires — check ID on the user detail modal)
- View bank details via step-up auth
- Pay from your corporate account (out-of-band)
- Update the withdrawal status to Paid
- Add an optional reference (your bank's payment reference)
The user is emailed automatically when status changes.
Cash-to-Credit Conversion
For users
Users convert from their account → Wallet → "Move to site credit". Conversions are immediate and irreversible.
For admins
- Recent conversions appear on the admin dashboard (recent cash-to-credit activity feed) so you can spot unusual patterns.
- Audit trail — Every conversion is logged with before/after balances.
Excluding Competitions from Wallet Credit
Individual competitions can be flagged Exclude from Wallet Credit (on the Tickets & Pricing section of the competition edit page). When set, neither site credit nor cash wallet can be applied at checkout for that competition — full card payment is required.
See Exclude from Wallet Credit.
Responsible Gaming Hooks
Cash wallet activity feeds into the Responsible Play signals:
- Large conversions from cash → credit can indicate play-back behaviour.
- Withdrawals reset spend velocity counters.
- The rgLimitRemovedSpendThreshold site setting (max £5,000) caps re-enabled spending after an RG limit is lifted.
Tips
- Process pending withdrawals within 48 hours — users are watching.
- Always use step-up auth when viewing bank details; don't screenshot.
- Reconcile the Withdrawals admin page against your bank statement weekly.
- If a withdrawal fails (wrong account, returned funds), set status to Failed and credit the amount back to the user's cash wallet manually.