# Changelog

All notable changes to this project will be documented in this file.
This does not include changes to descriptions and guides.

## 2026-05-12

### Added

- **WebSocket overlap-reconnect support**: data events (`.create`, `.update`, `.delete`) now carry an `eventId` — an opaque UUID, deterministic across server instances — for deduplication when running parallel connections during reconnect
- **`hello.instanceId`**: identifies the server instance handling the connection; a different value on reconnect indicates routing to a different instance
- **`server_closing` event**: heads-up sent ~2 seconds before a graceful server-side close (e.g. during a deploy), giving partners a window to open a parallel connection and switch over


### Changed

- **Connection lifetime**: documented the ~1h upper bound enforced by the upstream load balancer; partners should expect a clean close at `connectTime + 3600s` and reconnect


## 2026-05-11

### Added

- **List transfers**: `GET /v2/partner/client/{clientId}/account/{accountId}/transfer` — list all 3rd-party transfer instructions for an account, including custodian, external reference, status, and timestamps
- **Transfer in create account journey**: `transfer` field on `createAccount` journey now supports configuring 3rd-party transfers into a newly created account, with `enforce` (required/optional) and a list of custodians with account numbers


### Changed

- **Order type discriminator**: Added discriminator on `orderType` for improved schema tooling support


## 2026-04-30

### Added

- **Redemption transfer order**: `POST /v2/partner/client/{clientId}/order/redemptionTransfer` — sell fund units and transfer the proceeds to another internal account belonging to the same client and owner


## 2026-04-23

### Added

- **Account category on account**: `category` field (pro/retail) now included in the account response object
- **Cash transaction refTypes**: New text types: `client_fee`, `correction`, `gift`, `compensations`, `inheritance`, `dividend`, `donation`, `endowment_101`, `partner_fee`, `fondo_fee`, `insurance_tax`, `insurance_fee`, `riskpremia_fee`
- **Fund transaction refTypes**: New `text` and `correction` fund transaction ref types


### Changed

- **Scope max length**: Journey `scope` field max length increased from 500 to 768 characters
- **Payment account name**: `name` field on payment account is now nullable
- **Callback URL**: `callbackUrl` must use HTTPS in production


## 2026-04-16

### Added

- **Delete savings plan**: `DELETE /v2/partner/client/{clientId}/account/{accountId}/savingsplan`
- **Update savings plan journey**: New `updateSavingsPlan` journey type for creating or updating savings plans
- **Update allocation plan instruments**: `updateAllocationPlan` journey now supports optional `allocationPlan.instruments` to replace existing allocations
- **Optional payment account**: `updateAllocationPlan` journey `paymentAccount` is now optional — uses existing payment account if not provided
- **Account withdrawal limit**: `GET /v2/partner/client/{clientId}/account/{accountId}/withdrawal/limit`


## 2026-04-15

### Changed

- **OpenAPI version**: Upgraded from OpenAPI 3.0.3 to 3.1.2.
- **Order base**: Removed conditional `if/then` validation for `amount` (subscription) and `units` (redemption) for improved readability.


## 2026-03-24

### Improved

- **Security guidance**: Added trust model section to authentication docs, clarifying partner responsibility for end-user identity verification.
- **executorRef**: Clarified that executorRef is the executor's SSN, validated against the account owner on write operations.


## 2026-03-19

### Added

- **Savings plan instruments**: Allow specifying available instruments when creating a savings plan journey. Defaults to all instruments in the client universe.


## 2026-03-18

### Added

- **Account value**: Added endpoint for fetching account market value.
- **Performance**: Added endpoint for fetching account performance data.


## 2026-03-12

### Added

- **Legal entity support**: Support legal entity onboarding. Including depot and insurance accounts.
- **Legal entity owner type**: Add new ownerType field to account.owner, and new `legal_entity` ownerType.
- **Legal entity orders**: Support buy, sell orders for legal entity accounts.
- **Legal entity kycStatus**: Expose kycStatus for legal entities.
- **Autogiro mandate status**: Expose autogiro mandate status on the bankAccount object.
- **Order clientId**: Add clientId to order response


## 2026-02-24

### Added

- **Account category**: Allow setting account category (retail/pro) when creating accounts.
- **Extended client**: Add permission fields to client object. Allowing api-users to observe their permissions.
- **Client displayName**: Allow api-users to patch the client displayName.


### Fixed

- **Error messages**: Improved validation error messages, returning only relevant errors.
- **Allocation examples**: Fixed incorrect field references in instrument allocation examples.


## 2026-01-13

### Added

- **IP validation**: Enforce IP allowlist validation for partner API access in production.
- **Block account deletion**: Prevent account deletion when pending payment instructions exist.


## 2025-12-01

### Added

- **Power of attorney agreements**: Added endpoint for generating power of attorney agreement PDFs.
- **Add bank account journey**: Added support for adding bank accounts via Tink.
- **Partner IP validation**: Validate partner IP.


## 2025-11-05

### Added

- **Agreements**: Added endpoints for fetching the agreements attached to an account. Including PDF generation.
- **KYC status**: Expose KYC validation status on accounts.


## 2025-10-28

### Added

- **Allocation plans**: Added endpoints for managing allocation plans on accounts.