{"$schema":"https://json-schema.org/draft/2020-12/schema","description":"JSON Schema SIVI 2.0","//comment":{"functionDescription":"VBPUO_Feedback_Message","afdDefinitionChangeLog":"20260701 uitlevering (AOS 001.02) - (pre)release 2027 (feedback message)"},"$defs":{"commonFunctional":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"default"},"afdDefinitionName":{"description":"Name of the AFD-definition. (NL: De AFD definitienaam van o.a. webservices en verzekeringsproducten.)","customDescription":"Name of the AFD-definition, refers to the Feedback message itself.","type":"string","const":"VBPUO_Feedback_Message-001.02-VBPUO_Feedback_Message"},"afdDefinitionVersion":{"description":"Version of the AFD-definition. (NL: Met AFD definitieversienummer wordt aangegeven over welke versie van de (product)definitie wordt gecommuniceerd.)","customDescription":"Version of the AFD-definition, refers to the Feedback message itself.","type":"string","const":"001.02"},"originalMessageId":{"description":"The messageId of the original message, which is replaced by this message. (NL: MessageId van het oorspronkelijke bericht, dat wordt vervangen door dit bericht.)","customDescription":"The commonTechnical.messageID of the original message for which the status and/or errors are being sent to the Feedback endpoint.","type":"string","maxLength":70},"function":{"description":"Message function (NL: Berichtfunctie)","codelistName":"ADNFUN","type":"string","oneOf":[{"const":"23"}]},"statusType":{"description":"Status (NL: Status)","customDescription":"Status of the proccessing of the original message for which the status and/or errors are being sent to the Feedback endpoint. Message statuses are either 'Accepted (8 - Geaccepteerd)' or 'Not Accepted (0 - Afgewezen).\n","codelistName":"ADNSTS","type":"string","oneOf":[{"const":"0"},{"const":"8"}]},"originalMessageType":{"description":"Message type of the original request to which this message is a response. (NL: Berichtsoort van het oorspronkelijke bericht waarop dit bericht een response is.)","type":"string","oneOf":[{"const":"0001a"},{"const":"0001b"},{"const":"0001c"},{"const":"00002"},{"const":"00541"},{"const":"00542"},{"const":"00551"},{"const":"00552a"},{"const":"00552b"},{"const":"00553"},{"const":"00554"},{"const":"00555a"},{"const":"00555b"},{"const":"00556"}]}},"required":["entityType","afdDefinitionName","afdDefinitionVersion","originalMessageId","function","statusType"]},"commonTechnical":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"default"},"creationDateTime":{"description":"Date and time (as timestamp) when the message was created. (NL: Datum en tijd van het aanmaken van het bericht.)","customDescription":"Creation datetime of the Feedback message itself.","type":"string","format":"date-time"},"messageId":{"description":"Unique identification of the message. (AFD 2.0 only)","customDescription":"Unique identification of the Feedback message itself.","type":"string"},"testMessage":{"description":"Indication whether the message is a test message. (NL: Indicatie of sprake is van een testbericht.)","type":"boolean"},"party":{"type":"array","uniqueItems":true,"allOf":[{"minContains":0,"maxContains":1,"contains":{"$ref":"#/$defs/partyReceiver"}},{"minContains":0,"maxContains":1,"contains":{"$ref":"#/$defs/partySender"}}]}},"required":["entityType","creationDateTime","messageId"]},"partyReceiver":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"receiver"},"organizationName":{"description":"Name of professional or branch organization. (NL: Naam beroeps of branche organisatie.)","customDescription":"Naam van de ontvanger(s) (organisatie (s))","type":"string","maxLength":60},"refKey":{"description":"Unique reference key assigned to an entity. (NL: Entiteitsreferentie is een unieke referentie sleutel die aan een entiteit wordt toegekend.)","type":"string","maxLength":70},"rsinNumber":{"description":"Governmental identification number for legal entities and associations. (AFD 2.0 only)","customDescription":"Governmental identification number for legal entities and associations (RSIN)","type":"string","maxLength":9}},"required":["entityType","organizationName","refKey"]},"partySender":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"sender"},"refKey":{"description":"Unique reference key assigned to an entity. (NL: Entiteitsreferentie is een unieke referentie sleutel die aan een entiteit wordt toegekend.)","type":"string","maxLength":70},"applicationSenderName":{"description":"Name of the application that sends the data. (NL: Naam van de applicatie die de gegevens verzendt.)","customDescription":"Naam van de applicatie die het bericht heeft aangemaakt","type":"string","maxLength":60},"organizationName":{"description":"Name of professional or branch organization. (NL: Naam beroeps of branche organisatie.)","customDescription":"Organisatie naam van de afzender","type":"string","maxLength":60},"rsinNumber":{"description":"Governmental identification number for legal entities and associations. (AFD 2.0 only)","customDescription":"Governmental identification number for legal entities and associations (RSIN)","type":"string","maxLength":9},"party":{"type":"array","uniqueItems":true,"allOf":[{"minContains":0,"maxContains":9,"contains":{"$ref":"#/$defs/partyContact"}}]}},"required":["entityType","refKey","organizationName"]},"partyContact":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"contact"},"workPhoneNumber":{"description":"Work telephone number. (NL: Telefoonnummer werk)","customDescription":"Werk telefoonnummer","type":"string","maxLength":60},"emailWork":{"description":"Work email address. (NL: E-mail adres werk)","customDescription":"Werk emailadres","type":"string","maxLength":60}},"required":["entityType","workPhoneNumber","emailWork"]},"error":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"default"},"refKey":{"description":"Unique reference key assigned to an entity. (NL: Entiteitsreferentie is een unieke referentie sleutel die aan een entiteit wordt toegekend.)","type":"string"},"errorCode":{"description":"Error code (NL: Soort foutmelding code)","codelistName":"ADNFTM","type":"string","oneOf":[{"const":"09"},{"const":"11"},{"const":"12"},{"const":"13"},{"const":"14"},{"const":"99"}]},"errorCodeExplanation":{"description":"Explanation of the error message. (NL: Toelichting op de soort foutmelding.)","type":"string","maxLength":1000}},"required":["entityType","refKey","errorCode","errorCodeExplanation"]},"partyPensionProvider":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"pensionProvider"},"organizationName":{"description":"Name of professional or branch organization. (NL: Naam beroeps of branche organisatie.)","customDescription":"party.pensionProvider.organizationName of the original message for which the status and/or errors are being sent to the Feedback endpoint .","type":"string"},"puvCode":{"description":"Pension provider (NL: Pensioenuitvoerder)","customDescription":"party.pensionProvider.puvCode of the original message for which the status and/or errors are being sent to the Feedback endpoint ","codelistName":"AFDIDP","$ref":"https://www.sivi.org/afd-online-tool/json/2020-12/AFDIDP.json#/$defs/AFDIDP","type":"string"}},"required":["entityType","organizationName","puvCode"]}},"type":"object","additionalProperties":false,"properties":{"commonFunctional":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":1,"contains":{"$ref":"#/$defs/commonFunctional"}}]},"commonTechnical":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":1,"contains":{"$ref":"#/$defs/commonTechnical"}}]},"error":{"type":"array","uniqueItems":true,"allOf":[{"minContains":0,"maxContains":999,"contains":{"$ref":"#/$defs/error"}}]},"party":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":1,"contains":{"$ref":"#/$defs/partyPensionProvider"}}]}},"required":["commonFunctional","commonTechnical","party"]}