This endpoint allows you to modify the customer details of one or more active Virtual Accounts.
Requirements
- You can send multiple Virtual Accounts with changes in the CSV file. Each Virtual Account and the associated changes go on a separate row.
- All the headers are mandatory, but you should only include values for the headers you wish to modify.
- Headers without changes should have
null - The Virtual Accounts being modified must have
statusactive and - The Virtual Accounts must already have customer details assigned. To assign customer details for the first time, use this endpoint.
- You can make one modification per field per year (
Name,Address, orUltimateBeneficialOwners) and up to two modifications per year for each Virtual Account. Each change to a field counts as a modification.- For example, if you modify both the name and address in one request, that counts as two modifications and no further customer details changes will be allowed for that Virtual Account in the same year. If you modify only the name, you can make one more modification that year, but only to address or ultimatebeneficialowners.
Validation rules:Request payloads are validated according to the ISO 20022 address structure and country-specific postal standards, to determine what constitutes a valid address for the purpose of account ownership.
ISO 20022 defines which fields must be provided. In addition, the validation checks that the submitted values are valid and plausible, not just present.
Post box addresses are not accepted for account ownership, neither are fictional addresses or common testing values.
Modification Reason Codes
A modification request must include one of the following reason codes:
| Code | Description |
|---|---|
| E01 | Change of the trading name |
| E02 | Name change due to marriage status change or legal change |
| E03 | Change of the business address |
| E04 | Change of the ownership/contract person for regulatory reporting |
Modifying multiple values at once
If you want to modify multiple values of the same Virtual Account, include separate columns for each modification:
VirtualAccountNumber,ReasonCode,Name,Address_Department,Address_SubDepartment,Address_StreetName,Address_BuildingNumber,Address_BuildingName,Address_Floor,Address_PostBox,Address_Room,Address_PostCode,Address_TownName,Address_TownLocationName,Address_DistrictName,Address_CountrySubDivision,Address_Country,UltimateBeneficialOwner1_FirstName,UltimateBeneficialOwner1_LastName,UltimateBeneficialOwner2_FirstName,UltimateBeneficialOwner2_LastName,UltimateBeneficialOwner3_FirstName,UltimateBeneficialOwner3_LastName,UltimateBeneficialOwner4_FirstName,UltimateBeneficialOwner4_LastName,UltimateBeneficialOwner5_FirstName,UltimateBeneficialOwner5_LastName
0099876543,E01,Changed name,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null
0099876543,E03,null,null,null,NewStreetName,123,null,null,null,null,1000,Copenhagen,null,null,null,DK,null,null,null,null,null,null,null,null,null,nullClearing optional columns
To clear an existing optional value, pass empty double quotes ("") to the column, for example:
VirtualAccountNumber,ReasonCode,Name,Address_Department,Address_SubDepartment,Address_StreetName,Address_BuildingNumber,Address_BuildingName,Address_Floor,Address_PostBox,Address_Room,Address_PostCode,Address_TownName,Address_TownLocationName,Address_DistrictName,Address_CountrySubDivision,Address_Country,UltimateBeneficialOwner1_FirstName,UltimateBeneficialOwner1_LastName,UltimateBeneficialOwner2_FirstName,UltimateBeneficialOwner2_LastName,UltimateBeneficialOwner3_FirstName,UltimateBeneficialOwner3_LastName,UltimateBeneficialOwner4_FirstName,UltimateBeneficialOwner4_LastName,UltimateBeneficialOwner5_FirstName,UltimateBeneficialOwner5_LastName
0099876543,E03,null,null,null,null,null,null,"",null,null,null,Copenhagen,null,null,null,DK,null,null,null,null,null,null,null,null,null,nullRate and volume limits
- Request limit of maximum 100 modifications per file
- Processing limit of up to 2000 modifications per 10min
Required columns and column constraints
VirtualAccountNumber and ReasonCode are always required.
Other columns marked as required in the table below are only required if you modify the object they are in. For example, Address.TownName and Address.Country are required only when you modify the Address object. They are not required when you update Name or UltimateBeneficialOwners. Additional address fields can also become required depending on the Address.Country value according to the ISO 20022 standard. For example, if you set Country to DK, you must also provide PostCode and StreetName.
The customer detail columns for Name and UltimateBeneficialOwners accept up to 35 characters.
The Address columns have varying limits, which are shown in the table below.
| Header (* required) | Description |
|---|---|
| VirtualAccountNumber* | The Virtual Account number customer details are assigned. Example: 0099876543 |
| ReasonCode* | The reason for the modification. Example: E01 |
| Name | Maximum 35 characters |
| Address.Department | Maximum 70 characters |
| Address.SubDepartment | Maximum 70 characters |
| Address.StreetName | Maximum 70 characters |
| Address.BuildingNumber | Maximum 16 characters |
| Address.BuildingName | Maximum 35 characters |
| Address.Floor | Maximum 70 characters |
| Address.PostBox | Maximum 16 characters |
| Address.Room | Maximum 70 characters |
| Address.PostCode | Maximum 16 characters |
| Address.TownName* | Maximum 35 characters Required if you are changing the Address fields |
| Address.TownLocationName | Maximum 35 characters |
| Address.DistrictName | Maximum 35 characters |
| Address.CountrySubDivision | Maximum 35 characters |
| Address.Country* | Must be a valid country code following the ISO-2 Alpha-2 standard. Required if you are changing the Address fields |
| UltimateBeneficialOwner1-5.FirstName | Maximum 35 characters The first set of FirstName/LastName is required if you are changing BeneficialOwner fields |
| UltimateBeneficialOwner1-5.LastName | Maximum 35 characters The first set of FirstName/LastName is required if you are changing BeneficialOwner fields |
| Address.AddressLine1-7 | 70 characters. Hybrid address lines. Up to 7 columns. Can be used if the data does not fit into the other address properties |
| Address.AddressType | 6 characters. Must be one of the following: HOME, BIZZ, ADDR, PBOX, MLTO, DLVY |
Allowed characters
The allowed characters are:
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9
/ - ? : ( ) . ' +
Space (except leading spaces)
Leading spaces are not allowed
Address1-3 Line Mapping
When you do a modification involving Address the Address1-3 fields are recalculated. The structured address data is mapped into the three legacy address lines (Address1–3) as follows.
Each line has a maximum length of 35 characters; excess content is truncated.
Address1andAddress2may be empty if none of their respective source fields are provided.
The mapping depends on whether the AddressLine, also known as hybrid address, is used.
No hybrid address
Address1
- If
<PostBox>exists →<PostBox> - Else →
<BuildingNumber>+<StreetName>
Address2
Appended in this order (skip missing fields):
<BuildingName>, <Floor>, <Room>, <Department>, <SubDepartment>
Address3
- Always starts with
<Country>(ISO 2 alpha‑2) - Then append, in order (skip missing fields):
<TownName>,<PostCode>,<CountrySubDivision>,<TownLocationName>,<DistrictName>
Hybrid address
Address1
If <AddressLine1> is provided → <AddressLine1>
Address2
- If
<AddressLine1>+<AddressLine2>are provided →<AddressLine2> - Else If
<AddressLine1>is provided → always starts with<Country>(ISO 2 alpha‑2). Then append, in order (skip missing fields):
<TownName>,<PostCode>,<CountrySubDivision>,<TownLocationName>,<DistrictName>
Address3
- If
<AddressLine1>+<AddressLine2>are provided → always starts with<Country>(ISO 2 alpha‑2). Then append, in order (skip missing fields):
<TownName>,<PostCode>,<CountrySubDivision>,<TownLocationName>,<DistrictName> - Else If
<AddressLine1>is provided → In order (skip missing fields):<StreetName>,<BuildingNumber>,<BuildingName>,<Floor>,<PostBox>,<Room>,<Department>,<SubDepartment>
After a successful modification request, you can check the status of the modification process with the status endpoint.
