-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Question or Feature?
⚠️ Breaking Change: Structured Address Fields Required for Contacts & Additional Addresses
Background
This issue is prompted by an official email from bexio (June 2025), notifying all API users of an upcoming breaking change to the address structure.
Starting 08.12.2025, all contact and additional address endpoints will require structured address fields:
street_name
house_number
address_addition
The legacy address
field will be deprecated and rejected in request payloads after this date.
Excerpt from bexio's email:
“Starting 08.12.2025, all contact- and additional addresses must be created and edited with the structured address fields. The current address field won’t be accepted anymore by that time. ... Please make sure that you do not send the address field in the payload after 07.12.2025, otherwise the request will result in an error.”
📎 See bexio changelog for official documentation.
🔍 Affected Endpoints
Contacts
- Bulk Create Contacts
- Create Contact
- Edit Contact
- Fetch/List/Search Contacts
Additional Addresses
- Create Additional Address
- Edit Additional Address
- Fetch/List/Search Additional Addresses
✅ Address Field Migration: Status & Checklist
I already started working on Implementing this change, and the process is listed below.
DTOs
- Add
street_name
,house_number
,address_addition
properties
Added to all relevant DTOs (CreateEditContactDTO
,ContactDTO
, CreateEditAdditionalAddressDTO, etc.). - Deprecate
address
field in request DTOs
Marked with@deprecated
and runtime warnings; kept for backward compatibility until cutoff date. - Update fromArray logic
- Request DTOs: Fallback logic to populate
street_name
fromaddress
if needed (for backward compatibility). - Response DTOs: No fallback; fields are mapped exactly as returned by bexio.
- Request DTOs: Fallback logic to populate
Request Classes
- Use new structured fields in payloads
Payloads now usestreet_name
,house_number
,address_addition
. - Ensure
address
is not sent (except for legacy support)
address
is only included for backward compatibility, with clear deprecation warning and cutoff date.
Response Handling
- Parse and expose structured fields
All new fields are mapped in response DTOs. - Preserve
address
field for backward compatibility
address
is exposed as-is, with no transformation.
Validation
- Warn if
address
is used
Runtime deprecation warnings are triggered ifaddress
is set in DTOs.
Tests
- Replace/add tests for structured fields
Update or add tests to either cover both legacy (address
) and new structured fields or only new structured fields.
Documentation
- Update README and code comments to reflect the change
Add migration notes, usage examples for new fields, and deprecation policy foraddress
.
📅 Timeline
- Structured fields became available: June 2025
address
will be rejected after 07.12.2025
📎 References
- bexio API changelog
- Official bexio API breaking change email (June 2025):
Dear bexio API user,
We would like to inform you about an adjustment of our API, which is a breaking change.
Starting 08.12.2025, all contact- and additional addresses must be created and edited with the structured address fields. The currentaddress
field won’t be accepted anymore by that time.This is being done in the context of a regulatory adjustment in the Swiss Payment Standards, which require the use of the structured form of recipient addresses when transferring payments and generating payslips with QR codes.
Specifically, the following Contact API v2 endpoints and fields are affected:
Marked the
address
field as deprecated and added the fieldsstreet_name
,house_number
, andaddress_addition
to the request payload of the following endpoints:Contacts:
- Bulk Create Contacts
- Create Contact
- Edit Contact
Additional Addresses:
- Create Additional Address
- Edit Additional Address
Added the same fields to the response body of the following Contact API v2 endpoints:
Contacts:
- Bulk Create Contacts
- Create Contact
- Edit Contact
- Fetch a List of Contacts
- Fetch a Contact
- Search Contacts
Additional Addresses:
- Create Additional Address
- Edit Additional Address
- Fetch a List of Additional Addresses
- Fetch an Additional Address
- Search Additional Addresses
The new structured address fields will be available in the beginning of June.
Please make sure that you do not send the
address
field in the payload after 07.12.2025, otherwise the request will result in an error.Sincerely
Your bexio API team
⚠️ Impact
This is a breaking change for all consumers who use Create
or Edit
endpoints for contacts or additional addresses.
Action is required before 08.12.2025 to ensure continued compatibility with the Bexio API.