All changes to the ModernFi API are documented here in reverse chronological order. Each entry includes new and updated endpoints, schema changes, deprecations, and removals. Breaking changes are flagged as such and include migration guidance. We recommend reviewing this page closely before beginning development or upgrading to a new API version.
February 23, 2026

v1.6.0

See below for our latest API changes. This minor version upgrade brings improved input validation, additional account and depositor flexibility, and cleanup of deprecated fields and endpoints.

Updated Endpoints

  • DELETE /v1/accounts/{account_id} (Close Account)

    • Accounts with a non-zero balance are now automatically liquidated before closing. It is no longer necessary to manually zero out the balance before calling this endpoint.
  • POST /v1/accounts (Create Account)

    • signer_primary is now optional
    • interest_rate is now optional with explicit validation (0 ≤ rate < 1)
    • account_type now accepts the AccountType enum (MMDA, DDA)
    • Added is_reciprocation_prioritized (boolean, default false) — prioritize this account for reciprocation
    • Added program_tags (string array) — tag accounts with program identifiers
  • PATCH /v1/accounts/{account_id} (Update Account)

    • depositor_ids is now optional — you no longer need to include it in every update
    • Added is_reciprocation_prioritized (boolean, optional)
    • Added program_tags (string array, optional)
    • Added account_type (AccountType enum, optional)
    • Added institution_alternative_id (string, optional, deprecated)
  • POST /v1/depositors (Create Depositor)

    • internal_depositor_id has been replaced by institution_depositor_id, which was introduced in v1.5.1
  • Input validation improvementsmaxLength constraints have been added to string fields across CreateAccountRequest, CreateDepositorRequest, CreateTransactionRequest, UpdateTransactionRequest, AddressData, and PhoneNumberData. EmailData.email_address now validates email format, and AddressData.country_code requires a two-character ISO 3166-1 alpha-2 code. Notable limits: account_title (128), signer_primary/signer_secondary (64), beneficiary_tin (9), tin (64), first_name/last_name (32), transaction description (256).

Schema Changes

  • AccountResponse

    • signer_primary is now nullable
    • Added institution_alternative_id (string, nullable, deprecated)
    • Added is_reciprocation_prioritized (boolean, required)
    • institution_account_id is now marked as deprecated
  • DepositorResponse

    • tin is now nullable and marked deprecated — plan to migrate away from reading this field from responses

Removed Endpoints

  • GET /v1/accounts/{account_id}/documents/monthly-statements — This previously deprecated endpoint has been removed. Use GET /v1/files/statements with statement_type=ACCOUNT_MONTHLY_SWEEP instead.