'Mein Creditmanager' - Mann kann Ihnen eine deutsche Bonitätsauskunft, eine Firmenauskunft, eine Personenauskunft und ein weltweite Wirtschaftsauskunft liefern Welteweite Firmenauskünfte mit Negativdaten, Zahlungserfahrunge und Handelsregisterdaten

Beschreibung der Schnittstelle

Die XML-Schnittstelle der handelsauskunft.com setzt auf den offenen Standard XML-PRC. Wir möchten für Sie die Anbindung an unsere Schnittstelle so einfach wie möglich gestalten. Dazu sind wir auch auf Ihre Hilfe angewiesen. Sollten Sie Programmierungen in anderen Scriptsprachen außer Perl und PHP vorgenommen haben, so würden wir gerne diese Quelltext-Beispiele unter Verwendung der Quelle veröffentlichen.

Inhaltsverzeichnis

  1. Was ist XML-RPC?
  2. Programmierbeispiele unter Perl
  3. Ein Quelltextbeispiel unter Perl
  4. Programmierbeispiele unter PHP
  5. Ein Quelltextbeispiel unter PHP

Was ist XML-RPC?

Die XML-Schnittstelle verwendet den offenen Standard XML-RPC (http://www.xmlrpc.com/).

XML-RPC: Extensible Markup Language Remote Procedure Call - ist eine Definition zum Methodenaufruf (oder auch Funktionsaufruf) durch verteilte (also durch ein Netzwerk verbundene) Systeme.

Bei der Spezifikation von XML-RPC wurde darauf Wert gelegt, dass eine Implementierung ohne großen Aufwand in unterschiedlichen Programmiersprachen und auf unterschiedlichen Systemplattformen möglich ist.

Auch aus diesem Grund wurden zur Realisierung zwei Standards miteinander verbunden: Für den Transport der Daten wurde auf das Hypertext Transfer Protocol HTTP) zurückgegriffen, während die Darstellung der übertragenen Daten in der Extensible Markup Language (XML) geschieht.

Historisch gesehen stellt XML-RPC den Vorgänger zu SOAP dar, ist im Gegensatz zu diesem jedoch wesentlich schlanker und schneller zu verstehen.

Die Anfragen müssen in UTF-8 erfolgen, der Server antwortet stets in UTF-8 und ist in der Regel 24 Stunden an 7 Tagen der Woche über die Internet-Adresse:

https://xml.handelsauskunft.com/

erreichbar.

Für die Nutzung der XML-Schnittstelle sind Zugangsdaten notwendig, die grundsätzlich erst nach dem Abschluß eines Rahmenvertrages erteilt werden.


Sprung zum Anfang

Programmierbeispiele unter Perl

Perl ist eine freie, plattformunabhängige und interpretierte Programmiersprache ("Skriptsprache"), die mehrere Programmierparadigmen unterstützt.

Für das Programmierbeispiel sind Programm-Bibliotheken notwendig. Entsprechende Module können aus dem CPAN

http://search.cpan.org

heruntergeladen werden.

CPAN (engl. Comprehensive Perl Archive Network) ist ein weltweit gespiegeltes Online-Repository für Perl-Module, -Anwendungen und Dokumentationen. Es bietet die Möglichkeit einer komfortablen Installation und Verwaltung von Perl-Modulen. Heute umfasst das CPAN circa 270 Server auf allen fünf Kontinenten und enthält über 11.400 Module von über 5.700 Autoren.

Über eine Kommandozeile kann man ein Tool zum automatischen Downloaden starten. Geben Sie dazu einfach:  cpan  ein.

Anschließend sind folgende Module mit dem Befehl: install [Modulname] zu installieren:

Encode
RPC::XML


Sprung zum Anfang

Ein Quelltextbeispiel unter Perl

  #!/usr/bin/perl

  use warnings;
  use strict;

  use Data::Dump qw(dump);
  use Encode qw(encode_utf8);
  use RPC::XML;
  use RPC::XML::Client;

  $RPC::XML::ENCODING = 'utf-8';

  my $userid       = 123456;
  my $passwort     = '*******';
  my $kunden_duns  = 330834743;

  my $aktenzeichen = 'Testanfrage'
  my $interesse    = 'ABK';
  my $land         = 'DE';
  my $bundesland   = '';
  my $firma        = 'Frankfurter Maschinenbau AG';
  my $strasse      = 'Darmstädter Landstr.'
  my $plz          =  60598;
  my $ort          = 'Frankfurt';
  my $telefon      = '';

  my $testmodus    = 0; # 1 fuer Testmodus

  my $xml_url = 'https://xml.handelsauskunft.com/';

  my $anfrage = 'XML.ListDuns';
  my $daten   = {SIGNON  => {USER_ID       => $userid,
                             PASSWORD      => $passwort,
                             CUSTOMER_DUNS => $kunden_duns,
                          },
                 REQUEST => {CLIENT_REF    => $aktenzeichen,
                             VERSION       => '0.1',
                             REASON        => $interesse,
                             TEST          => $testmodus,
                             CTRY_CD       => $land,
                             PRIM_GEO_AREA => $bundesland,
                             PRIM_NME      => $firma,
                             ADR_LINE      => $strasse,
                             POST_CODE     => $plz,
                             POST_TOWN     => $ort, 
                             TLCM_NBR      => $telefon,
                            },
                };

  my $rpc = RPC::XML::Client->new($xml_url);
  my $req = RPC::XML::request->new($anfrage, $daten);
  my $res = $rpc->send_request($req);

  if (ref($res)) {
      if ($res->is_fault) {
          print dump($res->value);
      } else {
          print dump($res->value);
      }
  } else {
      print "RPC-Fehler: $res\n";
  }

Sprung zum Anfang

Programmierbeispiele unter PHP

PHP ist eine Skriptsprache mit einer an C bzw. C++ angelehnten Syntax, die hauptsächlich zur Erstellung von dynamischen Webseiten oder Webanwendungen verwendet wird.

Für nachfolgendes Beispiel ist eine Programm-Bibliotheken XML-RPC for PHP: http://phpxmlrpc.sourceforge.net/ getestet mit Version 2.2 vom 25.02.2007 notwendig.

Das Archiv kann in ein beliebiges Verzeichnis entpackt werden und wird mittels

ini_set('include_path', 'xmlrpc-2.2/lib');
require_once('xmlrpc.inc');

in PHP eingebunden. Das Verzeichnis muß entsprechend angepaßt werden. Auf obiger Webseite ist auch die Dokumentation für das Modul zu finden.


Sprung zum Anfang

Ein Quelltextbeispiel unter PHP

  <php

  ini_set('include_path', 'xmlrpc-2.2.1/lib');
  require_once('xmlrpc.inc');

  $userid       = 123456;
  $passwort     = '*******';
  $kunden_duns  = 330834743;

  $aktenzeichen = 'Testanfrage';
  $interesse    = 'ABK';
  $land         = 'DE';
  $bundesland   = '';
  $firma        = 'Frankfurter Maschinenbau AG';
  $strasse      = 'Darmstaedter Landstr.';
  $plz          =  60598;
  $ort          = 'Frankfurt';
  $telefon      = '';

  $testmodus    = 0;

  $rpc = new xmlrpc_client('/', 'xml.handelsauskunft.com', 443);
  $rpc->setSSLVerifyPeer('');

  $req = new xmlrpcmsg('XML.ListDuns',
      array(new xmlrpcval(
          array(
               'SIGNON' => new xmlrpcval(
                   array(
                      'USER_ID'       => new xmlrpcval($userid,       'int'    ),
                      'PASSWORD'      => new xmlrpcval($passwort,     'string' ),
                      'CUSTOMER_DUNS' => new xmlrpcval($kunden_duns,  'int'    ),
                   ), 'struct'),
               'REQUEST' => new xmlrpcval(
                   array(
                      'CLIENT_REF'    => new xmlrpcval($aktenzeichen, 'string' ),
                      'VERSION'       => new xmlrpcval('0.1',         'string' ),
                      'REASON'        => new xmlrpcval($interesse,    'string' ),
                      'TEST'          => new xmlrpcval($testmodus,    'boolean'),
                      'CTRY_CD'       => new xmlrpcval($land,         'string' ),
                      'PRIM_GEO_AREA' => new xmlrpcval($bundesland,   'string' ),
                      'PRIM_NME'      => new xmlrpcval($firma,        'string' ),
                      'ADR_LINE'      => new xmlrpcval($strasse,      'string' ),
                      'POST_CODE'     => new xmlrpcval($plz,          'string' ),
                      'POST_TOWN'     => new xmlrpcval($ort,          'string' ),
                      'TLCM_NBR'      => new xmlrpcval($telefon,      'string' ),
                   ), 'struct'),
            ), 'struct'),
	 )
  );

  $res = $rpc->send($req, 60, 'https', 'utf-8');

  if (!$res->faultCode()) {
    # Aufruf erfolgreich
    $val  = $res->value();
    print_r ($val->scalarval());
  } else {
    # Fehler
    print "Fault\n";
    print "Code: "    . $res->faultCode()   . "\n";
    print "Reason: '" . $res->faultString() . "\n";
  }

  ?>
Sprung zum Anfang

Anmeldung zur Unternehmerkarte
Innungsfachbetrieb mit Unternehmerkarte? Klicken Sie hier, um sich anzumelden ...