A new approach on debt collection – iDEAL E-mail
Sun, May 31, 2009
Project: iDEAL Email
Project Url: http://www.nibincasso.nl
Project delivery: May 22, 2008
Description: NIB Incasso is a major debt collection agency in the Netherlands. It is always innovating in the way they contact their debtors.
NIB Incasso presents their clients with a a-la-carte concept for debt collection. Their clients can choose from several building blocks to create a work flow that fits their own ways best. They can choose between numerous letters in a specific order, calling from debt-collectors to the debtors, sms, etc.
They asked me for a new way and I came up with the following concept: ideal E-mail
E-mail is the one thing that is missing from the flow and it is so much cheaper than a letter on expensive paper with a stamp. The concept was quickly approved and developed by myself with the following screens / steps:
Step 1: NIB Incasso gets debtor information from their client and put it in the debt collection system
Step 2: The debt collection system will generate a batch of e-mail addresses with corresponding invoice details for all clients who have iDEAL E-mail in their workflow
Step 3: The e-mail is sent out to the debtors
This was all done with the GD library and a bit of PHP code. The trick is to link the email image to a serverside php script that will get the base image and print in the rest of the details of the debtor with GD.
function statusImage ($SourceFile, $Begunstigde, $Saldo, $Omschrijving, $Kenmerk, $Klantkenmerk, $Betaaldatum, $DestinationFile) {
list($width, $height) = getimagesize($SourceFile);
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($SourceFile);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width, $height);
$white = imagecolorallocate($image_p, 255, 255, 255);
$grey = imagecolorallocate($image_p, 128, 128, 128);
$black = imagecolorallocate($image_p, 0, 0, 0);
$font = 'Vera.ttf';
$font_size = 8;
imagettftext($image_p, $font_size, 0, 494, 31, $white, $font, $Begunstigde);
imagettftext($image_p, $font_size, 0, 494, 44, $white, $font, $Saldo);
imagettftext($image_p, $font_size, 0, 495, 59, $white, $font, $Omschrijving);
imagettftext($image_p, $font_size, 0, 495, 72, $white, $font, $Kenmerk);
imagettftext($image_p, $font_size, 0, 495, 85, $white, $font, $Klantkenmerk);
imagettftext($image_p, $font_size, 0, 495, 98, $white, $font, $Betaaldatum);
if ($DestinationFile<>'') {
imagejpeg ($image_p, $DestinationFile, 100);
} else {
header('Content-Type: image/jpeg');
imagejpeg($image_p, null, 100);
};
imagedestroy($image);
imagedestroy($image_p);
};
if ($paid=='Openstaand') {
$SourceFile = '/httpdocs/images/nietbetaald.jpg';
$Begunstigde = ': '. $row_dossierdetails['dossier_begunstigde'];
$Saldo = ': '. $row_dossierdetails['dossier_saldo']. ' EUR';
$Omschrijving = ': '. $row_dossierdetails['dossier_nummer'];
$Kenmerk = ': '. $row_dossierdetails['dossier_klant'];
$Klantkenmerk = ': '.$row_dossierdetails['dossier_klantkenmerk'];
$Betaaldatum = ': '. $row_dossierdetails['dossier_factuurdatum'];
statusImage ($SourceFile, $Begunstigde, $Saldo, $Omschrijving,
$Kenmerk, $Klantkenmerk, $Betaaldatum, $DestinationFile);
}
elseif ($paid=='Betaald') {
$SourceFile = '/httpdocs/images/betaald.jpg';
$Begunstigde = ': '. $row_dossierdetails['dossier_begunstigde'];
$Saldo = ': '. $row_dossierdetails['dossier_saldo']. ' EUR';
$Omschrijving = ': '. $row_dossierdetails['dossier_nummer'];
$Kenmerk = ': '. $row_dossierdetails['dossier_klant'];
$Klantkenmerk = ': '.$row_dossierdetails['dossier_kenmerk'];
$Betaaldatum = ': '. $row_dossierdetails['dossier_betaaldatum'];
statusImage ($SourceFile, $Begunstigde, $Saldo, $Omschrijving,
$Kenmerk, $Klantkenmerk, $Betaaldatum, $DestinationFile);
}
elseif ($paid=='Vervallen') {
$SourceFile = '/httpdocs/images/vervallen.jpg';
statusImage ($SourceFile, $Begunstigde, $Saldo, $Omschrijving,
$Kenmerk, $Klantkenmerk, $Betaaldatum, $DestinationFile);
}
elseif ($paid=='Geen informatie beschikbaar') {
$SourceFile = '/httpdocs/images/geenstatus.jpg';
statusImage ($SourceFile, $Begunstigde, $Saldo, $Omschrijving,
$Kenmerk, $Klantkenmerk, $Betaaldatum, $DestinationFile);
}








June 3rd, 2009 at 14:30
Nice work Peter, Ik like the part where it says $SourceFile = ‘/httpdocs/images/betaald.jpg’;
greetz
Dimitri
June 29th, 2009 at 06:35
:O So mush Info :O
June 29th, 2009 at 07:39
Thank you for your help!
June 30th, 2009 at 23:01
@Ken – If you need help implementing this don’t hesitate to drop me a line on linkedin or via the contact form.
It’s no problem for me to help you get started.
July 5th, 2009 at 11:48
Amazing read – Can you please email me and let me know more about your sources?
July 5th, 2009 at 12:34
@Monge – What do you want to know? If you ask your questions here other readers also benefit from the answers.
July 7th, 2009 at 06:53
Two thumbs up to this good read – bookmarked your site