Bundesbank Clash, oder Meldung von Auslandszahlungen

Wer hat schon mal eine Zahlung aus dem Ausland erhalten und sich gefragt was eigentlich der folgende Vermerk im Verwendungszweck bedeuten soll:

AWV-MELDEPFLICHT BEACHTEN HOTLINE BUNDESBANK (0800) 1234-111

Hintergrund dieser Meldung ist, dass man grundsätzlich alle Zahlungen an oder von einem Ausländischen Konto auf ein deutsches Konto melden muss.

Bevor nun jeder einen Schreck bekommt:

Wirklich aktiv werden muss man erst, wenn der Betrag der Zahlung satte
12.500 €
übersteigt.

Alles darunter ist von einer Meldung befreit.

Die Banken scheinen einfach zu bequem zu sein, diese Meldung nur dann mit anzuhängen, wenn der Betrag überschritten wird, es ist aber ja auch eine recht komplexe Prüfroutine die dort durchlaufen werden muss, an der wir als Entwickler sicherlich mindestens 10 Minuten getüftelt hätten, um sie in das System einzubauen. Also werden wir wohl auch in Zukunft durchgängig diese Meldung in den Versendungszweck geschickt bekommen. Aber genug davon.

Mit der hohen Meldegrenze sind sicherlich sehr viele Leute und noch mehr Überweisungen aus dem Schneider, denn die wenigsten werden so große Beträge überweisen.

Sollte es aber doch einmal dazu kommen, z.B. weil im europäischen Ausland ein Auto gekauft wird muss man diesen Hinweis wirklich ernst nehmen und Meldung bei der Bundesbank machen.

Ja, auch Überweisungen innerhalb der EU sind davon nicht ausgenommen, also obacht, wenn der Betrag überschritten ist.

Praktischerweise liefert der Verwendungszweck für Privatleute bereits einen Kontakt, den man verwenden kann, wenn man eine private Überweisung schickt oder erhält: Die Telefonnummer: (0800) 1234-111

Diese Telefonnummer ruft man einfach an, meldet wer man ist und wie viel Geld man geschickt oder bekommen hat und schon ist die Sache erledigt.

Leider ist diese einfache Möglichkeit der Meldung wirklich nur Privatleuten vorbehalten. Wenn man also als Unternehmen mit dieser Frage konfrontiert ist dann wird es leider nicht einfacher, sondern deutlich komplizierter.

Und für genau diesen Fall wurde hier einmal eine Beschreibung zusammen getragen, die auf eigenen Erfahrungen basiert.

Was folgt ist eine regelrechte Odyssee, die glücklicherweise zu einem guten Ende kam und die euch eine kleine Hilfestellung geben soll, damit ihr einfach ans Ziel kommt: Die Meldung einer Auslandszahlung!

Unternehmen sind also verpflichtet, Auslandsüberweisungen in beiden Richtungen (also auch einen Zahlungseingang) über mehr als 12.500€ an die Bundesbank zu melden.

Das geht aber nicht etwa telefonisch, sondern ein Unternehmen ist verpflichtet, diese Meldung über das Meldeportal der Bundesbank zu erstellen.

Eine genauere Beschreibung und allgemeine Information über die so genannten AWV Zahlungsmeldungen gibt es in einem FAQ PDF Dokument von der Bundesbank zu dem Thema:
https://www.bundesbank.de/resource/blob/611818/5446d3f11c844348f5e6dcff5280291d/mL/faqs-zur-awv-zahlungsmeldungen-data.pdf

Bitte beachtet, dass die Links in dem PDF leider falsch sind, aber zum Glück gibt es ja diesen Beitrag und da werden auch die korrekten Links genannt.

Um eine Überweisung ins Ausland oder einen Zahlungseingang aus dem Ausland zu melden muss man sich auf dem Portal „Allgemeines Meldeportal Statistik“ registrieren, das man hier findet:

https://extranet.bundesbank.de/bsvpub/register1.do?fv=AMS

Aber moment:

Um sich dort registrieren zu können muss man vorher noch eine so genannte „Meldenummer“ beantragen. Dieser Antrag muss über eine andere Webseite erfolgen.

Das Formular für den Antrag der Meldnummer findet man unter:

https://www.bundesbank.de/de/service/meldewesen/aussenwirtschaft/elektronische-einreichung/-/meldenummer-611648

Wo schön beschrieben wird, wer eine Meldenummer braucht aber nicht wirklich, wofür sie da ist. Es ist eigentlich auch egal, denn wenn ihr ein Unternehmen habt das keine Bank ist, besorgt euch eine Meldnummer.

Unter der Beschreibung gibt es den Download Link für das PDF Formular. Dieses füllt man aus und schickt es einfach an die dort angegebene Email Adresse


Das PDF sollte heruntergeladen werden und kann direkt ausgefüllt und mit den Daten gespeichert werden.

Wahlweise kann man auch mal wieder sein altes Faxgerät abstauben und es per Fax schicken. Beides, Email Adresse und Faxnummer stehen übrigens auch direkt auf dem Formular. Außerdem ist es eigentlich ein recht schönes Formular, dass man direkt ausfüllen und mit Daten ausgefüllt speichern und verschicken kann. Da ist mal ein Lob angebracht, denn das ist durchaus komfortabel.

Die Antwort kam dann nach ca. 2 1/2 Wochen, wobei das falsch ist, es kam direkt eine Automatische Eingangsbestätigung. Die Meldenummer kam nach 2 1/2 Wochen, wobei die automatische Eingangsbestätigung zugegebenermaßen auch schon auf eine längere Bearbeitungszeit hinwies.

Als Unternehmen sollte man die Meldenummer also frühzeitig beantragen, insbesondere da der Abgabetermin am 7. des Folgemonats ist. Wenn ihr also zum Beispiel im Oktober eine Zahlung geschickt oder erhalten habt dann solltet ihr die Meldung bis zum 7. November abgeben.

Wenn man dann endlich die Meldenummer erhalten hat kann man sich sich wie gesagt unter der folgenden URL registrieren:

https://extranet.bundesbank.de/bsvpub/register1.do?fv=AMS


Tragt hier die Daten ein und aktiviert am besten beide Haken bei „Mögliche Funktionen“

Nach Eintragen der Firmendaten samt Meldenummer bekommt man dann erst einmal ein PDF, dass man ausdrucken, unterschreiben und wieder einscannen muss. Dann kann man es per Fax oder per email schicken, die adresse oder nummer steht wieder auf dem Formular. Hier mal ein Auszug für ein Beispiel Formular:


Das Formular hat 6 Seiten und die letzte muss unterschrieben werden!

Auf die email bekommt man sehr zügig eine Antwort, ebenfalls per email und auch die Zugangsdaten sind sehr schnell da also kann endlich die eigentliche Meldung in Angriff genommen werden.

Dazu ruft man die folgende Seite auf:

https://extranet.bundesbank.de/ams/

Und dort kann man sich mit dem erhaltenen Benutzernamen und Passwort einloggen und die erste Meldung erfassen.

Beim der ersten Anmeldung solltet ihr aber zunächst noch ein paar Stammdaten ergänzen oder zumindest prüfen ob sie vorhanden sind. Klickt dazu auf „Stammdaten“ und prüft, ob die Felder Telefon und „Schwerpunkt wirtschaftlicher Tätigkeit“ gefüllt sind. Falls nicht ergänzt sie, denn sonst bekommt ihr eine Warnung beim Erstellen der Meldung:


Schließlich könnt ihr auf „Neue Meldung erstellen“ klicken und anfangen eine Meldung zu erstellen. Auf der ersten Seite wählt man den Vordruck und den Monat. Für die normale Überweisung oder den Zahlungseingang einer normalen Firma erstellt man eine Meldung mit dem Vordruck Z4:

Vordruck auswählen, Monat eintragen und „Weiter“ klicken.

Auf der zweiten Seite muss man zunächst einen „Ansprechpartner“ einpflegen. Da nimmt man in der Regel sich selbst.

Den Ansprechpartner kann man übrigens für spätere Meldungen immer wieder verwenden.

Schließlich gibt man auf der letzten Seite eine Zeile für die Eingehende Zahlung ein und lässt die Werte durch einen Klick auf „Prüfen“ checken:

Mit „Versenden“ schickt man die Meldung dann ab.

Vielleicht noch ein paar Hilfestellungen zu den eingegebenen Werten:

Zweck der Zahlung:
Ein freier Text wo beschrieben wird, wofür die Zahlung da ist
zum Beipiel „Begleichen der Rechnung für die Erbringung von Dienstleistungen in der IT Beratung“

BA:
Hier gibt es die Werte 1 bis 4, klick einfach mal auf die drei Punkte neben dem Feld, um sie zu sehen. Hier ist codiert, ob es sich
a) um einen Zahlungseingang oder ausgang handelt und
b) ob die Zahlung für eine Dienstleistung oder Waren erfolgt ist oder ein so genannter Kapitalverkehr, also wenn ihr einfach nur Geld von einem Konto zum anderen schickt, ohne eine dafür erbrachte Leistung.

Kennzahl:
Hier muss dann noch genauer angegeben werden, wofür die Zahlung ist. Da gibt es leider keine einfache Antwort, sondern ihr müsst euch durch die Liste arbeiten, um das Passende herauszufinden. Wenn ihr das Glück habt, eine Zahlung für IT Beratung melden zu wollen, dann können wir helfen:
Nehmt die Kennzahl 573 – EDV-Dienstleistungen

Land:
Hier gibt man das jeweils andere Land, also eben nicht Deutschland an.
Auch hier gibt es eine Liste, wobei Name und Code zusammen gehören und man mit Füllen des einen Feldes auch das jeweils andere Feld füllt.

Eingehende Zahlung/Ausgehende Zahlung:
Achtung, das sind Beträge in tausend €!
Anstelle von z.B. 12.500 € muss man hier also eine 13 angeben, da nur ganze Zahlen erlaubt sind.
Die Werte soll man kaufmännisch auf und abrunden. für 13.000€-13.499€ würde man also 13 angeben, für 13.500€-13.999€ dann eine 14.

V/E:
Tja, die Beschreibung sagt:
Hier ist nur bei Aufrechnungen und Verrechnungen der Buchstabe „V“ sowie bei der Einbringung von Sachen und Rechten der Buchstabe „E“ einzusetzen.“
Man kann es leer lassen und das haben wir bei einer normalen Zahlung für Dienstleistungen getan.

Bei weiteren Detailfragen gibt es auf der linken Seite übrigens den Punkt „Erläuterungen“ wo man dann zu allen Vordrucken eine genaue Beschreibung finden kann. Oder ihr benutzt diesen Link:

https://extranet.bundesbank.de/ams/amsa/showErlaeuterungen.do

Wir hoffen, dass ihr mit dieser kleinen Anleitung besser durch die Tücken der AWV Meldungen kommt.

FNDLOAD – EBS Setup Objekte exportieren und importieren

Die Oracle eBusiness Suite hat ein ganzes Arsenal an Setup Objekten, wo Implementierer und Anwender Daten eintragen können, die dann vom System für Steuerungen verwendet werden.

Dazu gehören reine Datenobjekte, die relevante Daten strukturiert speichern, damit sie dann im restlichen System verwendet werden können, wie zum Beipiel

  • Lookups
  • Werte Sets
  • Profiloptionen
  • Schlüssel Flexfelder
  • Beschreibende Flexfelder
  • Messages

Aber auch Ausführungs Objekte, die eine Benutzung bestimmter Funktionen erst ermöglichen, wie zum Beispiel

  • Hintergrundprogramme
  • Sets von Hintergrundprogrammen
  • Masken & Funktionen
  • Menüs
  • Hintergrund Prozessgruppen
  • Zuständigkeiten

Bis hin zu Daten, die dann das Standard System erweitern oder verändern können, wie zum Beispiel

  • Forms Personalisierung
  • CRM Metadata für so genannte Grids

Alle diese Daten können in das System eingetragen werden und steuern die Oracle eBusiness Suite.

Doch wenn man mehrere Systeme im Einsatz hat, wie z.B. ein Testsystem und ein Produktivsystem, wie kann man dann eigentlich diese Daten übertragen lassen?

Dafür hat Oracle vor vielen Jahren einen Mechanismus entwickelt, der sich FNDLOAD nennt und der bis heute in der eBusiness Suite im Einsatz ist.

Dabei werden die Daten der jeweiligen Objekte in eine Datei herunter geladen (üblicherweise mit der Endung .ldt, sprich „Loader Data Text“) und diese Dateien können dann transportiert und wieder hochgeladen werden.

Doch wie so oft bei Oracle Produkten ist dieser Mechanismus zwar technisch gut, er ist aber absolut unkomfortabel zu benutzen.

FNDLOAD Befehle werden nämlich direkt in der UNIX/Linux Shell (Kommandozeile) aufgerufen. Das sieht dann ungefähr so aus.

Upload eines Hintergrundprogrammes aus Datei „file_to_upload.ldt“:

$FND_TOP/bin/FNDLOAD $LOGIN@$DATABASE 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct file_to_upload.ldt

Download eines Hintergrundprogrammes in die Datei file_to_download.ldt:

$FND_TOP/bin/FNDLOAD $LOGIN@$DATABASE 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_to_download.ldt PROGRAM APPLICATION_SHORT_NAME=$APP_NAME CONCURRENT_PROGRAM_NAME=$OBJ_NAME

Es sieht komliziert aus und man muss offensichtlich die Werte für diverse Parameter kennen, damit man diese Funktion nutzen kann.

Sowohl Export als auch Import werden über den Aufruf des Programmes FNDLOAD ausgeführt, dass sich im FND Verzeichnis einer jeden Oracle eBusiness Suite Installation befindet. Um es nutzen zu können muss man sich auf dem so genannten „Apps Tier“, sprich dem Applikationsserver per SSH oder ähnlichem anmelden.

Im Beispiel oben nutzen wir die EBS spezifische Pfad-Variable $FND_TOP, die gesetzt ist, wenn man sich mit dem Oracle installationsuser anmeldet oder den folgenden Befehl verwendet:

source <install_dir>/EBSapps.env run

Dabei müsst ihr das Installations Verzeichnis wissen und es anstelle von <install_dir> eintragen. Wahlweise könnt ihr auch in Erfahrung bringen, in welchem Verzeichnis sich die FND Sourcen befinden. In jedem Fall müsst ihr aber in der Lage sein, auf das Verzeichnis, dass sich hinter $FND_TOP verbirgt und seine Unterverzeichnisse zuzugreifen.

Wenn ihr das geschafft habt, dann müsst ihr außerdem noch die Zugangsdaten für die Datenbank ermitteln. Dazu benötigt ihr das Passwort für den Benutzer APPS und den Datenbanknamen, der verwendet wird. Da der Benutzer „APPS“ sehr weitreichende Berechtigungen hat wird es übrigens oft schwer sein, von den Administratoren dieses Passwort zu bekommen.

Dann kann es mit der Verwendung von FNDLOAD losgehen.

Bei Export und Import müssen dann die folgenden Parameter angegeben werden:

  • Login Informationen:
    Hier müsst ihr den Datenbank Login angeben, z.B. APPS/APPSPASSWWORD@DATENBANKNAME
  • Concurrent Program Flags
    Die Werte „0“ und „Y“, die in der Doku immer als „Concurrent Program Flag“ bezeichnet werden. Wir haben hier nie einen anderen als diese beiden Werte gesehen, also packt sie einfach rein und fragt nicht weiter warum.
  • DOWNLOAD/UPLOAD
    Hiermit wird gesteuert, ob ihr exportieren oder importieren wollt. Für den Export nimmt man den Wert DOWNLOAD Für den Import den Wert UPLOAD
  • Kontroll-Datei/Control-File (.lct)
    Hier wird definiert, welche Art von Objekt exportiert werden soll. Es gibt eine ganze Liste dieser so genannten „Data Configuration Text“ Dateien mit der Endung .lct im Verzeichnis „$FND_TOP/patch/115/import/“ (immer das Verzeichnis /115/ egal auch für die Oracle eBusiness Suite version 12.x)
    Einige Beispiele von
    • Concurrent Programs: $FND_TOP/patch/115/import/afcpprog.lct
    • Profile Options: $FND_TOP/patch/115/import/afscprof.lct
    • Value Sets, Key Flexfields and Descriptive Flexfields: $FND_TOP/patch/115/import/afffload.lct

Beim Export müssen dann die folgenden weiteren Parameter angegeben werden:

  • Name/Pfad der Datei in die der Export geschrieben werden soll
  • Spezifische Parameter des jeweiligen Objektes. Für ein Hintergrundprogramm (Concurrent Program) sind da z.B. die folgenden:
    • PROGRAM:
      Definiert, dass ein Programm exportiert werden soll
    • PROGRAM APPLICATION_SHORT_NAME:
      Code der EBS Applikation zu der das Hintergrundprogramm gehört. Z.B. „AR“, es kann aber auch ein „%“ mitgegeben werden, das steht dann für alle Applikationen.
    • CONCURRENT_PROGRAM_NAME:
      Der kurze interne Name des Hintergrundprogrammes. Auch hier kann mit „%“ als Platzhalter gearbeitet werden, z.B. wenn man „XX_PROGRAM%“ angibt, werden alle Programme die mit „XX_PROGRAMM“ anfangen exportiert.

Beim Import müssen hingegen die folgenden weiteren Parameter angegeben werden:

  • Name/Pfad der Datei in die der Export geschrieben werden soll
  • Optional die folgenden Parameter zur Steuerung des Uploads:
    • CUSTOM_MODE=FORCE
      Der Custom Mode kontrolliert, wie der Import erfolgen soll. Normalerweise vergleicht FNDLOAD das Änderungsdatum (LAST_UPDATE_DATE) eines Objektes mit dem in der Datei existierenden LAST_UPDATE_DATE und ändert das Objekt nur dann, wenn es in der Datei neuer ist. Damit stellt man sicher, dass nicht eine alte Version importiert wird und die letzten Änderungen überschreibt. Mit CUSTOM_MODE=FORCE erfolgt diese Prüfung nicht. Allerdings hängt es immer von der benutzten Kontrolldatei (.lct) ab und nicht alle unterstützen diesen Parameter zu 100%. Wir passen üblicherweise lieber die LAST_UPDATE_DATE Werte in der Datendatei (.ldt) an und lassen diesen Parameter weg.
    • UPLOAD_MODE = NLS
      Wird verwendet, wenn man mehrsprachige Daten laden will. Auch hier ist die Benutzung abhängig von der verwendeten Kontroll Datei (.lct), denn nich alle unterstützen diesen Parameter. Ein Beispiel wo der Parameter verwendet wird ist die Datei „$FND_TOP/patch/115/import/afmdmsg.lct“, mit der Meldungen geladen werden. Um mehrsprachige Daten zu laden muss zunächst die Meldung in der Basissprache ohne den Parameter geladen werden. Danach kann man für jede Sprache eine weitere Datei mit dem Parameter „UPLOAD_MODE = NLS“ laden, um die Übersetzungen zu laden.

Mehr informationen direkt von Oracle bekommt ihr übrigens unter der folgenden URL:

https://docs.oracle.com/cd/E18727_01/doc.121/e12893/T174296T206863.htm

Wie ihr seht kann es etwas kompliziert werden, die FNDLOAD funktion zu verwenden. Außerdem werden Administratoren nicht gerne die Zugänge zu ihren Servern freigeben.

Damit man auch ohne diese Zugänge und das detaillierte Wissen über Linux Shell und die FNDLOAD parameter Objekte exportieren kann haben wir vor einigen Jahren ein kleines Programm erstellt mit dem man die Export Funktion für diverse Objekte direkt in der Oracle eBusiness Suite benutzen kann. Hier kann man dann Objekte einfach durch starten eines Hintergrundprogrammes exportieren.

Nun stellen wir es kostenlos zur Verfügung, damit auch ihr diese Erleichterung nutzen könnt. Zu finden ist es in dem folgenden Bitbucket Repository

https://bitbucket.org/heimann_it/apps-exporter/src/master/

oder ihr ladet hier die komplette ZIP Datei herunter, diese enthält alle benötigten Dateien um das Hintergrundprogramm zu installieren:

https://bitbucket.org/heimann_it/apps-exporter/src/master/zips/Apps-Exporter-0.9.9.zip

Ihr könnt das Programm herunterladen, es verwenden oder auch erweitern. Bitte habt Verständnis, dass wir für dieses kostenlose Programm keinerlei Gewährleistung übernehmen können.

Den Import haben wir derzeit nicht implementiert. Dies vor allem weil der Import in der Regel durch nachvollziehbare und dokumentierte Installationspakete erfolgen sollte, besonders auf Produktivinstanzen, und dann meißt durch Administratoren erfolgt.

Aber vielleicht werden wir uns irgendwann auch an den Import setzen und euch dann diesen auch hier zur Verfügung stellen.

Restaurant Personen Register

Die Heimann.IT Consulting GmbH bricht in neue Bereiche der Programmierung auf:

Heute wurde die Programmierung der Android App „Restaurant Personen Register“ fertiggestellt und die App wird demnächst im Google Play Store kostenlos zur Verfügung gestellt.

Wir sind gespannt auf die Resonanz und hoffen wir können mit der App vielen Restaurants ermöglichen, auf lästige Papierformulare zu verzichten.