Browse documentation

Fix the step that failed

Match the message you see to the recovery below. Start with local service health, then check the broker connection, managed AI balance, account access, or export path that owns the failed step.

For a technical read on current status, check /api/health.

Broker setup recovery cards

Match the message to the application that owns it. The visual panels below are layout previews; privacy-scanned native screenshots attach after the Windows capture and clean-machine gates pass.

IB GatewayCapture pending

Connection refused

Start Gateway and log in to paper. Confirm the local API settings, choose the IB Gateway paper preset, then test again. Never switch to live port 4001 to make a connection succeed.

Open the matching guide →
TWSCapture pending

Port reachable, handshake not ready

Keep TWS logged in to paper, confirm socket access and paper port 7497, leave Read-Only API enabled, and repeat the BrokerBridge connection test.

Open the matching guide →
BrokerBridgeCapture pending

More than one account appears

Select the masked paper account you intend to use. If the mode is not clearly paper, stop. A connected port without verified account identity is not a completed setup.

Open the matching guide →
NinjaTrader 8Capture pending

UNVERIFIED or listener missing

Start NT8, add BrokerBridgeRetailLink exactly once to a chart, confirm the Indicator compiled, and check Output. Keep the real token local and use a fake token in captures.

Open the matching guide →
NinjaTrader 8Capture pending

Positions are UNKNOWN

Treat UNKNOWN as a failed read, not an empty account. Restart the Indicator and BrokerBridge, retry the read, and stop if identity is still unavailable.

Open the matching guide →
NinjaTrader 8Capture pending

Duplicate account names refused

Rename the simulation account inside NinjaTrader so the live roster exposes one unique name. Do not bind a funded or evaluation account as a workaround.

Open the matching guide →

Interactive Brokers connection issues

"Cannot connect to IB Gateway"

  1. 1.Is IB Gateway running? Launch it and log in.
  2. 2.Is the API enabled? Use the API Settings path for your app. Current Gateway versions may show a different socket-access control.
  3. 3.Does the paper port match? Gateway paper: 4002. TWS paper: 7497. Live ports are outside this beginner path.
  4. 4.Is the client ID in use? Each connection needs a unique client_id.
  5. 5.Is 127.0.0.1 trusted? Add it to the trusted IP list.

"IB Gateway disconnects after a few hours"

IB Gateway auto-disconnects daily for maintenance (~midnight ET). Use IBC (IB Controller) for auto-restart. After a restart, repeat the packaged app's Setup Wizard IBKR connection test and confirm it reports the authenticated account, then review IBKR Diagnostics. A port-reachable result alone is not enough. Do not add undocumented timeout keys.

AI provider errors

"Authentication failed"

BrokerBridge manages the AI provider credential for you. If a model turn fails to authenticate, check that your AI credit balance is above zero in the dashboard and retry. Test with POST /api/credentials/test. If it persists, contact support.

"Rate limited" (429)

Increase scan_interval_seconds to reduce request frequency.

"Request timeout"

Increase ai_provider.timeout_seconds (default: 30). Check your network connection.

License issues

"License expired or invalid" (403)

Renew at /pricing. API requests return 403 until renewed.

"Machine changed"

Re-enter credentials through the setup wizard. Your license auto-rebinds to the new machine.

Common error messages

ErrorSolution
Config file not foundUse the packaged app Settings, or verify $BROKERBRIDGE_HOME/config.yaml (default: ~/.brokerbridge/config.yaml). Do not create config/config.yaml.
account_value <= 0Broker connection issue or account not funded
Proposal is already approvedCannot approve or reject a trade plan twice
Rate limit exceededWait for Retry-After period
Admin authentication requiredSet BROKERBRIDGE_ADMIN_TOKEN env var

Support diagnostics

The beginner path does not require a terminal. Use the packaged app's in-app Test Connection and IBKR Diagnostics panels, then share the exact error card and sanitized status with support if asked. Do not copy a local bearer token, run undocumented curl commands, or paste credentials into a screenshot or message.