Skip to main content
The sandbox is a fully functional replica of the Bluum production environment. It simulates order execution, deposit processing, and KYC verification — without touching real money or securities.

Sandbox vs Production

SandboxProduction
Base URLhttps://test-service.bluumfinance.com/v1https://service.bluumfinance.com/v1
Data persistenceResets nightly at midnight UTCPermanent
Order executionSimulated fills (instant for market orders)Real exchange execution
DepositsSimulated ACH processingReal bank transfers
KYC verificationAuto-approved in most casesReal identity verification
Rate limit10 requests/second25 requests/second
AccessImmediate after signupRequires compliance approval

Getting credentials

1

Create a dashboard account

Visit the Bluum Finance dashboard and sign up with your email and company information.
2

Generate API keys

Navigate to Settings > API Keys in the dashboard. Click Create API Key and copy both the API Key and API Secret immediately — the secret is only shown once.
Store your API secret securely. If you lose it, you’ll need to generate a new key pair.
3

Test your credentials

curl -X GET 'https://test-service.bluumfinance.com/v1/assets?asset_class=us_equity&tradable=true' \
  -H 'Authorization: Basic '$(echo -n 'YOUR_API_KEY:YOUR_API_SECRET' | base64)
A successful response returns a JSON array of tradable assets.

Setting up Postman

The Bluum Postman collection includes pre-configured requests for every endpoint.
  1. Import the collection from our Postman documentation
  2. Set environment variables:
    • baseUrl = https://test-service.bluumfinance.com/v1
    • apiKey = your sandbox API key
    • apiSecret = your sandbox API secret
  3. The collection handles Base64 encoding automatically
See Postman Collection for detailed setup instructions.

Sandbox behaviors

Order execution

Market orders fill instantly at the current simulated price. Limit orders fill when the simulated price crosses the limit. Orders placed outside market hours queue until the next simulated open.

Deposits and withdrawals

ACH deposits via Plaid transition through pendingprocessingcompleted within seconds. Manual bank transfer deposits remain in pending until you explicitly trigger completion (useful for testing status transitions).

KYC verification

Document uploads are auto-approved in sandbox. To test rejection scenarios, use specific test values documented in your dashboard.

Webhooks

Webhook events fire in sandbox just like production. Register a webhook endpoint to receive real-time notifications during development. Tools like webhook.site or ngrok are useful for local testing.

Environment variable setup

Use environment variables to switch between sandbox and production without code changes:
# Sandbox
export BLUUM_BASE_URL="https://test-service.bluumfinance.com/v1"
export BLUUM_API_KEY="your_sandbox_key"
export BLUUM_API_SECRET="your_sandbox_secret"
const BASE_URL = process.env.BLUUM_BASE_URL;
const credentials = Buffer.from(
  `${process.env.BLUUM_API_KEY}:${process.env.BLUUM_API_SECRET}`
).toString('base64');
Never hardcode credentials. Use a secret manager (AWS Secrets Manager, HashiCorp Vault, Doppler) or environment variables.

Next steps