Requirements
You can place a production order only when all of these hold:- Your integration works in test. Build and run it against the test environment first, including retries after timeouts and the errors you handle (see Test and production).
- Bullionwale has enabled production trading for your account. Ask your Bullionwale relationship manager or the Bullionwale desk. API access must be on for your account as well.
- Your key is a live key with
orders:write. A live key starts withbwk_live.. It is issued separately from your test key, and shown once (see Getting access). - Bullionwale’s platform-wide production switches are on. Bullionwale controls these; you cannot change them.
GET /me, GET /orders, GET /orders/{order_id}, GET /positions) on the production paths need only a live key with the right scope and API access for your account. They keep working while production trading is switched off.
Check before you trade
GET /me returns production_trading_available: true when Bullionwale’s production switches are on, your account’s API access is on and production trading is enabled for your account. The answer is the same on the test and production paths, so you can check it with either key.
200 OK
production_trading_available is a hint, not a promise. It does not look at your key’s scopes, and every order is checked again in full when it is placed. Treat true as “you may try”, and still handle the refusals below.
When production orders are refused
403 production_trading_disabled
Production trading is not available to you right now. Nothing was booked.detail.reason says which switch is off:
403 Forbidden
account, contact Bullionwale if you expected to be enabled. For deploy and global, production trading is off for everyone: wait until Bullionwale tells you it is available.
503 production_prerequisites_unmet
Production trading is paused by Bullionwale. Nothing was booked, and there is nothing to change on your side. Retry later with the sameIdempotency-Key. The body may carry further fields about Bullionwale’s internal readiness; you do not need to act on them.
503 Service Unavailable
Other refusals
403 api_access_disabled: API access is off for your account.403 insufficient_scope: your live key does not haveorders:write.401 wrong_environment: you sent a test key to a production path.