Rabo Direct Connect Handleiding
November 2015, v1.4
Inhoud 1.
INLEIDING
4
2.
MOGELIJKHEDEN
4
2.1
Formaten
4
2.2
Randvoorwaarden voor gebruik
5
3.
4.
5.
2
HET INRICHTEN VAN RDC VOOR GEBRUIK
5
3.1
Het inrichtingsformulier RDC
5
3.2
Het wijzigen of beëindigen van de overeenkomst
5
3.3
Het tot stand brengen van de sFTP verbinding met de Rabobank
5
3.4
Het RDC certificaat voor ondertekening
6
3.5
PKCS#7
6
3.6
Base64 encoding
6
3.7
Het aanvragen van een certificaat voor ondertekening
6
3.8
Het verifiëren van de bestanden van Rabobank
7
3.9
Test scenario’s
7
Het testen van de sFTP verbinding
7
Het testen in productie middels ‘penny tests’
7
Het testen van de bestanden
7
3.10 Serviceberichten
7
3.11 Go live beslissing
8
DE KLANT ACCEPTATIE OMGEVING
8
4.1
Beschrijving van de Klant Acceptatie Omgeving
8
4.2
Wat kunt u testen met de Klant Acceptatie Omgeving
8
Technische test
8
Testen statusinformatie
8
Testen van betaalformaten:
9
Testen verantwoordingsinformatie
9
4.3
Aanvragen Klant Acceptatie Omgeving
9
4.4
Zelf-ondertekend certificaat
9
4.5
Disclaimer
9
INITITATIE
10
5.1
Het initiëren van een incasso of betaalopdracht
10
5.2
Het initiatiebestand
10
5.3
De header
10
5.4
Controle
11
5.5
De payload file
11
5.6
ZIP archive – DEFLATE
12
5.7
De initiatie stap voor stap
12
5.8
Wat kunt u verwachten indien er iets niet goed gaat?
12
Rabo Direct Connect | Handleiding
5.9 6.
7.
Uitvoer data en geagendeerde betalingen
13
5.10 Bulk en Batch aanlevering SCT bestanden
14
STATUS BERICHTEN EN VERANTWOORDING
14
6.1
ACK/NACK Statusberichten RDC
14
6.2
PAIN.002 status berichten
15
6.3
Bundeling verantwoordingsinformatie
16
6.4
Intradag rapportage
17
Intradag huidige boekdag
17
Intradag boekdag overschrijdend
17
Formaat
18
Vergelijkingstabel aanlevervarianten intradagrapporten
18
6.5
Verantwoordingsinformatie
19
6.6
Directe verantwoording stap voor stap
20
DE RDC PORTLET
21
7.1
Wat is de RDC portlet?
21
7.2
Hoe gebruik ik de RDC- portlet?
21
7.3
Batch level informatie bekijken
21
7.4
Transactie informatie bekijken
22
8.
PRODUCTBEELD
22
9.
ONDERSTEUNING EN SERVICE
22
9.1
Contact gegevens
22
9.2
Noodprocedure blokkeren verbinding RDC
23
APPENDIX 1: AFKEURREDENEN
24
APPENDIX 2. CHECKLIST SIGNING
27
Verify your own signature of type RAW with openssl:
27
Verify your own signature of type PKCS#7 with openssl:
27
APPENDIX 3. LOGBOEK WIJZIGINGEN
3
28
Rabo Direct Connect | Handleiding
1. Inleiding Rabo Direct Connect (RDC) is een host to host oplossing voor Financial Institutions, Large Corporates en Grootzakelijke Klanten van de Rabobank. Met RDC kunnen betaalbestanden uitgewisseld worden met de Rabobank. Via dit kanaal kan een klant vanuit zijn ERP-pakket bestanden met gesignde opdrachten insturen en laten verwerken door de Rabobank. Voor het gebruik van het kanaal is dus geen gebruikersinterface nodig zoals Rabo Cash Management (RCM). De verantwoordingsinformatie kan direct worden uitgelezen in het ERP-pakket. Via een PUSH of PULL mechanisme kunt u deze als klant gestuurd krijgen of ophalen uit RDC. Let op: voor de optie PUSH dient u een 24x7 standby nummer van uw ICT support beschikbaar te stellen
2. Mogelijkheden Hieronder vindt u een opsomming van de verschillende mogelijkheden van RDC. Insturen van opdrachten: - Eurobetaling: - Euro incasso (B2B): - Wereldbetaling:
PAIN.001.001.03 PAIN.008.001.02 BTL91
Status informatie: - Transport Ack/Nack: Ack betekent goedgekeurd; Nack betekent afgekeurd. - Statusbericht met afgekeurde of geweigerde (bedrijven) Euro incasso’s (SDD) en Euro betalingen (SCT): PAIN.002.001.03 - Status informatie kan worden aangeboden via een online portlet op www.rabobank.com/corporatesupport Verantwoordingsinformatie: - Dagafschrift einde dag: - Dagafschrift einde dag: - Intradag rapportages: - Intradag rapportages:
MT940 structured CAMT.053.001.02 MT942 Structured CAMT.052.001.02
2.1 Formaten Voor alle bovenstaande bestanden zijn er formaatbeschrijvingen beschikbaar. Deze formaatbeschrijvingen voor RDC kunt u terugvinden op: www.rabobank.com/rdc.
4
Rabo Direct Connect | Handleiding
2.2 Randvoorwaarden voor gebruik Voordat u aan de slag kunt gaan met RDC zijn de onderstaande randvoorwaarden belangrijk. Indien u als klant niet kunt voldoen aan onderstaande voorwaarden, kunt u niet alle voordelen van het product RDC optimaal benutten.Tevens kan er geen optimale service worden geboden. Houd hier rekening mee wanneer u voor dit product kiest. -
Binnen uw bedrijf is een hoge mate van automatisering aanwezig. Binnen uw bedrijf is een professionele IT omgeving en goede infrastructuur aanwezig. Er is een hoge mate van treasury centralisatie binnen uw bedrijf. Er is een gecentraliseerde AP/AR (SSC of payment factory).
Voor het gebruik (waaronder de beveiliging) van Rabo Direct Connect is permanent beschikbare professionele ICT (beveiligings)deskundigheid bij uw bedrijf noodzakelijk.
3. Het inrichten van RDC voor gebruik 3.1 Het inrichtingsformulier RDC Op het inrichtingsformulier RDC (beschikbaar via uw Rabobank contactpersoon) kunt u aangeven hoe u de RDC overeenkomst wilt inrichten. Denk hierbij aan: - Welke Rabobank rekeningen u wilt gebruiken in combinatie met RDC (het is ook mogelijk om eindedag- of intradaginformatie van een spaarrekening te ontvangen) - Het type verantwoordingsinformatie dat u wenst te ontvangen - Of u PUSH of PULL wilt gebruiken als methode om verantwoordingsinformatie te ontvangen - Of u intradag rapportages wilt ontvangen en met welke interval/op welke tijdstippen - Het type initiatiebestanden dat u wenst in te sturen - Op welk e-mailadres u uw RDC service berichten wilt ontvangen Het is belangrijk dat u de inhoud van dit formulier goed afstemt met de Rabobank. Indien u hulp nodig heeft bij het invullen van dit formulier kunt u gebruik maken van het bijbehorende toelichtingsformulier of navraag doen bij uw Rabobank contactpersoon. 3.2 Het wijzigen of beëindigen van de overeenkomst U kunt uw RDC overeenkomst ook wijzigen door gebruik te maken van het inrichtingsformulier. Hierop kunt u dan aangeven dat u een wijziging wilt doorgeven en vervolgens kunt u deze wijziging in het formulier vermelden. Het is ook mogelijk om de overeenkomst te beëindigen via dit formulier. In het toelichtingsformulier wordt duidelijk uitgelegd hoe een wijziging of beëindiging moeten worden aangegeven. Leest u deze bij onduidelijkheden eerst door. 3.3 Het tot stand brengen van de sFTP verbinding met de Rabobank De eerste stap die gezet moet worden is het inrichten van de secure FTP (sFTP) verbinding met de Rabobank. sFTP is een Secure Shell (SSH) verbinding over één poort waarbij inloggen en versturen van bestanden in een veilige sessie plaatsvinden. Daarnaast is het op elk server platform standaard beschikbaar (Standaard onderdeel van Linux en ook in Windows Servers beschikbaar). Dit onderdeel faciliteert een veilig transport van bestanden tussen uw organisatie en Rabobank en bestaat altijd uit een test- en productieverbinding. Voor deze verbinding moet u beschikken over een sFTP client. Hierin genereert u twee SSH keys waarvan u de private keys in beheer neemt. De private keys moeten zijn opgeslagen op de locatie waar uw sFTP server draait. Van u hebben we nodig: - De public key van de SSH key voor de productieverbinding
5
Rabo Direct Connect | Handleiding
-
De public key van de SSH key voor de testverbinding
De uitwisseling van deze keys gebeurt tussen de IT afdelingen van Rabobank en uw bedrijf. De initiatie voor deze uitwisseling start bij Rabobank. Wij nemen daarvoor contact op met de contactpersoon van uw IT afdeling die u opgeeft op het inrichtingsformulier. Let er op dat deze persoon (personen) beschikbaar is (zijn) gedurende de implementatie van RDC. Naast deze SSH keys hebben we aanvullende informatie, zoals IP-adressen en de te gebruiken poorten nodig voor de verbinding. Dit kunt u aangeven op het inrichtingsformulier. . 3.4 Het RDC certificaat voor ondertekening Naast de veilige verbinding met Rabobank moeten de betaalbestanden worden getekend. De handtekening van het bestand is een SHA 256 hash van een file versleuteld met een 2048 bits RSA sleutel van u als klant. De SHA 256 wordt gebruikt om uit te sluiten dat er aanpassingen zijn gedaan aan de inhoud van het betaalbestand tijdens het transport. De uitwisseling van de key gebeurt door middel van het aanvragen van een certificaat bij een geautoriseerde derde partij (zie paragraaf 3.7). 3.5 PKCS#7 De handtekening of getekende hash kan verstuurd worden in raw format of in PKCS#7 formaat. Beiden worden door RDC geaccepteerd. Java applications genereren doorgaans het raw formaat wanneer JCE bibliotheken worden gebruikt. Als Bouncy Castle. of .NET wordt gebruikt dan wordt doorgaans een PKCS#7 handtekening gegenereerd.Als PKCS#7 wordt gebruikt dan mag de data die getekend moet worden niet toegevoegd worden aan de handtekening. Deze optie maakt de handtekening onnodig lang. 3.6 Base64 encoding De binaire handtekening wordt omgezet naar tekst door gebruik te maken van base64 encoding. Deze base64 representatie van de hash file wordt toegevoegd aan de header file. 3.7 Het aanvragen van een certificaat voor ondertekening Momenteel accepteert Rabobank alleen de certificaten van onderstaande partijen. U kunt een keuze maken uit een van deze twee certificaten. Voor certificaten van andere partijen raden wij u aan om contact op te nemen met uw implementatiemanager. VeriSign Hierbij een link naar een certificaat op de site van VeriSign: http://www.symantec.com/en/uk/ssl-certificates/secure-site/?fid=ssl-certificates Digicert Hierbij een link naar een certificaat op de site bij Digicert: http://www.digicert.com/welcome/ssl-plus.htm Aan de aanvraag van het certificaat zijn kosten verbonden. Er zijn een aantal stappen die u als klant moet doorlopen om een correct certificaat te verkrijgen. -
6
Om bij een van de bovenstaande partijen een getekend certificaat aan te vragen dient u eerst een keystore te generen in uw eigen omgeving. Vervolgens creëert u een signing request. Een
.csr bestand. Dit .csr bestand moet worden opgestuurd naar een certificaat autoriteit (VeriSign of Digicert). De certificaat autoriteit creëert een certificaat en stuurt dit naar u op. U importeert het certificaat in uw keystore. Vervolgens stuurt u de publieke sleutel (public key) van het certificaat op naar Rabobank. De private sleutel houdt u veilig binnen uw organisatie. Stuur de publieke sleutel op naar Ra-
Rabo Direct Connect | Handleiding
-
bobank als volgt: RDCpublickey.crt.txt. Indien u het certificaat later op wenst te sturen kunt u dit aangeven op het formulier. Gebruik een nieuw inrichtingsformulier RDC (en selecteer de actie “wijzigen”) wanneer u op een later tijdstip het certificaat verstuurt en geef hierop dan aan dat het certificaat nu wel is bijgevoegd als bijlage. Lees de specifieke instructies voor het verzenden van het certificaat goed door. Deze kunt u vinden in toelichting bij het inrichtingsfomulier. Vergeet niet het formulier te ondertekenen. Het certificaat heeft een geldigheidsduur. Stem dit goed af met de leverancier van het certificaat. Vermeld de geldigheidsduur van het certificaat op het inrichtingsformulier. Het blijft uw eigen verantwoordelijkheid om de geldigheidsdatum te bewaken en ruim voor het verstrijken van de geldigheid een nieuw certificaat aan te vragen en op te sturen naar Rabobank. Op die manier kan Rabobank de RDC diensten zonder onderbreking aan u blijven leveren.
3.8 Het verifiëren van de bestanden van Rabobank Rabobank voorziet bestanden die zij naar u stuurt van een handtekening. Deze handtekening kunt u controleren door gebruik te maken van de publieke sleutel van Rabobank. Deze publieke sleutel wordt aan u ter beschikking gesteld. De publieke sleutel voor RDC kunt u vinden op www.rabobank.com/rdc bij downloads. 3.9 Test scenario’s Als klant zult u het gebruik van RDC willen testen voordat u het daadwerkelijk in gebruik neemt. In deze paragraaf staan een aantal aanbevelingen voor het uitvoeren van deze testen. Voor alle testen geldt dat u deze vooraf met de implementatiemanager van Rabobank afsstemt. Alleen dan kan Rabobank r zorgen voor de juiste begeleiding om u bij het testen te ondersteunen. Het testen van de sFTP verbinding Nadat de IT-afdelingen (van Rabobank en u) gezamenlijk de sFTP verbinding hebben opgezet (een test- en een productieverbinding) is het advies deze verbinding te testen door het versturen van een betaalbestand over de aangelegde testverbinding. Via deze verbinding is het mogelijk om te controleren of bestanden op de juiste manier worden getransporteerd van uw omgeving naar die van Rabobank. Daarnaast kan Rabobank u via deze verbinding een bestand sturen om te controleren of bestanden correct getransporteerd worden van Rabobank naar uw omgeving. Het testen in productie middels ‘penny tests’ Nadat we de sFTP verbinding met een positief resultaat hebben getest in de testverbinding, is het advies eerst een ‘pennytest’ te doen door het versturen van één of een klein aantal minibetalingen van en naar een rekening binnen uw organisatie. Het is daarbij verstandig om voor elk betaalformaat dat u gaat gebruiken een aparte test te doen om vast te stellen dat de minibetaling juist wordt verwerkt en teruggemeld in de verantwoording. Indien u ook gebruik gaat maken van de online status portlet van RDC kunt u deze functionaliteit ook direct testen. Het testen van de bestanden Op uw verzoek kan Rabobank controleren of bestanden en betalingen voldoen aan de RDC voorwaarden, beveiliging en formaatbeschrijvingen. Dit is additioneel op de testomgeving. Nadat u een betaalbestand heeft ingestuurd via de sFTP verbinding of per e-mail kan Rabobank een verantwoordingsbestand met fictieve gegevens naar u terug sturen. 3.10
Serviceberichten
Via serviceberichten informeert Rabobank u over onderhoud, nieuwe functionaliteiten en downtime met betrekking tot RDC. Rabobank tracht u minstens 1 maand voor de release van nieuwe functio-
7
Rabo Direct Connect | Handleiding
naliteiten te informeren, zodat u voldoende tijd heeft om u voor te bereiden op de nieuwe situatie. Op het inrichtingsformulier kunt u aangeven op welke e-mailadres u deze serviceberichten wilt ontvangen. Indien u dit e-mailadres later wilt wijzigen is het verzoek dit via inrichtingsformulier door te geven. 3.11
Go live beslissing
Nadat de verschillende tests succesvol zijn uitgevoerd beslist u in overleg met Rabobank of u wilt starten met het daadwerkelijk gebruik van RDC. Indien de testen hebben uitgewezen dat hier geen belemmeringen meer voor zijn kan de RDC verbinding ingezet worden voor uw betalingsverkeer. De Golive beslissing wordt in overleg met Rabobank genomen.
4. De Klant Acceptatie Omgeving 4.1 Beschrijving van de Klant Acceptatie Omgeving Naast testen via een productieverbinding beschikt RDC ook over een Klant Acceptatie (KA)omgeving. Deze omgeving is gekoppeld aan uw ERPpakket via een testverbinding. Deze omgeving staat los van onze productiesystemen en simuleert de werking van RDC. U kunt dit systeem gebruiken om te testen of uw ERP-pakket op de juiste manier is geconfigureerd voor het verzenden van initiatiebestanden en het ontvangen van verwerkingsinformatie via RDC. Als u via de testverbinding een initiatiebestand instuurt ontvangt u, mits het bestand aan alle door RDC gestelde eisen voldoet (conform de productieverbinding), via de verbinding een ACK en vervolgens een PAIN.002.. De PAIN.002 heeft een willekeurige afkeurcode en heeft geen betrekking op het door u aangeleverde bestand. U ontvangt deze PAIN.002 zodat u direct kunt verifiëren of uw systeem gereed is voor de ontvangst en verwerking van dit bestandstype. Als het bestand niet conform deze eisen is opgesteld ontvangt u een NACK. Hierna volgt geen PAIN.002 bericht omdat het bestand voor verwerking is afgekeurd. Daarnaast krijgt u een gesimuleerd verantwoordingsbestand aangeboden naar keuze krijgt u deze in CAMT.053 of MT940 Structured. Deze keuze kunt u aangeven op het inrichtingsformulier. 4.2 Wat kunt u testen met de Klant Acceptatie Omgeving Technische test Testen sFTP verbinding RDC (verbinding klant – Rabo) Testen van handtekening Testen statusinformatie Status informatie type ACK
NACK
Pain.002.001.03
8
Omschrijving U ontvangt een ACK bestand wanneer de verbinding, de handtekening en het bestand zijn goedgekeurd. Na een ACK ontvangt u een PAIN002 met dummy data U ontvangt een NACK wanneer er fouten in de aanlevering zijn gevonden Deze ontvangt u na een ACK en bevat dummy data
Rabo Direct Connect | Handleiding
Testen van betaalformaten: Testen van de opbouw en de layout van het bestandsformaat. De inhoud van het bestand wordt niet getest. Initiatie Pain.001.001.03 Pain.008.001.02 BTL91 Testen verantwoordingsinformatie Verantwoording MT940S CAMT053.001.02 De verantwoordingsinformatie ontvangt u rond 16.00 uur(dit tijdstip kan varieren). In de productieomgeving ontvangt u eindedag-informatie na het afsluiten van een boekdag rond middernacht en uiterlijk om 06:00 na de boekdag. 4.3 Aanvragen Klant Acceptatie Omgeving (KAO) Bij het aanvragen van een Klant Acceptatie Omgeving heeft u twee mogelijkheden. U kunt uw Klant Acceptatie Omgeving gelijk houden aan uw productieomgeving; dat wil zeggen dat u in uw Klant Acceptatie Omgeving dezelfde rekeningen en functionaliteiten laat opvoeren als in uw productieomgeving. Daarnaast kunt u er ook voor kiezen andere rekeningen of services op te voeren in uw Klant Acceptatie-omgeving. Zo verkleint u de kans dat er testdata in uw productieomgeving terechtkomen, wat tot onnodige afkeuringen zal leiden. Ook kunt u zo functionaliteiten testen die u mogelijk in de toekomst wilt toevoegen en waar u nu nog geen gebruik van maakt. 4.4 Zelf-ondertekend certificaat Voor het gebruik van de Klant Acceptatie Omgeving is een apart certificaat nodig. Deze vraagt u aan via de beschreven wijze in in hoofdstuk 3.4 bij een derdeninstantie, zoals VeriSign. Echter, een zelfondertekend certificaat is ook een toegestane mogelijkheid binnen de Klant Acceptatie Omgeving. U mag uit veiligheidsoverwegingen voor de Klant Acceptatie Omgeving geen productiecertificaat gebruiken. Een certificaat bevat de publieke sleutelwaarmee de handtekening wordt gecontroleerd. Bij een zelf-ondertekend certificaat, genereert u zelf een sleutelpaar (RSA, 2048 bits, private en public key) en maakt vervolgens een certificaat aan die met deze zelfde sleutel is ondertekend. Bij een echt certificaat wordt het certificaat ondertekend door een derde partij.Dit gebeurt na controle van de identiteit van het bedrijf en aanlevering van de publieke sleutel in een certificaat aanvraag bestand. U dient dit zelf-ondertekenend certificaat mee te sturen bij uw aanvraag voor de Klant Acceptatie Omgeving, inclusief eventuele bovenliggende certificaten. 4.5 Disclaimer Rabobank kan geen garantie bieden dat in de testomgeving behaalde resultaten representatief zijn voor werking in de productieomgeving. Hier kunnen geenrechten of plichten aan ontleend worden. Daarom adviseren wij u om, nadat u in de Klant Acceptatie Omgeving getest heeft ook een aantal pennytesten uit te voeren over uw productieverbinding.
9
Rabo Direct Connect | Handleiding
5. Inititatie 5.1 Het initiëren van een incasso of betaalopdracht Het initiëren van een incasso of betaalopdracht is per organisatie verschillend, afhankelijk van de gebruikte software oftewel ERP-pakket. Via het ERP-pakket zijn bestanden via de opgezette sFTP verbinding (zie hoofdstuk 3) te exporteren naar RDC. , Toelichting over het gebruik van uw ERPpakket kunt u bij uw ERP-leverancier opvragen. Dit hoofdstuk beschrijft hoe u de initiatiebestanden opbouwt en aan welke benaming dit bestand moet voldoen. 5.2 Het initiatiebestand Het initiatiebestand bestaat uit een header (zie paragraaf 5.3) en een payloadfile (zie paragraaf 5.5). Er zijn een aantal regels voor de benaming van een initiatiebestand. Een initiatiebestand wordt ook wel een file genoemd. Hierna wordt in de tekst file gebruikt voor het aanduiden van een initiatiebestand. Voor de benaming (filename) van een gecomprimeerde bestand is het advies om de volgende structuur te gebruiken: _<customer-id>_< contractid >_.zip Indien het om een encrypted bestand gaat dan de extensie .enc toevoegen. _<customer-id>__.zip.enc Naast bovenstaande gelden de volgende regels voor de benaming (filename): - Hoofdlettergevoelig, geen spaties toegestaan, underscores moeten worden gebruikt om de elementen te scheiden. - De filename mag maximaal 175 karakters bevatten. - Karakters die gebruikt mogen worden: “a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9. _”. - kan zijn SCT voor SEPA Credit Transfers, SDD voor SEPA Direct Debits of BTL voor wereld betalingen in BTL91 formaat. - <customer-id> is de klant identificatie code. Alfa numeriek en 8 karakters. - < contractid > is het identificatie nummer van de overeenkomst. Dit contract ID heeft u ontvangen van Rabobank. - Wordt ingezet om de bestandsnaam uniek te maken, numeriek, yymmddhhmmssxx (y = jaar, m = maand, d = dag, h = uur, m = minuut, s = seconde, xx = volgnummer of honderdste seconde). Voorbeeld: SCT_HARVINST_9876543210_13070107300001.zip.enc 5.3 De header Voor de benaming van de inhoud van een file geldt het volgende: .xml In de header staat de handtekening van de klant en andere metadata. De header ziet er volgt uit:
10
Rabo Direct Connect | Handleiding
ZIP file mypain001.zip header.xml 123 <PayloadAction>SCT <PayloadVersion>pain.001.001.03 1363953006682 <TimeStamp>2013-03-22T12:50:06 <Signature>SuaY3DCuv+hTJ9GxOVSOxdNTxt9f/GpdUNcFW271FbJcvPEHpa8dJQ 9lahTXepXYrk2+NBoofQ50RVAdCCKCI5Nk90D7CiHV/Bzf+bLARvBh/9EvWXS75GQ5Tkn3jgc/3 32AFWuJf8rdpPDTaqStKpZHW96TfHcoMI/bCxlavrArucwrBbVweuW3F6JPsDosT1fey+GNtKTUG GZVV7m71j+2oEosiL54TUjZoHM0HQIP0amg6+pZ6JRSmte7yuneGS5DpruVszGfpU9RfBcrQetr qXScwWqQjlCjBnlzs4HeXqd8j/fEEM609JPsX4wm+q2yrwqvDayj1B1eRcgfWg==
mypain001.xml
Veld
Toelichting
Toegestane waarden
ContractId PayloadAction
SCT SDD BTL
PayloadVersion
PAIN.001.001.03 PAIN.008.001.02 BTL91
Verplicht
Opmerking
XML type
Y Y
string string
Y
string
UniqueReference
Y
TimeStamp
Y
Signature
Y
Value from customer Value from customer Signed with customer private key
string dateTime base64Binary
5.4 Controle Met behulp van het RDCInitiationRequest.xsd bestand kunt u de XML bestanden juist creëren en valideren. Het bestand RDCInitiationRequest.xsd kunt u vinden op www.rabobank.com/rdc onder downloads XSD files (voor validatie). 5.5 De payload file De payload file moet voldoen aan de volgende beschrijving: _< customer-id>_< contractid >_.xml (Voor SEPA betalingen) Of _< customer-id>_< contractid >_.btl (Voor BTL91 wereld betalingen)
11
Rabo Direct Connect | Handleiding
De payloadfile mag geen gemixte initiatiebestanden bevatten. Een payload file bevat dus of SCT of SDD of BTL en niet een combinatie van deze drie. Er mogen ook niet meerdere bestanden van eenzelfde type in een .zip file worden aangeleverd. Zowel de “header” en de “payload file” bestanden moeten zijn gebaseerd op de UTF-8 karakter set. De Byte Order Mark is optioneel. Als u deze gebruikt dan moet het de UTF-8 Byte Order Mark zijn. 5.6 ZIP archive – DEFLATE Het reduceren van de bestandsgrootte van een file kan via de compressiemethode DEFLATE. Deze compressiemethode wordt wereldwijd gebruikt en is in veel programmeertalen en operating systems tools beschikbaar. U vindt een technische beschrijving terug: Hier 5.7 De initiatie stap voor stap
1) ERP-systeem genereert betaalbestand. 2) Betaalbestand wordt getekend. De handtekening (SHA-256) is nodig om de herkomst en integriteit te waarborgen. Het tekenen is vanuit beveiligingsoogpunt verplicht. De handtekening wordt versleuteld met de private key vanuit uw keystore. 3) Betaalbestand wordt gecomprimeerd. 4) Klant start sFTP sessie op. 5) De sFTP-server van Rabobank verifieert of u bent wie u zegt te zijn (authenticatie). Als u of uw certificaat niet wordt herkend zal de verbinding worden verbroken en is het niet mogelijk bestanden naar Rabobank over te zetten. 6) Betaalbestand wordt verzonden. 7) Na ontvangst wordt het bestand gedecodeerd. 8) Wanneer het bestand gecomprimeerd is aangeboden wordt deze gedecomprimeerd. 9) Handtekeningen en klantafspraken worden gecontroleerd. 5.8 Wat kunt u verwachten indien er iets niet goed gaat? Wanneer een bestand wordt verstuurd naar de Rabobank over de beveiligde verbinding (sFTP verbinding) worden de verschillende controles uitgevoerd door RDC. Indien deze negatief zijn stuurt Rabobank u een NACK (negative acknowledgement). Rabobank zal het bestand in dat geval niet verder verwerken. In Appendix 1 van deze handleiding vindt u een overzicht van alle mogelijke afkeuringen. Hierin wordt op hoofdlijnen aangegeven welk type afkeuringen er zijn. Hieronder een aantal voorbeelden waarbij u een NACK kunt verwachten. -
12
Decryptie. Indien het bestand versleuteld is decodeert Rabobank het bestand. Als het bestand niet kan worden gedecodeerd wordt een NACK bericht verstuurd. Decompressie. Indien u compressie heeft toegepast wordt het betaalbestand gedecomprimeerd bij Rabobank. Indien dit niet lukt wordt een NACK bericht verstuurd. Het proces controleert of het bestand is gewijzigd door het controleren van de meegestuurde handtekening (SHA 256 file). Als de handtekening controle niet correct is wordt een NACK bericht verstuurd.
Rabo Direct Connect | Handleiding
-
-
RDC controleert of het bestandstype herkenbaar is en of u gerechtigd bent bestanden van dit type aan te leveren. Indien dit niet is afgesproken stuurt RDC een NACK bericht terug. RDC controleert of hetzelfde bestand niet al eerder is aangeleverd om te voorkomen dat een bestand per ongeluk tweemaal verwerkt wordt. Dit gebeurt op basis van de bestandsnaam en de payload. Indien RDC een duplicaat vindt stuurt RDC een NACK bericht terug. RDC kan geen duplicaten detecteren als deze via andere kanalen zijn aangeleverd. Indien u naast RDC ook andere kanalen gebruikt voor het aanleveren van betaalbestanden aan Rabobank dient u zelf te borgen dat u niet dubbel aanlevert. RDC controleert of het aangeleverde bestand verwerkbaar is. Deze controles zijn: o Voldoet het formaat van het betaalbestand aan de eisen zoals gesteld in het Rabobank formatenboek? o Wordt hierbij niet afgeweken van de voorgeschreven tekenset? o Bevat het bestand niet meer dan één soort betaalopdrachten? (SDD, SCT en BTL91 mogen niet gemixt in één bestand aangeleverd worden) o Wordt het maximum van 100.000 betaalopdrachten per bestand niet overschreden? o Wordt het maximum van 10.000 batches (Payment Information Blocks) in een bestand niet overschreden? o Vervolgens wordt per betalingsopdracht een aantal controles uitgevoerd. In geval deze controles een negatief resultaat hebben wordt een NACK verstuurd. o Maakt de rekening waar de betalingsopdracht voor is onderdeel uit van de RDC overeenkomst? o Is de gevraagde uitvoeringsdatum van de transactiebetaling geldig? Zie paragraaf 4.10. o Voldoet de betaalopdracht aan de eisen die vanuit wet- en regelgeving voortkomen?
5.9 Uitvoer data en geagendeerde betalingen Het agenderen van betaalopdrachten is momenteel nog niet mogelijk. Alle betaalopdrachten die u via RDC aanlevert moeten direct verwerkbaar zijn. Betaalopdrachten met een uitvoerdatum in het verleden of in de toekomst worden uitgevoerd mits de betalingen voldoen aan onderstaande bepalingen: SCT:
Heeft een bestand een batch/tx met een uitvoerdatum meer dan 10 dagen in het verleden dan wordt het volledige bestand afgekeurd door RDC Heeft een bestand een batch/tx met een uitvoerdatum in de toekomst dan wordt het volledige bestand afgekeurd door RDC
BTL91: Heeft een bestand een batch/tx met een uitvoerdatum in het verleden dan wordt het volledige bestand afgekeurd door RDC Heeft een bestand een batch/tx met een uitvoerdatum meer dan 10 dagen in de toekomst dan wordt het volledige bestand afgekeurd door RDC SDD:
Heeft een bestand een batch/tx met een uitvoerdatum in het verleden dan wordt het volledige bestand afgekeurd door RDC Heeft een bestand een batch/tx met een uitvoerdatum meer dan 20 dagen in de toekomst dan wordt het volledige bestand afgekeurd door RDC
Het kanaal RDC checkt dus niet de aanleverdatum maar de uitvoerdatum. De aanleverdata voor SDD First, Recurring Core en B2B zijn D-5/D-3/D-2. Wanneer u het bestand te laat aanlevert corrigeert Rabobank de uitvoerdatum zolang als de meegegeven uitvoerdatum niet in het verleden ligt. Bij een uitvoerdatum in het verleden keurt Rabobank af en stuurt een PAIN.002 uit. RDC biedt geen mogelijkheid tot het insturen van een SCT met de aanmerking spoedbetaling. Deze betalingen kunt u alleen via het BTL91 formaat inzenden. RDC verwerkt betalingen conform de tijds-
13
Rabo Direct Connect | Handleiding
lijnen van Rabobank voor verwerking. U vindt relevante informatie over betalingen via de volgende link: Openingstijden feestdagen 5.10
Bulk en Batch aanlevering SCT bestanden
Een bestand kan meerdere batches aan betalingen bevatten met elk een eigen waarde voor batchbooking true of false. Op basis van de true/false waarde in het bestand selecteertRDC het betaaltype SCT dat voor de klantaanlevering van toepassing is. De betaaltype kan BATCH of BULK verwerking zijn. BATCH verwerking betekent dat de batch gecomprimeerd wordt teruggemeld en BULK betekent dat de batch gespecificeerd wordt teruggemeld. Als alle batches in het bestand batchbooking ‘false’ zijn wordt BULK verwerking doorgegeven aan de betaalfabriek, anders BATCH. Een BATCH-bestand kan dus verschillende waarden voor batchbooking bevatten (onzuivere aanlevering). Het bestand wordt dan conform batchverwerking door de Rabobank afgehandeld. Het advies is om SCT bestanden zuiver aan te leveren door de batchbooking allemaal of false,of op true te zetten. Het zuiver aanleveren heeft vooral bij ‘batch booking = false’ (en dus betaaltype BULK) een voordeel. De losse boekingen ná 13:00 uur aangeleverd tussen Rabobank rekeningen worden dan nog direct verwerkt, bij betaaltype BATCH is dit niet het geval. Aantal transacties in een bestand. Het gecomprimeerde bestand met de header en payloadfile mag maximaal 100.000 betalingen bevatten in de payloadfile. Indien er teveel betalingen in een file zitten keurt Rabobank de gehele file af. Als u de volumes met Rabobank heeft afgestemd kunt u mogelijk meerdere gecomprimeerde files insturen.
6. Status berichten en verantwoording 6.1 ACK/NACK Statusberichten RDC Voor elk bestand dat wordt ingezonden naar RDC wordt er een XML bestand teruggestuurd. In dit XML bericht staat aangegeven of het bestand wel of niet door RDC is geaccepteerd Voor een geaccepteerd bestand ontvangt u een ACK en voor een afgewezen bestand een NACK. Dit ACK of NACK bericht ontvangt u binnen 15 minuten. Het ACK bericht is tevens de timestamp voor de start van de verwerking. Hieronder een voorbeeld van een NACK bericht. Voorbeeld:
mypain001.zip_1363953006682_reply.xml 123 <PayloadAction>SCT <PayloadVersion>pain.001.001.03 1363953006682 <Status>NACK <TimeStamp>2013-03-22T08:00:00 <Errors> <Error> <ErrorCode>CAT_001 <ErrorMessage>
14
Rabo Direct Connect | Handleiding
Veld
Toelichting
Toegestane waarden
ContractId PayloadAction PayloadVersion
SCT SDD PAIN.001.001.03 PAIN.008.001.02
Y Y Y Y
UniqueReference Status
Verplicht
ACK NACK
Y
Opmerking
Repeated from request Repeated from request Repeated from request Value from Rabobank Value from Rabobank
XML type
string string string string string
Timestamp
Y
dateTime
Errors:Error: ErrorCode
N
string
Errors:Error: ErrorMessage
N
string
Met behulp van het RDCInitiationReply.xsd bestand kunt u de XML bestanden juist creëren en valideren. Het bestand RDCInitiationReply.xsd kunt u vinden op www.rabobank.com/rdc onder downloads. Standaard benaming: originalfilename_ _reply.xml Het bericht is gebaseerd op de oorspronkelijke naam van het bestand die door u is bepaald gevolgd door een underscore en de klantreferentie. Als het door u ingestuurde bestand niet leesbaar is en de klantreferentie niet bepaald kan worden dan wordt deze ook niet gegeven. In dat geval ziet de bestandsnaam er als volgt uit: originalfilename_ reply.xml Als hetzelfdebestand twee keer wordt verstuurd ontvangt u twee reacties: originalfilename_ _reply.xml (normale ACK/NACK) Originalfilename(1)_reply.xml (NACK omdat er een duplicaat is gedetecteerd) De 1 in de regel geeft aan dat het om het eerste duplicaat gaat en bevat altijd een NACK. Duplicaten worden afgekeurd. De referentie is in deze regel niet gespecificeerd. 6.2 PAIN.002 status berichten Indien tijdens de verwerking van SCT en SDD initiaties blijkt dat een batch of individuele transactie niet uitgevoerd kan worden, kan RDC u een melding in de vorm van een XML bericht, een zogenaamde PAIN.002, aanbieden. Op het inrichtingsformulier kunt u aangeven of u hier gebruik van wilt maken. Deze service is alleen inzetbaar voor SEPA initiaties (SCT en SDD). LET OP! Dit is een ander bericht dan de ACK/NACK berichten die RDC stuurt. Het kan in de praktijk bijvoorbeeld voorkomen dat u een ACK ontvangt van RDC, maar dat later toch blijkt dat er onvoldoende saldo op de rekening stond. Aangezien RDC geen opdrachten aanhoudt, worden deze direct afgekeurd. Dit wordt dan aan u teruggekoppeld door middel van het PAIN.002 bericht. De kenmerken: - PAIN.002 meldingen worden naast op batchniveau ook op transactieniveau teruggemeld.
15
Rabo Direct Connect | Handleiding
-
Er zitten maximaal 2.500 transacties in één PAIN.002 bericht. Bij een overschrijding van dit aantal ontvangt u aanvullende PAIN.002 berichten om alle pre-settlement afgekeurde transacties teruggemeld te krijgen. Pre settlement R-messages (R = reject) worden ook via PAIN.002 beschikbaar gesteld (naast bruto boeken op afschrift).
Let op!: De afkeuring met reden op transactieniveau komt vergezeld met de volledige originele transactiedetails. In geval van een salarisbetaling heeft dit tot gevolg dat het bedrag en begunstigde worden meegestuurd in de PAIN.002. Een functionele en technische beschrijving van het PAIN.002 bericht zijn beschikbaar op www.rabobank.com/rdc, via ‘Downloads’, dan onder ‘Export formats’. In de functionele omschrijving kunt u ook de afkeurcodes vinden. De opbouw van de bestandsnaam van PAIN.002 is als volgt: _< volgnummer>-PAIN002.xml Voorbeeld, als uw originele bestand er uit is gegaan als: RDCSCT20140427.xml.zip Dan heeft de eerste PAIN.002 die u ontvangt de volgende bestandsnaam: RDCSCT20140427.xml.zip_0000-PAIN002.xml 6.3 Bundeling verantwoordingsinformatie Standaard verstuurt Rabobank per verantwoordingsservice één bundel (.zip) met daarin alle rekeningnummers die onder uw contract vallen. U kunt er ook voor kiezen om de verantwoordingsinformatie te splitsen in een aantal bundels. Zo kunt u bijvoorbeeld per bedrijfsonderdeel een aparte bundel instellen. Op die manier is het eenvoudig om rekeningnummers in uw administratiesysteem van elkaar gescheiden te houden en hoeft u niet alle afschriften uit 1 bundel te zoeken. Deze optie kunt u voor zowel eindedaginformatie als de intradaginformatie gebruiken. Hieronder ziet u een voorbeeld voor eindedaginformatie: Rekening
CCY
NL81RABO
CAMT.053
Bundel
EUR
X
1
NL81RABO
EUR
X
1
NL81RABO
EUR
X
1
NL81RABO
EUR
X
1
NL81RABO
USD
X
1
NL81RABO
GBP
X
1
NL81RABO
EUR
X
2;1
NL81RABO
EUR
X
2;1
NL81RABO
EUR
X
2
NL81RABO
EUR
X
3
X
2
NL81RABO
EUR
X
3
NL81RABO
EUR
X
3
NL81RABO
EUR
X
3
16
MT940 Structured
Bundel
Rabo Direct Connect | Handleiding
In dit voorbeeld vindt u rekening 1 t/m 8 in bundel 1, rekening 7 t/m 10 in bundel 2 en rekening 10 t/m 13 in bundel 3. Daarnaast zitten rekeningen 7 en 8 in zowel bundel 1 als in bundel 2 en rekening 10 in bundel 2 en 3. Het is niet mogelijk in 1 bundel zowel CAMT.053 als MT940 Structured of CAMT.052 en MT942 Structured op te voeren, deze formaten zullen altijd in verschillende bundels verzonden worden. Mocht u van deze optie gebruik willen maken dan kunt u dit op uw inrichtingsformulier aangeven. In de files die u vervolgens download ziet dat er als volgt uit (waarbij het dikgedrukte deel het bundel nummer is): -
StatementType_Date_Time_ContractId_statementTransportAgreementId.zip
Voorbeeld: -
MT940S_20131118_213818_112600266_7.zip
De bundelnaam mag alleen letters en cijfers bevatten en is maximaal 8 posities lang. De bundelcode kan opgegeven worden via het inrichtingsformulier. Indien u geen bundelcode opgeeft wordt er nog wel automatisch een 4-cijferige code gegenereerd, in dat geval ontvangt u van de Rabobank tijdens uw implementatie de correcte 4-cijferige bundelnummers. 6.4 Intradag rapportage U kunt een rapportage ontvangen van transacties die zijn bij- of afgeboekt vóór het afsluiten van de dag, oftewel een intradag rapportage. Hierdoor kunt u bijvoorbeeld al eerder reconciliëren, leveringen vrijgeven en/of beter bepalen wat uw cash positie is gedurende de dag. Er zijn twee varianten om uw intradagrapporten op te halen: de ‘Intradag huidige boekdag’ en ‘Intradag boekdag overschrijdend’. Uw RDC-contract kunt u via het inrichtingsformulier uitbreiden met intradag rapportages. Dit formulier kunt u later ook gebruiken om wijzigingen door te geven. Om voor een rekening intradag informatie aan te vragen, moet deze rekening al deel uitmaken van de eindedag verantwoording die via dit contract loopt. Voor het toevoegen van de rekening aan de eindedag verantwoording gebruikt u hetzelfde formulier. Intradag huidige boekdag Intradag huidige boekdag bevat alle transacties van de huidige boekdag. Elke opvraag bevat nieuwe transacties. Intradaginformatie wordt alleen uitgeleverd op werkdagen. In het weekend en/of op Target closing days wordt er geen intradaginformatie uitgeleverd. Het eerste uitlevermoment is 07:00, het laatste uitlevermoment is 18:00. U kunt, via het inrichtingsformulier, ervoor kiezen om na het laatste uitlevermoment een intradagrapport te ontvangen met de resterende transacties. Dit zodat uw intradagrapport aansluit op uw eindedagrapport. De intradagrapporten kunnen per bundel uitgeleverd worden, indien in een bundel geen nieuwe intradaginformatie beschikbaar is wordt er geen intradagrapport uitgeleverd. Wilt u toch een (leeg) intradagrapport ontvangen dan kunt u dit aangeven in het inrichtingsformulier. Intradag boekdag overschrijdend Intradag boekdag overschrijdend bevat transacties over een bepaalde periode waarbij u de selectieperiode via het inrichtingsformulier kunt aanvragen. Het rapport zal boekdag overschrijdende transacties bevatten. Deze variant wordt zeven dagen per week uitgeleverd. Tevens kunt u ervoor kiezen om ook op Target closing days de intradaginformatie uitgeleverd te krijgen, dit kunt u aangeven op het inrichtingsformulier. Deze variant sluit niet aan op het eindedagrapport en is vooral geschikt indien u doorlopend intradaginformatie wilt ontvangen.
17
Rabo Direct Connect | Handleiding
De intradagrapporten kunnen per bundel uitgeleverd worden, indien in een bundel geen nieuwe intradaginformatie beschikbaar is wordt er geen intradagrapport uitgeleverd. Wilt u toch een (leeg) intradagrapport ontvangen dan kunt u dit aangeven in het inrichtingsformulier. Formaat U kunt de intradag rapportages ontvangen in twee formaten, MT942 Structured of CAMT.052. Het voordeel van de MT942 Structured is dat dit formaat gebaseerd is op een standaard die al lange tijd door veel financiële administraties/ERP pakketten ondersteund wordt en daarmee relatief eenvoudig te importeren is in uw financiële administratie. Het voordeel van het CAMT.052 formaat is dat deze gebaseerd is op de nieuwe XML standaard en geschikt is voor volledige rapportage van alle velden die u kunt opgeven bij een Eurobetaling (SEPA Credit Transfer) of Euro-incasso (SEPA Direct Debit). Een functionele beschrijving van de verschillende intradagformaten zijn beschikbaar op www.rabobank.com/rdc, via ‘Downloads’, dan onder ‘Export formats’. Vergelijkingstabel aanlevervarianten intradagrapporten In onderstaande tabel kunt u de verschillende varianten met elkaar vergelijken. Omschrijving: Dagen waarop intradag transacties geleverd worden Eerste mogelijke levertijdstip Laatste mogelijke levertijdstip Levering op vaste tijdstippen of met vaste frequentie
Levering via Boekdagen Wat als er geen transac-
Intradag huidige boekdag Elke werkdag m.u.v. zaterdag, zondag en Target closing day1.
Intradag boekdag overschrijdend Elke werkdag, zaterdag en zondag en Target closing day2.
07:00. De eerste rapportage van de dag levert alle transacties die sinds het einde van de vorige boekdag zijn bij- of afgeschreven. 18:004.
Start van de huidige boekdag3.
Maximaal tien vaste levertijdstippen in te stellen per kwartier tussen en inclusief het eerste en laatste levermoment, bijvoorbeeld om 07:00, 11:15, 15:30, 17:00 en 18:00. Elke 15, 30, 60 of 120 minuten worden de bij- of afgeschreven transacties gerapporteerd, vanaf het eerste levertijdstip tot en met het laatste levertijdstip. Secure File Transfer Protocol (sFTP) of SWIFT FileAct5 U ontvangt alleen transacties die met boekdag vandaag geboekt zijn. U kunt er voor kiezen om intradag
Maximaal tien vaste levertijdstippen in te stellen per kwartier tussen en inclusief het eerste en laatste levermoment, bijvoorbeeld om 05:00, 11:15, 15:30, 18:00 en 23:30. Elke 15, 30, 60 of 120 minuten worden de bij- of afgeschreven transacties gerapporteerd, vanaf het eerste levertijdstip tot en met het laatste levertijdstip. Secure File Transfer Protocol (sFTP) of SWIFT Fileact5 Boekdag overschrijdend.
Einde huidige boekdag.
U kunt er voor kiezen om intradag
1
Op TARGET closing days is geen betalingsverkeer in Euro’s mogelijk, er worden dan geen transacties verwerkt. TARGET closing days zijn Nieuwjaarsdag, Goede Vrijdag, Eerste Paasdag, Dag van de Arbeid en 1ste en 2de Kerstdag. 2 U kunt ervoor kiezen om bij de voortschrijdende intradag variant om op Target closing day intradaginformatie uitgeleverd te krijgen. U kunt dit aangeven op het inrichtingsformulier. TARGET closing days zijn Nieuwjaarsdag, Goede Vrijdag, Eerste Paasdag, Dag van de Arbeid en 1ste en 2de Kerstdag. 3 Intradag boekdag overschrijdend wordt 24 uur per dag en zeven dagen in de week uitgeleverd. Het eerste uitlevermoment is om 00:00 en eindigd op 23:45. 4 Het is mogelijk dat na 18:00, of na uw laatste ingestelde levermoment, nog transacties worden verwerkt met boekdag vandaag. Het kan dan zijn dat er transacties gerapporteerd worden op uw dagafschrift (MT940S of CAMT.053) die niet gerapporteerd zijn via een intradag rapportage. U kunt er voor kiezen om deze transacties nog intradag geleverd te krijgen. 5 Via sFTP ontvangt u van ons een Zip-bestand met daarin een header bestand met handtekening en een MT942S of CAMT.052 bestand.
18
Rabo Direct Connect | Handleiding
ties te rapporteren zijn?
Beschikbare formaten
rapportage te ontvangen indien op geen van de rekeningen in een bundel waarvoor u intradag rapportage heeft ingesteld een transactie geboekt is sinds de vorige levering van een intradag rapportage. U kunt dit aangeven op het inrichtingsformulier. MT942 Structured en CAMT.052
rapportage te ontvangen indien op geen van de rekeningen in een bundel waarvoor u intradag rapportage heeft ingesteld een transactie geboekt is sinds de vorige levering van een intradag rapportage. U kunt dit aangeven op het inrichtingsformulier. MT942 Structured en CAMT.052
6.5 Verantwoordingsinformatie Aan het einde van de dag wordt een verantwoordingsbestand (End of day) verzonden in het gekozen bestandsformaat (CAMT.053 of MT940 structured). Intradag verantwoording is beschikbaar in RDC via CAMT.052 en MT942 Structured. Een verantwoordingsbestand blijft 2 maanden lang beschikbaar en kan via uw sFTP verbinding worden opgehaald. Houdt u er rekening mee dat u na 2 maanden geen CAMT.053, MT940 Structured, CAMT.052 of MT942 Structured meer kunt ophalen.
ZIP file CAMT053_20130322_081011_123.zip header.xml
123 2013-03-22T08:10:11 <TimeStamp>2013-03-22T08:10:11 <PayloadList> <Payload> CAMT053.20130322_081011_123.xml <Signature>OzqpF3zVMBatlKKH/T18mhbelWM8afWgK/GzaEARF9Cc7AF2CuSSnlL ioSK9oJ07Y/+ZqdzpqqR3VzeCkGuUO6s8mCW9fkFMElNTz4szObj/uTHh3KpJTbWgOKOdD0xQo EHqLaOBgUmDEwzjLvmMOBhbON41CitJN+EpYUrHx+kHr5mPSMfZv7AvbMdMychMDWgY7khs lfMTAwwksB1bDQAVA18hi3W7v+hTPf6N3YQ2ssiWXOAlQO5ZDkdG5JIavFfIg25Bb4TPbIXl00qt Ui5dBxp30k0vdoGL6pw2l3YgvFRCy1mJyY3ofQgaAuGBDI7jnqu9ztVyKQRL70BBHA== <PayloadAction>CAMT053 <PayloadVersion>CAMT053v1.2 CAMT053_20130322_081011_123.xml
Veld
Toelichting
Toegestane waarden
Verplicht
UniqueReference
Y Y
Timestamp
Y
PayloadList: Payload: FileName
Y
ContractId
19
Opmerking
Value from Rabobank Value from Rabobank Value from Rabobank
XML type
string string string dateTime
Rabo Direct Connect | Handleiding
PayloadList: Payload: Signature PayloadList: Payload: PayloadAction PayloadList: Payload: PayloadVersion
CAMT.053 MT940 Structured CAMT.053v1.2 MT940 Structuredv1.2
Y
Value from Rabobank
string
Y
Value from Rabobank
dateTime
Y
Value from Rabobank
string
Met behulp van het RDCInformationReply.xsd bestand kunt u de XML bestanden juist creëren en valideren. Het bestand RDCInformationReply.xsd kunt u vinden op www.rabobank.com/rdc onder downloads. Verantwoordingsinformatie wordt afgeleverd in een zip bestand met een header met daarin een handtekening. De benaming van het zip bestand is als volgt: StatementType_Date_Time_ContractId_statementTransportAgreementId.zip Voorbeelden: CAMT053_20130327_152431_1002003_590.zip MT940S_20130327_152431_1002003_8.zip 6.6 Directe verantwoording stap voor stap
1) De BackOffice systemen van de Rabobank genereren de verantwoordingsinformatie die met u afgesproken is. 2) De verantwoordingsinformatie wordt indien afgestemd versleuteld. 3) De verantwoordingsinformatie wordt klaargezet. 4) Afhankelijk van uw keuze voor PUSH of PULL start u de beveiligde sFTP verbinding op met de bank, of pusht Rabobank het bericht naar uw systeem. 5) De sFTP server verifieert of u bent wie u zegt te zijn. Als u niet wordt herkend wordt de verbinding verbroken. 6) Vervolgens haalt u het bestand op en verplaatst u het naar de gewenste locatie. Het is aanbevolen het bestand niet te kopiëren, maar te verplaatsen naar uw ERP omgeving. Dit voorkomt fouten en een dubbele administratie. 7) U verbreekt de verbinding met de bank en kunt het bestand in uw ERP systeem verwerken.
20
Rabo Direct Connect | Handleiding
7. De RDC portlet 7.1 Wat is de RDC portlet? De RDC status portlet maakt het u gemakkelijk online de status van uw transacties in te zien. In de portlet worden afwijzingen van de betalingen op file, batch en betalingsniveau weergegeven. U kunt zien waarom een file, batch of betaling is afgekeurd. Indien u gebruik wilt maken van de RDC status portlet kunt u dit aangeven op het inrichtingsformulier. U vraagt het gebruik van de portlet aan door nieuwe passen aan te vragen of door toegang tot de portlet te koppelen aan al bestaande passen. 7.2 Hoe gebruik ik de RDC- portlet? Op www.rabobank.com/supportcorporateconnect kunt u uitgebreide informatie vinden inzake het inloggen op Rabo Corporate Connect. Zodra u zich bevindt op het Rabo Corporate Connect Portaal kunt u de RDC-portlet benaderen. Nadat u bent ingelogd vindt u onder “Menu” de knop voor de RDC-portlet. Klik hierop om de portlet te openen (zie onder).
Nadat u betalingen heeft verzonden via RDC zult u hier de status terug kunnen zien van uw betaling op file niveau. Indien dit niet het geval is kunt u contact opnemen met de Rabo Corporate Support. Aan het einde van deze handleiding vindt u de contactgegevens. 7.3 Batch level informatie bekijken Indien u op het Vergrootglas klikt van een (deels) afgekeurd bestand wordt de Batch level informatie getoond. Hier ziet u op batchniveau de afgekeurde of deels afgekeurde batches met daarbij een afkeurreden. In Appendix 1 vindt u een overzicht van alle mogelijke afkeuringen. Veld / Knop
Beschrijving
Batch referentie
Vul hier de Batch referentie in indien u gebruik wilt maken van de zoekfunctionaliteit.
Zoek
Met deze knop zoekt u naar de batch referentie wat u hebt ingevuld in het veld Batch referentie.
21
Rabo Direct Connect | Handleiding
Veld / Knop
Beschrijving
Vergrootglas
Met deze knop kunt u de reden van afwijzing bekijken op Transactie niveau.
Bestandsstatus
Met deze knop gaat u terug naar het beginscherm van deze toepassing.
Terug
Met deze knop gaat u terug naar het vorige scherm.
7.4 Transactie informatie bekijken Nadat u nogmaals op het vergrootglas heeft geklikt van een (deels) afgekeurde batch wordt de Transactie informatie weergegeven. Veld / Knop
Beschrijving
Transactie referentie
Vul hier de Transactie referentie in indien u gebruik wilt maken van de zoekfunctionaliteit.
Zoek
Met deze knop zoekt u naar de transactie referentie die u hebt ingevuld in het veld Transactie referentie.
Bestandsstatus
Met deze knop gaat u terug naar het beginscherm van deze toepassing.
Terug
Met deze knop gaat u terug naar het vorige scherm.
8. Productbeeld U kunt een productbeeld voor het verkrijgen van extra inzicht in uw instellingen opvragen via uw contactpersoon bij Rabobank. Het productbeeld is een .pdf bestand met daarin de volgende RDC gegevens: - NAW gegevens onderneming - Contactpersonen - Contractgegevens - Rekeninginformtatie o Producten o Afrekenrekening o Bundelinformatie - Intradag instellingen
9. Ondersteuning en Service 9.1 Contact gegevens Na succesvolle ingebruikname van Rabo Direct Connect kunt u voor vragen of het oplossen van problemen terecht bij Rabo Corporate Support. Supportdesk: Geopend: Telefoon: Email: Website:
22
Rabo Corporate Support maandag t/m vrijdag van 8:00 tot 17:30 030-712 1777 [email protected] www.rabobank.com/rdc
Rabo Direct Connect | Handleiding
Houdt u er rekening mee dat we voor een juiste afhandeling van uw vraag onderstaande gegevens nodig zullen hebben: -
Uw gegevens: Bedrijfsnaam of andere referentie De vraag/probleemstelling Informatie over de betreffende download/upload zoals de datum, tijd en bestandsnaam
9.2 Noodprocedure blokkeren verbinding RDC In noodgevallen kunt u uw RDC verbinding met de Rabobank blokkeren. Hiervoor bestaat een noodlijn die 24/7 bereikbaar is. U kunt dit nummer bellen in geval er misbruik wordt gemaakt van uw RDC-overeenkomst en er dus sprake is of het vermoeden bestaat van fraude. Dit nummer kan enkel voor deze noodprocedure worden ingezet. In alle andere gevallen wordt u niet ondersteund buiten kantooruren. Telefoon:
06-12205170
Wanneer u dit nummer belt zal ter verificatie gevraagd worden naar uw contract ID. Zorg ervoor dat u dit nummer bij de hand heeft wanneer u belt. Dit nummer heeft u ontvangen bij de implementatie van RDC. Bewaar dit nummer dus goed. Nadat we uw identiteit hebben bevestigd wordt de verbinding verbroken en zetten we het noodproces in gang. U wordt uiterlijk binnen twee uur teruggebeld met een bevestiging dat de RDC verbinding is geblokkeerd. Daarna zullen we contact met u opnemen om te bespreken hoe we de verbinding weer op een veilige manier kunnen herstellen. Indien de melding ‘s nachts is gedaan wordt u de volgende ochtend teruggebeld hierover en wanneer u de melding in het weekend heeft gedaan wordt u hierover op maandagochtend gebeld.
23
Rabo Direct Connect | Handleiding
Appendix 1: Afkeurredenen Hieronder vindt u een overzicht van alle afkeuromschrijvingen die RDC genereert. De omschrijvingen 1 tot en met 40 die hier staan weergegeven kunt u ook terugvinden in de RDC status portlet. De meldingen 100 t/m 124 zijn de afkeurredenen die verzonden worden voor BTL91 betalingen. Deze verschijnen niet in de RDC status portlet en worden weergegeven in ACK/NACK Statusberichten RDC. Indien een afkeurcode onduidelijk is kunt u contact opnemen met Rabo Corporate support. Reject reason code
Description
NO_AGREEMENT_FOR_ACCOUNT
1, "File {0} contains one or more account(s) ({1}) which are not in the agreement." 2, "One or more Execution date(s) are not valid, payment(s) not direct processable: {0}." 3, "File {0}, contains more than {1} transactions. This is not allowed." 4, "The signature of file {0} could not be verified successfully." 5, "The sender of file {0} is not authorised to deliver payment instructions, unknown agreement." 6, "Unknown version specified (for XSD) in the header." 7, "The input file ({0}) is not a zip file." 8, "The compressed input file {0} contains one or more folders." 9, "The compressed input file {0} has too many files." 10, "The payload file is of an incorrect file type ('.zip.enc' expected): {0}." 11, "The payload file is of an incorrect file type ('.xml' or '.txt' expected): {0}." 12, "The content of the compressed input file is not conform specification (expected header or payload file cannot be found)." 13, "The compressed payload file of input file {0} contains one or more folders." 14, "The compressed payload file of input file {0} contains an incorrect file type ('.xml' or '.txt' expected)." 15, "The compressed payload file of input file {0} contains no entries." 16, "The compressed payload file of input file {0} contains too many files." 17, "The compressed payload file of input file {0} contains an entry with an invalid name." 18, "Duplicate found, the payload of this input file ({0}) has already been successfully processed." 19, "The Header of File {0} does not comply to the RDCInitiationRequest scheme. Technical reason: {1}." 20, "Header contains multiple signatures. This is not allowed."
NOT_DIRECT_PROCESSABLE TOO_MANY_TRANSACTIONS SIGNATURE_NOT_VERIFIED SENDER_NOT_AUTHORIZED XSD_VERSION_UNKNOWN INPUTFILE_NOT_A_ZIP_FILE INPUTFILE_ZIP_CONTAINS_FOLDERS INPUTFILE_ZIP_CONTAINS_TOO_MANY_FILES PAYLOAD_FILE_TYPE_NOT_ZIP_ENC PAYLOAD_FILE_TYPE_NOT_XML_OR_TXT INPUTFILE_ZIP_NOT_COMPLIANT
PAYLOADFILE_ZIP_CONTAINS_FOLDERS PAYLOADFILE_ZIP_CONTAINS_INCORRECT_FILE_TYPE PAYLOADFILE_ZIP_CONTAINS_NO_ENTRIES PAYLOADFILE_ZIP_CONTAINS_TOO_MANY_FILES PAYLOADFILE_ZIPENTRY_FILE NAME_NOT_COMPLIANT DUPLICATE_PAYLOAD HEADER_NOT_VALID TOO_MANY_SIGNATURES
24
Rabo Direct Connect | Handleiding
Reject reason code
Description
UNKNOWN_CT_XSD_VERSION
21, "Version of XSD specified in header for Credit Transfer XML is unknown!" 22, "Version of XSD specified in header for Direct Debit XML is unknown!" 23, "Version specified in header for BTL is unknown!"
UNKNOWN_DD_XSD_VERSION UNKNOWN_BTL_VERSION HEADER_NOT_WELL_FORMED
24, "The Header of File {0} is not well-formed. Technical reason: {1}."
UNKNOWN_XSD_VERSION
25, "Unknown version specified (for XSD) in the header." 26, "The payload of File {0} does not comply to the SEPA scheme ({1}). Technical reason: {2}." 27, "The payload of File {0} is not well-formed (SEPA scheme ({1}). Technical reason: {2}." 28, "More than one valid certificate available, exactly one certificate should be valid at a given time." 29, "No valid certificate available, exactly one certificate should be valid at a given time." 30, "The file {0} could not be decrypted." 31, "File {0} contains one or more (Dutch) IBAN(s) with an invalid format ({1})." 32, "The payload file name found in file {0} is invalid." 33, "Party sent an encrypted file, so at least one valid SharedSecretKey should be available." 34, "Party sent an encrypted file, so SharedSecretKey attributes are mandatory and should be available." 35, "More than one valid secret key available, only one secretKey should be valid at a given time." 36, "The input directory does not match the directory expected for the agreement of this party." 37, "The input file name ({0}) contains one or more spaces." 38, "A duplicate input file ({0}) has been detected." 39, "File {0}, contains more than {1} batches. This is not allowed." 40, "Duplicate input files ({0}, {1}) have been detected." 100, "BetaalRecord 1 was not found at line {0}." 101, "BetaalRecord 2 was not found at line {0}." 102, "BetaalRecord 3 was not found at line {0}." 103, "BetaalRecord 4 was not found at line {0}." 104, "Sluitrecord was not found at line {0}." 105, "A line was found with an unknown Recordcode at line {0}." 106, "A line was found with an incorrect line length at line {0}." 107, "A line was found with an incorrect field value at line {0}, field=''{1}'', rejected value=''{2}''."
PAYLOAD_NOT_VALID PAYLOAD_NOT_WELL_FORMED TOO_MANY_CERTIFICATES NO_CERTIFICATES FILE_CAN_NOT_BE_DECRYPTED FILE_CONTAINS_INVALID_IBANS PAYLOAD_FILE NAME_NOT_COMPLIANT NO_SHARED_SECRET_KEY MISSING_ATTRIBUTE_IN_SHARED_SECRET_KEY TOO_MANY_SHARED_SECRET_KEYS INVALID_INPUT_DIRECTORY INPUTFILE NAME_CONTAINS_SPACES DUPLICATE_INPUTFILE_DETECTED TOO_MANY_BATCHES DUPLICATE_INPUTFILES_DETECTED BETAALRECORD_1_NOT_FOUND BETAALRECORD_2_NOT_FOUND BETAALRECORD_3_NOT_FOUND BETAALRECORD_4_NOT_FOUND SLUITRECORD_NOT_FOUND UNKNOWN_RECORD_CODE INCORRECT_LINE_LENGTH INCORRECT_FIELD_VALUE
25
Rabo Direct Connect | Handleiding
Reject reason code
Description
SECOND_VOORLOOPRECORD_FOUND
108, "A second VoorloopRecord was found at line {0}."
BETAALRECORD_BEFORE_VOORLOOPRECORD
109, "A BetaalRecord was found before a VoorloopRecord was found at line {0}." 110, "A BetaalRecord was found after a SluitRecord was found at line {0}."
BETAALRECORD_AFTER_SLUITRECORD TOTAALRECORD_BEFORE_VOORLOOPRECORD
111, "A TotaalRecord was found before a VoorloopRecord was found at line {0}."
TOTAALRECORD_BEFORE_BETAALRECORD
112, "A TotaalRecord was found before a BetaalRecord was found at line {0}." TOTAALRECORD_AFTER_SLUITRECORD 113, "A TotaalRecord was found after a SluitRecord was found at line {0}." SLUITRECORD_BEFORE_VOORLOOPRECORD 114,"A SluitRecord was found before a VoorloopRecord was found at line {0}." SLUITRECORD_BEFORE_BETAALRECORD 115, "A SluitRecord was found before a BetaalRecord was found at line {0}." SLUITRECORD_BEFORE_TOTAALRECORD 116, "A SluitRecord was found before a TotaalRecord was found at line {0}." INVALID_OPDRACHTNUMMER 117, "A BetaalRecord was found with an incorrect value for field 'Opdrachtnummer(1-4)' at lines {0} - {1}." PHANTOM_TOTAALRECORD 118, "A TotaalRecord for currency ''{0}'', for which there are no BetaalRecords, was found at line {1}." SUPERFLUOUS_TOTAALRECORD 119, "A TotaalRecord for currency ''{0}'' was found for which a TotaalRecord has already been found at line {1}." TO120, "The number of 'BetaalRecords' counted ({2}) for TAAL_RECORD_AANTAL_BETAAL_OPDRACHTE currency ''{0}'' does not match the number of records N_INCORRECT specified ({3}) in the TotaalRecord (field 'AantalBetaalopdrachten') at line {1}." TO121, "The sum of 'OpdrachtBedrag' ({2}) found in TAAL_RECORD_TOTAAL_BEDRAG_MUNTSOOR 'BetaalRecords' for currency ''{0}'' does not match the T_INCORRECT amount specified ({3}) in the TotaalRecord (field 'TotaalbedragMuntsoort') at line {1}." SLUIT_RECORD_TOTAAL_AANTAL_RECORDS_I 122, "The number of records counted does not match NCORRECT the number of records specified in the SluitRecord (field 'TotaalAantalRecords') at line {0}." SLUIT_RECORD_TOTAAL_AANTAL_TRANSACTIE 123, "The number of transactions counted does not _RECORDS_INCORRECT match the number of transactions specified in the SluitRecord (field 'TotaalAantalTransactierecordS') at line {0}." MISSING_TOTAALRECORD 124, "A TotaalRecord for currency ''{0}'' was not found."
26
Rabo Direct Connect | Handleiding
Appendix 2. Checklist Signing We expect you to calculate the hash with the SHA256 algorithm and use a 2048 bytes RSA private key. For the openssl “dgst” commands below you need to use a PEM format of your public key. You can also use openssl to convert your public key to the PEM format. The openssl commands generates hashes and verifies signatures. You can compare the hashes with the results of your own code and these should be identical. After signing the hash (creation of the signature) you can verify them with the given openssl commands. Verify your own signature of type RAW with openssl: 1. Check your own hash (result of your code) against openssl hash; openssl dgst -sha256 <payload-file> 2. Verify your own signature (result of your code) with openssl; Openssl dgst -sha256 -verify -signature <signature-file> <payload-file> 3. Check base64 encoding https://www.base64decode.org/
Verify your own signature of type PKCS#7 with openssl: 1. Check your own hash (result of your code) against openssl hash;
openssl dgst -sha256 <payload-file> 2. Verify your own signature (result of your code) with openssl;
openssl smime -verify -inform DER -in -content <payload-file> -certfile -noverify -nointern 3. Check Base64 encoding : https://www.base64decode.org/
27
Rabo Direct Connect | Handleiding
Appendix 3. Logboek wijzigingen Datum
Versie
23-05-2014
1.1
23-05-2014
1.1
23-05-2014
1.1
23-05-2014
1.1
02-07-2014
1.2
02-08-2014
1.2
10-09-2014
1.2
04-02-2015
1.3
23-2-2015
1.3
27-05-2015
Type Wijziging
Reden Wijziging
Beschrijving van PAIN.002 bestandsnaam gecorrigeerd in sectie 5.2 – PAIN.002 status berichten. Situaties waarbij PAIN.002 beschikbaar gesteld wordt verwijderd uit sectie 5.2 – PAIN.002 status berichten en een verwijzing opgenomen naar een functionele en technische formaatbeschrijving van PAIN.002. Afkeurcodes plus omschrijving, die in een PAIN.002 kunnen voorkomen, verwijderd uit sectie 5.2 – PAIN.002 status berichten. De codes en omschrijvingen zijn beschikbaar via de functionele formaatbeschrijving van PAIN.002. In 4.2 – Het initiatie bestand toegevoegd dat lengte van filename maximaal 175 karakters mag zijn. Opmerking: er kunnen geen spaarrekeningen worden gebruikt binnen RDC. Verschillende stijlverbeteringen
Correctie
Aanvulling
1.3
Intradag, PAIN002 op transactieniveau en PUSH/PULL mogelijkheden toegevoegd. Naamgeving en mailadres support aangepast. Toegang naar RDC-portlet aangepast. bundelcodes verwerkingsinformatie aangepast. Wijzigingen mbt SHA2
26-06-2015
1.3
Encryptie verwijderd
Verwijdering
08-11-2015
1.4
Tekstuele aanpassingen Toevoeging spaarrekeningen Toevoeging productbeeld
Aanpassing Aanvulling Aanvulling
28
Efficiëntie
Efficiëntie
Aanvulling
Aanvulling Opschoning
Aanpassing Aanpassing Aanpassing
Rabo Direct Connect | Handleiding