v.2.10.0 - Test Environment
2026-08-18 - Planned deployment to Live
2026-08-06 - Test Environment
Added
Savings Plan Trade Invoice
Each filled savings-plan execution (BUY) and exit sell order (SELL) now produces a German trade invoice PDF that partners can download for their customers, closing the documentation gap between savings plans and regular traditional orders.
- Documentation Location: API REFERENCE - Trading - Traditional Assets (endpoint is tagged
Documents) - New Endpoint:
GET /traditional/orders/savings-plans/trade-invoice/{savingsPlanOrderId}- returns the trade invoice asapplication/pdf;savingsPlanOrderIdis the savings-plan execution id (BUY) or the exit sell-order id (SELL) - New enum value:
DocumentTypeEnum-TRADE_INVOICE_SAVINGS_PLAN - Error responses:
400 Bad Request(invalid id),404 Not Found(no invoice for that execution) - Note: the document is generated only once the execution reaches
FILLED, so a404immediately after an execution is created is expected - wait for the document notification carryingdocumentType: TRADE_INVOICE_SAVINGS_PLANbefore fetching.
Savings Plan Transactions in Transaction History
Savings-plan activity is now a first-class transaction type in the transaction history, so partners can reconcile recurring executions and their fees from the same endpoint they already use for trades, cash and corporate actions.
- Documentation Location: API REFERENCE - Transaction History
- New enum value:
TransactionTypeEnum-SAVINGS_PLAN - New field:
savingsPlanTransactionon the transaction object - present whentransactionTypeisSAVINGS_PLAN - Payload includes:
executionId(execution UUID for BUY, exit sell-order UUID for SELL),savingsPlanId,isin,tradeSide,quantity(fractional shares allocated or sold),executionPrice(fill price per share),savingsAmount(recurring amount committed on a BUY),feeAmount(fee charged for this transaction),externalId(partner's own savings-plan id) - Note:
feeAmountreflects the fee now actually booked at execution - savings-plan executions previously reported no fee leg. The allocatedquantityis therefore derived from the savings amount after fee deduction.
Corporate Action Cash-in-Lieu Amounts
Ratio-based corporate actions round each customer's holding down to whole shares and pay cash for the fraction that was rounded away. That payout was previously invisible in the API; it is now reported per customer on the transaction, the corporate-action read model, and the webhook.
- Documentation Location: API REFERENCE - Trading - Corporate Actions, API REFERENCE - Transaction History, API REFERENCE - Webhooks
- Added fields:
cashInLieuAmount(net cash paid for the rounded-away fraction),cashInLieuPrice(realised per-unit price of the fractional shares),fractionalSharesQuantity(the fraction the customer was entitled to) - all decimal, added toCorporateActionTransaction(GET /customers/{customerId}/transactions), to the corporate-action customer entry (GET /corporate-actions,GET /corporate-actions/customers/{customerId}), and to the corporate-action webhook payload - New enum value:
CorporateActionNotificationTypeEnum-CASH_IN_LIEU - Note: a customer whose pro-rata share floored to
0.00reports0.00together with the fraction and realised price - it is not omitted, so they stay distinguishable from a customer who was never affected. Action types that cannot produce a fraction omit the fields entirely. - Note: the fields sit on the existing single corporate-action transaction per customer per action, so the share change and the cash-in-lieu remain one coherent event. The omnibus surplus sale is not exposed as a customer transaction.
Reverse Stock Split (SPLR) Corporate Action
Reverse stock splits are now a supported corporate-action event type end to end, including the cash-in-lieu payout described above.
- Documentation Location: API REFERENCE - Trading - Corporate Actions, API REFERENCE - Transaction History, API REFERENCE - Webhooks
- New enum value:
SPLRadded to the corporate-action event type (CAEV) enum in the publish contract, the transaction-history contract and the webhook contract - Note: on a reverse split a customer holding fewer shares than the reverse ratio floors to zero whole shares and is fully liquidated to cash. This is intended behaviour, reported as
cashInLieuAmountwith the position closed.
Appropriateness Test for Tracker Certificates
The appropriateness test now covers tracker certificates as their own asset type, so partners can run the questionnaire for that product family instead of mapping it onto security tokens.
- Documentation Location: API REFERENCE - Entities
- New enum value:
AppropriatenessTestAssetTypeEnum-TRACKER_CERTIFICATE
Changed
Tokenized Asset Quantity Precision
UNIT quantities on tokenized-asset orders are now validated against the 8-decimal on-chain token precision at request time, instead of being silently rounded later in settlement.
- Documentation Location: API REFERENCE - Trading - Tokenized Assets
- Endpoint:
POST /wawex/orders/market - Behavior change: with
quantityType: UNIT, aquantitywith more than 8 decimal places is rejected with400 Bad Requestidentifyingquantityprecision as invalid.0.00000001is the smallest accepted quantity;0.000000001is rejected - Note:
AMOUNT(EUR cash) quantities are unaffected. Previously such values were accepted and then rounded or truncated between the order, the inventory order and the on-chain mint/burn amount, so the executed quantity could differ from the requested one.
Tokenized Asset Order Market-Closure Response
POST /wawex/orders/market now answers a closed market with 503 Service Unavailable, matching the behaviour of traditional-asset orders, and the status code is documented.
- Documentation Location: API REFERENCE - Trading - Tokenized Assets
- Endpoint:
POST /wawex/orders/market - Added response:
503 Service Unavailable- returned for orders placed outside trading hours, on weekends and on exchange holidays - Note:
409 Conflict("price data is currently unavailable for this asset") remains documented for the case where the market is open but no live price is available. Partners should treat503as retryable at the next trading window and409as an asset-level price gap.