Skip to main content

Understanding Your Balance

This guide explains the different types of balances on BettorEdge and how to check them via the API.

Prerequisites

Balance Types

Your BettorEdge account has three different balance types, each serving a specific purpose:

1. Balance (USD Balance - Real Money)

Type: USD (Real Money)

Description: Your real USD balance available for trading on BettorEdge Markets. This is actual cash that you can:

  • Use to place orders on real money markets (market_type: "FOR_MONEY")
  • Withdraw to your bank account
  • Receive from winning positions
  • Transfer in and out freely

Use Case: All real money trading on BettorEdge Markets via the API uses your USD balance. This is the only balance type that can be withdrawn.

2. Promo Balance (Promotional Funds)

Type: Promotional/Bonus USD

Description: Promotional or bonus funds provided by BettorEdge through promotions, bonuses, or special offers. This balance:

  • Can be used to place orders on real markets
  • May have specific terms and conditions
  • Cannot be withdrawn directly (must be used for trading)
  • Winnings from promo balance typically convert to real USD balance

Use Case: Take advantage of promotions and bonuses to increase your trading capital.

3. Free Market Balance (Edge Coins - Practice Only)

Type: Edge Coins (Play Money)

Description: Edge Coins are a free virtual currency for practice only. This balance:

  • Is NOT real money and has no monetary value
  • Used for pick tracking and free-to-play games in the app
  • Cannot be withdrawn or converted to real money
  • Cannot be used for real money trading
  • Available only in the BettorEdge app (not via API)

Important: The BettorEdge API does NOT support Edge Coin orders. Edge Coin Mode is only available in the BettorEdge mobile and web applications for practice purposes.

Use Case: Practice trading strategies, track picks, or compete in free-to-play contests without risking real money. This is purely for practice and has no real monetary value.

Getting Your Balance

Make an authenticated request to retrieve your current balance:

curl -X GET https://proxy.bettoredge.com/players/v1/players/player/balance/me \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Response Structure

{
"message": "Success",
"player_balance": {
"player_balance_id": "balance_abc123",
"player_id": "player_xyz789",
"balance": 1250.50,
"promo_balance": 50.00,
"free_market_balance": 10000.00,
"create_datetime": "2024-01-01T00:00:00Z",
"last_udpate_datetime": "2024-01-15T10:30:00Z"
}
}

Response Fields

FieldTypeDescription
player_balance_idstringUnique identifier for the balance record
player_idstringYour player ID
balancenumberReal USD balance (withdrawable, for real money trading)
promo_balancenumberPromotional balance in USD (not withdrawable)
free_market_balancenumberEdge Coins balance (practice only, NOT real money, cannot withdraw or use for FOR_MONEY trading)
create_datetimetimestampWhen the balance record was created
last_udpate_datetimetimestampLast time balance was updated

Understanding Available Funds

When placing orders, the API uses your real money balance and promo balance:

Order Placement Priority

  1. Real Balance First: Your USD balance is used before promo balance
  2. Promo Balance Second: If USD balance is insufficient, promo balance is used
  3. EdgeCoins Not Supported: EdgeCoin balance cannot be used via API

Calculating Available for Trading

To calculate your total available funds for API trading:

const data = await response.json();
const { balance, promo_balance } = data.player_balance;

// Total available for API orders (USD + Promo)
const totalAvailable = balance + promo_balance;

console.log(`USD Balance: $${balance.toFixed(2)}`);
console.log(`Promo Balance: $${promo_balance.toFixed(2)}`);
console.log(`Total Available: $${totalAvailable.toFixed(2)}`);
console.log(`EdgeCoins (app only): ${data.player_balance.free_market_balance}`);

Common Scenarios

Scenario 1: Sufficient USD Balance

Balance State:

  • USD Balance: $500
  • Promo Balance: $100

Place Order:

  • Order Amount: $200

Result:

  • Order uses $200 from USD balance
  • Remaining USD: $300
  • Promo balance unchanged: $100

Scenario 2: Using Promo Balance

Balance State:

  • USD Balance: $50
  • Promo Balance: $100

Place Order:

  • Order Amount: $120

Result:

  • $50 from USD balance (now $0)
  • $70 from promo balance (now $30)
  • Total used: $120

Scenario 3: Insufficient Funds

Balance State:

  • USD Balance: $30
  • Promo Balance: $20

Place Order:

  • Order Amount: $100

Result:

  • Order fails - insufficient funds
  • Error: "Insufficient balance"

Balance Changes

Your balance changes when:

Balance Increases:

  • Winning positions settle and pay out
  • Deposits are processed
  • Promotional bonuses are credited
  • Sell orders complete above your cost basis
  • delayed_cash is released when markets settle

Balance Decreases:

  • Buy orders are placed
  • Withdrawals are processed
  • Losing positions settle at $0

Balance Reservations:

  • When you place an order, funds are reserved
  • Reserved funds show in your portfolio as resting_buys
  • If the order is cancelled, funds return to your balance
  • If the order fills, funds convert to a position

Checking Balance Before Orders

It's a good practice to check your balance before placing large orders:

// Get current balance
const balanceResponse = await fetch(
'https://proxy.bettoredge.com/players/v1/players/player/balance/me',
{ headers: { 'Authorization': `Bearer ${accessToken}` } }
);
const { player_balance } = await balanceResponse.json();

// Calculate total available
const totalAvailable = player_balance.balance + player_balance.promo_balance;

// Determine order size
const orderAmount = Math.min(totalAvailable, 100); // Max $100 or available funds

// Place order
const orderResponse = await fetch(
'https://proxy.bettoredge.com/markets/v1/orders/order/place',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${accessToken}`
},
body: JSON.stringify({
order_context_hash: 'your-hash-here',
price: 0.65,
amount: orderAmount,
market_type: 'standard'
})
}
);

Balance vs Portfolio

Understanding the difference between your balance and portfolio:

Balance

  • What it is: Available cash not currently in use
  • Shows: Money ready to place new orders
  • Check endpoint: /v1/players/player/balance/me

Portfolio

  • What it is: Active positions and open orders
  • Shows: Money currently at risk or waiting in orders
  • Check endpoint: /v1/portfolio/me

Total Capital

Total Capital = Balance + Portfolio Capital

Where Portfolio Capital includes:

  • resting_buys - Reserved for open buy orders
  • position - Invested in current positions
  • delayed_cash - Profit held until market settles

EdgeCoin Mode (App Only)

While EdgeCoins appear in your balance response, they are only usable in the BettorEdge app:

What is EdgeCoin Mode?

  • Free-to-play trading with virtual currency
  • Perfect for practicing strategies without risk
  • Used for pick tracking and leaderboards
  • Compete in free contests

API Limitation:

  • The API does not support placing EdgeCoin orders
  • EdgeCoin orders can only be placed through the BettorEdge mobile or web app
  • API endpoints only process real USD and promo balance orders

Why Check EdgeCoins via API?

  • Track your EdgeCoin balance programmatically
  • Integrate app-based contest standings with your systems
  • Monitor EdgeCoin earnings from pick tracking

Best Practices

  1. Check Balance First - Always verify available funds before placing orders
  2. Account for Promo Terms - Understand any restrictions on promotional balance
  3. Monitor Reserved Funds - Check portfolio for funds tied up in resting orders
  4. Track Delayed Cash - Remember that sale profits are held until settlement
  5. Separate Real vs Play - Don't confuse EdgeCoins with real balance in your code

Next Steps

Now that you understand your balance:


Need help? Check out the Player Balance API Reference for detailed endpoint documentation.