Ik zoek tevergeefs op Google naar een php-script waarmee ik gewone bankrekeningnummers kan converteren naar IBAN. Wel vond ik op code.google.com de library php-iban, maar dat is voor parsing en validating van een IBAN.

Is het misschien gewoon niet mogelijk om van een gewoon bankrekeningnummer een IBAN te maken, omdat je daarvoor een database van alle bestaande banken nodig hebt, die voortdurend geüpdated moet worden?
Via Google de tweede link op ons eigen forum een mooi script, kijk hier eens.
Klopt, elke bank in Europa heeft een BIC-code. Dus je zult deze op een manier op moeten halen, en binnen je validatiefunctie moeten plaatsen.
Hoi,

Voor mijn werk ben ik hier ook meebezig geweest echter, zonder te weten bij welke bank de rekening 'zit' kun je dat niet doen en heb je een online converter nodig
Michel W op 24/08/2013 00:06:13

Hoi,

Voor mijn werk ben ik hier ook meebezig geweest echter, zonder te weten bij welke bank de rekening 'zit' kun je dat niet doen en heb je een online converter nodig

Of je moet die data gaan verzamelen.
Is het niet makkelijker om de mensen gewoon verplicht opnieuw hun rekeningnummer (en dan gelijk enkel en alleen IBAN) te laten invoeren?

Volgens mij is het format voor Nederland dit:

<?php
$bank = "rabo"; // of SNSNL, ING etc
$rekeningnummer = '39.50.34.655';
$iban = "NL45" . strtoupper($bank) . str_pad(preg_replace('/\D/', '', $rekeningnummer), 10, '0', STR_PAD_LEFT);
?>

Of denk ik nu verkeerd?

[size=xsmall]Toevoeging op 24/08/2013 08:17:56:[/size]

Zie online: http://codepad.org/yPd0WdnY
Dus vanuit PHP kun je zo iban nummers opvragen:

<?php

class toIBAN
{
private $obj;
private $error;

function __construct()
{
$this->error = false;
}

public function getError()
{
return $this->error;
}

public function getObject()
{
return $this->obj;
}

public function getIBAN()
{
return $this->obj->iban;
}

public function getBIC()
{
return $this->obj->bic;
}

public function getBankName()
{
return $this->obj->bank;
}

public function getOfficalBankName()
{
return $this->obj->bankofficialname;
}

public function run($rekeningnr)
{
$serverurl = 'http://www.openiban.nl/?rekeningnummer='.$rekeningnr.'&output=json';;

if(!$json = @file_get_contents($serverurl))
{
$this->error = 'No data received, please make sure connection is working and requested API exists';
return;
}

$this->obj = json_decode($json);

if(isset($this->obj->error))
{
$this->error = $this->obj->error;
return false;
}

return true;
}

};

$iban = new toIBAN();

if($iban->run('145050637'))
{
print_r($iban->getObject());

echo '<br><br>';
echo 'IBAN: '.$iban->getIBAN().'<br>';
echo 'BIC: '.$iban->getBIC().'<br>';
echo 'name: '.$iban->getBankName().'<br>';
echo 'offical name: '.$iban->getOfficalBankName().'<br>';
}
else
{
echo $iban->getError();
}
?>
Die API is van Siteworkers. Vraag is hoe zij weer aan die informatie komen. Ik haal liever de informatie bij een officiële instantie op. De overheid zou zoiets allang up and running moeten hebben. Maar zoiets lijkt te ontbreken.
Hoe Siteworkers aan de data komt staat gewoon op de website vermeld: via de NVB (Nederlandse Vereniging van Banken).
Bedankt voor de opheldering, Paul. Maar let in het vervolg even op de datum van een topic.
Deze is ook al weer een maand of 8 oud, en Michael lijkt bovendien niet echt meer actief.

Om verdere onnodige reacties te voorkomen sluit ik het topic. Als de de topicstarter verder wilt discussiëren mag hij me een PM sturen.

Reageren