Knowledge base MessagesEntitiesAttributesCode listsErrors and fixesProcessesRolesReleasesGlossaryEcosystemCompare Validator NL EN

Release 2027 · Schema version 001.05 · New in Release 2027

SIVI message 15 (00557): Corporate actions (VB-PUO)

Message 15 is new in Release 2027 and reports corporate actions on investment products that have been processed in the asset administration but are not automatically visible in the PUO's systems: cash dividend, stock dividend, product changes and rebates. This keeps the PUO administration in sync with the asset manager's and ensures cash and unit mutations are processed correctly.

Sender
The asset-management chain: the investment administrator, the fiduciary manager or another asset-management party, depending on the set-up
Receiver
Pension administrator (PUO)
Timing
Ad hoc, event-driven
Arrangement
SPR and FPR
afdDefinitionName
VBPUO-001.00-Bericht_15._Corporate_Actions_(00557)

Message structure

Entities with cardinality [min..max] and number of attributes; click for the entity page.

Attributes (43)

EntityAttributeTypeV/OCode listDescription
chunking.default currentChunkId string · max 70 V Unique reference (id) of the current chunk.
chunking.default chunkSequenceNumber integer V Sequence number of the current chunk.
chunking.default totalNumberOfChunks integer V Total number of chunks the message has been split into.
chunking.default chunkFragmentPaths array[string] V Array of JMESPath references to the message fragments used within the current chunk.
commonFunctional.default afdDefinitionVersion string · max 80 V 001.05 Version of the AFD-definition.
commonFunctional.default afdDefinitionName string · max 80 V VBPUO-001.00-Bericht_15._Corporate_Actions_(00557) Name of the AFD-definition.
commonFunctional.default originalMessageId string · max 70 O The messageId of the original message, which is replaced by this message.
commonFunctional.default function string V ADNFUN Message function
commonTechnical.default creationDateTime string · format date-time V Date and time (as timestamp) when the message was created.
commonTechnical.default testMessage boolean O Indication whether the message is a test message.
commonTechnical.default messageId string · max 70 V Unique identification of the message. (AFD 2.0 only)
party.receiver refKey string · max 70 V Unique reference key assigned to an entity.
party.receiver organizationName string · max 60 V Name of professional or branch organization.
party.receiver rsinNumber string · max 9 O Governmental identification number for legal entities and associations. (AFD 2.0 only)
party.sender refKey string · max 70 V Unique reference key assigned to an entity.
party.sender applicationSenderName string · max 60 O Name of the application that sends the data.
party.sender organizationName string · max 60 V Name of professional or branch organization.
party.sender rsinNumber string · max 9 O Governmental identification number for legal entities and associations. (AFD 2.0 only)
party.contact emailWork string · max 60 V Work email address.
party.contact workPhoneNumber string · max 60 V Work telephone number.
document.default refKey string · max 70 V Unique reference key assigned to an entity.
document.default fileName string · max 60 V Name of the file under which the attachment can be saved.
document.default fileExtension string V pdf | csv | txt Extension of the file under which the attachment can be saved. For example "pdf", "doc", etc.
party.pensionProvider organizationName string · max 60 V Name of professional or branch organization.
party.pensionProvider rsinNumber string · max 9 O Governmental identification number for legal entities and associations. (AFD 2.0 only)
party.pensionProvider puvCode string V AFDIDP Pension provider
pension.scheme refKey string · max 70 V Unique reference key assigned to an entity.
pension.scheme pensionSchemeName string · max 60 V Name of the pension scheme.
investment.investmentDetails refKey string · max 70 V Unique reference key assigned to an entity.
investment.investmentDetails description string · max 60 V Description.
investment.corporateAction refKey string · max 70 V Sleutel van de Corporate Action.
investment.corporateAction tradeDate string · format date V Transactiedatum van de Corporate Action.
investment.corporateAction instructionDate string · format date V Instructiedatum van de Corporate Action.
investment.corporateAction description string · max 60 V Omschrijving van de Corporate Action.
investment.corporateAction currencyType string · max 3 O ISOVAL Valuta van het contante bedrag.
investment.corporateAction paymentDate string · format date V Betaaldatum van de Corporate Action.
investment.corporateAction corporateActionType string V AFDCOA Type Corporate Action.
investment.corporateAction stockDividendPerUnitNumber number · multipleOf 0.01 O Aantal stockdividend per eenheid.
investment.corporateAction cashDividendPerUnitAmount number · multipleOf 0.01 O Contant bedrag per eenheid.
investment.corporateAction stockDividendTotalNumber number · multipleOf 0.01 O Totaal aantal stockdividend.
investment.corporateAction newProductName string · max 60 O Naam van het nieuwe product.
investment.corporateAction cashDividendTotalAmount number · multipleOf 0.01 O Totaal contant bedrag van de Corporate Action.
investment.corporateAction newProductIdentifier string · max 60 O Identificatie van het nieuwe product.

Sample message

✓ Validated against schema VBPUO-001.05 · 2026-10-14

Sample source: SIVI voorbeeldbericht (Voorbeeldbericht_15). Values are fictitious.

{
  "commonTechnical": [
    {
      "entityType": "default",
      "creationDateTime": "2027-03-01T09:00:00+01:00",
      "messageId": "VB-00557-0001",
      "testMessage": true,
      "party": [
        {
          "entityType": "sender",
          "refKey": "BA01",
          "organizationName": "Beleggingsadministrateur Voorbeeld",
          "applicationSenderName": "VoorbeeldApplicatie"
        },
        {
          "entityType": "receiver",
          "refKey": "PUO01",
          "organizationName": "Pensioenuitvoerder Voorbeeld"
        }
      ]
    }
  ],
  "commonFunctional": [
    {
      "entityType": "default",
      "afdDefinitionName": "VBPUO-001.00-Bericht_15._Corporate_Actions_(00557)",
      "afdDefinitionVersion": "001.05",
      "function": "01"
    }
  ],
  "party": [
    {
      "entityType": "pensionProvider",
      "puvCode": "U0130",
      "organizationName": "Bpf. Bouw",
      "pension": [
        {
          "entityType": "scheme",
          "refKey": "REG-01",
          "pensionSchemeName": "Basisregeling Voorbeeld",
          "investment": [
            {
              "entityType": "investmentDetails",
              "refKey": "QZ00000010034",
              "description": "Aandelenfonds Wereld Voorbeeld",
              "investment": [
                {
                  "entityType": "corporateAction",
                  "refKey": "CA-0001",
                  "corporateActionType": "1",
                  "description": "Cash dividend Q4 2026",
                  "tradeDate": "2027-03-10",
                  "instructionDate": "2027-03-08",
                  "paymentDate": "2027-03-15",
                  "currencyType": "EUR",
                  "cashDividendPerUnitAmount": 0.42,
                  "cashDividendTotalAmount": 525000
                },
                {
                  "entityType": "corporateAction",
                  "refKey": "CA-0002",
                  "corporateActionType": "2",
                  "description": "Stockdividend 2026",
                  "tradeDate": "2027-03-10",
                  "instructionDate": "2027-03-08",
                  "paymentDate": "2027-03-15",
                  "stockDividendPerUnitNumber": 0.02,
                  "stockDividendTotalNumber": 25000
                },
                {
                  "entityType": "corporateAction",
                  "refKey": "CA-0003",
                  "corporateActionType": "99",
                  "description": "Rebate beheervergoeding Q4 2026",
                  "tradeDate": "2027-03-12",
                  "instructionDate": "2027-03-11",
                  "paymentDate": "2027-03-17",
                  "currencyType": "EUR",
                  "cashDividendTotalAmount": 18375.4
                }
              ]
            },
            {
              "entityType": "investmentDetails",
              "refKey": "QZ00000010117",
              "description": "Obligatiefonds Voorbeeld",
              "investment": [
                {
                  "entityType": "corporateAction",
                  "refKey": "CA-0004",
                  "corporateActionType": "3",
                  "description": "Naamswijziging en nieuwe identificatie",
                  "tradeDate": "2027-03-20",
                  "instructionDate": "2027-03-18",
                  "paymentDate": "2027-03-20",
                  "newProductName": "Obligatiefonds Duurzaam Voorbeeld",
                  "newProductIdentifier": "QZ00000020272"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}

Rules and consistency checks

  • corporateActionType comes from code list AFDCOA: 1 cash dividend, 2 stock dividend, 3 product change and 99 other. The schema refers to the code-list file next to the schema for it (issue #137); the list AFDCAE with cashDividend, stockDividend, productChange and rebate only existed in the pre-release.
  • A rebate is for now corporateActionType 99 with a description; it uses the cash dividend fields: SIVI's sample puts the amount in cashDividendTotalAmount, with currencyType.
  • A product change fills newProductIdentifier and newProductName; a stock dividend fills stockDividendTotalNumber and stockDividendPerUnitNumber.
  • instructionDate, tradeDate and paymentDate sit on the corporate action itself and describe the timeline; since the final Release 2027 message 15 has no financialInformation.reportingPeriod any more. investment.investmentDetails identifies the product. Dividend amounts and numbers have two decimals.

Pitfalls

  • A message 15 built on the July pre-release is rejected: the codes cashDividend, stockDividend, productChange and rebate no longer exist, and financialInformation is an unknown field. The version number 001.05 stayed the same.
  • A validator that does not find the code-list file next to the schema (corporateActionType refers to …-afdCodelists.json, not to sivi.org) cannot compile the schema.

Errors and fixes

Frequently asked questions

Why a separate message for corporate actions?

Because dividends, rebates and product changes cause cash and unit mutations that do not follow from orders (5/6) or value information (13); without a notification the PUO administration drifts from the asset manager's.

Change history

  • v1.4.0 (Release 2027): new message; the AFD 2.0 release of April 2026 added the entityType corporateAction.
  • Final Release 2027 (12 October 2026): code list AFDCOA (1, 2, 3, 99) instead of AFDCAE; financialInformation.reportingPeriod removed; dividend fields two decimals (issue #137).

Schema file: VBPUO-001.00-Bericht_15._Corporate_Actions_(00557).json · JSON-schema (001.05) · code-list file for this schema · GitHub

Attribution. Source: SIVI – VB-PUO Standard. Schemas, attribute descriptions and code lists are taken unchanged from the VB-PUO Standard (owned by the Pensioenfederatie, managed by SIVI) and shown with their release and version. Explanations, examples, error descriptions and translations are by WTP Data Lab and are not part of the standard. GitHub Stichting-SIVI/VBPUOdsk · Manual · sivi.org