Skip to main content

Shop Portal — Overview

kioskgaming_shop is a web SPA for CDN Shops (Content Delivery Network) in the KioskGaming ecosystem. Shops use this portal to manage players, credit deposits/withdrawals, approve withdrawals, configure provider fees, manage cashiers, and kiosk marketing URLs.

Repo: kioskgaming_shop/


Role in the system

The shop sits at the fourth tier in the account hierarchy:

Admin → Super Agent → Agent → Shop → Player

The Shop Portal calls the backend API over HTTPS only. There is no direct communication between frontends.

PortalUsers
Shop Portal (kioskgaming_shop)Shop owner / CDN shop manager
Cashier App (separate)Counter cashier staff
Player WebEnd players
note

Cashier login on the Shop Portal is blocked — cashiers are redirected to the Cashier App. The Shop Portal only manages cashier accounts (create, suspend, terminate, view reports).


Two shop wallets

WalletField namePurpose
Credits walletcredit_balancePrimary balance for granting credits to players
USD online balanceonline_balance_netSeparate USD wallet — buy credits or withdraw crypto

Conversion formula: credits = USD ÷ cost_rate (cost rate set by agent).


Key features

GroupCapabilities
DashboardCredits/USD balances, player count, quick credit purchase
PlayersList, create player, deposit/redeem credits, ban/unban
WithdrawalsApprove/reject player withdrawal requests
TransactionsCredits ledger, CSV export
Online transactionsUSD wallet ledger, crypto withdrawal, CSV export
Provider feesEnable/disable payment methods, view gateway fees
CashiersCreate/suspend/terminate cashier, view reports & shifts
Fraud indicatorsCashier and player fraud metrics
Kiosk URLManage kiosk subdomain + download promo poster
CommunicationSend popup/broadcast to players (if delegate permission)
SettingsCost rate, low balance warning, enable 2FA

The sidebar shows the following items (mobile: bottom nav for primary items):

RouteLabelNotes
/Dashboard
/withdrawalsWithdrawals
/transactionsTransactions
/online-transactionsOnline transactions
/provider-feesProvider fees
/playersPlayers
/cashiersCashiers
/fraud-indicatorsFraud indicators
/kiosk-domainKiosk URL
/popups/sendSend popupOnly when can_delegate_popups === true
/broadcasts/sendSend broadcastOnly when can_delegate_popups === true
/settingsSettings

Popup/broadcast permissions depend on hierarchy: Super Agent delegation + agent flag + shop flag.


Documentation in this section

PageContent
Architecture & Tech stackProject structure, dependencies, state management, deploy
Routes & PagesAll routes, components, auth flow
API IntegrationBackend endpoints called by Shop
Business featuresBuy credits, player, withdrawal, cashier flows in detail