{"$schema":"https://json-schema.org/draft/2020-12/schema","description":"JSON Schema SIVI 2.0","//comment":{"functionDescription":"Bericht_6._Orderconfirmation_(00542)","afdDefinitionChangeLog":"20260715 concept uitlevering (AOS 001.05) - release 2027"},"$defs":{"chunking":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"default"},"currentChunkId":{"description":"Unique reference (id) of the current chunk. (NL: Unieke referentie van de huidige chunk.)","type":"string"},"chunkSequenceNumber":{"description":"Sequence number of the current chunk. (NL: Volgnummer van de huidige chunk.)","type":"integer"},"totalNumberOfChunks":{"description":"Total number of chunks the message has been split into. (NL: Totale aantal chunks waarin het bericht is opgesplitst.)","type":"integer"},"chunkFragmentPaths":{"description":"Array of JMESPath references to the message fragments used within the current chunk. (NL: Array van JMESPath-verwijzingen naar de berichtdelen die gebruikt zijn binnen deze chunk.)","type":"array","items":{"type":"string"}}},"required":["entityType","currentChunkId","chunkSequenceNumber","totalNumberOfChunks","chunkFragmentPaths"]},"commonFunctional":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"default"},"afdDefinitionVersion":{"const":"001.05","description":"Version of the AFD-definition. (NL: Met AFD definitieversienummer wordt aangegeven over welke versie van de (product)definitie wordt gecommuniceerd.)","type":"string","maxLength":80},"afdDefinitionName":{"description":"Name of the AFD-definition. (NL: De AFD definitienaam van o.a. webservices en verzekeringsproducten.)","type":"string","maxLength":80},"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.)","type":"string","maxLength":70},"function":{"description":"Message function (NL: Berichtfunctie)","codelistName":"ADNFUN","type":"string","oneOf":[{"const":"01"},{"const":"02"},{"const":"09"},{"const":"54"}]}},"required":["entityType","afdDefinitionVersion","afdDefinitionName","function"]},"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.)","type":"string","format":"date-time"},"messageId":{"description":"Unique identification of the message. (AFD 2.0 only)","type":"string","maxLength":70},"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":1,"maxContains":1,"contains":{"$ref":"#/$defs/partyReceiver"}},{"minContains":1,"maxContains":1,"contains":{"$ref":"#/$defs/partySender"}}]}},"required":["entityType","creationDateTime","messageId","party"]},"partyReceiver":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"receiver"},"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},"organizationName":{"description":"Name of professional or branch organization. (NL: Naam beroeps of branche organisatie.)","type":"string","maxLength":60},"rsinNumber":{"description":"Governmental identification number for legal entities and associations. (AFD 2.0 only)","type":"string","maxLength":9}},"required":["entityType","refKey","organizationName"]},"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.)","type":"string","maxLength":60},"organizationName":{"description":"Name of professional or branch organization. (NL: Naam beroeps of branche organisatie.)","type":"string","maxLength":60},"rsinNumber":{"description":"Governmental identification number for legal entities and associations. (AFD 2.0 only)","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)","type":"string","maxLength":60},"emailWork":{"description":"Work email address. (NL: E-mail adres werk)","type":"string","maxLength":60}},"required":["entityType","workPhoneNumber","emailWork"]},"document":{"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","maxLength":70},"fileExtension":{"description":"Extension of the file under which the attachment can be saved. For example &quot;pdf&quot;, &quot;doc&quot;, etc. (NL: Extensienaam van het bestand waaronder de bijlage kan worden opgeslagen. Bijvoorbeeld &quot;PDF&quot;, &quot;DOC&quot;, etc.)","type":"string","oneOf":[{"const":"pdf"},{"const":"csv"},{"const":"txt"}]},"fileName":{"description":"Name of the file under which the attachment can be saved. (NL: Naam van het bestand waaronder de bijlage kan worden opgeslagen.)","type":"string","maxLength":60}},"required":["entityType","refKey","fileExtension","fileName"]},"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.)","type":"string","maxLength":60},"rsinNumber":{"description":"Governmental identification number for legal entities and associations. (AFD 2.0 only)","type":"string","maxLength":9},"puvCode":{"description":"Pension provider (NL: Pensioenuitvoerder)","codelistName":"AFDIDP","$ref":"https://www.sivi.org/afd-online-tool/json/2020-12/AFDIDP.json#/$defs/AFDIDP","type":"string"},"pension":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":999,"contains":{"$ref":"#/$defs/pensionScheme"}}]}},"required":["entityType","organizationName","puvCode","pension"]},"pensionScheme":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"scheme"},"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},"pensionSchemeName":{"description":"Name of the pension scheme. (NL: Naam van de pensioenregeling.)","type":"string","maxLength":60},"tradingPortfolioId":{"description":"Custodian&apos;s trading portfolio ID (custody and management of financial assets). (NL: Portefeuille ID van de custodian (bewaren en beheren van financi&#235;le activa).)","type":"string","maxLength":10},"financialInformation":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":1,"contains":{"$ref":"#/$defs/financialInformationReportingPeriod"}}]},"investment":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":999,"contains":{"$ref":"#/$defs/investmentInvestmentDetails"}}]}},"required":["entityType","refKey","pensionSchemeName","tradingPortfolioId","financialInformation","investment"]},"financialInformationReportingPeriod":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"reportingPeriod"},"investmentOrderSettlementDate":{"description":"Date on which the complete cycle of the investment order must be settled. (NL: Datum waarop de volledige cyclus van de beleggingsorder afgewikkeld moet zijn.)","type":"string","format":"date"},"instructionDate":{"description":"Instruction date (date of the order sent by the pension administration organization). (NL: Instructiedatum (datum van de bestelling verzonden door de PUO.)","type":"string","format":"date"}},"required":["entityType","investmentOrderSettlementDate"]},"investmentInvestmentDetails":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"investmentDetails"},"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},"currencyType":{"description":"Currency (NL: ISO valutacodetabel (ISO 4217))","codelistName":"ISOVAL","$ref":"https://www.sivi.org/afd-online-tool/json/2020-12/ISOVAL.json#/$defs/ISOVAL","type":"string"},"description":{"description":"Description. (NL: Omschrijving)","type":"string","maxLength":60},"numberOfUnits":{"description":"Number of units. (NL: Aantal units/eenheden.)","type":"number","multipleOf":0.000001},"financialTransaction":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":99,"contains":{"$ref":"#/$defs/financialTransactionTrade"}}]}},"required":["entityType","refKey","currencyType","description","financialTransaction"]},"financialTransactionTrade":{"type":"object","additionalProperties":false,"properties":{"entityType":{"description":"Unique identification of an entity. (NL: De unieke identificatie van een entiteit.)","type":"string","const":"trade"},"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},"financialInformationRef":{"description":"Unique referral to the refKey of one or more financialInformation entities. (AFD 2.0 only)","type":"array","items":{"type":"string"}},"tradeDate":{"description":"Desired trade date. (NL: Gewenste handelsdatum.)","type":"string","format":"date"},"tradeAmount":{"description":"Trade amount in the currency of the investment. (NL: Aankoopbedrag in de valuta van de belegging.)","type":"number","multipleOf":0.01},"tradeQuantity":{"description":"Number of trade units. (NL: Aantal eenheden van de transactie.)","type":"number","multipleOf":0.000001},"tradePrice":{"description":"Trade price. (NL: Aankoopprijs.)","type":"number","multipleOf":0.000001},"switchType":{"description":"Switch type (NL: Switchsoort)","codelistName":"AFDSWI","$ref":"https://www.sivi.org/afd-online-tool/json/2020-12/AFDSWI.json#/$defs/AFDSWI","type":"string"},"clearingBroker":{"description":"Name of the clearing broker, responsible for the administrative and financial settlement of a transaction. (NL: Naam van de effectenmakelaar verantwoordelijk voor de administratieve en financi&#235;le afwikkeling van de transactie.)","type":"string","maxLength":70},"broker":{"description":"Name of the broker performing (investment) orders. (NL: Naam van de effectenmakelaar die (belegging)orders uitvoert op de markt.)","type":"string","maxLength":70},"commissionAmount":{"description":"Amount of commission for performing a transaction. (NL: Vergoedingsbedrag voor het uitvoeren van een transactie.)","type":"number","multipleOf":0.01},"clearingBrokerCashAccount":{"description":"Cash account (IBAN) of the clearing broker. (NL: Geldrekening (IBAN) van de clearing broker.)","type":"string","maxLength":18},"buySellId":{"description":"Purchase/sales indicator. (NL: Aan- en verkoopindicator.)","type":"string","oneOf":[{"const":"sell"},{"const":"buy"},{"const":"switchfrom"},{"const":"switchto"}]},"counterparty":{"description":"Counterparty of the trade, transfer agent performing the trade. (NL: Tegenpartij, transfer agent die de aan-/verkoop verricht.)","type":"string","maxLength":70},"adjustmentIndicator":{"description":"Indication whether the instruction was adjusted. (NL: Indicatie of de huidige instructie gewijzigd is.)","type":"boolean"},"interestAmount":{"description":"The interest amount. (NL: Rentebedrag.)","type":"number","multipleOf":0.01}},"required":["entityType","refKey","tradeAmount","buySellId","adjustmentIndicator"]}},"type":"object","additionalProperties":false,"properties":{"chunking":{"type":"array","uniqueItems":true,"allOf":[{"minContains":0,"maxContains":1,"contains":{"$ref":"#/$defs/chunking"}}]},"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"}}]},"document":{"type":"array","uniqueItems":true,"allOf":[{"minContains":0,"maxContains":99,"contains":{"$ref":"#/$defs/document"}}]},"party":{"type":"array","uniqueItems":true,"allOf":[{"minContains":1,"maxContains":1,"contains":{"$ref":"#/$defs/partyPensionProvider"}}]}},"required":["commonFunctional","commonTechnical","party"]}