Changelog
2025-12-01 @brokerize/elements 1.5.0
- If a
SecurityQuotesProvideris implemented, the order form uses it to automatically offer switching between currency and pieces as the size unit - A styling issue where light text was rendered on light background in the portfolio select dropdown was fixed
- Updated the bundled @brokerize/client version from 1.3.0 to 1.3.7
2025-11-11 @brokerize/client 1.3.7
- Fixed an issue where WebSocket subscriptions where not correctly refreshed after a disconnect
2025-09-30 brokerize API 1.7.2, @brokerize/client 1.3.6
A new endpoint for summarizing order executions by date has been added. The client package has been updated from the latest API spec.
2025-09-26 @brokerize/elements 1.4.2
BrokerizeMainnow supportspreferredExchangeIdfor configuring an exchange that is preferred for trading by the client- The broker list component has two new theming tokens for configuring font sizes
2025-09-08 @brokerize/elements 1.4.1
We have changed an internal DOM ID generation from crypto.randomUUID to nanoid to support environments where the crypto browser API is not available.
2025-09-01 brokerize API 1.7.0 / 1.7.1
Some fields for trade summaries have been added.
2025-08-27 @brokerize/elements 1.4.0
We have released a new version of brokerize elements. Notable changes:
- The new component
Overviewwhich can replaceBrokerList,PortfolioTableandSessionsTablein most applications. - An improved version of the
BrokerizeMaincomponent, which encapsulatesOverview,PortfolioViewandOrderForm.
Checkout the example repo https://github.com/brokerize/elements-example/blob/main/example.js for example usage.
2025-05-23 brokerize API 1.6.1
Added some fields for detailed information about:
- decoupled operations:
isCancellablenow indicates if such an operation is cancellable at the broker Order.detailsCanBeEnhancedindicates if further details could be retrieved for an order
2025-05-07 @brokerize/client 1.3.0, @brokerize/elements 1.3.0
We have added the new function createCustomWebSocketClient to brokerize client, which allows customizing the WebSocke connection URL and token retrieval. The client can be passed to createAuthorizedContext so that the created client is used in all contexts (including brokerize elements components which rely on WebSockets).
2025-05-01 @brokerize/client 1.2.6, @brokerize/elements 1.2.1
We have fixed an issue where a relative API basePath lead to wrong WebSocket connection URLs.
2025-04-24 brokerize API v1.6.0, @brokerize/client 1.2.5, @brokerize/elements 1.2.0
reportingTag
When creating orders, the new optional field reportingTag can be passed together with the order. The tag will appear in order reports later, so that it is possible to identify the origin of the order for analytical purposes. Note that the number of tags is limited per client, so that this does not allow tracking of individuals.
The reportingTag can be passed to the API using the brokerize elements createOrderForm, changeOrderForm and cancelOrderForm.
OrderExecution now includes fees
The OrderExecution Interface now includes a field fee which is optional and can hold the fees associated with this (partial) order execution. Note that the availability of this field depends on the broker.
/**
* Amount of fees for this order execution
*/
fee?: Amount;
2025-03-31: @brokerize/elements 1.1.1
FIXEDcost label in OrderForm was wrong in some casesFIXEDissues with number parsing in some environmentsFIXEDformatting of staking positions information in portfolio tablesFIXEDvalidity date changes in ChangeOrderCHANGEDsupport for strict content security policies by removing usages ofevalCHANGEDbetter looking countdown for quote tradingCHANGEDbuying power in OrderForm now selects the cash account based on selected exchangeADDEDorder fees in order receipts
2025-03-28: @brokerize/client 1.2.3
ADDEDsupport for order feesCHANGEDupdate to latest spec changes
2025-03-17: @brokerize/client 1.2.2
- Added support for decoupled operations for creating, changing and cancelling orders
2025-03-12: brokerize API 1.5.1, @brokerize/client 1.2.1
CreateTrade,ChangeOrderandCancelOrdernow optionally return adecoupledOperationId, which indicates that the operation is not done yet, but has to be confirmed by the user (e.g. in the broker’s mobile app). This is currently only implemented in the demo broker, but the functionally might be added for other brokers in the future. For most clients this is currently not relevant and can be ignored. Note that the general flow is exactly likeEnableSessionTanwith a decoupled auth method.- The OpenAPI operations
GetDecoupledOperationStatusandCancelDecoupledOperationhave been renamed toGetDecoupledOperationStatusLegacyandCancelDecoupledOperationLegacy. They still work, but clients may want to use the newGetDecoupledOperationandCancelDecoupledOperationoperations, which are now on the root path and do not require the session id any more. For the legacy operations, the session id is now ignored - The client package has been updated to the new specification.
2025-03-03: brokerize API 1.5.0
We have added new endpoints related to trade analyses. Those endpoints are still in beta and are subject to change in the future.
2025-01-17: brokerize API 1.4.2
FIXEDtype definition forUpdateTradeDraft.orderIdis now simply a string to align with the response ofCreateTrade.
2024-12-06: @brokerize/elements 1.1.0
CHANGEDopening a sessionTanForm now automatically requests the TAN from the API if there is exactly one method available withflow=DECOUPLED.- support for switching between the brokerize and DonauCapital order endpoints via the
tradingViaCryptoServiceflag. If your client supports crypto trading, you have to add abasePathCryptoServiceoption next tobasePathin theBrokerizeConfig. The URLs will be provided to you. The elements will then automatically direct createTrade, changeOrder and cancelOrder requests to that service and display the corresponding provider logo in the UI. FIXEDhide cash account select when there is actually nothing to choose for the user.FIXEDnumber input behavior if the input is restricted to have 0 decimal places.CHANGEDgetQuoteis now called with the selectedsellPositionId, if applicable.
2024-12-05: @brokerize/client 1.1.2
Update for administrative endpoints (API client configuration now contains a setting whether the client is allowed for crypto trading)
2024-11-30: @brokerize/client 1.1.1
Update the client to reflect the new demo broker authMethodStyle settings flag.
2024-11-28: brokerize API 1.4.1: new demo broker setting authMethodStyle
This replaces the old demo broker setting lazyAuthMethods . Creating a demo account with authMethodStyle=one-decoupled allows to test the behavior of “enable session TAN” UIs, when there is only one such method available.
2024-11-27: brokerize API 1.4.0, @brokerize/client 1.1.0
Added the optional field sellPositionId to the GetQuoteParams interface to support Quote sell orders with multiple available sell positions.
We have also released the corresponding brokerize client package 1.1.0 today.
2024-11-11: brokerize API 1.3.1
We have fixed an issue in our API specification in the endpoint ObtainToken (the field refresh_token was not declared as a string).
2024-11-08: brokerize API 1.3.0, @brokerize/client 1.0.3
We have added the new fields Order.tradingViaCryptoService and PreparedTrade.tradingViaCryptoService to the API. This indicates that clients must direct their create trade, change order and cancel order requests to a different service in the future (we will contact clients that will need to implement this). The new brokerize client 1.0.3 has added the possiblity to configure such a service and send requests to it using the parameters of createTrade, changeOrder and cancelOrder.
2024-10-28: @brokerize/elements 1.0.4
FIXEDpassing an order validity in the OrderForminitialOrderproperty was overwritten by default valuesCHANGEDOrderForm errors are now displayed closer to the input form
2024-10-28: brokerize API 1.2.0, @brokerize/client 1.0.2
- the new API fields
Position.brokerSecurityIdandGetUserResponse.isGuesthave been added to the API and the client package
2024-10-16: @brokerize/elements 1.0.3
We have released a small bugfix release which solves problems with displaying the available position size in the OrderForm as well as the display of executed sizes in OrderReceipts.
2024-10-04: @brokerize/client and @brokerize/elements 1.0.1 released to public npm
We have migrated to the public npm registry and released new versions of our client libraries, so that you don’t need to sign in to the private github package registry that we used before. This means you can remove the settings in your .npmrc file:

Note that it is possible to configure registries globally. To reset a global configuration, run npm config delete @brokerize:registry .
2024-10-04: app.brokerize.com / app-preview.brokerize.com
We have added a new instance of our frontend. Now two instances are publicily available:
| Domain | Configured Backend | Purpose |
|---|---|---|
| https://app-preview.brokerize.com | https://api-preview.brokerize.com | Interacting with the test environment, e.g. creating Demo Broker accounts on api-preview.brokerize.com |
| https://app.brokerize.com | https://api.brokerize.com | Interacting with the production environment, e.g. for downloading order reports or creating access tokens. |
Note that if you used app.brokerize.com to create demo broker accounts in the past, it is now more practical to go to app-preview.brokerize.com. There is still the option to configure a different backend under https://app-preview.brokerize.com/config and/or https://app.brokerize.com/config though.
2024-10-02: brokerize API 1.1.0
- For some clients,
CreateGuestUsernow returns an additionalrefresh_tokenwhich can be used to keep the user active for a longer time. To obtain a new access token, the newObtainTokenendpoint (which implements an OAuth/tokenendpoint) can be used - Clients can now send the access token as a bearer token (Header
Authorization: Bearer <TOKEN>instead of the customx-access-tokenheader. - A new endpoint
RenamePortfoliohas been added. This allows users to customize portfolio names. Note that this is only useful for permanent user accounts, which are currently not relevant for most frontends.
2024-09-24: brokerize API 1.0.0
Over the course of the recent months, we have added some minor API fields and features. These have been continuously rolled out and are backward compatible. Starting with version number 1.0.0, we will document API changes here for relevant updates.
The following changes have been made over the past months:
- CHANGED: the suggested label for “legalHint” in Order Forms has been changed. Previously, it was “Rechtliche Hinweise”, now we would like to have it displayed as “Risikohinweis”. Please change the label in your UIs if applicable.
- ADDED: the field
lastSyncto PortfolioQuotes. - ADDED:
Security.cryptoPair(with the oldSecurity.cryptoCodewe would always assume a<CRYPTO>-EUR pair, so the new field yields more flexibility). The crypto pair includes a base denomination and a quote denomination e.g."BTC-EUR". The crypto pair will always be separated by a hyphen ‘-’. - CHANGED: The
isin,wkn,cryptoCode,symbol,usTickerfields are now available underSecurity.selector.isinetc, introducing the new typeSecuritySelector. The old fields are marked as deprecated and will be removed in a future version (we will announce a sunset date later). For thePrepareTradeendpoint, those parameters have also been added. - ADDED:
preparedTrade.sizeUnitConstraintsas a more capable version ofpreparedTrade.sizeUnitsByCashAccountId(which could not model new use-cases). It is an array of constraints and each element defines which sizeUnits can be used under which constraints. The constraints include the order model, cash account ids and directions or the trade. If the current trade configuration matches all constraints, the size units of that. constraint item is be used. - ADDED:
PreparedTrade.sizeMaxDecimalsBySizeUnitto define the maximum amount of decimal places that is allowed for each size unit. Can be used to limit size inputs. - ADDED: the new validityType
GTDT, which is more precise thanGTD(only supported by one upcoming broker so far). For GTDT, the date field will include the time of day - ADDED: the new validityType
IOCwhich means the order should be executedImmediate Or Cancel - ADDED:
Order.validity.typehas a new value"unknown"which may occur when reading orders (= endpointsGetPortfolioOrders/GetOrder). - ADDED:
PreparedTrade.exchanges[].cashAccountIdsmay restrict which cashAccounts can be used for the combination of portfolio, security and exchange. This is usually the list of cashAccounts of the portfolio, filtered by corresponding currency. If the list is not present, all portfolio cashAccounts can be selected by the user. - ADDED:
Position.stakingSizewas added. For brokers that support this, this shows how much of the position is locked in staking. - ADDED:
Session.envwas added so that the selected env can be used to re-enable a session. ADDED:PreparedTrade.exchanges[].currencyIsowas not sufficient for a new broker to describe which currency the limits, stops etc. are provided in. A new mapPreparedTrade.exchanges[].currencyIsoByCashAccountIdhas been added, which provides the same information, but individually for each cash account.- NOTE: This change will has already been rolled back - you don’t have to respect
currencyIsoByCashAccountIdin your applications. Have a look at cashAccountIds instead:
- NOTE: This change will has already been rolled back - you don’t have to respect