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:openBankqb-banking:server:openATMqb-banking:server:withdrawqb-banking:server:depositqb-banking:server:internalTransferqb-banking:server:externalTransferqb-banking:server:wireTransferqb-banking:server:orderCardqb-banking:server:openAccountqb-banking:server:renameAccountqb-banking:server:deleteAccountqb-banking:server:addUserqb-banking:server:removeUserqb-banking:server:getTierInfoqb-banking:server:upgradeTierqb-banking:server:downgradeTierqb-banking:server:getPlayerTierqb-banking:server:getFeePreviewqb-banking:server:getMultipleFeePreviewqb-banking:server:checkDailyLimitsqb-banking:server:getBalanceHistory
Cards
qb-banking:server:getInventoryCardsqb-banking:server:validateCardAndOpenATMqb-banking:server:getCardableAccountsqb-banking:server:orderCardForAccountqb-banking:server:selectCardForATMqb-banking:server:verifyCardPINqb-banking:server:getPlayerCardsqb-banking:server:freezeCardqb-banking:server:unfreezeCardqb-banking:server:changeCardPINqb-banking:server:cancelCardqb-banking:server:orderReplacementCard
Savings and recurring payments
qb-banking:server:createSavingsAccountqb-banking:server:getSavingsAccountsqb-banking:server:depositToSavingsqb-banking:server:withdrawFromSavingsqb-banking:server:closeSavingsAccountqb-banking:server:createSavingsGoalqb-banking:server:getSavingsGoalsqb-banking:server:contributeToGoalqb-banking:server:withdrawFromGoalqb-banking:server:deleteSavingsGoalqb-banking:server:createRecurringPaymentqb-banking:server:getRecurringPaymentsqb-banking:server:cancelRecurringPaymentqb-banking:server:toggleRecurringPaymentqb-banking:server:updateRecurringPaymentqb-banking:server:getPendingTransfersqb-banking:server:cancelPendingTransferqb-banking:server:getTransferSettingsqb-banking:server:getTransferDelayInfo
Loans, credit, investments, and security
qb-banking:server:getLoansqb-banking:server:getLoanProductsqb-banking:server:checkLoanEligibilityqb-banking:server:getLoanTermsqb-banking:server:applyForLoanqb-banking:server:payLoanqb-banking:server:payOffLoanqb-banking:server:getLoanPaymentsqb-banking:server:getLoanPayoffAmountqb-banking:server:getCreditBreakdownqb-banking:server:getCreditHistoryqb-banking:server:recalculateCreditScoreqb-banking:server:getInvestmentsqb-banking:server:createInvestmentqb-banking:server:withdrawInvestmentqb-banking:server:getCDsqb-banking:server:purchaseCDqb-banking:server:redeemCDqb-banking:server:earlyWithdrawCDqb-banking:server:getMarketStateqb-banking:server:getMarketHistoryqb-banking:server:enable2FAqb-banking:server:disable2FAqb-banking:server:verify2FAqb-banking:server:get2FAStatusqb-banking:server:getBackupCodesqb-banking:server:regenerateBackupCodesqb-banking:server:getSecuritySettingsqb-banking:server:getSecurityLogqb-banking:server:getAlertPreferencesqb-banking:server:setAlertPreferencesqb-banking:server:selfFreezeAccountqb-banking:server:selfUnfreezeAccountqb-banking:server:getFreezeStatus
Business
qb-banking:server:recordExpenseqb-banking:server:getExpensesqb-banking:server:getExpenseSummaryqb-banking:server:createInvoiceqb-banking:server:payInvoiceqb-banking:server:cancelInvoiceqb-banking:server:getInvoicesqb-banking:server:getIncomeStatementqb-banking:server:getBalanceReportqb-banking:server:getCashFlowReportqb-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.