Nedap Ons is een populair systeem dat zorgprofessionals veel administratieve taken uit handen neemt door personeelsplanningen te maken en deze te koppelen aan Elektronische CliëntenDossiers (ECD).
Visma | Raet levert, met het toonaangevende Youforce platform, een volledig digitale HR-administratie waarmee de werkgever ‘in control’ is over alle processen in de employee lifecycle: van recruitment tot offboarding.
De integratie specialisten van Visma Connect hebben een API connector ontwikkeld die de overdracht van HR data tussen de applicaties van Visma | Raet en Nedap automatiseert.
Youforce API en import ONS Nedap
De Youforce Workforce Management (WFM) API met de Extenions API, welke het mogelijk maakt om flexibel 'eigen' rubrieken toe te voegen, vormen de bron voor de connector. Via de API's wordt de data opgehaald uit HRCoreOnline, waarnodig getransformeerd en aangeboden aan de API van ONS Nedap of via de XML-import van ONS Nedap zodat de data zichtbaar is in de applicatie van ONS Nedap.
Om gebruik te kunnen maken van de connector dien je contact op te nemen met je Customer Success Manager.
Frequentie van het ophalen van de data via de Youforce WFM API en het aanbieden aan ONS Nedap via de API en via de XML-import is ieder uur.
Via onderstaand tabel zie je de betreffende HRCoreOnline-velden die worden uitgewisseld. De velden maken deel uit van een 'scope' (deelgebied), als klant kan je kiezen welke scope(s) je op wilt nemen in de koppeling, bespreek dit met de Raet Consultant.
Benodigde voorbereiding
Eigen rubrieken aanmaken
Een belangrijk deel van de informatie wordt via Eigen rubrieken vastgelegd, deze velden zijn essentieel om ONS Nedap goed te kunnen gebruiken, de aanwezigheid van deze velden in HRCoreOnline zijn dus een vereiste. Het aanmaken van de velden met de refentietabellen kan eenvoudig via XML-importbestanden, vraag die op bij je consultant. De wijze van import in HRCoreOnline staat hier beschreven:
https://community.visma.com/t5/Nieuws-Youforce-HR-Core-Beaufort/Rubrieken-voor-eigen-HRSS-inrichting-betaald-ouderschapsverlof/ba-p/504058
Let op, de velden zijn dan beschikbaar in HRCoreOnline desgewenst dien je ze ook op te nemen in de Selfservice-workflows.
ONS Nedap API en XML-import toegang
Als klant vraag je bij ONS Nedap het volgende aan:
Login credentials voor de ONS Nedap API (met Certificaat)
Gebruikersnaam en wachtwoord voor de XML-import
Je deelt dit met de Raet Consultant.
Youforce API filter
Met behulp van autorisaties filters kan worden bepaald welke medewerkers in de API beschikbaar komen. Bekijk de mogelijkheden via:
https://community.visma.com/t5/Kennisbank-Youforce-API/Autorisatie-WFM-api/ta-p/557545
Inhoud van de koppeling
Scope Basis (Persoonsgegevens, dienstverbanden en inzetregels).
HRCoreOnline - veld
Import via ONS Nedap API-veld
Import via Nedap XML- veld
Opmerking
Persoon
P01001 - Persoonsnummer
employee.identificationNo
P00303 - Voorletters
employee.initials
P01002 - Voornamen
employee.firstName
P00301 - Geboortenaam
employee.birthName
P00302 - Geboortenaam-voorvoegsels
employee.partnerName
P01008 - Samengestelde naam
employee.lastName
P01009 - Samengestelde naam-voorvoegsels
employee.prefix
P00304 - Gebruik achternaam
employee.preferredNameType
P00390 - Partner-naam
employee.partnerName
P00391 - Partner-voorvoegsels
employee.partnerNamePrefix
P00330 - Geslacht
employee.gender
P00321 -Geboorte datum
employee.dateOfBirth
Contact- gegevens
Business: P01035 - E-mail adres werk
employee.emailAddress
Business :P01037 - Telefoonnr werk
employee.mobilePhoneNumber
Dienst- verband
P01101 - volgnr dienstverband
employee.identificationNo-[Volgnr van WFM]
contract.beginDate
contract.endDate
Employee.type
Heeft een vaste waarde 0 (regular)
P08259 - Code contract (on)bepaalde tijd
contract.contractType
0=Onbepaalde tijd; 1=Bepaalde tijd;
2=inhuur
P01119 - Max. uren per week
payroll.Contract.var /contract.hoursVar
Inzet-regels
P01125 - Ingang inzet
teamAssignments.beginDate
P01126 - Einde inzet
teamAssignments.endDate
P01121 - Operationele org. eenheid
team_assignments.teamObjectId
P01124 - Uren inzet per week
payroll.Contract.fixed /contract.hoursFixed
Scope Extensies (Eigen rubrieken)
HRCoreOnline - veld
Import via ONS Nedap API-veld
Import via Nedap XML- veld
Opmerking
Extentie-velden
WKKRT1 - Weekkaartprofiel
Niet beschikbaar in de koppeling?
AGB001 - AGB-code 1
employee. agb.primaryAgbCode
AGB002 - AGB-code 2
employee.agb.agbCode
P09165 - BIG-nummer (1)
employee.bigCode
BIG002 - BIG-nummer (2)
employee.bigCode
BIG003 - BIG-nummer (3)
employee.bigCode
DBC001 - Cono-/DBC-beroepsgroep 1
employee. conoBeroepsgroep
DBC002 - Cono-/DBC-beroepsgroep 2
employee. conoBeroepsgroep
DBC003 - Cono-/DBC-beroepsgroep 3
employee. conoBeroepsgroep
AUT001 - Authenticatienummer
employee. authentication MobilePhone
employee. authenticationNumber
CAO001- CAO-code Ons
collectiveagreement. agreement
DEP001- Deskundigheids-profiel
wordt verstuurd naar ONS Nedap
COMP01- Compensatie berekenen
Niet beschikbaar
COMP02- Compensatie begindatum
Niet beschikbaar
COMP03 -Compensatie uitbetalen
Niet beschikbaar
ONAN001- Onderaannemer
Niet beschikbaar
Scope Prive (Adres, telefoonnummer en e-mailadres)
HRCoreOnline - veld
Import via ONS Nedap API-veld
Import via Nedap XML- veld
Opmerking
Adres (thuis)
P01014 straatnaam
EmployeeAddress.street
Adres (thuis)
P01016 Huisnummer
EmployeeAddress. homeNumber
Adres (thuis)
P01018 Huisnummer toev
EmployeeAddress. homeNumberExtension
Adres (thuis)
P01020 Postcode
EmployeeAddress.zipcode
Adres (thuis)
P01022 Plaatsnaam
EmployeeAddress.city
Adres (thuis)
P01024 Land
EmployeeAddress.country
Adres (post)
P00365 straatnaam
EmployeeAddress.street
Adres (post)
P00367 huisnummer
EmployeeAddress. homeNumber
Adres (post)
P00368 huisnummer toev
EmployeeAddress. homeNumberExtension
Adres (post)
P00308 plaatsnaam
EmployeeAddress.zipcode
Adres (post)
P00313 postcode
EmployeeAddress.city
Adres (post)
P00847 land
EmployeeAddress.country
Telefoonnummer
Home: P01027 - telefoonnr woonadres
EmployeeAddress. telephoneNumber
Telefoonnummer
Mobile : P01036 - Telefoonnr mobiel
EmployeeAddress. telephoneNumber2
E-mailadres
Prive: P01034 - E-mail adres privé
EmployeeAddress.email
Type Adres
typeString
Standaard wordt de volgende waarde gebruikt: 1: Living (bij Adres Thuis) 2: Postal (bij Adres Post)
Type persoon
personType
Standaard wordt de volgende waarde gebruikt: 2: Employee
Type verblijf
residentType
Standaard wordt de volgende waarde gebruikt: 0: Unknown
_______________________
Scope Salaris details
HRCoreOnline - veld
Import via ONS Nedap API-veld
Import via Nedap XML- veld
Opmerkingen
Berekend uurloon
P01160 Berekend garantie uurloon
employee.HourlyWage.wageInCents
employee.HourlyWage.startOfWage
Datum waarop dit uurloon is ingegaan. *Bestaat niet in Youforce, eventueel contract datum nemen
employee.HourlyWage.endOfWage
Datum waarop dit uurloon niet langer valide is.
*Bestaat niet in Youforce eventueel contract datum nemen
_____________________
Scope Verlof (rechten)
HRCoreOnline - veld
Import via ONS Nedap API-veld
Import via Nedap XML- veld
Opmerkingen
Verlofsoort (WET, BW etc.)
P01430 code verlofsoort werknemer
VacationAmount.plb
Jaar verlofrecht
P01440 verlofjaar verlofrechten
CurrentDate
Verlofrechten huidig jaar
P01443 verlofrecht huidig jaar in uren
VacationAmount.absolute
Veel arbodiensten gebruiken een eigen systeem om terugkoppelingsdocumenten op te stellen. Deze documenten zijn bedoeld voor betrokkenen binnen de klantorganisatie.
Om deze terugkoppelingsdocumenten ook in Verzuim Management beschikbaar te krijgen, is het nodig om deze documenten handmatig in te voeren. Dit leidt echter tot dubbele invoer van de documenten en is bovendien foutgevoelig. Om deze dubbele invoer én eventuele fouten te voorkomen, is de SIVI documenten interface ontwikkeld.
Bij gebruikmaking van SIVI documenten leveren de arbodiensten de bestanden geautomatiseerd aan Visma Raet, via een beveiligde verbinding. Deze bestanden worden gekoppeld aan in Verzuim Management bestaande acties die zijn ingericht met een verwijzing naar de Identificatie document soort van SIVI.
Het aanleveren van de bestanden aan Visma Raet gebeurt via onze File API, de werking van de File API is hier gedocumenteerd.
De pagina Getting Started beschrijft hoe je een access token opvraagt en via Publishers/Multipart upload staat de API call beschreven die zorgt voor de upload.
Het bestand is het door SIVI voorgeschreven (XML)format versie 2020, de XML-bestandsnaam moet bij insturen via de File API voldoen aan het volgende formaat:
DO-XXXXXXXXXXXXXXX_YYYYMMDDHHMMSSFFF.xml
of
DO-XXXXXXXXXXXXXXX_YYYYMMDDHHMMSSFF.xml
of
DO-XXXXXXXXXXXXXXX_YYYYMMDDHHMMSS.xml
Voorbeelden:
DO-Tussentijdse evaluatie_20180622010203444.xml
DO-Evaluatie n.a.v. gesprek 1_20180622010203444.xml
Toelichting:
Onderdeel
inhoud
DO-
Vaste waarde
XXXXXXXXX
Vrij in te vullen waarde. Variabel, minimaal 1 positie, maximaal 160 posities. Toegestane waarden:
alfa numeriek: A-Z, a-z, 0-9.
punten.
spaties
_
Vast waarde, scheidingsteken
YYYY
Jaar, 4 posities
MM
Maand, 2 posities
dd
Dag, 2 posities
HH
Uur, 2 posities
MM
Minuut, 2 posities
SS
Seconden, 2 posities
FF of FFF
Milliseconden 0, 2 of 3 posities
.xml
Vaste waarde, extensie
Om het bestand via een File API-call te versturen naar Visma Raet dient businessTypeID 124000 gebruikt te worden in de call. Dit businessTypeID staat in Youforce voor de SIVI Documenten en dient samen met de bestandsnaam als metadata worden toegevoegd aan de API call. Een voorbeeld van de API-call:
Je kan de upload testen door gebruik te maken van onderstaande API-credentials API Key: VRA_fileapi_4001401_uploadsivi Secret Key: F0m9N5kbdXB4xEPQTkQRpd76H4JZw6CYoJQbskQ9zAJDdtu8WalC687ozkjoZ6tm TenantID: f556855c-a0c4-42c7-88f1-98bf5b209393
Met onderstaande variabelen in het SIVI document-XML-bestand voor een succesvolle test-verwerking:
<IdInzndr>ArbodienstX/IdInzndr> <IdOntvngr>Visma - Raet</IdOntvngr>
<HndlsnmOrg>RAET SIVI TEST</HndlsnmOrg> <IdWrkgvrArbdnst>test12345test</IdWrkgvrArbdnst> <AansltnrGeguitwlngArbdnst>6431</AansltnrGeguitwlngArbdnst> <Lhnr>999999999999</Lhnr>
<SrtDocumentCd>999</SrtDocumentCd> <SrtDocumentOms>Overig</SrtDocumentOms> <KenmerkZendPartij>ArbodienstX</KenmerkZendPartij>
<IdWrknmr>1945</IdWrknmr> <IdDnstvbnd>1</IdDnstvbnd> <PersNr>1945</PersNr> <VrzmgvlId>1945 1 1809</VrzmgvlId> <DatEerstVrzmdg>2022-05-24</DatEerstVrzmdg>
Wanneer de File API een 201 (Created) teruggeeft dan is de upload succesvol geweest, neem met Visma Raet contact op om samen te controleren of het document daadwerkelijk is toegevoegd aan het verzuimdossier van de betreffende medewerker (persoonsnummer 1945, verzuimdossier 24-05-2022), een specifieke bestandsnaam van het document (<Bestandsnm>) helpt bij de controle.
Compleet voorbeeld van een XML-bestand:
<?xml version="1.0" encoding="UTF-8"?> <Documenten xmlns="http://www.sivi.org/Verzuimmanagement/Documenten/2020" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <BrAlg xmlns="http://www.sivi.org/Verzuimmanagement/Documenten/2020"> <BrCd>00001</BrCd> <VnrBrCd>00004</VnrBrCd> <AandatBr>2022-03-17</AandatBr> <AantijdBr>11:22:09</AantijdBr> <IdInzndr>ArbodienstX/IdInzndr> <IdOntvngr>Visma - Raet</IdOntvngr> <Berrefnr>39989003</Berrefnr> <TestJN>J</TestJN> <OntvngstbevJN>N</OntvngstbevJN> </BrAlg> <Wrkgvr xmlns="http://www.sivi.org/Verzuimmanagement/Documenten/2020"> <HndlsnmOrg>RAET SIVI TEST</HndlsnmOrg> <IdWrkgvrArbdnst>test12345test</IdWrkgvrArbdnst> <AansltnrGeguitwlngArbdnst>6431</AansltnrGeguitwlngArbdnst> <Lhnr>999999999999</Lhnr> </Wrkgvr> <Document xmlns="http://www.sivi.org/Verzuimmanagement/Documenten/2020"> <IdDocument>39989003</IdDocument> <DatDocument>2022-03-17</DatDocument> <SrtDocumentCd>999</SrtDocumentCd> <SrtDocumentOms>Overig</SrtDocumentOms> <StatDocumentCd>01</StatDocumentCd> <KenmerkZendPartij>ArbodienstX</KenmerkZendPartij> <BestandTypCd>06</BestandTypCd> <Bestandsnm>Inzetbaarheidsadvies.pdf</Bestandsnm> <AdresseringCd>01</AdresseringCd> <Datastring>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Ci9GaXJzdENoYXIgMzIKL0ZvbnREZXNjcmlwdG9yIDExIDAgUgovTmFtZSAvRjEKL0VuY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcKL0Jhc2VGb250IC9BcmlhbE1UCi9TdWJ0eXBlIC9UcnVlVHlwZQovTGFzdENoYXIgMjMzCi9XaWR0aHMgMTIgMCBSCi9UeXBlIC9Gb250Cj4+CmVuZG9iaiAKMTEgMCBvYmogCjw8Ci9Gb250TmFtZSAvQXJpYWxNVAovU3RlbVYgNDQKL0xlYWRpbmcgMzMKL0FzY2VudCA5MDUKL0ZsYWdzIDMyCi9Gb250V2VpZ2h0IDQwMAovWEhlaWdodCAyNTAKL0Rlc2NlbnQgLTIxMAovQXZnV2lkdGggNDQxCi9JdGFsaWNBbmdsZSAwCi9NYXhXaWR0aCAyNjY1Ci9Gb250QkJveCBbLTY2NSAtMjEwIDIwMDAgNzI4XQovVHlwZSAvRm9udERlc2NyaXB0b3IKL0NhcEhlaWdodCA3MjgKPj4KZW5kb2JqIAo2IDAgb2JqIAo8PAovY2EgMQovQk0gL05vcm1hbAovVHlwZSAvRXh0R1N0YXRlCj4+CmVuZG9iaiAKNSAwIG9iaiAKPDwKL0NBIDEKL0JNIC9Ob3JtYWwKL1R5cGUgL0V4dEdTdGF0ZQo+PgplbmRvYmogCjcgMCBvYmogCjw8Ci9GaXJzdENoYXIgMzIKL0ZvbnREZXNjcmlwdG9yIDEzIDAgUgovTmFtZSAvRjIKL0VuY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcKL0Jhc2VGb250IC9UaW1lc05ld1JvbWFuUFNNVAovU3VidHlwZSAvVHJ1ZVR5cGUKL0xhc3RDaGFyIDExOAovV2lkdGhzIDE0IDAgUgovVHlwZSAvRm9udAo+PgplbmRvYmogCjEzIDAgb2JqIAo8PAovRm9udE5hbWUgL1RpbWVzTmV3Um9tYW5QU01UCi9TdGVtViA0MAovTGVhZGluZyA0MgovQXNjZW50IDg5MQovRmxhZ3MgMzIKL0ZvbnRXZWlnaHQgNDAwCi9YSGVpZ2h0IDI1MAovRGVzY2VudCAtMjE2Ci9BdmdXaWR0aCA0MDEKL0l0YWxpY0FuZ2xlIDAKL01heFdpZHRoIDI2MTQKL0ZvbnRCQm94IFstNTY4IC0yMTYgMjA0NiA2OTNdCi9UeXBlIC9Gb250RGVzY3JpcHRvcgovQ2FwSGVpZ2h0IDY5Mwo+PgplbmRvYmogCjkgMCBvYmogCjw8Ci9GaXJzdENoYXIgMzIKL0ZvbnREZXNjcmlwdG9yIDE1IDAgUgovTmFtZSAvRjMKL0VuY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcKL0Jhc2VGb250IC9BcmlhbC1Cb2xkTVQKL1N1YnR5cGUgL1RydWVUeXBlCi9MYXN0Q2hhciAxMTgKL1dpZHRocyAxNiAwIFIKL1R5cGUgL0ZvbnQKPj4KZW5kb2JqIAoxNSAwIG9iaiAKPDwKL0ZvbnROYW1lIC9BcmlhbC1Cb2xkTVQKL1N0ZW1WIDQ3Ci9MZWFkaW5nIDMzCi9Bc2NlbnQgOTA1Ci9GbGFncyAzMgovRm9udFdlaWdodCA3MDAKL1hIZWlnaHQgMjUwCi9EZXNjZW50IC0yMTAKL0F2Z1dpZHRoIDQ3OQovSXRhbGljQW5nbGUgMAovTWF4V2lkdGggMjYyOAovRm9udEJCb3ggWy02MjggLTIxMCAyMDAwIDcyOF0KL1R5cGUgL0ZvbnREZXNjcmlwdG9yCi9DYXBIZWlnaHQgNzI4Cj4+CmVuZG9iaiAKMyAwIG9iaiAKPDwKL1BhcmVudFRyZWUgMTcgMCBSCi9Sb2xlTWFwIDE4IDAgUgovUGFyZW50VHJlZU5leHRLZXkgMQovSyBbMTkgMCBSXQovVHlwZSAvU3RydWN0VHJlZVJvb3QKPj4KZW5kb2JqIAoxOCAwIG9iaiAKPDwKL0RpYWdyYW0gL0ZpZ3VyZQovSGVhZGVyIC9TZWN0Ci9Xb3Jrc2hlZXQgL1BhcnQKL0Zvb3RlciAvU2VjdAovSW5saW5lU2hhcGUgL1NlY3QKL1NsaWRlIC9QYXJ0Ci9Gb290bm90ZSAvTm90ZQovQW5ub3RhdGlvbiAvU2VjdAovQ2hhcnQgL1NlY3QKL0RpYWxvZ3NoZWV0IC9QYXJ0Ci9FbmRub3RlIC9Ob3RlCi9BcnRpZmFjdCAvU2VjdAovQ2hhcnRzaGVldCAvUGFydAovV29ya2Jvb2sgL0RvY3VtZW50Ci9NYWNyb3NoZWV0IC9QYXJ0Ci9UZXh0Ym94IC9TZWN0Cj4+CmVuZG9iaiAKMTcgMCBvYmogCjw8Ci9OdW1zIFswIDIwIDAgUl0KPj4KZW5kb2JqIAoxOSAwIG9iaiAKPDwKL1AgMyAwIFIKL0sgWzIxIDAgUiAyMiAwIFIgMjMgMCBSIDI0IDAgUiAyNSAwIFIgMjYgMCBSIDI3IDAgUiAyOCAwIFIgMjkgMCBSIDMwIDAgUiAzMSAwIFIgMzIgMCBSIDMzIDAgUiAzNCAwIFIgMzUgMCBSIDM2IDAgUiAzNyAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QYXJ0Cj4+CmVuZG9iaiAKMjEgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxOSAwIFIKL0sgWzBdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMjAgMCBvYmogWzIxIDAgUiAyMiAwIFIgMjMgMCBSIDI0IDAgUiAyNSAwIFIgMjYgMCBSIDM4IDAgUiAzOSAwIFIgMzkgMCBSIDM5IDAgUiA0MCAwIFIgNDEgMCBSIDQxIDAgUiA0MSAwIFIgNDIgMCBSIDQzIDAgUiA0MyAwIFIgNDMgMCBSIDQ0IDAgUiA0NSAwIFIgNDYgMCBSIDQ2IDAgUiA0NiAwIFIgNDcgMCBSIDQ4IDAgUiA0OCAwIFIgNDggMCBSIDQ5IDAgUiA1MCAwIFIgNTAgMCBSIDUwIDAgUiA1MSAwIFIgNTIgMCBSIDUzIDAgUiA1MyAwIFIgNTMgMCBSIDU0IDAgUiA1NSAwIFIgNTUgMCBSIDU1IDAgUiA1NiAwIFIgNTcgMCBSIDU3IDAgUiA1NyAwIFIgNTggMCBSIDU5IDAgUiA2MCAwIFIgNjAgMCBSIDYwIDAgUiA2MSAwIFIgNjIgMCBSIDYyIDAgUiA2MiAwIFIgNjMgMCBSIDY0IDAgUiA2NCAwIFIgNjUgMCBSIDY2IDAgUiA2NyAwIFIgNjcgMCBSIDY3IDAgUiA2OCAwIFIgNjkgMCBSIDY5IDAgUiA2OSAwIFIgNzAgMCBSIDcxIDAgUiA3MSAwIFIgNzEgMCBSIDcxIDAgUiA3MSAwIFIgNzEgMCBSIDcxIDAgUiA3MiAwIFIgMjggMCBSIDI5IDAgUiAzMCAwIFIgNzMgMCBSIDc0IDAgUiA3NCAwIFIgNzQgMCBSIDc1IDAgUiA3NiAwIFIgNzYgMCBSIDc2IDAgUiA3NyAwIFIgNzggMCBSIDc4IDAgUiA3OCAwIFIgNzkgMCBSIDgwIDAgUiA4MSAwIFIgODEgMCBSIDgxIDAgUiA4MiAwIFIgODIgMCBSIDgzIDAgUiA4NCAwIFIgODQgMCBSIDg0IDAgUiA4NSAwIFIgODUgMCBSIDg2IDAgUiA4NyAwIFIgODcgMCBSIDg4IDAgUiA4OCAwIFIgODggMCBSIDg5IDAgUiA5MCAwIFIgOTEgMCBSIDkxIDAgUiA5MSAwIFIgOTIgMCBSIDkzIDAgUiA5MyAwIFIgOTMgMCBSIDk0IDAgUiA5NSAwIFIgOTUgMCBSIDk2IDAgUiA5NyAwIFIgOTggMCBSIDk4IDAgUiA5OCAwIFIgOTkgMCBSIDEwMCAwIFIgMTAwIDAgUiAxMDAgMCBSIDEwMSAwIFIgMTAyIDAgUiAxMDIgMCBSIDEwMiAwIFIgMTAzIDAgUiAzMiAwIFIgMzMgMCBSIDM0IDAgUiAzNSAwIFIgMzYgMCBSIDM3IDAgUl0KZW5kb2JqIAoyMiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbMV0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoyMyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbMl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoyNCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbM10KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoyNSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbNF0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoyNiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbNV0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoyNyAwIG9iaiAKPDwKL1AgMTkgMCBSCi9LIFsxMDQgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVGFibGUKPj4KZW5kb2JqIAoxMDQgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAyNyAwIFIKL0sgWzEwNSAwIFIgMTA2IDAgUiAxMDcgMCBSIDEwOCAwIFIgMTA5IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RCb2R5Cj4+CmVuZG9iaiAKMTA1IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA0IDAgUgovSyBbNDQgMCBSIDExMCAwIFIgMTExIDAgUiAxMTIgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVFIKPj4KZW5kb2JqIAo0NCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwNSAwIFIKL0sgMTgKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAoxMTAgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDUgMCBSCi9LIFszOCAwIFIgMzkgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAozOCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExMCAwIFIKL0sgNgovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjM5IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTEwIDAgUgovSyBbNyA4IDldCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTExIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA1IDAgUgovSyBbNDAgMCBSIDQxIDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKNDAgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMTEgMCBSCi9LIDEwCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKNDEgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMTEgMCBSCi9LIFsxMSAxMiAxM10KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMTIgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDUgMCBSCi9LIFs0MiAwIFIgNDMgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo0MiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExMiAwIFIKL0sgMTQKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo0MyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExMiAwIFIKL0sgWzE1IDE2IDE3XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjEwNiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwNCAwIFIKL0sgWzUxIDAgUiAxMTMgMCBSIDExNCAwIFIgMTE1IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RSCj4+CmVuZG9iaiAKNTEgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDYgMCBSCi9LIDMxCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKMTEzIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA2IDAgUgovSyBbNDUgMCBSIDQ2IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKNDUgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMTMgMCBSCi9LIDE5Ci9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKNDYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMTMgMCBSCi9LIFsyMCAyMSAyMl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMTQgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDYgMCBSCi9LIFs0NyAwIFIgNDggMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo0NyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExNCAwIFIKL0sgMjMKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo0OCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExNCAwIFIKL0sgWzI0IDI1IDI2XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjExNSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwNiAwIFIKL0sgWzQ5IDAgUiA1MCAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjQ5IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTE1IDAgUgovSyAyNwovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjUwIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTE1IDAgUgovSyBbMjggMjkgMzBdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTA3IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA0IDAgUgovSyBbNTggMCBSIDExNiAwIFIgMTE3IDAgUiAxMTggMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVFIKPj4KZW5kb2JqIAo1OCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwNyAwIFIKL0sgNDQKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAoxMTYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDcgMCBSCi9LIFs1MiAwIFIgNTMgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo1MiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExNiAwIFIKL0sgMzIKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo1MyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDExNiAwIFIKL0sgWzMzIDM0IDM1XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjExNyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwNyAwIFIKL0sgWzU0IDAgUiA1NSAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjU0IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTE3IDAgUgovSyAzNgovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjU1IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTE3IDAgUgovSyBbMzcgMzggMzldCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTE4IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA3IDAgUgovSyBbNTYgMCBSIDU3IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKNTYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMTggMCBSCi9LIDQwCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKNTcgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMTggMCBSCi9LIFs0MSA0MiA0M10KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMDggMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDQgMCBSCi9LIFs2NSAwIFIgMTE5IDAgUiAxMjAgMCBSIDEyMSAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9UUgo+PgplbmRvYmogCjY1IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA4IDAgUgovSyA1NgovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjExOSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwOCAwIFIKL0sgWzU5IDAgUiA2MCAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjU5IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTE5IDAgUgovSyA0NQovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjYwIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTE5IDAgUgovSyBbNDYgNDcgNDhdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTIwIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA4IDAgUgovSyBbNjEgMCBSIDYyIDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKNjEgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjAgMCBSCi9LIDQ5Ci9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKNjIgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjAgMCBSCi9LIFs1MCA1MSA1Ml0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMjEgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDggMCBSCi9LIFs2MyAwIFIgNjQgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo2MyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyMSAwIFIKL0sgNTMKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo2NCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyMSAwIFIKL0sgWzU0IDU1XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjEwOSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwNCAwIFIKL0sgWzcyIDAgUiAxMjIgMCBSIDEyMyAwIFIgMTI0IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RSCj4+CmVuZG9iaiAKNzIgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDkgMCBSCi9LIDczCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKMTIyIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTA5IDAgUgovSyBbNjYgMCBSIDY3IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKNjYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjIgMCBSCi9LIDU3Ci9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKNjcgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjIgMCBSCi9LIFs1OCA1OSA2MF0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMjMgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMDkgMCBSCi9LIFs2OCAwIFIgNjkgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo2OCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyMyAwIFIKL0sgNjEKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo2OSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyMyAwIFIKL0sgWzYyIDYzIDY0XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjEyNCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEwOSAwIFIKL0sgWzcwIDAgUiA3MSAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjcwIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI0IDAgUgovSyA2NQovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjcxIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI0IDAgUgovSyBbNjYgNjcgNjggNjkgNzAgNzEgNzJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMjggMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxOSAwIFIKL0sgWzc0XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjI5IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTkgMCBSCi9LIFs3NV0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAozMCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbNzZdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMzEgMCBvYmogCjw8Ci9QIDE5IDAgUgovSyBbMTI1IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RhYmxlCj4+CmVuZG9iaiAKMTI1IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMzEgMCBSCi9LIFsxMjYgMCBSIDEyNyAwIFIgMTI4IDAgUiAxMjkgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEJvZHkKPj4KZW5kb2JqIAoxMjYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjUgMCBSCi9LIFs3OSAwIFIgMTMwIDAgUiAxMzEgMCBSIDEzMiAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9UUgo+PgplbmRvYmogCjc5IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI2IDAgUgovSyA4OQovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjEzMCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyNiAwIFIKL0sgWzczIDAgUiA3NCAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjczIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTMwIDAgUgovSyA3NwovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjc0IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTMwIDAgUgovSyBbNzggNzkgODBdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTMxIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI2IDAgUgovSyBbNzUgMCBSIDc2IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKNzUgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzEgMCBSCi9LIDgxCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKNzYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzEgMCBSCi9LIFs4MiA4MyA4NF0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMzIgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjYgMCBSCi9LIFs3NyAwIFIgNzggMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo3NyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEzMiAwIFIKL0sgODUKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo3OCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEzMiAwIFIKL0sgWzg2IDg3IDg4XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjEyNyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyNSAwIFIKL0sgWzg5IDAgUiAxMzMgMCBSIDEzNCAwIFIgMTM1IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RSCj4+CmVuZG9iaiAKODkgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjcgMCBSCi9LIDEwOAovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjEzMyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyNyAwIFIKL0sgWzgwIDAgUiA4MSAwIFIgODIgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo4MCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEzMyAwIFIKL0sgOTAKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo4MSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEzMyAwIFIKL0sgWzkxIDkyIDkzXQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjgyIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTMzIDAgUgovSyBbOTQgOTVdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTM0IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI3IDAgUgovSyBbODMgMCBSIDg0IDAgUiA4NSAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjgzIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM0IDAgUgovSyA5NgovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjg0IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM0IDAgUgovSyBbOTcgOTggOTldCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKODUgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzQgMCBSCi9LIFsxMDAgMTAxXQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjEzNSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyNyAwIFIKL0sgWzg2IDAgUiA4NyAwIFIgODggMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo4NiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEzNSAwIFIKL0sgMTAyCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKODcgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzUgMCBSCi9LIFsxMDMgMTA0XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjg4IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM1IDAgUgovSyBbMTA1IDEwNiAxMDddCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTI4IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI1IDAgUgovSyBbOTYgMCBSIDEzNiAwIFIgMTM3IDAgUiAxMzggMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVFIKPj4KZW5kb2JqIAo5NiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyOCAwIFIKL0sgMTIwCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKMTM2IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI4IDAgUgovSyBbOTAgMCBSIDkxIDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKOTAgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzYgMCBSCi9LIDEwOQovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjkxIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM2IDAgUgovSyBbMTEwIDExMSAxMTJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTM3IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI4IDAgUgovSyBbOTIgMCBSIDkzIDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKOTIgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzcgMCBSCi9LIDExMwovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjkzIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM3IDAgUgovSyBbMTE0IDExNSAxMTZdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTM4IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI4IDAgUgovSyBbOTQgMCBSIDk1IDAgUl0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1RECj4+CmVuZG9iaiAKOTQgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMzggMCBSCi9LIDExNwovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjk1IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM4IDAgUgovSyBbMTE4IDExOV0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAoxMjkgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjUgMCBSCi9LIFsxMDMgMCBSIDEzOSAwIFIgMTQwIDAgUiAxNDEgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVFIKPj4KZW5kb2JqIAoxMDMgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxMjkgMCBSCi9LIDEzMwovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjEzOSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyOSAwIFIKL0sgWzk3IDAgUiA5OCAwIFJdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9URAo+PgplbmRvYmogCjk3IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTM5IDAgUgovSyAxMjEKL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1NwYW4KPj4KZW5kb2JqIAo5OCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEzOSAwIFIKL0sgWzEyMiAxMjMgMTI0XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjE0MCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDEyOSAwIFIKL0sgWzk5IDAgUiAxMDAgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAo5OSAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE0MCAwIFIKL0sgMTI1Ci9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9TcGFuCj4+CmVuZG9iaiAKMTAwIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTQwIDAgUgovSyBbMTI2IDEyNyAxMjhdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMTQxIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTI5IDAgUgovSyBbMTAxIDAgUiAxMDIgMCBSXQovVHlwZSAvU3RydWN0RWxlbQovUyAvVEQKPj4KZW5kb2JqIAoxMDEgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxNDEgMCBSCi9LIDEyOQovVHlwZSAvU3RydWN0RWxlbQovUyAvU3Bhbgo+PgplbmRvYmogCjEwMiAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE0MSAwIFIKL0sgWzEzMCAxMzEgMTMyXQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjMyIDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTkgMCBSCi9LIFsxMzRdCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMzMgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxOSAwIFIKL0sgWzEzNV0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAozNCAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbMTM2XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjM1IDAgb2JqIAo8PAovUGcgNCAwIFIKL1AgMTkgMCBSCi9LIFsxMzddCi9UeXBlIC9TdHJ1Y3RFbGVtCi9TIC9QCj4+CmVuZG9iaiAKMzYgMCBvYmogCjw8Ci9QZyA0IDAgUgovUCAxOSAwIFIKL0sgWzEzOF0KL1R5cGUgL1N0cnVjdEVsZW0KL1MgL1AKPj4KZW5kb2JqIAozNyAwIG9iaiAKPDwKL1BnIDQgMCBSCi9QIDE5IDAgUgovSyBbMTM5XQovVHlwZSAvU3RydWN0RWxlbQovUyAvUAo+PgplbmRvYmogCjEyIDAgb2JqIFsyNzggMCAwIDAgMCAwIDAgMCAzMzMgMzMzIDAgMCAyNzggMzMzIDI3OCAyNzggNTU2IDU1NiA1NTYgNTU2IDU1NiA1NTYgNTU2IDU1NiAwIDU1NiAyNzggMCAwIDU4NCAwIDAgMCA2NjcgNjY3IDcyMiA3MjIgNjY3IDYxMSA3NzggMCAyNzggNTAwIDY2NyA1NTYgODMzIDcyMiA3NzggNjY3IDAgNzIyIDY2NyA2MTEgMCA2NjcgOTQ0IDAgMCAwIDAgMCAwIDAgMCAwIDU1NiA1NTYgNTAwIDU1NiA1NTYgMjc4IDU1NiA1NTYgMjIyIDIyMiA1MDAgMjIyIDgzMyA1NTYgNTU2IDU1NiAwIDMzMyA1MDAgMjc4IDU1NiA1MDAgNzIyIDAgNTAwIDUwMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNTU2XQplbmRvYmogCjE0IDAgb2JqIFsyNTAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAyNTAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDU2NCAwIDAgOTIxIDcyMiA2NjcgNjY3IDcyMiA2MTEgMCA3MjIgNzIyIDMzMyAzODkgMCA2MTEgODg5IDcyMiA3MjIgNTU2IDAgNjY3IDU1NiA2MTEgNzIyIDAgMCAwIDcyMiAwIDMzMyAwIDMzMyAwIDAgMCA0NDQgMCA0NDQgNTAwIDQ0NCAwIDUwMCA1MDAgMjc4IDAgMCAwIDc3OCA1MDAgNTAwIDAgMCAzMzMgMzg5IDI3OCAwIDUwMF0KZW5kb2JqIAoxNiAwIG9iaiBbMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNjExIDAgMCAwIDAgMCA2MTEgODMzIDAgMCAwIDAgMCAwIDAgMCAwIDk0NCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNTU2IDYxMSA1NTYgMCA2MTEgNjExIDI3OCAyNzggNTU2IDI3OCA4ODkgNjExIDYxMSAwIDAgMzg5IDU1NiAzMzMgNjExIDU1Nl0KZW5kb2JqIAoxNDIgMCBvYmogCjw8Ci9SIDMKL1AgLTE4NTIKL08gKHWrmG5uxFnOITeqbmFcXKCuAnccw/R2+L2kqV1cdIhccvhnKQovRmlsdGVyIC9TdGFuZGFyZAovTGVuZ3RoIDEyOAovViAyCi9VICjBoRwhoaepIwH58NjqHiuxAAAAAAAAAAAAAAAAAAAAACkKPj4KZW5kb2JqIAoxNDMgMCBvYmogCjw8Ci9DcmVhdG9yIChu2Jq6Z1V5b+BBXGaHSmy4WVtcKPLG/VxiWSJhmWXjFdaS8LpMBMBcKSRK7mziKQovVGl0bGUgKNtV84MOTxpkhRNqnSR8zF8+Y9LXk4Y0bQarXHTlf8/68d5cdGrSRX0grBjuKQovQXV0aG9yICjVVfOcKQovUHJvZHVjZXIgKG7YmrpnVXlv4EFcZodKbLhZW1wo8sb9XGJZImGZZeMV1pLwukwEwFwpJErubOIpCi9Nb2REYXRlICjUHajHVQ5JP9EEPdl4LYgPcH7Dlc2WfikKL0NyZWF0aW9uRGF0ZSAo1B2ox1UOST/RBD3ZeC2ID3B+w5XNln4pCj4+CmVuZG9iaiB4cmVmCjAgMTQ0CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAwMDAxNSAwMDAwMCBuIAowMDAwMDAwMTMyIDAwMDAwIG4gCjAwMDAwMDU4ODkgMDAwMDAgbiAKMDAwMDAwMDE5MSAwMDAwMCBuIAowMDAwMDA0OTY1IDAwMDAwIG4gCjAwMDAwMDQ5MDcgMDAwMDAgbiAKMDAwMDAwNTAyMyAwMDAwMCBuIAowMDAwMDA0NDg5IDAwMDAwIG4gCjAwMDAwMDU0NjEgMDAwMDAgbiAKMDAwMDAwMDUxOSAwMDAwMCBuIAowMDAwMDA0NjY1IDAwMDAwIG4gCjAwMDAwMTc3ODUgMDAwMDAgbiAKMDAwMDAwNTIwOSAwMDAwMCBuIAowMDAwMDE4MzM0IDAwMDAwIG4gCjAwMDAwMDU2NDIgMDAwMDAgbiAKMDAwMDAxODYwNSAwMDAwMCBuIAowMDAwMDA2Mjg4IDAwMDAwIG4gCjAwMDAwMDYwMDIgMDAwMDAgbiAKMDAwMDAwNjMyOSAwMDAwMCBuIAowMDAwMDA2NTg4IDAwMDAwIG4gCjAwMDAwMDY1MTMgMDAwMDAgbiAKMDAwMDAwNzU5NSAwMDAwMCBuIAowMDAwMDA3NjcwIDAwMDAwIG4gCjAwMDAwMDc3NDUgMDAwMDAgbiAKMDAwMDAwNzgyMCAwMDAwMCBuIAowMDAwMDA3ODk1IDAwMDAwIG4gCjAwMDAwMDc5NzAgMDAwMDAgbiAKMDAwMDAxMjg1OCAwMDAwMCBuIAowMDAwMDEyOTM0IDAwMDAwIG4gCjAwMDAwMTMwMTAgMDAwMDAgbiAKMDAwMDAxMzA4NiAwMDAwMCBuIAowMDAwMDE3MzIzIDAwMDAwIG4gCjAwMDAwMTc0MDAgMDAwMDAgbiAKMDAwMDAxNzQ3NyAwMDAwMCBuIAowMDAwMDE3NTU0IDAwMDAwIG4gCjAwMDAwMTc2MzEgMDAwMDAgbiAKMDAwMDAxNzcwOCAwMDAwMCBuIAowMDAwMDA4NDM4IDAwMDAwIG4gCjAwMDAwMDg1MTUgMDAwMDAgbiAKMDAwMDAwODY4NSAwMDAwMCBuIAowMDAwMDA4NzYzIDAwMDAwIG4gCjAwMDAwMDg5MzYgMDAwMDAgbiAKMDAwMDAwOTAxNCAwMDAwMCBuIAowMDAwMDA4MjcwIDAwMDAwIG4gCjAwMDAwMDkzNzIgMDAwMDAgbiAKMDAwMDAwOTQ1MCAwMDAwMCBuIAowMDAwMDA5NjIzIDAwMDAwIG4gCjAwMDAwMDk3MDEgMDAwMDAgbiAKMDAwMDAwOTg3NCAwMDAwMCBuIAowMDAwMDA5OTUyIDAwMDAwIG4gCjAwMDAwMDkyMDQgMDAwMDAgbiAKMDAwMDAxMDMxMCAwMDAwMCBuIAowMDAwMDEwMzg4IDAwMDAwIG4gCjAwMDAwMTA1NjEgMDAwMDAgbiAKMDAwMDAxMDYzOSAwMDAwMCBuIAowMDAwMDEwODEyIDAwMDAwIG4gCjAwMDAwMTA4OTAgMDAwMDAgbiAKMDAwMDAxMDE0MiAwMDAwMCBuIAowMDAwMDExMjQ4IDAwMDAwIG4gCjAwMDAwMTEzMjYgMDAwMDAgbiAKMDAwMDAxMTQ5OSAwMDAwMCBuIAowMDAwMDExNTc3IDAwMDAwIG4gCjAwMDAwMTE3NTAgMDAwMDAgbiAKMDAwMDAxMTgyOCAwMDAwMCBuIAowMDAwMDExMDgwIDAwMDAwIG4gCjAwMDAwMTIxODMgMDAwMDAgbiAKMDAwMDAxMjI2MSAwMDAwMCBuIAowMDAwMDEyNDM0IDAwMDAwIG4gCjAwMDAwMTI1MTIgMDAwMDAgbiAKMDAwMDAxMjY4NSAwMDAwMCBuIAowMDAwMDEyNzYzIDAwMDAwIG4gCjAwMDAwMTIwMTUgMDAwMDAgbiAKMDAwMDAxMzU0NiAwMDAwMCBuIAowMDAwMDEzNjI0IDAwMDAwIG4gCjAwMDAwMTM3OTcgMDAwMDAgbiAKMDAwMDAxMzg3NSAwMDAwMCBuIAowMDAwMDE0MDQ4IDAwMDAwIG4gCjAwMDAwMTQxMjYgMDAwMDAgbiAKMDAwMDAxMzM3OCAwMDAwMCBuIAowMDAwMDE0NDkyIDAwMDAwIG4gCjAwMDAwMTQ1NzAgMDAwMDAgbiAKMDAwMDAxNDY1MyAwMDAwMCBuIAowMDAwMDE0ODMwIDAwMDAwIG4gCjAwMDAwMTQ5MDggMDAwMDAgbiAKMDAwMDAxNDk5MSAwMDAwMCBuIAowMDAwMDE1MTcwIDAwMDAwIG4gCjAwMDAwMTUyNDkgMDAwMDAgbiAKMDAwMDAxNTMzMSAwMDAwMCBuIAowMDAwMDE0MzE2IDAwMDAwIG4gCjAwMDAwMTU2OTMgMDAwMDAgbiAKMDAwMDAxNTc3MiAwMDAwMCBuIAowMDAwMDE1OTQ4IDAwMDAwIG4gCjAwMDAwMTYwMjcgMDAwMDAgbiAKMDAwMDAxNjIwMyAwMDAwMCBuIAowMDAwMDE2MjgyIDAwMDAwIG4gCjAwMDAwMTU1MjQgMDAwMDAgbiAKMDAwMDAxNjY0MiAwMDAwMCBuIAowMDAwMDE2NzIxIDAwMDAwIG4gCjAwMDAwMTY4OTggMDAwMDAgbiAKMDAwMDAxNjk3NyAwMDAwMCBuIAowMDAwMDE3MTU2IDAwMDAwIG4gCjAwMDAwMTcyMzYgMDAwMDAgbiAKMDAwMDAxNjQ3MiAwMDAwMCBuIAowMDAwMDA4MDQ1IDAwMDAwIG4gCjAwMDAwMDgxNjMgMDAwMDAgbiAKMDAwMDAwOTA5NyAwMDAwMCBuIAowMDAwMDEwMDM1IDAwMDAwIG4gCjAwMDAwMTA5NzMgMDAwMDAgbiAKMDAwMDAxMTkwOCAwMDAwMCBuIAowMDAwMDA4MzQ4IDAwMDAwIG4gCjAwMDAwMDg1OTUgMDAwMDAgbiAKMDAwMDAwODg0NiAwMDAwMCBuIAowMDAwMDA5MjgyIDAwMDAwIG4gCjAwMDAwMDk1MzMgMDAwMDAgbiAKMDAwMDAwOTc4NCAwMDAwMCBuIAowMDAwMDEwMjIwIDAwMDAwIG4gCjAwMDAwMTA0NzEgMDAwMDAgbiAKMDAwMDAxMDcyMiAwMDAwMCBuIAowMDAwMDExMTU4IDAwMDAwIG4gCjAwMDAwMTE0MDkgMDAwMDAgbiAKMDAwMDAxMTY2MCAwMDAwMCBuIAowMDAwMDEyMDkzIDAwMDAwIG4gCjAwMDAwMTIzNDQgMDAwMDAgbiAKMDAwMDAxMjU5NSAwMDAwMCBuIAowMDAwMDEzMTYxIDAwMDAwIG4gCjAwMDAwMTMyNzEgMDAwMDAgbiAKMDAwMDAxNDIwOSAwMDAwMCBuIAowMDAwMDE1NDE3IDAwMDAwIG4gCjAwMDAwMTYzNjQgMDAwMDAgbiAKMDAwMDAxMzQ1NiAwMDAwMCBuIAowMDAwMDEzNzA3IDAwMDAwIG4gCjAwMDAwMTM5NTggMDAwMDAgbiAKMDAwMDAxNDM5NSAwMDAwMCBuIAowMDAwMDE0NzMzIDAwMDAwIG4gCjAwMDAwMTUwNzMgMDAwMDAgbiAKMDAwMDAxNTYwMyAwMDAwMCBuIAowMDAwMDE1ODU4IDAwMDAwIG4gCjAwMDAwMTYxMTMgMDAwMDAgbiAKMDAwMDAxNjU1MiAwMDAwMCBuIAowMDAwMDE2ODA3IDAwMDAwIG4gCjAwMDAwMTcwNjQgMDAwMDAgbiAKMDAwMDAxODg0MiAwMDAwMCBuIAowMDAwMDE4OTk1IDAwMDAwIG4gCnRyYWlsZXIKCjw8Ci9FbmNyeXB0IDE0MiAwIFIKL0luZm8gMTQzIDAgUgovUm9vdCAxIDAgUgovU2l6ZSAxNDQKL0lEIFs8OWUzYTM3MzI0ZjhlYjVjMDA0YjFkMGM3NGJhY2U5MjA+PDJhNGVhYjMwYWQ1MDI5MDljZDlmMDBiYjI3YWY0NzY2Pl0KPj4Kc3RhcnR4cmVmCjE5MjgwCiUlRU9GCg==</Datastring> <Wrknmr> <IdWrknmr>1945</IdWrknmr> </Wrknmr> <Dnstvbnd> <IdDnstvbnd>1</IdDnstvbnd> <PersNr>1945</PersNr> <Vrzm> <VrzmgvlId>1945 1 1809</VrzmgvlId> <DatEerstVrzmdg>2022-05-24</DatEerstVrzmdg> </Vrzm> </Dnstvbnd> </Document> </Documenten>
Account aanmaken op Visma Developer Portal
De Visma Developer portal is te bereiken via
https://oauth.developers.visma.com/service-registry/home
en maak via Create account een account aan
De portal zal via do.not.reply@mail.connect.visma.com je een e-mail sturen met een Activatie account link.
Gebruik bij het registreren het Kvk-nummer als Organization number
Startscherm na inloggen
Desgewenst kun je een collega toevoegen via My team en New member. Jullie hebben dan beiden inzicht in de gegevens van de applicatie.
De volgende stap is het aanmaken van een applicatie.
Een applicatie aanmaken
Door een applicatie aan te maken ontstaat er een API Key en een Secret Key die je gebruikt om de authenticatietoken op te halen.
Kies via het tabblad My Applications voor Add Application
Als application type selecteer Service, dit is het enige type wat door Visma|Raet wordt ondersteund.
Het aanmaken van de applicatie gaat via vier tabbladen, vul de gegevens in op het eerste tabblad Details. Weet dat de opgegeven Client Id wordt gebruikt als API key bij de API-aanroepen.
Je moet zelf de Client Id opgeven.
Testomgeving - Het is tevens mogelijk om gebruik te maken van onze sandbox. Met deze sandbox kun je testen. De applicatie voor de productieomgeving kan ook gekoppeld worden aan de sandbox. Maak hiervoor een 2e Invitation code aan (deze stap wordt later toegelicht).
Via deze applicatie met bijbehorende Client Id en Secret krijg je toegang de data en of bestanden uit de Youforce/HRCoreOnline-omgeving(en). Eén API key-set kan toegang geven tot meerdere klantomgevingen.
Via de Tenant Id die je als Header meestuurt bij het aanvragen van een authenticatie token bepaal je de benodigde klantomgeving.
Access Token Lifetime mag op de default waarde blijven staan. Een aanpassing van deze waarde heeft geen effect op werking van de API, alsmede de opties Include JSON Web Token ID en TestApplication.
Gebruik eerst Save as a draft om vervolgens de applicatie aan te maken via Create, via Next ga je naar het volgende tabblad.
Het tabblad Credentials stelt je in staat om de API Secret aan te maken. Let op, de Secret waarde wordt alleen getoond via de pop up bij het aanmaken, dus neem dit direct over. De pop up toont ook je eerder gekozen ID (API key).
Let op: Wordt de bestaande secret vergeten dan dien je een nieuwe aan te maken, deze wordt dan toegevoegd.
Via het tabblad Integrations selecteer de gewenste Youforce API, oftewel je ‘basis’ API, je gebruikt hiervoor New integration.
Visma Raet zal de opgegeven API’s goedkeuren. Dit gaat via een workflow in de portal, je hoeft daar niks voor te doen. De goedkeuring door Visma Raet kan enkele dagen duren en zolang de goedkeuring niet is verleend kan je de stap van de Visma App Store niet uitvoeren.
Per API dien je de Scope te selecteren welke gebruikt gaat worden in de applicatie. Op deze manier kun je bepaalde functionaliteiten (endpoints) binnen de Youforce API uitsluiten van je applicatie. Je kunt vanzelfsprekend ook alle Scopes selecteren, een API kan ook bestaan uit 1 Scope.
Het tabblad Integrations kan je niet direct bevestigen via Save, dat kan pas op het moment dat Visma|Raet de gekozen API’s bij de applicatie heeft goedgekeurd, dit gaat via een flow je hoeft hier niks voor te doen. De goedkeuring door Visma Raet kan enkele dagen duren en zolang de goedkeuring niet is verleend kan je de stap van de Visma App Store niet uitvoeren.
Je kan door te klikken op stap ‘Visma App store’ naar de laatste stap (mits Visma Raet de API('s) heeft goedgekeurd).
Tabblad Visma App Store, op dit moment stellen wij de Visma App Store niet ter beschikking aan onze klanten.
Voor toegang tot de klantdata genereer je een Invitation Code. Hoe je dit doet staat hieronder verder uitgelegd. Visma Raet zal de toegang tot de klant-data goedkeuren en dan direct de koppeling van klantdata aan je applicatie gereedmaken.
Na Start setup for Visma App Store ziet u onderstaand scherm en dan kies je bij Access level - Audience voor Invite only
Vul ook de url in waar uw product is uitgelegd.
Je bent nu klaar met het aanmaken van de applicatie, de optie Save wordt zichtbaar op het moment dat Visma Raet de applicatie heeft goedgekeurd, je kunt het aanmaken sluiten door bijvoorbeeld op Back to my Applications te klikken.
Wanneer Visma Raet de goedkeuring heeft verleend, ontvang je hier een e-mail van en kun je de volgende stap uitvoeren door de applicatie te koppelen aan klant-data. Dit staat uitgelegd in het volgende hoofdstuk ‘Invitatiecode aanmaken’.
Invitatiecode aanmaken
Met een invitatiecode maak je het mogelijk de klantgegevens op te halen via je applicatie.
Ga naar de Developer Portal https://oauth.developers.visma.com/service-registry/home
Kies voor My Applications. En klik op het potloodje achter de applicatie (Edit).
Kies voor het tabblad Visma App Store. En vervolgens New Invitation Code.
Bij Invitation description vul je de naam van de betreffende klant in. En klik vervolgens op Generate.
Visma Raet zal de toegang tot de klant-data goedkeuren en dan direct de koppeling van klantdata aan je applicatie gereedmaken.
Binnen het beheer van je applicatie en het scherm Integrations is via de tabblad Tenants (default wordt het tabblad Scopes getoond) terug te zien welke klanten (tenants) gekoppeld zijn aan je applicatie. Dit scherm laat ook de bijbehorende TenantID zien. De TenantID is benodigd bij het opvragen van de authenticatie token.
Voorbeeld van een Tenant ID
Testomgeving - Het is tevens mogelijk om gebruik te maken van onze sandbox. Met deze sandbox kun je testen. De applicatie voor de productieomgeving kan ook gekoppeld worden aan de sandbox. Maak hiervoor een Invitation code aan en deel die met Visma Raet.
Note:
De MLM api heeft de status Controlled Available en is enkel nog beschikbaar in overleg met Visma Raet.
De MLM api is een tijdelijke oplossing die op termijn vervangen wordt door de Sivi standaard en specifiek door het Sivi medewerker bericht. Zodra het Sivi medewerker bericht beschikbaar is, moet overgestapt worden op deze marktstandaard en komt de MLM api te vervallen.
Artikel inhoud
Domein model
De MLM api bevat uitsluitend de basis medewerker- en organisatiegegevens. Voor de verzuimgegevens wordt verwezen naar het SIVI bericht Verzuimmeldingen. De SIVI oplossing wordt separaat van deze MLM api aangeboden.
Het model
Entiteiten en velden
Person (Persoon)
Id / personId
Technical and unique id. the Id is unique within the entity and tenant. The id is owned by the core system and can not changed by a user
P01001 - Persoonsnummer
PersonCode
The logical code or number of the employee.
P01001 - Persoonsnummer
Initials
The initials of the employee. Format depends
P00303 - Voorletters
firstNames
The official given names of the employee as stored in the HR Core system
P01002 - Voornamen
KnownAs
The name which is used by the employee as his first name
P01003 - Roepnaam
lastNameAtBirth
The last name at birth of the employee. Also known as the family name
P00301 - Geboortenaam
lastNameAtBirthPrefix
The prefix of the last name at birth
P00302 - Geboortenaam-voorvoegsels
lastName
The last which is currently used by the employee as his last name
P01008 - Samengestelde naam
lastNamePrefix
The prefix of the last name as used currently
P01009 - Samengestelde naam-voorvoegsels
nameAssembleOrder
Code of the assemble order that the core system uses for the last Name. The assemble order is depending on the core system and the logic behind it.
P00304 - Gebruik achternaam
partnerName
The partner last name
P00390 - Partner-naam
partnerNamePrefix
The prefix of the partner last name
P00391 - Partner-voorvoegsels
titlePrefix
The formal title which will be used as a prefix before the name like Doctor, Professor, et cetera
P00305 - Titulatuur voor de naam
titleSuffix
The formal title which will be used as postfix after the name like MSc or Master of Science
P03937 - Titulatuur achter de naam
gender
Gender of the person conform the ISO/IEC 5128 standard (0) Not known (1) Male (2) Female (9) Not applicable
P00330 - Geslacht M = Man / Male V = Vrouw / Female
socialSecurityNumber
Dutch social security number of the employee
P00320 BSN nummer
dateOfBirth
Date of Birth
P00321 -Geboorte datum
deceased
Indicated if the employee deceased Note: most core systems have a date field. In the API this will be translated to boolean
P01005 - Datum overlijden
UserUID
Digital Identity of the user from the portal
PORTAL : Ping ID
emailAddresses
List of the email addresses of the employee. The fields are: type like Business, Private, etc. address
Business: P01035 - E-mail adres werk Private: P01034 - E-mail adres prive
phoneNumbers
list of phone numbers of the employee type like Business, Home, Mobile, et cetera number
Home: P01027 - telefoonnr woonadres Mobile : P01036 - Telefoonnr mobiel Business :P01037 - Telefoonnr werk FaxBusiness : P01039 Faxnr werk FaxHome : P01038 Faxnr prive
Addresses
list of addresses of the employee. The address fields are: addressType like Home, Post, etc. streetName Number streetNumberAdditional postalCode city country
Home: P01014 straatnaam P01016 Huisnummer P01018 Huisnummer toev P01020 Postcode P01022 Plaatsnaam P01024 Land P01012 Adres m.i.v. Postal: P00365 straatnaam P00367 huisnummer P00368 huisnummer toev P00313 postcode P00308 plaatsnaam P00847 land P01011 Adres m.i.v.
Employment (Dienstverband)
Id / employmentId
Technical and unique id. the Id is unique within the entity and tenant. The id is generated by the system and can not changed by a user.
Object Id = "PersonCode" + ContractCode
PersonCode / PersonId
Person code to which the employment is related
P01001 - Persoonsnummer
employmentCode / ContractCode / ContractId
Code of the contract
P01101 - volgnr dienstverband
PayrollClientCode
Logical code of the payroll client. Filter option for Row Authorisation (configuration API)
[P01103 Opdrachtgever]
PayrollInstitutionCode
Logical code of the payroll Institution. Filter option for Row Authorisation (configuration API)
[P01104 Instelling]
hireDate
The hire date of the employment
P00322 - Datum in dienst
dischargeDate
The end date or discharge date of the employment. This is always an "up to and including" date. In unknown the field will not be visible in the API
P00830 - Datum uit dienst
originalHireDate
The first hire date of original hire date of an employee within the organization. This date is important for the tenure or working anniversary of an employee
P00834 -Datum in dienst CAO
employmentType
Type of employment like Internal employee, contractor, "Wachtgelder" Filter option for Row Authorisation (configuration API)
P01102 - Soort arbeidsrelatie
contractType
Type of the contact like indefinite period ('Onbepaalde tijd') or given time ('bepaalde tijd')
P08259 - Code contract (on)bepaalde tijd
jobProfile
Official job title or job profile of the employment. The Job profile contains the following details: shortName: Code or short name of the job profile
P01107 - Primaire functie
classification
group or classification of the employment. Generic field Filter option for Row Authorisation (configuration API)
P01110 - Code doelgroep
organizationUnit
organization unit Id of employment. The Id is a reference to the entity org units
P01106 - Hierarchische org. eenheid
workingAmount
Work amount of employment. amountOfWork: the amount of work unitOfWork: Unit of work that specifies the amount of work like "hours", "days", et cetera periodOfWork: Period of work like "week" or "month" parttimePercentage
P01109 - Uren per week P00404 percentage deelbetrekking
Organisation unit (Organisatie-eenheid)
id
Technical and unique id of the organization Unit. the Id is unique within the entity and tenant. The id is generated by the system and can not changed by a user.
ID
shortName
Code or short name of the organizational unit
OE Code
fullName
Name of the organization unit
OE naam
parentOrgUnit
reference to the parent organizational unit. Empty means that it is organizational unit on the highest level in the company
ParentID
organisationUnitTpe
Type of the organization Unit
address
Address of the organisation Unit - Address - street - number - numberAdditional - postalCode - city
OE Adres
costCenter
default cost center of the organisation unit.
Kostenplaats
IsBlocked
Indicates if the Organization unit is block for adding new employees. note: it is possible there are still employee referring to this Org Unit.
blocked/inactive
Role assignment (roltoewijzing)
id
Technical and unique id of the role assigment. the Id is unique within the entity and tenant. The id is generated by the system and can not changed by a user.
object ID
PersonID / personCode
Technical ID of the Person
Persoonsnummer
shortName
Short name of the role the person will have for this organization, like Manager, HR Professional, Director.
P01062 - Rol
organisationUnit
Id of the organisation Unit
P01061 - Operationele org.eenheid
startDate
Start date from which the role assignment is valid for that employee
P01063 - ingangsdatum roltoewijzing
endDate
end date until when the role assignment is valid
P01064 - einddatum roltoewijzing
Job profile (functie)
id / shortName
Unique id of the Job profile. the Id is unique within the entity and tenant.
P02301 - Code functie
fullName
Name of the Job Profile
P02302 - Omschrijving functie
jobFamily
Job family to which the job profile belongs
P02305 - Code Functiegroep
User (youforce user account)
Id / UserUID
Ping Id or User Id which be used for the SSO solution of Visma Raet
Ping ID
SourceId
Youforce user name
Gebruikersnaam
IdentityId
Identity of the user on the local network
Identity
Note:
De MLM api heeft de status Controlled Available en is enkel nog beschikbaar in overleg met Visma Raet.
De MLM api is een tijdelijke oplossing die op termijn vervangen wordt door de Sivi standaard en specifiek door het Sivi medewerker bericht. Zodra het Sivi medewerker bericht beschikbaar is, moet overgestapt worden op deze marktstandaard en komt de MLM api te vervallen.
De MLM API beschikt over een autorisatie mechanisme waarmee bepaald kan worden tot welke medewerkers en datasets een Medical Leave Management systeem toegang heeft.
Het autorisatie mechanisme bestaat uit de volgende onderdelen:
Autorisatie op basis van API scopes Door het activeren van scopes kunnen externe systemen toegang krijgen tot één of meerdere endpoint en dataset. De scopes zijn vooraf door Visma Raet bepaald en omvatten één of meerdere endpoints, dataset en/of acties.
Autorisatie op medewerkers Met behulp van autorisaties filters kan worden bepaald welke medewerkers in de API beschikbaar komen.
Met dit document willen wij u informeren over de mogelijkheden van deze autorisatievormen in de API. Beide autorisatie mechanismes moeten door een consultant ingericht worden.
Autorisatie op basis van API scopes In de Visma developer portal zijn per API één of meerdere scopes gedefinieerd. Door het activeren van deze scope krijgt een extern systeem toegang tot één of meerdere endpoint en/of data set. Binnen de API worden de volgende scopes onderscheiden.
Scope
Omschrijving
Endpoints
Invitation_only
Scope noodzakelijk om de API te kunnen activeren. Tijdens het activering proces wordt de contractafspraken gecontroleerd en vastgelegd. Deze scope geeft nog geen toegang tot enige vorm van data maar is noodzakelijk voor de onboarding van klanten op de API of applicatie
-
Get_Basic
Get basic data zoals medewerker- & organisatiedata
GET persons GET employments
GET employmentTimelines GET organizationUnits GET roleAssignments GET jobProfiles
GetPrivateContactDetails
Voegt de privé contactgegevens aan de endpoint Person & Employee, zoals post- en woonadres, telefoonnummer vast & mobiel en het email adres.
GET persons
Dit betreft de volgende gegevens: ADRESGEVENS
Home:
P01014 straatnaam P01016 Huisnummer P01018 Huisnummer toev P01020 Postcode P01022 Plaatsnaam P01024 Land
Postal:
P00365 straatnaam P00367 huisnummer P00368 huisnummer toev P00313 postcode P00308 plaatsnaam P00847 land
TELEFOONNUMMERS
Home: P01027 - telefoonnr woonadres Mobile : P01036 - Telefoonnr mobiel
EMAILADRES
Prive: P01034 - E-mail adres privé
Uw consultant kan u helpen bij het activeren / deactiveren van deze scopes binnen de API.
Autorisatie op basis van autorisatie filters
De autorisatie filters hebben betrekking op welke medewerkers zichtbaar zijn in de API. Standaard worden altijd alle medewerkers getoond in de API. Bij het activeren van de API kan een consultant filters inrichten zodat maar een beperkte groep medewerkers via de API beschikbaar komen.
Filteren in de API is mogelijk op de volgende Beaufort velden:
P01102 - Soort Arbeidsrelatie
P01103 - Opdrachtgever
P01104 - Instelling
P01110 - Code doelgroep
P05047 - Selectierubriek MLM api
Een veel voorkomen filter is bijvoorbeeld op Soort Arbeidsrelatie waarbij alleen eigen medewerkers in het extern systeem opgenomen worden. Maar ook een filter op de combinatie Opdrachtgever / Instelling geeft u de mogelijkheid om de medewerkers van één of meerdere specifieke instellingen in de API op te nemen.
Uw consultant kan u helpen bij het inrichten of wijzigen van de autorisatie filters.
Youforce Developer Portal gaat offline
Onze producten en oplossingen worden beter wanneer ze verbinding maken met een ecosysteem van geweldige andere oplossingen. Mede daarom heeft Visma Raet besloten aan te sluiten bij het Visma Developer Portal.
De WIC API beschikt over een autorisatie mechanisme waarmee bepaald kan worden tot welke medewerkers en datasets een Werkbedrijf toegang heeft.
Het autorisatie mechanisme bestaat uit de volgende onderdelen:
Autorisatie op basis van API scopes Door het activeren van scopes kunnen externe systemen toegang krijgen tot één of meerdere endpoint en dataset. De scopes zijn vooraf door Visma Raet bepaald en omvatten één of meerdere endpoints, dataset en/of acties.
Autorisatie op medewerkers Met behulp van autorisaties filters kan worden bepaald welke medewerkers in de API beschikbaar komen.
Met dit document willen wij u informeren over de mogelijkheden van deze autorisatievormen in de API. Beide autorisatie mechanismes moeten door een consultant ingericht worden.
Autorisatie op basis van API scopes In de Visma developer portal zijn per API één of meerdere scopes gedefinieerd. Door het activeren van deze scope krijgt een extern systeem toegang tot één of meerdere endpoint en/of data set. Binnen de API worden de volgende scopes onderscheiden.
Scope
Omschrijving
Endpoints
Get_Basic
Get basic data zoals medewerker- & organisatiedata
GET persons GET employments
GET employmentTimelines GET organizationUnits GET roleAssignments GET jobProfiles
GetPrivateContactDetails
Voegt de privé contactgegevens aan de endpoint Person & Employee, zoals post- en woonadres, telefoonnummer vast & mobiel en het email adres.
GET persons
Dit betreft de volgende gegevens: ADRESGEVENS
Home:
P01014 straatnaam P01016 Huisnummer P01018 Huisnummer toev P01020 Postcode P01022 Plaatsnaam P01024 Land
Postal:
P00365 straatnaam P00367 huisnummer P00368 huisnummer toev P00313 postcode P00308 plaatsnaam P00847 land
TELEFOONNUMMERS
Home: P01027 - telefoonnr woonadres Mobile : P01036 - Telefoonnr mobiel
EMAILADRES
Prive: P01034 - E-mail adres privé
GetSocialSecurityNumber
Lezen van het Burger Service Number als een privicy gevoelig gegeven
GET persons P00320 BSN nummer
Get_maternitityLeave
Lezen van zwangerschapverlof van medewerkers
GET maternityLeave
Get_sicknessLeave
Lezen van ziekmeldingen van medewerkers
GET sickLeave
Get_leave
Lezen van verlofrechten en verlofopnames van medewerkers
GET leaveEntitlements GET leaveHours
Autorisatie op basis van autorisatie filters
De autorisatie filters hebben betrekking op welke medewerkers zichtbaar zijn in de API. Standaard worden altijd alle medewerkers getoond in de API. Bij het activeren van de API kan een consultant filters inrichten zodat maar een beperkte groep medewerkers via de API beschikbaar komen.
Filteren in de API is mogelijk op de volgende Beaufort velden:
P01102- Soort Arbeidsrelatie
P01103- Opdrachtgever
P01104- Instelling
P01110 - Code doelgroep
Een veel voorkomen filter is bijvoorbeeld op Soort Arbeidsrelatie waarbij alleen eigen medewerkers in het extern systeem opgenomen worden. Maar ook een filter op de combinatie Opdrachtgever / Instelling geeft u de mogelijkheid om de medewerkers van één of meerdere specifieke instellingen in de API op te nemen.
Uw consultant kan u helpen bij het inrichten of wijzigen van de autorisatie filters.
De basic api heeft de status Controlled Available en is enkel nog beschikbaar in overleg met Visma Raet.
De Basic API beschikt over een autorisatie mechanisme waarmee bepaald kan worden tot welke medewerkers en datasets een extern systeem toegang heeft.
Het autorisatie mechanisme bestaat uit de volgende onderdelen:
Autorisatie op basis van API scopes Door het activeren van scopes kunnen externe systemen toegang krijgen tot één of meerdere endpoint en dataset. De scopes zijn vooraf door Visma Raet bepaald en omvatten één of meerdere endpoints, dataset en/of acties.
Autorisatie op medewerkers Met behulp van autorisaties filters kan worden bepaald welke medewerkers in de API beschikbaar komen.
Met dit document willen wij u informeren over de mogelijkheden van deze autorisatievormen in de API. Beide autorisatie mechanismes moeten door een consultant ingericht worden.
Autorisatie op basis van API scopes In de Visma developer portal zijn per API één of meerdere scopes gedefinieerd. Door het activeren van deze scope krijgt een extern systeem toegang tot één of meerdere endpoint en/of data set. Binnen de API worden de volgende scopes onderscheiden.
Scope
Omschrijving
Endpoints
Get_Basic
Get basic data zoals medewerker- & organisatiedata
GET persons GET employments GET organizationUnits GET roleAssignments GET jobProfiles
GetPrivateContactDetails
Voegt de privé contactgegevens aan de endpoint Person & Employee, zoals post- en woonadres, telefoonnummer vast & mobiel en het email adres.
GET persons
Dit betreft de volgende gegevens: ADRESGEVENS
Home:
P01014 straatnaam P01016 Huisnummer P01018 Huisnummer toev P01020 Postcode P01022 Plaatsnaam P01024 Land
Postal:
P00365 straatnaam P00367 huisnummer P00368 huisnummer toev P00313 postcode P00308 plaatsnaam P00847 land
TELEFOONNUMMERS
Home: P01027 - telefoonnr woonadres Mobile : P01036 - Telefoonnr mobiel
EMAILADRES
Prive: P01034 - E-mail adres privé
Uw consultant kan u helpen bij het activeren / deactiveren van deze scopes binnen de API.
Autorisatie op basis van autorisatie filters
De autorisatie filters hebben betrekking op welke medewerkers zichtbaar zijn in de API. Standaard worden altijd alle medewerkers getoond in de API. Bij het activeren van de API kan een consultant filters inrichten zodat maar een beperkte groep medewerkers via de API beschikbaar komen.
Filteren in de API is mogelijk op de volgende Beaufort velden:
P01102- Soort Arbeidsrelatie
P01103- Opdrachtgever
P01104- Instelling
P01110 - Code doelgroep
P05046 - Selectierubriek Basic API
Een veel voorkomen filter is bijvoorbeeld op Soort Arbeidsrelatie waarbij alleen eigen medewerkers in het extern systeem opgenomen worden. Maar ook een filter op de combinatie Opdrachtgever / Instelling geeft u de mogelijkheid om de medewerkers van één of meerdere specifieke instellingen in de API op te nemen.
Uw consultant kan u helpen bij het inrichten of wijzigen van de autorisatie filters.
De Recruitment api heeft de status Controlled Available en is enkel nog beschikbaar in overleg met Visma Raet.
De Recruitment API beschikt over een autorisatie mechanisme waarmee bepaald kan worden tot welke medewerkers en datasets een recruitment systeem toegang heeft.
Het autorisatie mechanisme bestaat uit de volgende onderdelen:
Autorisatie op basis van API scopes Door het activeren van scopes kunnen externe systemen toegang krijgen tot één of meerdere endpoint en dataset. De scopes zijn vooraf door Visma Raet bepaald en omvatten één of meerdere endpoints, dataset en/of acties.
Autorisatie op medewerkers Met behulp van autorisaties filters kan worden bepaald welke medewerkers in de API beschikbaar komen.
Met dit document willen wij u informeren over de mogelijkheden van deze autorisatievormen in de API. Beide autorisatie mechanismes moeten door een consultant ingericht worden.
Autorisatie op basis van API scopes In de Visma developer portal zijn per API één of meerdere scopes gedefinieerd. Door het activeren van deze scope krijgt een extern systeem toegang tot één of meerdere endpoint en/of data set. Binnen de API worden de volgende scopes onderscheiden.
Scope
Omschrijving
Endpoints
Invitation_only
Scope noodzakelijk om de API te kunnen activeren. Tijdens het activering proces wordt de contractafspraken gecontroleerd en vastgelegd. Deze scope geeft nog geen toegang tot enige vorm van data maar is noodzakelijk voor de onboarding van klanten op de API of applicatie
-
Get_Basic
Get basic data zoals medewerker- & organisatiedata
GET persons GET employments GET organizationUnits GET roleAssignments GET jobProfiles
GetPrivateContactDetails
Voegt de privé contactgegevens aan de endpoint Person & Employee, zoals post- en woonadres, telefoonnummer vast & mobiel en het email adres.
GET persons
Dit betreft de volgende gegevens: ADRESGEVENS
Home:
P01014 straatnaam P01016 Huisnummer P01018 Huisnummer toev P01020 Postcode P01022 Plaatsnaam P01024 Land
Postal:
P00365 straatnaam P00367 huisnummer P00368 huisnummer toev P00313 postcode P00308 plaatsnaam P00847 land
TELEFOONNUMMERS
Home: P01027 - telefoonnr woonadres Mobile : P01036 - Telefoonnr mobiel
EMAILADRES
Prive: P01034 - E-mail adres privé
HSS_startWorkflow
Scope voor het starten van workflows voor een nieuwe medewerker, nieuw contract of het wijzigen van een bestaat contract.
POST hires POST Contracts POST Contracts/Adjustments
Uw consultant kan u helpen bij het activeren / deactiveren van deze scopes binnen de API.
Autorisatie op basis van autorisatie filters
De autorisatie filters hebben betrekking op welke medewerkers zichtbaar zijn in de API. Standaard worden altijd alle medewerkers getoond in de API. Bij het activeren van de API kan een consultant filters inrichten zodat maar een beperkte groep medewerkers via de API beschikbaar komen.
Filteren in de API is mogelijk op de volgende Beaufort velden:
P01102- Soort Arbeidsrelatie
P01103- Opdrachtgever
P01104- Instelling
P01110 - Code doelgroep
P05045 - Selectierubriek Recruitment API
Een veel voorkomen filter is bijvoorbeeld op Soort Arbeidsrelatie waarbij alleen eigen medewerkers in het extern systeem opgenomen worden. Maar ook een filter op de combinatie Opdrachtgever / Instelling geeft u de mogelijkheid om de medewerkers van één of meerdere specifieke instellingen in de API op te nemen.
Uw consultant kan u helpen bij het inrichten of wijzigen van de autorisatie filters.
Status
De Bestandsuitwisseling module is nu “Algemeen Beschikbaar” voor HR Core OnPremise gebruikers. Dit betekent dat je zelf de autorisatie kunt toekennen in Autorisatiebeheer. Bestandsuitwisseling is de vervanger van handmatig Zenden/Ontvangen met IBU.
De applicatie Bestandsuitwisseling is standaard beschikbaar in Autorisatiebeheer. In Autorisatiebeheer kan de beheerder rechten geven voor de verschillende filetypes aan de desbetreffende gebruikers.
Heb je nog geen toegang tot Autorisatiebeheer? Dien een ticket in bij 4Me en vermeld daarin de gebruikers die toegang moeten krijgen tot Autorisatiebeheer. Wij zullen er dan voor zorgen dat deze gebruikers worden toegevoegd.
Wat je moet doen
Ken in Autorisatiebeheer de juiste (onderstaande) rechten toe aan je gebruikers aan de hand van de volgende stappen.
NOOT: Indien je nog niet bekend bent met Autorisatiebeheer kun je hier lezen hoe je Autorisatiebeheer kunt gebruiken.
Stap 1: Maak een nieuwe Autorisatie aan, door in het startscherm van Autorisatiebeheer op ‘Autorisatie toevoegen’ te klikken. Vul de naam in voor de nieuwe Autorisatie en ken vervolgens de nieuwe Autorisatie toe aan ‘Alle gebruikers’ of ‘Specifieke gebruikers’. Voeg de applicatie Bestandsuitwisseling toe aan de nieuwe Autorisatie met de volgende rechten:
Toegang tot Bestandsuitwisseling
Zend testbestanden naar Bestandsuitwisseling
Ontvang testbestanden van Bestandsuitwisseling
Met deze rechten hebben de gebruikers, aan wie de nieuwe Autorisatie is toegekend, toegang tot Bestandsuitwisseling, maar alleen voor de testbestanden en nog geen rechten voor applicatie specifieke bestanden. Lees dit kennis artikel hoe je kunt testen met Bestandsuitwisseling.
Stap 2: Voeg alle gewenste applicaties en hun specifieke rechten toe aan de juiste autorisatiegroepen. Hierbij is het mogelijk om aan één Autorisatie meerdere applicaties inclusief bijbehorende rechten te koppelen:
HR Core OnPremise
Zend EDI INH bestanden naar EDI module
Zend UWV Digi-ZSM bestanden naar UWV
Zend SBFT bestanden naar Payroll Gemal
Ontvang Gemal Salarisregelingen
Ontvang HR Core Upgrades
Betaalmanager
Ontvang downloads van Betaalmanager Gemal
Ontvang opdrachten van Betaalmanager Gemal
Payroll Gemal Direct
Ontvang bestanden van Payroll Gemal Direct
Salarisdossier Gemal
Ontvang bestanden van Salarisdossier Gemal
Personeelsdossier
Ontvang bestanden van Personeelsdossier
Zend bestanden naar Personeelsdossier
Youforce Account Beheer
Zend XSSO bestanden naar Gebruikersbeheer
Zend Dienstverbanden CSV bestand naar Gebruikersbeheer
Zend Organisatie bestanden naar Gebruikersbeheer
Zend Roltoewijzing bestanden naar Gebruikersbeheer
Flex Benefit
Ontvang TE bestanden van Flex Benefits
Self Service
Zend HI CSV bestand naar Self Service
Zend HI XML bestand naar Self Service
Stap 3. Controleer of alle gebruikers, die toegang moeten hebben tot Bestandsuitwisseling, toegevoegd zijn aan deze autorisatie. Dit kan per gebruiker of via het rapport.
Stap 4. Aanvullend dient in de applicaties ‘Betaalmanager’ en ‘Payroll Gemal Direct’ te worden ingesteld dat de bestanden verstuurd worden naar Bestandsuitwisseling in plaats van naar Zenden & Ontvangen. Een overzicht van de acties per applicatie staan op deze community pagina .
Stap 5. Bestandsuitwisseling is op dit moment beschikbaar in Mijn Youforce, maar kan ook worden bereikt via de "Bestandsuitwisseling" -tegel op de Youforce Desktop. In dat laatste geval moet de tegel wel worden geautoriseerd via Toegangsbeheer.
Extra informatie
Gebruikers moeten zich aanmelden via het nieuwe inloggen om gebruik te kunnen maken van Bestandsuitwisseling.
Bestanden kunnen gedurende 1 maand worden opgehaald/ontvangen.
Bestanden kunnen gedurende 1 maand zo nodig meerdere malen worden ontvangen.
Bij verzenden van bestanden wordt er een kopie van de te verzenden bestanden verstuurd. Het verzonden bestand blijft lokaal beschikbaar.
Ontvangen bestanden worden opgeslagen in de Download directory die in je browser is geconfigureerd. Wil je bestanden in verschillende directories ontvangen dan kan dat door je browser zo te configureren dat hij bij elke download vraagt om een directory waar de bestanden gedownload moeten worden.
De Nederlandse en Engelse taal worden ondersteund. De gebruikte taal volgt de keuze die je bij de persoonlijke instellingen in Mijn Youforce hebt gemaakt.
Het is mogelijk om tegelijkertijd meerdere bestanden te ontvangen. Zie Release-opmerkingen Bestandsuitwisseling update 16-10-2023.
Kennisartikelen
Zenden en Ontvangen met de IBU stopt
Youforce-bestanden koppelen aan Bestandsuitwisseling.
Hoe Bestandsuitwisseling testen met dummy-bestanden
Releases voor bestandsuitwisseling
Status
De Bestandsuitwisseling module is nu “Algemeen Beschikbaar” voor Payroll Only gebruikers. Dit betekent dat je zelf de autorisatie kunt toekennen in Autorisatiebeheer. Bestandsuitwisseling is de vervanger van handmatig Zenden/Ontvangen met IBU.
Vanaf vandaag zal de applicatie Bestandsuitwisseling standaard beschikbaar zijn in Autorisatiebeheer. In Autorisatiebeheer kan de beheerder rechten geven voor de verschillende bestandstypes aan de desbetreffende gebruikers.
Heb je nog geen toegang tot Autorisatiebeheer? Dien een ticket in bij 4Me en vermeld daarin de gebruikers die toegang moeten krijgen tot Autorisatiebeheer. Wij zullen er dan voor zorgen dat deze gebruikers worden toegevoegd.
Wat je moet doen
Ken in Autorisatiebeheer de juiste (onderstaande) rechten toe aan je gebruikers aan de hand van de volgende stappen.
NOOT: Indien je nog niet bekend bent met Autorisatiebeheer kun je hier lezen hoe je Autorisatiebeheer kunt gebruiken.
Stap 1: Maak een nieuwe Autorisatie aan, door in het startscherm van Autorisatiebeheer op ‘Autorisatie toevoegen’ te klikken. Vul de naam in voor de nieuwe Autorisatie en ken vervolgens de nieuwe Autorisatie toe aan ‘Alle gebruikers’ of ‘Specifieke gebruikers’. Voeg de applicatie Bestandsuitwisseling toe aan de nieuwe Autorisatie met de volgende rechten:
Toegang tot Bestandsuitwisseling
Zend testbestanden naar Bestandsuitwisseling
Ontvang testbestanden van Bestandsuitwisseling
Met deze rechten hebben de gebruikers, aan wie de nieuwe Autorisatie is toegekend, toegang tot Bestandsuitwisseling, maar alleen voor de testbestanden en nog geen rechten voor applicatie specifieke bestanden.
Stap 2: Voeg alle gewenste applicaties en hun specifieke rechten toe aan de juiste autorisatiegroepen. Hierbij is het mogelijk om aan één Autorisatie meerdere applicaties inclusief bijbehorende rechten te koppelen:
Betaalmanager
Ontvang downloads van Betaalmanager Gemal
Ontvang opdrachten van Betaalmanager Gemal
Payroll Gemal Direct
Ontvang bestanden van Payroll Gemal Direct
Payroll Gemal Direct Zenden
Zend PSG Integratiebestanden naar Payroll Gemal Direct
Zend SPG Integratiebestanden naar Payroll Gemal Direct
Salarisdossier Gemal
Ontvang bestanden van Salarisdossier Gemal
Personeelsdossier
Ontvang bestanden van Personeelsdossier
Zend bestanden naar Personeelsdossier
Youforce Account Beheer
Zend XSSO bestanden naar Gebruikersbeheer
Zend Dienstverbanden CSV bestand naar Gebruikersbeheer
Zend Organisatie bestanden naar Gebruikersbeheer
Zend Roltoewijzing bestanden naar Gebruikersbeheer
Flex Benefit
Ontvang TE bestanden van Flex Benefits
Zend RBP Werknemers bestanden naar Flex Benefits
Stap 3. Controleer of alle gebruikers, die toegang moeten hebben tot Bestandsuitwisseling, toegevoegd zijn aan deze autorisatie. Dit kan per gebruiker of via het rapport.
Stap 4. Aanvullend dient in de applicaties ‘Betaalmanager’ en ‘Payroll Gemal Direct’ te worden ingesteld dat de bestanden verstuurd worden naar Bestandsuitwisseling in plaats van naar Zenden & Ontvangen. Een overzicht van de acties per applicatie staan op deze community pagina.
Stap 5. Bestandsuitwisseling is op dit moment beschikbaar in Mijn Youforce, maar kan ook worden bereikt via de "Bestandsuitwisseling" -tegel op de Youforce Desktop. In dat laatste geval moet de tegel wel worden geautoriseerd via Toegangsbeheer.
Extra informatie
Gebruikers moeten zich aanmelden via het nieuwe inloggen om gebruik te kunnen maken van Bestandsuitwisseling.
Bestanden kunnen gedurende 1 maand worden opgehaald/ontvangen.
Bestanden kunnen gedurende 1 maand zo nodig meerdere malen worden ontvangen.
Bij verzenden van bestanden wordt er een kopie van de te verzenden bestanden verstuurd. Het verzonden bestand blijft lokaal beschikbaar.
Ontvangen bestanden worden opgeslagen in de Download directory die in je browser is geconfigureerd.
De Nederlandse taal wordt ondersteund. De gebruikte taal volgt de keuze die je bij de persoonlijke instellingen in Mijn Youforce hebt gemaakt.
Het is mogelijk om tegelijkertijd meerdere bestanden te ontvangen. Zie Release-opmerkingen Bestandsuitwisseling update 16-10-2023.
Aan de volgende onderwerpen wordt op dit moment gewerkt. We zullen je hier op de community op de hoogte houden van de voortgang:
Op dit moment wordt nog niet geregistreerd wie een bestand heeft ingezonden of ontvangen. Deze informatie is dus nog niet terug te zien in de betreffende schermen
Kennisartikelen
Zenden en Ontvangen met de IBU stopt
Youforce-bestanden koppelen aan Bestandsuitwisseling.
Hoe Bestandsuitwisseling testen met dummy-bestanden
Releases voor bestandsuitwisseling
Voor HR Core OnPremise en Payroll Only klanten is het vanaf 30/04/2024 mogelijk om met Bestandsuitwisseling Organisatie en Roltoewijzing bestanden in te zenden naar Gebruikersbeheer
Hiervoor moet je nog wel in Autorisatiebeheer de juiste rechten toekennen.
Volg hier voor de volgende stappen:
1. Ga naar Autorisatiebeheer en zoek de groep waaraan je de rechten wilt toekennen.
2. Klik op de 'Bekijk details'-knop om de bijhorende applicaties in te zien
3. Klik op de knop 'Bewerken'
4. Klik op de knop 'Rechten bewerken' naast de applicatie Youforce Account Beheer en zet in de popup het vinkje AAN bij de rechten 'Zend Organisatie bestanden naar Gebruikersbeheer' en 'Zend Roltoewijzing bestanden naar Gebruikersbeheer', en klik vervolgens op de knop 'Bewerken'.
6. Druk op knop 'Opslaan' rechtsonder in het scherm om de wijziging op te slaan.
7. Als de wijziging is opgeslagen kan het enkele minuten duren voordat de autorisatie in Bestandsuitwisseling is bijgewerkt.
Status
De Bestandsuitwisseling module is nu “Algemeen Beschikbaar” voor HR Core Online gebruikers. Dit betekent dat je geen 4Me-ticket meer hoeft in te vullen om Bestandsuitwisseling voor jouw gebruikers te activeren, maar dat je zelf de autorisatie kunt toekennen in Autorisatiebeheer. Bestandsuitwisseling is de vervanger van handmatig Zenden/Ontvangen met IBU.
Enkele voordelen:
Intuïtief en gebruiksvriendelijk
Geen lokale installatie of configuratie nodig
Betrouwbaar, veilig en automatisch opschalen tijdens piek uren
Vanaf heden zal de applicatie Bestandsuitwisseling standaard beschikbaar in Autorisatiebeheer. De autorisatie van elke gebruiker voor de verschillende file types kan door de Autorisatiebeheer administrator worden gedaan door het toekennen van de juiste rechten.
Wat je moet doen
Als je al de juiste rollen hebt gedefinieerd in Autorisatiebeheer, volg dan onderstaande stappen. Zo niet, volg dan eerst de stappen zoals beschreven in dit artikel en daarna de stappen zoals hieronder beschreven.
Stap 1: Voeg de applicatie Bestandsuitwisseling toe aan de gewenste rol(len) met de volgende rechten:
Toegang tot Bestandsuitwisseling
Zend testbestanden naar Bestandsuitwisseling
Ontvang testbestanden van Bestandsuitwisseling
Op dit punt hebben de gebruikers toegang tot Bestandsuitwisseling, maar alleen toegang tot testbestanden en nog geen toegang tot applicatie specifieke bestanden.
Stap 2: Voeg alle gewenste applicaties en hun specifieke rechten toe aan de juiste rollen:
Betaalmanager
Ontvang opdrachten van Betaalmanager Gemal
Ontvang downloads van Betaalmanager Gemal
HR Core
Zend bestanden naar HR Core Online
Ontvang bestanden van HR Core Online
Oude Zend-Ontvang naam was Zenden naar Hosted BO4 / Ontvangen van Hosted BO4
Payroll Gemal Direct
Ontvang bestanden van Payroll Gemal Direct
Personeelsdossier
Zend bestanden naar Personeelsdossier
Ontvang bestanden van Personeelsdossier
Salarisdossier Gemal
Ontvang bestanden van Salarisdossier Gemal
Youforce Account Beheer
Zend XSSO bestanden naar Gebruikersbeheer
Self Service
Zend HI CSV bestand naar Self Service
Zend HI XML bestand naar Self Service
Managementinformatie
Ontvang HR datafeed bestanden van Managementinformatie
Stap 3. Controleer of je gebruikers die Bestandsuitwisseling al gebruiken ook de juiste rollen hebben toegewezen gekregen. Indien nodig kun je rechten toekennen aan individuele gebruikers.
Stap 4. Koppel de Youforce bestanden aan de Bestandsuitwisseling. Zie instructies.
Stap 5. Bestandsuitwisseling is op dit moment beschikbaar in Mijn Youforce, maar kan ook worden bereikt via de "Bestandsuitwisseling" -tegel op de Youforce Desktop. In dat laatste geval moet de tegel wel worden geautoriseerd via Toegangsbeheer.
Extra informatie
Gebruikers moeten zich aanmelden via de nieuwe login om gebruik te kunnen maken van de Bestandsuitwisseling applicatie.
Bestanden kunnen gedurende 1 maand worden opgehaald/ontvangen.
Bestanden kunnen gedurende 1 maand zo nodig meerdere malen worden ontvangen.
Ontvangen bestanden worden opgeslagen in de Download directory die in je browser is geconfigureerd. Wil je bestanden in verschillende directories ontvangen dan kan dat door je browser zo te configureren dat hij bij elke download vraagt om een directory waar de bestanden gedownload moeten worden.
De Nederlandse taal wordt ondersteund. De gebruikte taal volgt de keuze die je bij de persoonlijke instellingen in Mijn Youforce hebt gemaakt.
Het is al mogelijk om tegelijkertijd meerdere bestanden te ontvangen. Zie Release-opmerkingen Bestandsuitwisseling update 16-10-2023
De Gemal Salaris tabellen die je gebruikt worden bij elke vernieuwing automatisch op de J-schijf geplaatst in de nieuwe Payroll-Tables directory.
Bestandsuitwisseling toont gebruiker informatie van degene(n) die een bestand hebben ontvangen of verzonden. Zie dit artikel voor meer informatie.
Kennisartikelen
Zenden en Ontvangen met de IBU stopt
Hoe richt ik de rechten voor Mijn Youforce zo overzichtelijk mogelijk in 'autorisatiebeheer'?
Youforce-bestanden koppelen aan Bestandsuitwisseling.
Hoe Bestandsuitwisseling testen met dummy-bestanden
Releases voor bestandsuitwisseling
Status
De Bestandsuitwisseling module is nu “Algemeen Beschikbaar” voor HR Core Education gebruikers. Dit betekent dat je zelf de autorisatie kunt toekennen in Autorisatiebeheer. Bestandsuitwisseling is de vervanger van handmatig Zenden/Ontvangen met IBU.
Vanaf vandaag zal de applicatie Bestandsuitwisseling standaard beschikbaar zijn in Autorisatiebeheer. In Autorisatiebeheer kan de beheerder rechten geven voor de verschillende bestandstypes aan de desbetreffende gebruikers.
Heb je nog geen toegang tot Autorisatiebeheer? Dien een ticket in bij 4Me en vermeld daarin de gebruikers die toegang moeten krijgen tot Autorisatiebeheer. Wij zullen er dan voor zorgen dat deze gebruikers worden toegevoegd.
Wat je moet doen
Ken in Autorisatiebeheer de juiste (onderstaande) rechten toe aan je gebruikers aan de hand van de volgende stappen.
NOOT: Indien je nog niet bekend bent met Autorisatiebeheer kun je hier lezen hoe je Autorisatiebeheer kunt gebruiken.
Stap 1: Maak een nieuwe Autorisatie aan, door in het startscherm van Autorisatiebeheer op ‘Autorisatie toevoegen’ te klikken. Vul de naam in voor de nieuwe Autorisatie en ken vervolgens de nieuwe Autorisatie toe aan ‘Alle gebruikers’ of ‘Specifieke gebruikers’. Voeg de applicatie Bestandsuitwisseling toe aan de nieuwe Autorisatie met de volgende rechten:
Toegang tot Bestandsuitwisseling
Zend testbestanden naar Bestandsuitwisseling
Ontvang testbestanden van Bestandsuitwisseling
Met deze rechten hebben de gebruikers, aan wie de nieuwe Autorisatie is toegekend, toegang tot Bestandsuitwisseling, maar alleen voor de testbestanden en nog geen rechten voor applicatie specifieke bestanden.
Stap 2: Voeg alle gewenste applicaties en hun specifieke rechten toe aan de juiste autorisatiegroepen. Hierbij is het mogelijk om aan één Autorisatie meerdere applicaties inclusief bijbehorende rechten te koppelen:
HR Core Education
Zend aktes naar MI Education
Zend bulk bestanden naar HR Core Education
Ontvang declaratiebestanden van HR Core Education
Ontvang aktes van MI Education
Ontvang datafeed bestanden van MI Education
Betaalmanager
Ontvang downloads van Betaalmanager Gemal
Ontvang opdrachten van Betaalmanager Gemal
Payroll Gemal Direct
Ontvang bestanden van Payroll Gemal Direct
Payroll Gemal Direct Zenden
Zend WIG Integratiebestanden naar Payroll Gemal Direct
Personeelsdossier
Zend bestanden naar Personeelsdossier
Ontvang bestanden van Personeelsdossier
Salarisdossier Gemal
Ontvang bestanden van Salarisdossier Gemal
Youforce Account Beheer
Zend XSSO bestanden naar Gebruikersbeheer
Stap 3. Controleer of alle gebruikers, die toegang moeten hebben tot Bestandsuitwisseling, toegevoegd zijn aan deze autorisatie. Dit kan per gebruiker of via het rapport.
Stap 4. Aanvullend dient in de applicaties ‘Betaalmanager’ en ‘Payroll Gemal Direct’ te worden ingesteld dat de bestanden verstuurd worden naar Bestandsuitwisseling in plaats van naar Zenden en Ontvangen. Een overzicht van de acties per applicatie staan op deze community pagina .
Stap 5. Bestandsuitwisseling is op dit moment beschikbaar in Mijn Youforce, maar kan ook worden bereikt via de "Bestandsuitwisseling" -tegel op de Youforce Desktop. In dat laatste geval moet de tegel wel worden geautoriseerd via Toegangsbeheer.
Extra informatie
Gebruikers moeten zich aanmelden via het nieuwe inloggen om gebruik te kunnen maken van Bestandsuitwisseling.
Bestanden kunnen gedurende 1 maand worden opgehaald/ontvangen.
Bestanden kunnen gedurende 1 maand zo nodig meerdere malen worden ontvangen.
Bij verzenden van bestanden wordt er een kopie van de te verzenden bestanden verstuurd. Het verzonden bestand blijft lokaal beschikbaar.
Ontvangen bestanden worden opgeslagen in de Download directory die in je browser is geconfigureerd.
De Nederlandse taal wordt ondersteund. De gebruikte taal volgt de keuze die je bij de persoonlijke instellingen in Mijn Youforce hebt gemaakt.
Het is mogelijk om tegelijkertijd meerdere bestanden te ontvangen. Zie Release-opmerkingen Bestandsuitwisseling update 16-10-2023.
Aan de volgende onderwerpen wordt op dit moment gewerkt. We zullen je hier op de community op de hoogte houden van de voortgang:
Op dit moment wordt nog niet geregistreerd wie een bestand heeft ingezonden of ontvangen. Deze informatie is dus nog niet terug te zien in de betreffende schermen
Kennisartikelen
Zenden en Ontvangen met de IBU stopt
Youforce-bestanden koppelen aan Bestandsuitwisseling.
Hoe Bestandsuitwisseling testen met dummy-bestanden
Releases voor bestandsuitwisseling
Q: How can I receive only changed records?
A: The From and To filter is available to receive changes in a given time range. The From and To filter option is available on most endpoints, except valueLists.
Example employees: Returns (active) employee records that have changed within the provided date-time range.
https://api.youforce.com/iam/v1.0/persons? from=2021-01-01T09:00:00.000Z &to=2022-01-10T14:00:00.000Z
Q: What does the 90 day retention policy signify?
A: At current, the retention policy on the data stored in for the IAM API is 90 days. Based on the following properties a record will be removed when the date defined for these properties is greater than 90 days in the past:
dischargeDate - employments, employees
endDate - role assignments, assignments
Q: Why do I see records with the with dischargeDates or endDates in the past?
A: We support the notion of retroactive changes i.e. when a dischargeDate for an employment or endDate for an assignment is defined today for a date is set in the past. This can be the result of an administrative mistake. In this scenario, the record will remain available for 90 more days based on the mutation date (date when the change was made).
Q: Why do I not see all the properties mentioned in the data mapping document in my response?
In the IAM API properties that do not have values defined in the core systems are hidden. For this reason there might be a different amount of properties available per record.