Skip to main content

Changelog

2025-12-01 @brokerize/elements 1.5.0

  • If a SecurityQuotesProvider is 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

  • BrokerizeMain now supports preferredExchangeId for 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 Overview which can replace BrokerList, PortfolioTable and SessionsTable in most applications.
  • An improved version of the BrokerizeMain component, which encapsulates Overview , PortfolioView and OrderForm.

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: isCancellable now indicates if such an operation is cancellable at the broker
  • Order.detailsCanBeEnhanced indicates 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

  • FIXED cost label in OrderForm was wrong in some cases
  • FIXED issues with number parsing in some environments
  • FIXED formatting of staking positions information in portfolio tables
  • FIXED validity date changes in ChangeOrder
  • CHANGED support for strict content security policies by removing usages of eval
  • CHANGED better looking countdown for quote trading
  • CHANGED buying power in OrderForm now selects the cash account based on selected exchange
  • ADDED order fees in order receipts

2025-03-28: @brokerize/client 1.2.3

  • ADDED support for order fees
  • CHANGED update 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, ChangeOrder and CancelOrder now optionally return a decoupledOperationId, 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 like EnableSessionTan with a decoupled auth method.
  • The OpenAPI operations GetDecoupledOperationStatus and CancelDecoupledOperation have been renamed to GetDecoupledOperationStatusLegacy and CancelDecoupledOperationLegacy . They still work, but clients may want to use the new GetDecoupledOperation and CancelDecoupledOperation operations, 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

  • FIXED type definition for UpdateTradeDraft.orderId is now simply a string to align with the response of CreateTrade.

2024-12-06: @brokerize/elements 1.1.0

  • CHANGED opening a sessionTanForm now automatically requests the TAN from the API if there is exactly one method available with flow=DECOUPLED.
  • support for switching between the brokerize and DonauCapital order endpoints via the tradingViaCryptoService flag. If your client supports crypto trading, you have to add a basePathCryptoService option next to basePath in the BrokerizeConfig. 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.
  • FIXED hide cash account select when there is actually nothing to choose for the user.
  • FIXED number input behavior if the input is restricted to have 0 decimal places.
  • CHANGED getQuote is now called with the selected sellPositionId, 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

  • FIXED passing an order validity in the OrderForm initialOrder property was overwritten by default values
  • CHANGED OrderForm 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.brokerSecurityId and GetUserResponse.isGuest have 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:

image.png

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:

DomainConfigured BackendPurpose
https://app-preview.brokerize.comhttps://api-preview.brokerize.comInteracting with the test environment, e.g. creating Demo Broker accounts on api-preview.brokerize.com
https://app.brokerize.comhttps://api.brokerize.comInteracting 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, CreateGuestUser now returns an additional refresh_token which can be used to keep the user active for a longer time. To obtain a new access token, the new ObtainToken endpoint (which implements an OAuth /token endpoint) can be used
  • Clients can now send the access token as a bearer token (Header Authorization: Bearer <TOKEN> instead of the custom x-access-token header.
  • A new endpoint RenamePortfolio has 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 lastSync to PortfolioQuotes.
  • ADDED: Security.cryptoPair (with the old Security.cryptoCode we 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, usTicker fields are now available under Security.selector.isin etc, introducing the new type SecuritySelector . The old fields are marked as deprecated and will be removed in a future version (we will announce a sunset date later). For the PrepareTrade endpoint, those parameters have also been added.
  • ADDED: preparedTrade.sizeUnitConstraints as a more capable version of preparedTrade.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.sizeMaxDecimalsBySizeUnit to 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 than GTD (only supported by one upcoming broker so far). For GTDT, the date field will include the time of day
  • ADDED: the new validityType IOC which means the order should be executed Immediate Or Cancel
  • ADDED: Order.validity.type has a new value "unknown" which may occur when reading orders (= endpoints GetPortfolioOrders / GetOrder).
  • ADDED: PreparedTrade.exchanges[].cashAccountIds may 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.stakingSize was added. For brokers that support this, this shows how much of the position is locked in staking.
  • ADDED: Session.env was added so that the selected env can be used to re-enable a session.
  • ADDED: PreparedTrade.exchanges[].currencyIso was not sufficient for a new broker to describe which currency the limits, stops etc. are provided in. A new map PreparedTrade.exchanges[].currencyIsoByCashAccountId has 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 currencyIsoByCashAccountId in your applications. Have a look at cashAccountIds instead: