Sehen Sie sich auch mein anderes Produkt an:
myebilanz – die Freeware-eBilanz aus MySQL und CSV!

English Abstract about KONTOPRUEF

Contents of this page:

Benefit of Bank Account Verifying

KONTOPRUEF is a system for verifying German bank account numbers and German addresses. The benefit of verifying bank account numbers is to avoid typos and/or real errors when customers enter their checking account number for example into a web form in order to let the merchant charge their checking account for some purchase.

Frequent errors include, for example, 7601085 as bank routing code instead of 76010085, or 731495 instead of 734195 as account number, or 100003791 instead of 1000003791, and so on. Because the merchant does not know the correct account data of the customer, he must believe in the correctness of the data.

Some days after charging the customer's account, the merchant receives a chargeback from the customer's bank, along with chargeback fees. If the merchant had verified the account data before charging the customer's account, the chargeback (and paying the fees) would have never happened!

How does it work?

Of course, the KONTOPRUEF system does not know all bank account numbers of all customers. However, this is not necessary. German bank accounts consist of two parts: the Bankleitzahl (abbr. Blz, the bank routing code) and the Kontonummer (abbr. Kto, the account number). With this information, bank data can be verified as follows:

  • First, the existence of the bank routing code can be verified, just by a lookup in a table (in Germany, there are about 4,000 bank routing codes).
  • The records in this table indicate the specific account number verifying procedure (there are about 120 different procedures).
  • Using the appropriate procedure, the check digit in the account number is calculated. Comparing the calculated check digit with the data given by the customer, the account number can be classified as "good" (this means, possible at the given bank) or "bad" (this means, impossible at the given bank).

As you can see, KONTOPRUEF only verifies that a given bank account is just possible. But it has turned out that this is good enough to reduce chargebacks, caused be erroneous customer inputs, by 90%!

KONTOPRUEF especially helps when used "early" in order processing. If you have a webshop, don't let your customer click on the "Submit Order" button as long as his bank data is wrong. Or, if you have a call center, install KONTOPRUEF directly into the agent's order software.

Which version to choose?

KONTOPRUEF comes with three different versions:

  • KONTOPRUEF-ONLINE, the standard version of KONTOPRUEF. No software installation is required; bank account verifying takes place via the Internet. Your computer – which must have an Internet connection (proxy is ok) – sends Blz/Kto (or the address) to my server and gets the answer within some milliseconds. Of course, this also works with SSL to avoid sending customers' bank and/or address data unencrypted through the Internet. Updates are not necessary because the data on the server is always up-to-date. (Generally, there's no need to install any software on your side; just a few additional script lines in your web server scripts will do the job. See the technical section for further information.)
  • KONTOPRUEF-INHOUSE, the version for installations which don't have access to the Internet, and/or where the data to be checked is so secret that it must not leave the customer's servers. You provide a Windows PC and rent the server software from me. So the software interface for your client is the same as with KONTOPRUEF-ONLINE; it's just that you use a server of your own, and the data need not pass through the Internet. (The server itself should have Internet access to be able to update itself – else you'll have to download the updates manually and copy them onto the server. Outgoing HTTP connection – even by proxy – is sufficient.) Since the basic rental fees for KONTOPRUEF-INHOUSE are higher than those for KONTOPRUEF-ONLINE, this version especially makes sense if you have a large amount of data for testing – for example, starting at tens of thousands of bank accounts per month.
  • KONTOPRUEF-OFFLINE consists of some software libraries which manufacturers of financial software can merge to their own software which they sell to their customers. Special agreements have to be made for this version, and royalties have to be paid for each runtime license.

The capabilities of the different versions are:

  German bank accounts German addresses

* Only if you additionally subscribe to quarterly delivery of the postal data CDROM from the Deutsche Post AG.

Technical Information

In this chapter, you get some information about how to implement KONTOPRUEF into your own software. Most of the links lead to German web pages (sorry for that), but since most procedure, variable, and parameter names in the software are English anyway, you should not get too much comprehension problems. If you have any questions, just send an e-mail to support@kontopruef.de.

Please note that the names of the procedures, functions and so on are KTOPRUEF instead of KONTOPRUEF – this has historical reasons: The first version of KONTOPRUEF was developped when MSDOS was the most common operating system, and the filenames in MSDOS had a maximum length of "8.3" characters; so, for example, KONTOPRUEF.EXE would have been too long for a filename...

There are two ways to access the bank account verifying server: by WDDX and as a WebService. Both ways work with a simple HTTP(S) request – so you can generally use the KONTOPRUEF online version even behind a proxy server and/or a firewall.


WDDX ("Web Distributed Data Exchange") is a mechanism where the request parameters are encoded directly into the URL, and the result is returned as a (pretty simple) XML page. To get the result, you can use one of the commonly available XML parsers, but a WDDX XML page is really so simple that you can extract the results even with some normal string operations. See the Wikipedia entry for more information about WDDX.

Example: Let's test the (demo) bank routing code 89999999 together with the (demo) account number 1234. You construct the following URL:


or, using SSL, this one:


and get the following XML page as result from the server:

<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE wddxPacket SYSTEM 'wddx_0100.dtd'>
<wddxPacket version='1.0'>
<var name='result'><string>0</string></var>
<var name='resulttext'><string>Ok</string></var>
<var name='bankname'><string>Demo-Bank</string></var>
<var name='newblz'><string></string></var>
<var name='iban'><string>DE00123456781234567890</string></var>
<var name='bic'><string>DEMODEFF000</string></var>

As you can see, if you do not use an XML parser, you just have to look for the variable names and extract their content.

The complete list of procedures, functions, parameters and results can be found in the documentation for bank account testing and in the documentation for address testing.

Of course, there are already some "little helpers" for WDDX so that you do not need to reinvent the wheel:

  • If you are using PHP, you can use these WDDX functions.
  • Complete PHP example scripts (with and without CURL) are available here.
  • A PERL module for reading and writing WDDX packets can be found here.
  • If you are using Windows, you can freely download a little piece of software called HanftWddx (a so-called "COM server"). Installation after downloading is pretty simple:
    1. Make sure that the Windows account you are using has administration rights. (This is inevitable because registering a COM server is a system-wide operation and is stored in the HKEY_CLASSES_ROOT tree of the Windows registry.)
    2. Start the program HanftWddx.exe, either without any parameters (then you get some user interface where you can try out KONTOPRUEF's functions manually), or with the parameter /regserver – this is a "quiet" registration without any visual display. Windows7: You have to right-click on HanftWddx and "Run as Administrator" (just once for installation!).
    That's it! If you want to remove HanftWddx from your system, the following two steps are required (of course, you'll need administration rights again):
    1. Start the program HanftWddx.exe with the parameter /unregserver. This removes the COM server registration from the Windows registry. (Again, Windows7: Run as Administrator!)
    2. Delete the file HanftWddx.exe.
    For just using KONTOPRUEF's functions via COM, no administration rights are required, of course. How COM functions can be used depends on your application development system. Normally, it looks similarly like this:
    Dim KtoPruef As New HanftWddx.KtoPruef
    Dim Result as Integer
    Result = KtoPruef.TestBlzKto(Username, Password, Blz, Kto, "DE", 0, "")
    You'll find examples for ASP, MS-Office/VBScript, Delphi, and Java in the category “Software-Integration” in the table of contents. A complete list of procedures, functions, parameters, and results is included in the HanftWddx description page.


In addition to the WDDX interface, you can also use KONTOPRUEF's functions as a WebService. The overview of the functions and the links to the WSDLs can be found at webservices.hanft.de (please note: importing the WSDLs with SSL automatically generates WSDLs with SSL WebService addresses).

WebService access should be implemented in your application development system; a step-by-step example for VB.NET can be found here. If you want to do it manually "from the command line" without Visual Studio, you can follow these instructions:

  1. Import the KONTOPRUEF WSDL with the following .NET command:

    wsdl /language:vb http://webservices.hanft.de/wsdl/IKtoPruef

    or, if the WebService should be accessed using SSL, this one:

    wsdl /language:vb https://webservices.hanft.de/wsdl/IKtoPruef

    You then have a file called IKtoPruefService.vb on disk. Don't edit this file manually!

  2. Write a VB.NET program TestBlzKto.vb similarly as follows:

    Imports System
    Class Test
      Public Shared Sub Main()
        Dim Result as Integer
        Dim ResultText as String
        Dim BankName as String
        Dim NewBlz as String
        Dim myKtoPruef as New IKtoPruefService()
        Result = myKtoPruef.TestBlzKto("demo", "demo", "89999999", "1234", _
          "DE", 0, "", _
          ResultText, BankName, NewBlz)
        Console.WriteLine("Result: " & Result.ToString())
        Console.WriteLine("ResultText: " & ResultText)
        Console.WriteLine("BankName: " & BankName)
        Console.WriteLine("NewBlz: " & NewBlz)
      End Sub
    End Class
  3. Compile this program with (write this in a single command line!)

    vbc /t:exe 
        TestBlzKto.vb IKtoPruefService.vb

    (or how ever you compile a VB.NET program in your application development system).

  4. Start the program TestBlzKto.exe. You should get the following output:

    Result: 0
    ResultText: Ok
    BankName: Demo-Bank

Testing and Demos

To check if KONTOPRUEF-ONLINE works with your application software, there are many testing possibilities without any purchase or inquiry.

In demo mode (username and password are demo), the online server does not operate on real data. Instead, you can do some experiments with the bank routing code 89999999 (which does not exist in real life). An even account number (for example, 1234) generates the result 0/Ok; whereas an odd account number (for example, 1235) generates the result 13/Check digit wrong.

You can try this by the following WDDX URLs (the first comes with an even account number, the second with an odd one):


(You should get the same results when using WebService instead of WDDX.)


To get access to the KONTOPRUEF-ONLINE server, you can fill out the registration form directly on the screen and send it to me by mail or fax. As soon as I have received the form, you will get username and password for the server by e-mail.

Response to your registration is guaranteed within 24 hours; however, in reality, this goes much faster. If you send the registration form by fax, it will generally take just 10 minutes to process your order and to supply your username and password!

Download the registration form:Download Adobe Reader:
Download registration form Download Adobe Reader
Sehen Sie sich auch mein anderes Produkt an:
myebilanz – die Freeware-eBilanz aus MySQL und CSV!