{ "shell": { "title": "Admin Operations Guide", "integrationDocs": "API Integration Docs", "adminLogin": "Admin Console" }, "nav": { "gettingStarted": "Getting started", "operations": "Core operations", "management": "Management", "finance": "Funds & tickets", "platform": "Platform configuration", "reference": "Reference", "overview": "Overview", "roles": "Roles & permissions", "siteSetup": "Integration sites", "draws": "Draws & results", "settlementCenter": "Settlement center", "agents": "Agent hierarchy", "players": "Player management", "tickets": "Ticket search", "wallet": "Wallet & reconciliation", "config": "Rules & risk control", "reports": "Reports", "fundOperations": "Fund operations guide", "manualReview": "Manual review & payouts", "faq": "FAQ" }, "headers": { "role": ["Role", "Primary responsibilities", "Typical access"], "status": ["Status", "Meaning", "Available actions"], "module": ["Module", "Description"], "field": ["Field", "Description", "Example"], "billStatusTable": ["Bill status", "Meaning", "Next step"], "faq": ["Issue", "Resolution"], "report": ["Report", "Purpose"], "menu": ["Sidebar group", "Menu", "Typical users", "Description"], "ledger": ["Ledger type", "When it occurs", "Effect on player funds", "Where to view"], "walletTxn": ["Wallet ledger type", "When it occurs", "Description"], "compare": ["Stage", "Wallet mode", "Credit mode"], "reconcile": ["Situation", "Action", "Notes"], "setting": ["System setting", "Location", "When enabled", "When disabled"], "batchStatus": ["Batch status", "Meaning", "Available actions"] }, "pages": { "overview": { "title": "Admin operations overview", "description": "For your organization's super admins, site operators, and bound agent staff. This guide follows the actual admin menu and includes step-by-step instructions. For wallet-mode technical integration, see the API Integration Docs.", "loginNote": "Admin console: https://lotteryadmin.tanumo.com/admin (use the operations account assigned by your organization or our team)", "scope": "System capabilities", "scopeItems": [ "Draw management: schedule generation, close, result review, and payout settlement", "Players & tickets: search, freeze, view ledgers and ticket history", "Rule configuration: play switches, odds, caps, jackpot (platform super admin)", "Settlement center: credit-line period open/close, bill confirmation, payment recording", "Agent hierarchy: agent tree, share/credit/rebate, downstream operator accounts", "Wallet & reconciliation: main-site transfer ledger, missing-order handling (wallet mode)", "Reports: P&L summary, risk occupancy, async export" ], "menuMap": "Admin menu map", "menuMapNote": "Visible menus depend on your account role. Bound agent accounts do not see platform finance menus such as Wallet ledger or Reconciliation.", "menuMapRows": [ ["Overview", "Dashboard", "All users", "Home after sign-in; current-period operations summary"], ["Agent organization", "Agent lines", "Super admin", "Provision independent sites and root agents for credit-line customers (wallet mode usually needs Integration sites only)"], ["Agent organization", "Agent list", "Site ops / agents", "Maintain agent tree, share/credit/rebate, downstream accounts"], ["Agent organization", "Settlement center", "Site finance / bound agents", "Credit-line periods, bill confirmation, record payments"], ["Daily operations", "Draw list", "Platform super admin", "Draw schedule, result review, redraw (shared by wallet and credit modes)"], ["Daily operations", "Ticket list", "Ops / support / agents", "Search tickets by player, draw, play type"], ["Daily operations", "Player list", "Site ops / agents", "Create profiles, freeze, view ledgers and tickets"], ["Daily operations", "Settlement", "Platform ops", "Post-draw payout settlement batches (not credit-line periods)"], ["Funds & reports", "Wallet ledger", "Platform / site finance", "Wallet mode: main-site transfers and in-lottery balance changes"], ["Funds & reports", "Reconciliation", "Platform / site finance", "Wallet mode: handle long-pending transfer orders"], ["Funds & reports", "Reports", "Ops / finance / agents", "P&L, player win/loss, risk, export"], ["Platform management", "Play rules / odds / limits / risk / jackpot", "Super admin", "Site-wide play and risk parameters (site operators usually do not see these menus)"], ["Platform management", "Integration sites / Admin users / Role management", "Super admin", "Site secrets, admin accounts, and permission assignment"] ], "readingOrder": "Suggested reading order", "readingItems": [ "Roles & permissions → confirm what your account can do", "Wallet super admin: Integration sites → API Integration Docs → Draws & results → Wallet & reconciliation", "Credit-line site ops: Agent hierarchy → Player management → Settlement center (open/close/payments)", "Bound agent operator: Agent list → Player management → Settlement center (payments for own line only)", "Fund semantics and ledger types → Fund operations guide", "Draw review and payout batches → Manual review & payouts" ], "modes": "Two player funding modes", "modeRows": [ ["Wallet mode", "Players enter via your main-site SSO; funds move through your wallet gateway; ops use Wallet ledger and Reconciliation. Technical details are in the API Integration Docs"], ["Credit mode", "Lottery-native accounts or agent-created profiles; bets use credit; wins settle in Settlement center periods; no main-site wallet involved"] ], "note": "Share settlement bills use the share rate recorded at bet time. Closed historical periods are not recalculated when agent share rates change later." }, "roles": { "title": "Roles & permissions", "description": "The admin console manages access as account → role → feature permissions. Bound agent operator accounts only see data within their agent line. Site admins are bound to a single site and do not get platform technical menus such as draw odds configuration.", "matrix": "Common roles", "matrixRows": [ ["Super admin", "Highest access across the system: integration sites, draw intervention, agent line provisioning, global configuration", "Built-in super admin; not limited by site roles"], ["Site admin", "Single-site credit-line operations: agent tree, players, settlement, tickets, reports", "Bound to one site; no platform play rules/odds configuration"], ["Bound agent operator", "Manage downstream agents and players under this line; period payments (bills where this account is the payee only)", "Bound to a specific agent node; cannot open or close periods"], ["Risk / finance / support", "View or operate assigned menus by job function", "Assigned by super admin in Role management"] ], "accountModel": "Account and permission model", "accountItems": [ "Admin users (Platform management): create admin accounts; bind roles or site/agent scope", "Role management (Platform management): select menus and actions; accounts do not hold permissions directly", "Site admins must choose an owning agent when creating players; cannot default to the root agent", "A bound agent's main account can record settlement payments; payee rules and direct-player/bill-party rules still apply", "With view-only access, buttons such as record payment, confirm bill, and open/close period are hidden (not shown as errors)" ], "accountSetup": "Create an operations account (super admin)", "accountSetupSteps": [ "Sign in → Platform management → Admin users → Create account", "Enter login name, initial password, and display name", "Choose binding: ① site role (site admin) ② agent node (agent operator) ③ role only (platform role)", "Site admin: select the target integration site under Site role", "Agent operator: select the agent node under Agent binding (data scope = that node and downstream)", "After saving, ask the user to change the initial password; if expected menus are missing, check Role management for the assigned role" ], "note": "With no integration site, site-dependent write actions prompt you to create a site (super admin only)." }, "siteSetup": { "title": "Integration sites (super admin)", "description": "Wallet mode requires an integration site first. Save SSO and wallet secrets and have your technical team configure them on your main-site server. Credit-line agent line provisioning also creates a site.", "path": "Create and configure", "pathItems": [ "Sign in at https://lotteryadmin.tanumo.com/admin → Platform management → Integration sites", "Click Create site; enter site code (must match site_code in your JWT), name, and status", "After creation, copy immediately the one-time SSO secret and wallet API key shown on screen (they cannot be viewed again after closing)", "Edit the site: enter your wallet gateway URL (HTTPS root, no path), lottery H5 entry, iframe allowlist (one origin per line)", "Click Connectivity test and confirm your balance query API returns success", "Give secrets and site code to your technical team for main-site server configuration; field reference and curl examples are in the API Integration Docs" ], "fieldRows": [ ["Site code", "Written into site_code in JWTs your organization issues; must match on both sides", "demo"], ["Wallet gateway URL", "Your HTTPS root URL (no path)", "https://wallet.your-domain.com"], ["Lottery H5 entry", "Redirect or iframe entry URL", "https://front.tanumo.com"], ["Iframe allowlist", "Domains allowed to embed the lottery; one per line", "https://www.your-domain.com"], ["SSO secret", "Shown once at creation; your main site uses it to sign JWTs", "—"], ["Wallet API key", "Shown once at creation; lottery uses it when calling your wallet APIs", "—"] ], "fields": "Key fields", "caution": "Important notes", "cautionItems": [ "Keep site codes, secrets, and domains fully isolated between test and production", "Production wallet gateway must be a public HTTPS URL", "Secrets must be configured on your main-site server by your technical team; the admin console does not auto-sync them to your systems", "Integration and go-live checklist: API Integration Docs → Delivery" ], "apiLinkNote": "Wallet gateway fields, curl self-tests, and iframe protocol are in", "apiLinkLabel": "API Integration Docs → Setup" }, "draws": { "title": "Draws & results", "description": "A draw is the basic betting unit. List times are shown in local timezone; the server stores UTC. Whether the hall accepts bets is determined live; the list shows database status, which may differ slightly from the player-side countdown.", "lifecycle": "Draw statuses", "statusRows": [ ["Not started", "Before start time", "Edit, delete (no bets)"], ["Open", "Accepting bets", "Edit some times, cancel (no bets)"], ["Closing", "No longer accepting new bets", "Wait for draw"], ["Pending draw / drawing", "Waiting for or generating result", "Proceed to review and publish"], ["Pending review", "Cooling period for verification", "Approve, redraw/rollback"], ["Settling", "Calculating wins and payouts", "—"], ["Settled", "All tickets for this draw processed", "View finance and risk"], ["Cancelled", "Cancelled by admin", "Record kept; placed bets refunded"] ], "workflow": "Daily workflow (platform super admin)", "workflowItems": [ "Daily operations → Draw list → Batch generate draw plan: auto-create upcoming draws on configured intervals", "Manually create a draw or edit times for not-started/open draws when needed", "After close time the system closes automatically; draw flow: generate result → cooling review → publish → auto settlement", "Draw detail page shows: finance summary, number occupancy, result batches, related tickets" ], "publishWalkthrough": "Publish draw results step by step", "publishSteps": [ "Draw list → open the target draw", "Confirm status is Pending draw or Pending review", "If no result yet: click Generate draw result", "During cooling period verify numbers → click Approve and publish", "After publish the system moves to Settling → Settled; wallet-mode players receive instant payouts, credit-mode players get credit release recorded in period ledger", "If issues are found after publish: super admin may Redraw during cooling (see next section)" ], "reopenWalkthrough": "Redraw and rollback (super admin only, during cooling)", "reopenSteps": [ "Draw detail → Redraw/rollback", "System rolls back payouts/credit releases → regenerate result → review and publish again → settle again", "Actions are written to audit log; confirm with your finance team before proceeding" ], "rules": "Rules & risk (related modules, super admin)", "rulesItems": [ "Platform management → Play rules: play switches, min/max stake", "Platform management → Odds & rebate: affects new tickets only", "Platform management → Limit versions: per-number caps; sold-out numbers block betting", "Platform management → Risk center: view occupancy and payout pools by number; occupancy ledger defaults to ticket aggregation" ], "note": "Times cannot be changed after close. Cancel a draw only when open/closing with no bets.", "manualReviewLinkNote": "Draw manual review, cooling period, and payout settlement batches are covered in", "manualReviewLinkLabel": "Manual review & payouts" }, "settlementCenter": { "title": "Settlement center (credit line)", "description": "Manage agent settlement periods: open → close and generate bills → confirm → record payments. Bound agents can only view and operate bills for their own line. Wallet-mode players are not part of this module.", "entry": "Entry & permissions", "entryItems": [ "Agent organization → Settlement center: period list", "Open / close period: site finance accounts not bound to an agent only (usually your finance role)", "Bound agents: cannot open or close periods; can only handle bills where they are the payee", "Settlement write permission is required to show record payment, confirm bill, and similar actions; with view-only access the action area is hidden" ], "periodFlow": "Period lifecycle", "periodItems": [ "Open period: create an in-progress period; start accumulating share ledger and player credit moves", "During period: player bets use credit, win releases, rebates, etc. are written to ledger", "Close period: aggregate period data into player bills and agent bills; irreversible", "Related draws for the period must be settled before close; warnings appear if unsettled tickets remain", "After close: agents/finance confirm bills → record actual payments → bills reach settled status" ], "openWalkthrough": "Open a period (site finance)", "openSteps": [ "Settlement center → period list → Open period", "Enter period name and start/end dates (per your agreement with agents)", "Confirm no other in-progress period conflicts → submit", "After open, new bets and credit releases count toward this period" ], "closeWalkthrough": "Close a period (site finance)", "closeSteps": [ "Confirm all draws for this period are Settled", "Settlement center → select in-progress period → Close period", "System aggregates share ledger into player bills (direct players) and agent bills (share at each level)", "After close, bill status is Pending confirm; historical share uses bet-time snapshot, not current agent profile" ], "paymentWalkthrough": "Confirm and record payments", "paymentSteps": [ "Settlement center → period detail → Bills tab → open target bill", "Payee account clicks Confirm bill (status: Pending confirm → Confirmed)", "Click Record payment; enter actual received/paid amount, method, and notes", "Multiple payments allowed until Settled; partial payment shows Partial paid", "Bad debt write-off and top-up reversal: site finance only (not bound to an agent)" ], "detailTabs": "Three tabs on period detail", "detailTabItems": [ "Bills: player bills and agent bills; open a bill to confirm or record payment", "Payments & adjustments: operation log for payments, bad debt, top-ups, etc. (by operation record)", "Credit ledger: player credit limit moves (bet hold, win release, period payment entries, etc.)" ], "billStatusSection": "Bill statuses", "billStatusRows": [ ["Pending confirm", "After close; awaiting agent or finance confirmation", "Confirm bill"], ["Confirmed", "Amount confirmed", "Record payment"], ["Partial paid", "Outstanding balance remains", "Continue payment"], ["Overdue", "Past due and not fully paid", "Collect or bad debt handling"], ["Settled", "Payments complete", "Archive for reference"] ], "operations": "Permissions and scope notes", "operationItems": [ "Record payment: payee only", "Bound agents: player bills include direct players only; agent bills include bills where this node is bill party or counterparty", "Bills have no currency_code field; display currency uses player default_currency" ], "note": "Closed share bills settle using bet-time snapshot; history is not recalculated from current agent profiles.", "fundOpsLinkNote": "For credit ledger types and how they differ from wallet mode, see", "fundOpsLinkLabel": "Fund operations guide" }, "agents": { "title": "Agent hierarchy", "description": "The agent layer controls which data you can see and credit limits for downstream players; menu permissions still come from roles. Credit-line sites must maintain the agent tree before creating players under it.", "structure": "Organization", "structureItems": [ "Super admin: Agent organization → Agent lines → Provision line: create independent site + root node for external agents", "Site ops: Agent organization → Agent list: maintain agent tree under existing site", "Select an agent node to edit profile: share, credit, rebate, delegation permissions", "Root agent profile editable by super admin only; downstream maintained by parent agent or site admin", "Agent operator admin accounts can be created (bind agent node in Admin users)" ], "provisionWalkthrough": "Provision credit-line agent line (super admin)", "provisionSteps": [ "Agent organization → Agent lines → Provision line", "Enter site info, root agent name and code", "Set initial share, credit, and rebate for root agent", "Submit to auto-create integration site and root agent; record returned site code", "Create site admin or root agent operator account for the partner (see Roles & permissions)" ], "dailyWalkthrough": "Daily agent maintenance (site ops)", "dailySteps": [ "Agent list → select parent node → Create downstream agent", "Enter name, code, share/credit/rebate; whether further delegation is allowed", "After save the node appears in the tree; continue creating downstream agents or players", "Share/credit changes affect new tickets and future periods only; closed history unchanged" ], "profile": "Agent profile fields", "profileRows": [ ["Share rate", "This level's share of downstream turnover", "After close, counted in this level's share profit (win/loss)"], ["Credit line", "Credit ceiling for downstream players", "Total bet holds for downstream players must stay within chain credit rules"], ["Rebate rate", "Rebate layered on play configuration", "Combined with platform Odds & rebate settings"], ["Delegation", "Whether creating downstream agents/players is allowed", "Site admins are not limited by this switch; they follow their own role permissions"] ], "siteAdmin": "Site admin notes", "siteAdminItems": [ "Site admins are not blocked by delegation switches on the selected agent profile; they follow their own role permissions", "When creating players under an agent you must choose the owning agent (cannot default to root)", "Open/close period and bad debt write-off require a site finance account not bound to an agent" ], "note": "Agent profile changes affect new tickets and future periods only; closed history stays unchanged." }, "players": { "title": "Player management", "description": "Manage wallet-mode and credit-mode players in one place. List and detail views show different balances and ledger tabs by funding mode.", "list": "Player list", "listItems": [ "Daily operations → Player list", "Search: username, nickname, main-site player ID, owning agent", "Funding mode column distinguishes wallet mode vs credit mode", "Balance column: credit mode shows credit limit (major); wallet mode shows in-lottery balance (minor)" ], "createWalkthrough": "Create credit-mode player (site ops / agent)", "createSteps": [ "Player list → Create player", "Owning agent is required (site admins cannot skip)", "Enter login name, password, nickname, default currency", "Set initial credit limit (credit mode)", "After save the player can sign in with lottery-native credentials; wallet-mode players are usually auto-created on first valid main-site SSO entry" ], "freezeWalkthrough": "Freeze / unfreeze", "freezeSteps": [ "Player list or player detail → Freeze", "Frozen players cannot bet; existing tickets settle per rules", "Unfreeze restores normal betting" ], "modes": "Funding mode differences", "modeRows": [ ["Wallet mode", "Enter via your main-site SSO; first valid JWT auto-creates profile. Detail tabs: wallet ledger, transfer orders"], ["Credit mode", "Lottery-native account or created in agent admin. Detail tab: credit ledger; wins settle in agent periods"] ], "detail": "Player detail page", "detailItems": [ "Credit ledger: bet hold, win release, period payment entries, etc.", "Wallet ledger / transfer orders: wallet mode only; transfer orders map to main-site transfer records", "Ticket history: jump to ticket detail (including combo play breakdown)", "Adjust credit: requires player/agent management write permission" ], "note": "Wallet-mode usernames are generated by the lottery (e.g. nlotto******); nicknames are not synced from your main site." }, "tickets": { "title": "Ticket search", "description": "Search player tickets across dimensions for operations, support, and agent reconciliation. Bound agents only see tickets for players in their agent subtree.", "entry": "Entry", "entryItems": [ "Daily operations → Ticket list", "Or from player detail → Ticket history for a single player" ], "filter": "Common filters", "filterItems": [ "Draw, player, play type, ticket number, time range", "Status: pending draw / won / lost / cancelled, etc.", "Agent scope: super admin can filter by site; site ops see own site; bound agents see own subtree" ], "detail": "Ticket detail", "detailItems": [ "Shows bet content, odds, amount, share snapshot (credit mode)", "Combo plays (e.g. combination bets) show combo breakdown on detail page", "Related links: player detail, draw detail", "Excel export supported (export permission required)" ], "note": "Ticket amounts are snapshotted at bet time; status updates automatically after draw; no manual ticket edits." }, "wallet": { "title": "Wallet & reconciliation (wallet mode)", "description": "Applies to wallet-mode players only. Shows transfer records between your main site and the lottery. Bound agent accounts usually do not see this menu.", "walletSection": "Wallet ledger", "walletItems": [ "Funds & reports → Wallet ledger", "Filter by player, type, time: transfer in, transfer out, bet, payout, etc.", "Amounts are minor integers; consistent with wallet gateway definitions in API Integration Docs", "Export filtered results (permission required)" ], "transferSection": "Transfer orders", "transferItems": [ "Wallet module includes Transfer orders list (main site ↔ lottery)", "Status: success / failed / pending", "Long-pending orders can be handled in Reconciliation" ], "reconcileSection": "Reconciliation (missing orders)", "reconcileSteps": [ "Funds & reports → Reconciliation", "List shows long-pending or abnormal transfer orders", "Open an order → verify actual debit/credit result with your main site", "Per verification: post entry, reverse, or close; actions are audited", "Technical team should also check your wallet gateway logs and API Integration Docs → Troubleshooting" ], "note": "Credit-mode players do not use wallet ledger or reconciliation; their fund moves are in Settlement center credit ledger.", "fundOpsLinkNote": "For wallet vs credit fund lifecycle comparison, see", "fundOpsLinkLabel": "Fund operations guide" }, "config": { "title": "Rules & risk control (platform super admin)", "description": "Site-wide play, odds, limits, and risk parameters. Usually visible only to platform super admins or your organization's super admins with platform access; site ops and agents typically do not see these menus.", "plays": "Play rules", "playsItems": [ "Platform management → Play rules", "Switch plays on/off: disabled plays cannot be bet on player side", "Set min/max stake per bet" ], "odds": "Odds & rebate", "oddsItems": [ "Platform management → Odds & rebate", "Adjust odds and base rebate; affects new tickets only", "Combined with rebate rate in agent profiles" ], "riskCap": "Limit versions", "riskCapItems": [ "Platform management → Limit versions", "Set per-number caps; number is sold out when cap is reached", "New version applies to future draws only; open draws use the version active at open" ], "risk": "Risk center", "riskItems": [ "Platform management → Risk center", "View number occupancy, payout pools, high-risk numbers", "Occupancy ledger defaults to ticket aggregation; only numbers with occupancy or high risk are shown", "Combo play breakdown is on ticket detail, not expanded in risk list" ], "jackpot": "Jackpot", "jackpotItems": [ "Platform management → Jackpot", "Maintain jackpot amount and payout rules (when jackpot play is enabled)" ], "note": "If your site operator account does not see these menus, that is normal permission isolation; contact our team or your super admin to adjust play settings." }, "reports": { "title": "Reports", "description": "View P&L and risk by draw, player, play type, and more; async export supported. Data scope narrows automatically by account role.", "entry": "Entry & filters", "entryItems": [ "Funds & reports → Reports", "Choose report type first, then set time, site, agent, draw, and other filters", "Bound agent reports include own agent subtree only" ], "types": "Main reports", "reportRows": [ ["Per-draw P&L", "Stake, payout, and profit summary for one draw"], ["Daily summary", "Aggregated by business date"], ["Player win/loss", "Ranking and detail by player"], ["Play dimension", "Stake and payout structure by play type"], ["Hot number risk", "Bet concentration and payout pool occupancy by number"], ["Rebate commission", "Rebate and commission accrual"], ["Audit log", "Trace key admin actions (super admin)"] ], "export": "Export", "exportItems": [ "Report export permission required for async export; download when complete", "Ticket list and wallet ledger also support Excel export", "Export jobs run asynchronously; narrow time range for large data sets" ], "scope": "Data scope", "scopeItems": [ "Super admin: all sites or filter by site", "Site admin: own site", "Bound agent: own agent subtree" ] }, "fundOperations": { "title": "Fund operations guide", "description": "Explains how funds move during betting, draw settlement, and payment in wallet mode vs credit mode. Confirm the player's funding mode first, then check the matching ledger.", "twoSystems": "Two parallel systems (do not confuse them)", "twoSystemsItems": [ "Per-draw settlement (Daily operations → Settlement): calculates win/loss for the draw; wallet mode pays out here, credit mode records release/period ledger here", "Credit-line period settlement (Agent organization → Settlement center): credit mode only; aggregates share by period and generates bills for agent/player payments", "Main-site wallet transfers (Funds & reports → Wallet): wallet mode only; transfer in/out between main site and lottery" ], "creditModel": "Credit mode: credit limit model", "creditModelItems": [ "Credit limit (credit_limit): ceiling set by agent or ops for the player", "Used credit (used_credit): total of bet holds plus settled losses", "Available credit = credit limit − used credit − frozen amount; betting blocked when available is insufficient", "Balance shown in player list/detail for credit mode is credit-related, not cash balance" ], "creditLifecycle": "Credit mode: fund lifecycle of one ticket", "creditLifecycleSteps": [ "① Bet placed: credit hold (ledger shows Bet hold). This locks available credit, not final deduction", "② Pending draw: hold remains; ledger shows hold only, no duplicate settlement charge", "③ After draw settlement: system releases the hold, then posts Draw settlement — loss increases used credit; win releases credit (available rises), no instant cash", "④ During period: win/loss also written to share ledger for period close and bills", "⑤ After period close: confirm bills and record payments in Settlement center; player may see Period settlement confirm or Settlement payment entry ledger types", "⑥ Players with overdue unpaid bills: betting blocked until period payment is completed" ], "creditLedger": "Credit mode: credit ledger type reference", "creditLedgerRows": [ ["Bet hold", "Player bet succeeds", "Available credit down; used credit up", "Settlement center → Credit ledger; player detail → Credit ledger"], ["Draw settlement", "Draw payout settlement complete", "Release hold and adjust used credit by win/loss; win = release", "Same; pending draw shows hold only; one settlement line per ticket after draw"], ["Period settlement confirm", "Period bill payment recorded (some cases)", "Used credit decreases", "Settlement center → Credit ledger"], ["Settlement payment entry", "Period payment bookkeeping", "Bookkeeping only; available credit unchanged", "Settlement center → Credit ledger"], ["Top-up / reversal / bad debt", "Site finance adjustment", "Adjust bill and ledger per adjustment type", "Settlement center → Payments & adjustments"] ], "creditBill": "Credit mode: what bills and payments mean", "creditBillItems": [ "Player bill after close = net receivable/payable for that player's win/loss in the period", "Agent bill = share receivable/payable at each agent level", "Positive net: bill party pays payee; negative net: payee pays bill party (admin shows payer/payee)", "Confirm bill: both sides agree on amount; record payment: log actual funds, multiple entries until settled", "Bad debt write-off: confirm unrecoverable debt; site finance only (not bound to agent)" ], "creditAdjust": "Credit mode: manual credit limit adjustment", "creditAdjustSteps": [ "Player detail → Adjust credit (requires player/agent management write permission)", "Change credit limit ceiling; does not erase historical used credit", "If new limit is below current used credit, player cannot bet until used credit drops", "Period payments, bad debt, top-ups belong in Settlement center; do not duplicate manual entries on player detail" ], "walletLifecycle": "Wallet mode: fund lifecycle", "walletLifecycleSteps": [ "① Player enters lottery H5 from your main site (SSO + JWT)", "② Transfer in: player initiates in H5 → lottery calls your wallet debit → in-lottery balance up (transfer order + wallet ledger)", "③ Bet: deducted from in-lottery balance (wallet ledger type Bet debit)", "④ Draw settlement: win amount to in-lottery balance (Payout credit); credited after Daily operations → Settlement batch review/payout", "⑤ Transfer out (optional): lottery calls your wallet credit → in-lottery balance down", "⑥ Exception: long-pending transfer orders handled manually in Reconciliation" ], "walletTxn": "Wallet mode: wallet ledger types", "walletTxnRows": [ ["Main-site transfer in", "Player transfers from main site to lottery", "In-lottery balance increases"], ["Main-site transfer out", "Player transfers from lottery to main site", "In-lottery balance decreases"], ["Bet debit", "Bet succeeds", "Balance decreases"], ["Payout credit", "Draw payout settlement complete", "Balance increases (when won)"], ["Bet reversal / transfer-out failure refund", "Ticket cancelled or transfer-out rollback", "Balance restored"] ], "walletReconcile": "Wallet mode: transfer order exceptions", "walletReconcileRows": [ ["Pending reconciliation", "Main site and lottery status mismatch or timeout", "Verify your gateway logs first, then choose action below"], ["Complete missing credit", "Main site debited but lottery not credited (transfer in)", "Post transfer in on lottery side and mark success"], ["Reversal", "Need to undo lottery-side entry", "Reverse lottery wallet balance"], ["Mark closed", "Resolved outside the system", "Change order status only, no balance move; not for pending transfer-out reconciliation"] ], "compare": "Same stage: wallet mode vs credit mode", "compareRows": [ ["Entry", "Main-site SSO; first JWT auto-creates profile", "Lottery account or agent admin creates profile"], ["Must have funds to bet", "In-lottery balance ≥ stake", "Available credit ≥ stake"], ["When betting", "Balance deducted immediately", "Credit hold (freeze), not final loss"], ["After win", "Payout to lottery balance", "Credit release; cash settled in period bills"], ["Daily reconciliation", "Wallet ledger + transfer orders", "Settlement center credit ledger + bills"], ["Agent payments", "Not applicable", "Settlement center period bills"] ], "note": "Credit-mode player UI uses release and period payment wording, not wallet-mode payout wording. The two modes cannot share one account." }, "manualReview": { "title": "Manual review & payouts", "description": "Covers draw result review, cooling period, per-draw payout settlement batches, and related system switches. This is separate from Settlement center credit-line periods.", "distinction": "Difference from credit-line period settlement", "distinctionItems": [ "This guide: per-draw payout settlement batches (Daily operations → Settlement) — wallet mode pays out, credit mode posts draw ledger; runs every draw", "Settlement center: credit-line period open/close/bill payments — aggregated by week/month etc.; not one-to-one with each draw", "Approve and publish on draw detail: whether draw numbers take effect; settlement batch: how funds move after numbers are effective" ], "drawReview": "Manual draw result review", "drawReviewItems": [ "When System settings → Require manual review of draw results is on: after RNG generates numbers the draw is Pending review until someone clicks Approve and publish", "When off: RNG results auto-publish (cooling period may still apply, see below)", "Manual number entry: after submit, pending review or auto-publish depending on review switch", "Entry: Daily operations → Draw list → draw detail → draw batch" ], "drawPublishSteps": "Publish draw results (step by step)", "drawPublishStepItems": [ "Open draw detail; confirm status is Pending draw or Pending review", "If no result: click Generate draw result or enter numbers", "Verify numbers match draw and play rules", "Click Approve and publish", "After publish, enters cooling period or Settling directly (see system settings)" ], "cooldown": "Cooling period", "cooldownItems": [ "System settings → Cooling period (minutes): wait after publish before payout settlement runs", "During cooling, super admin may Redraw: rollback payouts/releases → regenerate → review and publish again", "Set to 0 minutes: settlement runs immediately after publish, no cooling window", "Cooling is the last window to verify numbers; unrelated to credit-line periods" ], "settlementBatch": "Per-draw payout settlement batch", "settlementBatchItems": [ "After each draw is published, the system auto (or manually) creates a settlement batch summarizing all ticket win/loss for that draw", "Entry: Daily operations → Settlement → batch list; also from draw detail", "Batch status: In progress → Pending review → Reviewed → Paid/Complete (automation may skip steps)", "Wallet mode: Execute payout writes win amounts to player lottery balance", "Credit mode: Execute payout writes draw settlement and share ledger; no cash balance increase" ], "batchStatusSection": "Settlement batch statuses", "batchStatusRows": [ ["In progress", "Calculating win/loss for this draw", "Wait for completion"], ["Pending review", "Amounts calculated; awaiting finance/ops confirmation", "Approve / Reject"], ["Reviewed", "Amounts confirmed; awaiting payout", "Execute payout"], ["Paid", "Payout written to player account or credit ledger", "View detail, export"], ["Rejected", "Review failed; tickets return to pending settlement", "Fix and rerun settlement"], ["Failed", "Settlement process error", "Contact technical support"] ], "batchWalkthrough": "Manual review and payout (step by step)", "batchWalkthroughSteps": [ "Daily operations → Settlement → filter Pending review batches", "Open batch detail; verify draw, ticket count, total stake, total payout, platform P&L", "If consistent with draw result, click Approve; if not, Reject with notes", "On Reviewed batch, click Execute payout — wallet balance credited, credit draw ledger created", "After payout there is no one-click undo; wrong numbers require redraw during cooling on the draw" ], "settings": "Related system switches (platform super admin)", "settingRows": [ ["Require manual review of draw results", "Platform management → System settings → Draw rhythm & review", "RNG results need manual publish", "RNG results auto-publish"], ["Cooling period duration", "Same as above", "Wait N minutes after publish before settlement", "Settlement immediately after publish"], ["Auto-run settlement", "System settings → Settlement automation", "Settlement batch runs automatically when due", "Settlement must be triggered manually"], ["Auto-approve settlement batch", "Same as above", "Batch auto-moves to Reviewed after settlement", "Manual approve required"], ["Auto payout credit", "Same as above", "Execute payout automatically after review", "Manual Execute payout required"] ], "settingsNote": "Common production setup: manual draw review + cooling period + auto settlement run + manual batch review + auto or manual payout. Follow your organization's risk policy.", "rejectNote": "Rejecting a settlement batch returns linked tickets to pending settlement; it does not rollback published draw numbers. If numbers are wrong, use draw redraw.", "note": "Before closing a credit-line period, ensure all related draws in the period are Settled and payout batches complete; otherwise close will warn about unsettled tickets." }, "faq": { "title": "FAQ", "description": "Typical admin issues and how to handle them.", "faqRows": [ ["Credit ledger confusing", "See Fund operations guide; pending draw shows Bet hold only; after draw one Draw settlement per ticket — no double charge"], ["Settlement batch vs Settlement center", "See Manual review & payouts; former is per-draw payout, latter is credit-line period bills"], ["Wrong draw result", "Draw detail → super admin redraw during cooling → rollback → review and publish again → settle again"], ["Player hall accepts bets but admin shows closed", "List status is DB snapshot; player hall is authoritative; check close_time and timezone"], ["Transfer not received (wallet mode)", "Check wallet ledger status; handle pending in Reconciliation; verify your gateway logs"], ["Integration site connectivity failed", "Confirm your wallet gateway is public HTTPS and implements balance/debit/credit APIs"], ["Close period button unavailable", "Confirm no other in-progress period, all draws for period are settled, account is not bound to an agent"], ["No record payment button", "Need settlement write permission; bill must be confirmed/partial paid/overdue with unpaid_amount > 0; must be payee"], ["Agent cannot see wallet menus", "Bound agent accounts hide wallet/reconciliation; use site finance or super admin account"], ["Cannot choose agent when creating player", "Site admin must choose owning agent; create downstream agent in Agent list first"], ["Insufficient permission", "Contact your super admin or our support to assign menus in Role management"] ], "integration": "Technical integration", "integrationItems": [ "SSO, iframe, wallet gateway: see API Integration Docs", "Error codes 8001–8005: API Integration Docs → Troubleshooting" ], "integrationLinkLabel": "View API Integration Docs" } } }