Exports And Integration Guide

Reference for the current oxide-banking integration surface.

Reference for the current oxide-banking integration surface.

Resource Names

Primary resource name (use this for all new integrations):

exports['oxide-banking']

Legacy compatibility surface (for older QB-era resources only):

exports['qb-banking']  -- works because the manifest declares provides { 'qb-banking' }

oxide-banking supports QBCore, QBX, and ESX through o-link. All exports below work identically on every framework.

Primary Exports

Core state and account data

  • IsReady()
  • IsDataLoaded()
  • GetPlayerBankingData(citizenid)
  • GetPlayerAccounts(citizenid)
  • GetPlayerStatements(citizenid, limit)
  • GetAccountData(accountName)
  • CanAfford(citizenid, amount, accountName)
  • FreezeAccount(citizenid, accountName, reason, frozenBy, frozenType, duration)
  • UnfreezeAccount(citizenid, accountName)
  • LogAuditEvent(...)
  • GetAuditLog(...)

Validation and utility

  • CheckRateLimit(citizenid, action)
  • CreateSuccessResponse(data)
  • CreateErrorResponse(message, code)
  • ValidatePlayerForCallback(source, action)
  • ValidateTransactionAmount(amount, maxOverride)

Account tiers and savings

  • CheckTierRequirements(citizenid, tierName)
  • UpgradeAccountTier(citizenid, newTier)
  • DowngradeAccountTier(citizenid, newTier)
  • GetAvailableTiers()
  • GetTierLevel(tierName)
  • CreateSavingsAccount(...)
  • GetSavingsAccounts(citizenid)
  • DepositToSavings(...)
  • WithdrawFromSavings(...)
  • CloseSavingsAccount(...)
  • CreateSavingsGoal(...)
  • GetSavingsGoals(citizenid)
  • ContributeToGoal(...)
  • WithdrawFromGoal(...)
  • DeleteSavingsGoal(...)

Cards

  • GetPlayerInventoryCards(source)
  • ValidateCardAccess(...)
  • ValidateCardPIN(...)
  • IssueCardForAccount(...)
  • RevokeCard(...)
  • RevokeCardsForAccount(accountName, reason)
  • GetCardsForAccount(accountName)
  • GetAccountCardCount(accountName)
  • CanIssueCardForAccount(accountName, source)
  • HasAccountAccess(citizenid, accountName)
  • GetAccessibleAccounts(citizenid)
  • GetPlayerCards(source)
  • FreezeCard(source, cardNumber)
  • UnfreezeCard(source, cardNumber)
  • ChangeCardPIN(source, cardNumber, oldPin, newPin)
  • CancelCard(source, cardNumber)
  • OrderReplacementCard(source, oldCardNumber, newPin)
  • MaskCardNumber(cardNumber)
  • FormatCardNumber(cardNumber)
  • UpdateCardDailyUsage(...)
  • AreCardsLoaded()
  • ResetCardsCache()

Fees, transfers, and recurring payments

  • CalculateTransactionFee(...)
  • ApplyTransactionFee(...)
  • IsFeeWaived(...)
  • GetFeePreview(...)
  • CalculateATMFee(...)
  • CalculateWireTransferFee(...)
  • CheckDailyLimit(...)
  • ProcessWireTransfer(...)
  • ProcessPendingTransfers()
  • CreatePendingTransfer(...)
  • GetPendingTransfers(citizenid)
  • CancelPendingTransfer(citizenid, transferId)
  • GetExpeditedTransferFee(...)
  • IsExpeditedTransferEnabled()

Loans and credit

  • ApplyForLoan(...)
  • CheckLoanEligibility(...)
  • CalculateLoanTerms(...)
  • GetPlayerLoans(citizenid)
  • GetLoanProducts()
  • MakeLoanPayment(...)
  • PayOffLoan(...)
  • ProcessScheduledLoanPayments()
  • ProcessPendingLoans()
  • GetLoanPaymentHistory(...)
  • CalculatePayoffAmount(...)
  • StartCollections(...)
  • ProcessWageGarnishment(...)
  • RegisterVehicleLoan(...)
  • RecordVehicleLoanPayment(...)
  • CloseVehicleLoan(...)
  • GetVehicleLoan(...)
  • RecalculateCreditScore(citizenid)
  • GetCreditScoreBreakdown(citizenid)
  • GetCreditHistory(citizenid, limit)
  • RecordCreditEvent(...)
  • DecayHardInquiries()
  • GetCreditScore(citizenid)
  • UpdateCreditScore(citizenid, change, reason)
  • GetPlayerTier(citizenid)
  • UpgradePlayerTier(citizenid, newTier)

Interest and investments

  • CalculateInterest(...)
  • GetEffectiveInterestRate(...)
  • ProcessLoginInterest(source)
  • ProcessMonthlyFees(source)
  • ProcessDailySavingsInterest()
  • CreateInvestment(...)
  • AtomicCreateInvestment(...)
  • GetPlayerInvestments(citizenid)
  • WithdrawInvestment(...)
  • AtomicWithdrawInvestment(...)
  • PurchaseCD(...)
  • GetPlayerCDs(citizenid)
  • RedeemCD(...)
  • EarlyWithdrawCD(...)
  • UpdateMarketConditions()
  • GetMarketState()
  • GetMarketHistory(days)
  • RecordMarketHistory(...)
  • ProcessCDMaturities()
  • ProcessDividends()

Security and alerts

  • TrackPlayerLogin(source, citizenid)
  • Enable2FA(citizenid, securityPin)
  • Disable2FA(citizenid, verificationCode)
  • Verify2FA(citizenid, code)
  • Requires2FA(citizenid, amount)
  • Get2FAStatus(citizenid)
  • GenerateBackupCodes(citizenid)
  • CheckForFraud(...)
  • FlagSuspiciousActivity(...)
  • SendTransactionAlert(citizenid, type, amount, details)
  • GetAlertPreferences(citizenid)
  • SetAlertPreferences(citizenid, prefs)
  • SelfFreezeAccount(citizenid, duration, reason)
  • SelfUnfreezeAccount(citizenid)
  • GetFreezeStatus(citizenid)
  • IsAccountLocked(citizenid)
  • RecordFailedAttempt(...)
  • ClearFailedAttempts(...)
  • LogSecurityEvent(...)
  • GetSecurityLog(citizenid, limit)
  • CleanupPlayerSecurityData(citizenid)

Business and reporting

  • CreateInvoice(...)
  • PayInvoice(...)
  • CancelInvoice(...)
  • GetInvoices(...)
  • ProcessOverdueInvoices()
  • RecordExpense(...)
  • GetExpenses(...)
  • GetExpenseSummary(...)
  • GenerateIncomeStatement(...)
  • GenerateBalanceReport(...)
  • GenerateCashFlowReport(...)

Scheduler

  • GetDayCounter()
  • GetInGameTime()
  • TriggerInterestPayout()
  • TriggerLoanPayments()
  • TriggerRecurringPayments()
  • TriggerInquiryDecay()
  • TriggerAccountAgeIncrement()
  • TriggerOverdueInvoices()
  • TriggerMarketUpdate()
  • TriggerDividends()

Legacy QB-Banking Compatibility Exports

These exist only for older resources that were built against qb-banking. New integrations should use the Primary Exports above regardless of framework:

  • CreatePlayerAccount(playerId, accountName, accountBalance, accountUsers)
  • CreateJobAccount(accountName, accountBalance)
  • CreateGangAccount(accountName, accountBalance)
  • CreateBankStatement(playerId, account, amount, reason, statementType, accountType)
  • AddMoney(accountName, amount, reason)
  • RemoveMoney(accountName, amount, reason)
  • GetAccount(accountName)
  • GetAccountBalance(accountName)
  • AddGangMoney(accountName, amount, reason)
  • RemoveGangMoney(accountName, amount, reason)
  • GetGangAccount(accountName)
  • GetGangAccountBalance(accountName)

Callback Surface

Legacy callback names still registered by the resource include:

Bank, ATM, transfers, and tiers

  • qb-banking:server:openBank
  • qb-banking:server:openATM
  • qb-banking:server:withdraw
  • qb-banking:server:deposit
  • qb-banking:server:internalTransfer
  • qb-banking:server:externalTransfer
  • qb-banking:server:wireTransfer
  • qb-banking:server:orderCard
  • qb-banking:server:openAccount
  • qb-banking:server:renameAccount
  • qb-banking:server:deleteAccount
  • qb-banking:server:addUser
  • qb-banking:server:removeUser
  • qb-banking:server:getTierInfo
  • qb-banking:server:upgradeTier
  • qb-banking:server:downgradeTier
  • qb-banking:server:getPlayerTier
  • qb-banking:server:getFeePreview
  • qb-banking:server:getMultipleFeePreview
  • qb-banking:server:checkDailyLimits
  • qb-banking:server:getBalanceHistory

Cards

  • qb-banking:server:getInventoryCards
  • qb-banking:server:validateCardAndOpenATM
  • qb-banking:server:getCardableAccounts
  • qb-banking:server:orderCardForAccount
  • qb-banking:server:selectCardForATM
  • qb-banking:server:verifyCardPIN
  • qb-banking:server:getPlayerCards
  • qb-banking:server:freezeCard
  • qb-banking:server:unfreezeCard
  • qb-banking:server:changeCardPIN
  • qb-banking:server:cancelCard
  • qb-banking:server:orderReplacementCard

Savings and recurring payments

  • qb-banking:server:createSavingsAccount
  • qb-banking:server:getSavingsAccounts
  • qb-banking:server:depositToSavings
  • qb-banking:server:withdrawFromSavings
  • qb-banking:server:closeSavingsAccount
  • qb-banking:server:createSavingsGoal
  • qb-banking:server:getSavingsGoals
  • qb-banking:server:contributeToGoal
  • qb-banking:server:withdrawFromGoal
  • qb-banking:server:deleteSavingsGoal
  • qb-banking:server:createRecurringPayment
  • qb-banking:server:getRecurringPayments
  • qb-banking:server:cancelRecurringPayment
  • qb-banking:server:toggleRecurringPayment
  • qb-banking:server:updateRecurringPayment
  • qb-banking:server:getPendingTransfers
  • qb-banking:server:cancelPendingTransfer
  • qb-banking:server:getTransferSettings
  • qb-banking:server:getTransferDelayInfo

Loans, credit, investments, and security

  • qb-banking:server:getLoans
  • qb-banking:server:getLoanProducts
  • qb-banking:server:checkLoanEligibility
  • qb-banking:server:getLoanTerms
  • qb-banking:server:applyForLoan
  • qb-banking:server:payLoan
  • qb-banking:server:payOffLoan
  • qb-banking:server:getLoanPayments
  • qb-banking:server:getLoanPayoffAmount
  • qb-banking:server:getCreditBreakdown
  • qb-banking:server:getCreditHistory
  • qb-banking:server:recalculateCreditScore
  • qb-banking:server:getInvestments
  • qb-banking:server:createInvestment
  • qb-banking:server:withdrawInvestment
  • qb-banking:server:getCDs
  • qb-banking:server:purchaseCD
  • qb-banking:server:redeemCD
  • qb-banking:server:earlyWithdrawCD
  • qb-banking:server:getMarketState
  • qb-banking:server:getMarketHistory
  • qb-banking:server:enable2FA
  • qb-banking:server:disable2FA
  • qb-banking:server:verify2FA
  • qb-banking:server:get2FAStatus
  • qb-banking:server:getBackupCodes
  • qb-banking:server:regenerateBackupCodes
  • qb-banking:server:getSecuritySettings
  • qb-banking:server:getSecurityLog
  • qb-banking:server:getAlertPreferences
  • qb-banking:server:setAlertPreferences
  • qb-banking:server:selfFreezeAccount
  • qb-banking:server:selfUnfreezeAccount
  • qb-banking:server:getFreezeStatus

Business

  • qb-banking:server:recordExpense
  • qb-banking:server:getExpenses
  • qb-banking:server:getExpenseSummary
  • qb-banking:server:createInvoice
  • qb-banking:server:payInvoice
  • qb-banking:server:cancelInvoice
  • qb-banking:server:getInvoices
  • qb-banking:server:getIncomeStatement
  • qb-banking:server:getBalanceReport
  • qb-banking:server:getCashFlowReport
  • qb-banking:server:getExpenseCategories

Recommendation

Use exports['oxide-banking'] for new integration work.

Reserve exports['qb-banking'] and qb-banking:server:* callback names for legacy resources that still need them.