UC04 Distribueer nummer

De use case 'Distribueer nummer' beschrijft de stappen van het genereren en distribueren van nummers in batches.

Hoofdscenario

Initiatie

Ontvang bericht “aanvragen nummers”

De use case start met de ontvangst van het bericht “aanvragen nummers”. In het bericht “aanvragen nummers” staan de volgende gegevens:

Vraagbericht

  • Identificatie afzender
  • Berichtnummer afzender
  • Instantie
  • Aantal nummers

Leg bericht “aanvragen nummers” vast

Het BV BSN-berichtnummer wordt toegekend en het vraagbericht wordt vastgelegd in het berichtenlogboek. Zie use case “Leg bericht vast”.

Autoriseer verzoek

De autorisatie wordt aangevraagd en verleend. Zie use case “Autoriseer verzoek” (zie ook Alternatieve scenario´s 1).

Verwerking

Controleer bericht

Hier wordt gecontroleerd of de velden uit het vraagbericht goed gevuld zijn. De inhoud van het bericht moet voldoen aan de volgende eisen:

  • De afzender moet gevuld zijn (zie ook Alternatieve scenario´s 2)
  • Het berichtnummer van de afzender moet gevuld zijn (zie ook Alternatieve scenario´s 3)
  • De instantie moet gevuld zijn (zie ook Alternatieve scenario´s 4)
  • Het aantal nummers moet gevuld zijn (zie ook Alternatieve scenario´s 5)

Controleer nummers in voorraad

Er wordt gecontroleerd of er voldoende nummers in voorraad zijn:

  • Als het gewenst aantal nummers in het vraagbericht kleiner of gelijk is aan het maximum, wordt gecontroleerd of de voorraad nummers groter is dan het aantal nummers in het vraagbericht
  • Als het gewenst aantal nummers in het vraagbericht groter is dan het maximum, wordt gecontroleerd of de voorraad nummers groter is dan het maximum. Toelichting: de voorraad nummers mag niet kleiner zijn dan het maximum aantal te leveren nummers.

Het maximum is een instelbare variabele. Indien er onvoldoende nummers in voorraad zijn, zie Alternatieve scenario’s 6.

Maak batch aan

Het systeem maakt een nieuwe batch aan. Van een batch legt het systeem de volgende gegevens vast (Zie ook Alternatieve scenario´s 7):

Batch
Datum/tijd Systeemdatum-tijd van distributie van de batch
Batchnummer
Instantie Instantie waaraan de batch wordt
gedistribueerd (uit het vraagbericht)

Registreer te distribueren nummers

Voordat de wijziging in het nummerregister wordt doorgevoerd, wordt de oude situatie in de nummerhistorie vastgelegd. Het gewenste aantal nummers (of het maximum aantal, als het gewenste aantal het maximum overschrijdt) wordt in de batch opgenomen. Bij ieder opgenomen nummer wordt het volgende in het nummerregister gewijzigd
(Zie Alternatieve scenario´s 8):

  • de status wordt omgezet van “aangemaakt” naar “gedistribueerd”;
  • het nummer van de batch waarin het nummer is opgenomen wordt geregistreerd;
  • de instantie waaraan de batch wordt gedistribueerd wordt bij het nummer vermeld in het veld “instantie”;
  • Datum/tijd van wijziging.

Afronding

Stel antwoordbericht “aanvragen nummers” samen

Op basis van de batch stelt het systeem een antwoordbericht samen. In dit bericht staan de volgende gegevens:

Antwoordbericht

  • Berichtnummer afzender
  • BV BSN Berichtnummer
  • Batchnummer
  • Nummers
  • Aantal nummers
  • Berichtresultaatcode (4000)
  • Omschrijving berichtresultaat (“Verwerking bericht succesvol”)

Leg antwoordbericht “aanvragen nummers” vast

Het antwoordbericht wordt vastgelegd in het berichtenlogboek. Zie use case “Leg bericht vast”.

Bied antwoordbericht “aanvragen nummers” aan

Het antwoordbericht wordt aangeboden aan de actor.

Vul het auditlog

Het systeem registreert in het auditlog het resultaat van alle bovenstaande stappen. De volgende gegevens worden hierbij vastgelegd (Zie ook Alternatieve scenario´s 9):

Tabel
Gegevens auditlog Toelichting
Huidige datum en tijd Systeemdatum-tijd
Identificatie afzender DN uit het certificaat
BV BSN-berichtnummer Het toegekende BV BSN
berichtnummer
Berichtnummer afzender Overnemen uit vraagbericht
Indicatie eindgebruiker/instantie Overnemen uit vraagbericht
Uitgevoerde actie De stap die uitgevoerd is
Resultaat van de uitgevoerde actie Resultaat van de uitgevoerde
stap
Resultaatcode Berichtresultaatcode uit het
antwoordbericht

Wanneer alle stappen met succes zijn doorlopen, worden de voorkomens van de betreffende stappen in het auditlog verwijderd. Van het verwerkte bericht wordt één nieuw voorkomen aangemaakt met de volgende gegevens:

Tabel
Gegevens auditlog Toelichting
Huidige datum en tijd Datum-tijd van de eerste stap
van het auditlog van betreffende
bericht
Identificatie afzender DN uit het certificaat
BV BSN-berichtnummer Het toegekende BV BSN
berichtnummer
Berichtnummer afzender Overnemen uit vraagbericht
Indicatie eindgebruiker/instantie Overnemen uit vraagbericht
Uitgevoerde actie “Bericht verwerkt”
Resultaat van de uitgevoerde actie “Succesvol"
Resultaatcode Berichtresultaatcode uit het
antwoordbericht

Alternatieve scenario's

Alternatief 1: Autorisatie mislukt

Indien de autorisatie wordt geweigerd, wordt de volgende melding verstuurd naar de afzender “Afzender niet geautoriseerd” (berichtresultaatcode 4). Daarnaast wordt een melding in het systeemfoutenlogboek opgenomen. Hierna wordt verdergegaan met de
afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving worden opgenomen.

Alternatief 2: Identificatie afzender in vraagbericht is niet gevuld

Indien het veld Identificatie afzender van het vraagbericht niet gevuld is, wordt de volgende foutmelding naar de afzender verstuurd ”De afzender van het bericht moet gevuld zijn” (berichtresultaatcode 8). Hierna wordt verdergegaan met de afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving
worden opgenomen.

Alternatief 3: Berichtnummer afzender in vraagbericht is niet gevuld

Indien het veld berichtnummer afzender van het vraagbericht niet gevuld is, wordt de volgende foutmelding naar de afzender verstuurd ”Het berichtnummer van de afzender moet gevuld zijn” (berichtresultaatcode 9). Hierna wordt verdergegaan met de afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving
worden opgenomen.

Alternatief 4: Instantie in vraagbericht is niet gevuld

Indien het veld instantie van het vraagbericht niet gevuld is, wordt de volgende foutmelding naar de afzender verstuurd ”Er is een fout opgetreden” (berichtresultaatcode 2). Hierna wordt verdergegaan met de afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving worden opgenomen.

Alternatief 5: Aantal nummers is niet gevuld

Indien het gewenste aantal nummers niet is ingevuld, wordt de volgende foutmelding “Het gewenst aantal nummers moet opgegeven worden” naar de afzender verstuurd (berichtresultaatcode 4002). Hierna wordt verdergegaan met de afronding, waarbij in het
antwoordbericht de genoemde berichtresultaatcode en omschrijving worden opgenomen.

Alternatief 6: Onvoldoende nummers in voorraad

Indien er onvoldoende nummers in voorraad zijn, wordt de melding ”Er is een fout opgetreden” (berichtresultaatcode 2) verstuurd naar de afzender. Daarnaast wordt een melding in het systeemfoutenlogboek opgenomen. Hierna wordt verdergegaan met de afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving worden opgenomen.

Alternatief 7: Fout bij aanmaken batch

Indien er een fout optreedt bij het aanmaken van een batch, wordt de melding ”Er is een fout opgetreden” (berichtresultaatcode 2) verstuurd naar de afzender. Daarnaast wordt een melding in het systeemfoutenlogboek opgenomen. Hierna wordt verdergegaan met de afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving worden opgenomen.

Alternatief 8: Fout bij registreren nummers

Indien er een fout optreedt bij het registreren van nummers, wordt de melding ”Er is een fout opgetreden” (berichtresultaatcode 2) verstuurd naar de afzender. Het nummerregister wordt teruggebracht in de toestand, zoals die was voor de start van de verwerking van het bericht Daarnaast wordt een melding in het systeemfoutenlogboek
opgenomen.Hierna wordt verdergegaan met de afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving
worden opgenomen.

Alternatief 9: Fout bij vullen auditlog

Indien het auditlog niet gevuld kan worden, wordt een melding in het systeemfoutenlogboek opgenomen. Aan de afzender van het bericht wordt de melding "Er is een fout opgetreden" (berichtresultaatcode 2) verstuurd. De verwerking van het bericht zal stoppen. Indien het tussenstappen betreft wordt direct verdergegaan met de
afronding, waarbij in het antwoordbericht de genoemde berichtresultaatcode en omschrijving worden opgenomen. Indien het de laatste stap betreft, zal wel de beheerorganisatie, maar niet de afzender hierover geïnformeerd worden.

Subprocessen

Niet van toepassing.

Belangrijke scenario’s

Niet van toepassing.

Precondities

  • De actor die het bericht verstuurt, is geauthenticeerd (zie use case: authenticeren).

Postcondities

  • Alle ondernomen acties zijn vastgelegd in het auditlog;
  • Er is een antwoordbericht verstuurd naar de actor.

Extensies

Niet van toepassing.

Speciale eisen

Niet van toepassing.