Every payment method your market expects. One ledger behind all of them.
Deposits and withdrawals in the methods players already trust in each country: cards, instant bank transfers and open banking, e-wallets and vouchers, mobile money, local schemes such as PIX or Interac, and 150+ cryptocurrencies and stablecoins. Every movement posts to one double-entry ledger with balance rules enforced by the database, so a retried callback, a crashed checkout or a late settlement can only land in one place: the books.
- Double-entry
- single ledger with balance rules enforced by the database
- 18
- decimal places for BTC, ETH and USDT wallets
- Verified
- callbacks: signature, amount and brand checked before money moves
- USD · EUR · GBP
- fiat wallet types today, more on request
- Retry-safe
- grants, wins, rollbacks, purchases, payouts and refunds
Accept and pay out the way each market does.
Payments are configured per brand and per market from one cashier. The methods a market expects are connected through our payment partners and switched on for the brands that need them, so a Brazilian brand pays out over PIX, a Kenyan brand over mobile money and a crypto-ready brand in stablecoins, without any of them touching the others.
Cards and bank rails
Visa, Mastercard and local debit schemes, instant bank transfers and open banking, ACH and push-to-card payouts where the market uses them, with chargeback handling built into the flow.
150+ cryptocurrencies and stablecoins
From BTC, ETH, USDT and USDC to the long tail, with full-precision wallets on the same ledger as fiat, instant settlement and the same limits and payout queue as every other method.
Local methods in every market
PIX and Boleto, Interac, PayID, iDEAL, Trustly, MB Way, Bizum, M-Pesa and MTN MoMo, prepaid vouchers such as Paysafecard and AstroPay: whatever players already use where you launch, connected for that market.
Wallets and one-tap checkout
E-wallets such as Skrill, Neteller and MuchBetter, Apple Pay and Google Pay where the market supports them, and a hosted cashier that keeps card data off your servers.
Multi-currency by design
Fiat wallet types per market and per brand, crypto wallets alongside them, and every balance derived from balanced postings rather than a cached number.
Payouts with context
Every withdrawal request arrives with lifetime deposits and payouts, GGR and a payout-to-deposit risk level, so payments operations approve fast payouts with the full picture and hold only the ones that deserve it.
Balanced postings, exact cents, one outcome per event.
The ledger is not a reporting layer bolted onto wallets. It is the wallet. Balances are derived from balanced postings, amounts are checked the moment they arrive, and every path that moves value carries an retry-safe key.
Double-entry core
- One double-entry ledger with balance rules enforced by the database; every wallet movement is a balanced posting
- Shared money helpers for round, epsilon-corrected floor and integer cents, so no code path does its own arithmetic
- Provider amounts checked and rounded correctly before they touch a balance
- Wallet types for USD, EUR and GBP, BTC, ETH and USDT at DECIMAL(30,18), and GC and SC
- Locked versus redeemable balance per wallet, with automatic restores for bonus funds
- Deterministic lock ordering on every multi-wallet transaction
Never pays twice
- Grants, wins, rollbacks, purchases, payouts and refunds are retry-safe; a retry can never double-pay
- Payer binding on card and bank settlements: the paying identity must match the account being credited
- Crash-stranded purchases self-heal through webhook redelivery, an hourly scan and leader-gated auto-resume
- Failed payouts refund the wallet in full
- Late webhooks cannot resurrect a withdrawal that already finished
- Server-side price verification at checkout and again on the webhook
Verified payment callbacks
- Signature, amount and brand verified on every payment callback
- Missing webhook secrets stop the process at boot rather than accepting unsigned traffic
- Sportsbook callbacks sit behind an IP allow-list
- Stuck Provider Txns screen for anything that did not settle
- Payment Management and Wallet Types configured at network level, with per-brand payment settings
Redeem and withdraw queue
- Statuses Pending → Approved → Processing → Completed, Failed, Rejected or Cancelled
- Each redeem or withdrawal request enriched with lifetime deposits and payouts, GGR and a payout-to-deposit risk level
- withdrawalManage permission required to act, enforced server-side
- Deposit and withdrawal flows show fee and net preview before the player confirms
- Surgical action blocks on deposits, bets or withdrawals without suspending the account
- Wallet adjustments require a reason and land in the Activity Log
A purchase either completes or it never happened.
Checkouts break at the worst moments: the card settled, the browser closed, the webhook arrived twice. The ledger treats each of those as an expected event. Retry-safe keys make retries harmless, stranded purchases are re-driven by redelivery and an hourly scan, and a leader-gated resume finishes what a dead process started.
- Webhook redelivery is retry-safe, so a double delivery credits once
- The hourly scan picks up purchases with a settled payment and no credit
- Leader gating ensures exactly one node runs the auto-resume
- Every heal writes a balanced posting that shows up in the Transactions report
Balanced postings: every credit has a matching debit, including the repairs.
Check, verify, record, reconcile.
- Step 1Check on arrival
Provider amounts become integer cents, or full-precision units for crypto wallets, the moment they arrive. Nothing downstream sees a float.
- Step 2Verify the callback
Signature, amount and brand are checked; payer binding is enforced on card and bank settlements. Unsigned or mismatched traffic is rejected.
- Step 3Post the balanced entry
The movement is written as a double-entry posting under an retry-safe key, in deterministic lock order across the wallets involved.
- Step 4Reconcile and report
Redeem queue, Transactions report and the dashboard liability figure (free = balance − locked) read the same rows. There are no shadow balances to tie out.
Finance, payments operations and engineering read the same rows.
Books that close without a spreadsheet reconciliation.
- Balanced double-entry postings for every movement
- Liability shown as balance minus locked, per wallet
- Transactions and Advanced Report exports in CSV and XLSX
- Bonus locked liability and awarded-by-wallet analytics on the same data
A payout queue that tells you who you are paying.
- Lifetime deposits, payouts and GGR on each request
- Payout-to-deposit risk level before approval
- withdrawalManage permission on every action
- Stuck Provider Txns surfaced in the console
Money paths that survive retries, crashes and hostile input.
- Grants, wins, rollbacks, purchases, payouts and refunds that are safe to retry
- Verified payment callbacks and boot refusal on missing secrets
- Shared exact money handling instead of ad hoc float math
- Pre-open money audits before any brand takes traffic
What finance teams ask before they trust a ledger.
Which payment methods can players use?
How do local payment methods get added for a new market?
How does crypto work?
Are daily or weekly withdrawal totals enforced?
What happens when a webhook arrives twice, or late?
Can support adjust a wallet?
Systems that sit on the ledger.
Risk, KYC and compliance
Risk scoring, duplicate accounts, in-house fraud scoring, ID verification and a case workflow around every redeem.
اعرفوا المزيدAnalytics and reports
Transactions, Advanced Report exports and dashboard liability from the same rows.
اعرفوا المزيدArchitecture and security
How the platform is built and secured, from hardened infrastructure to pre-open money audits.
اعرفوا المزيد