Adjust the cash balance of a demo account.
Available to: Organization administrators
Environments: Demo
Manage the simulated fund balances of your organization’s demo accounts. Use this endpoint to top up a trader’s balance mid-challenge, set starting balances for new evaluation accounts, or reset a balance after it’s been depleted.
If your call returns a 401 “Access is denied” error, contact Evaluation Support to have the Funds:FullAccess permission added to your API key.
Difference Between adjustCash and changeDemoBalance
The changeDemoBalance endpoint is available to all traders and has rate limits to protect against abuse. Because adjustCash is restricted to organization administrators with Funds permissions, it supports higher throughput and doesn’t have a rate limit. adjustCash also gives you more control: you can classify the adjustment type, specify the currency, and include an audit comment.
Field Details
The accountId must reference an active demo account within your organization. You can look up account IDs using the Query Builder in the Admin Dashboards or via the /account/list endpoint.
The currencyId must correspond to one of the supported currencies: USD, EUR, AUD, GBP, or CAD. Currency IDs are environment-specific. Use the /currency/list endpoint to retrieve valid IDs for your environment.
Relevant cashChangeType Values
All CashChangeType enum values are accepted, but these are the most relevant for typical demo balance management:
ManualAdjustment: General-purpose balance changes
Courtesy: Goodwill credits
Debit: Deductions from an account
FundTransaction: Funding-related changes
ChallengePayout: Challenge or evaluation payouts
Common Failure Scenarios
- Account is closed or inactive
accountId does not exist or does not belong to your organization
cashChange is outside the allowed range (must be between -100,000 and 100,000, exclusive)
comment exceeds 64 characters
- API key is missing
Funds:FullAccess scope (returns 401)
- User is not an organization administrator
Reversing an Adjustment
There is no dedicated undo operation. To reverse a cash adjustment, make another adjustCash call with the opposite cashChange amount. Use the comment field to document the reason and link the reversal to the original entry.
The response includes a full CashBalanceSnapshot reflecting the account’s updated state. On success, the errorText field is absent and all balance fields are populated.