Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Page 1 of 2
HOWTO iDEAL (BASIC) via ABN-AMRO Internetkassa
 
Webunity
Member
 
Total Posts:  55
Joined:  2008-06-17
 

Ik kwam erachter dat de module van iDEAL helaas NIET werkt voor ABN amro, en eigenlijk voornamelijk geprogrammeerd is voor ING bank.

Hieronder (MIJN) implementatie, gebaseerd op de BETA versie van iDEAL 1.1.2

1) Open <magentodir>\app\code\core\Mage\Ideal\Model\Basic.php
2) Ga naar regel 104, en vervang de complete functie “getBasicCheckoutFormFields” met onderstaande code.
3) Voer in het admin gedeelte bij MerchantID je merchantid in. Deze zal verder niet worden gebruikt.
4) voer je LOGIN NAAM (pspid) voor de juiste omgeving in bij merchant_key

/**
     * Generates array of fields for redirect form
     *
     * @return array
     */
    public function getBasicCheckoutFormFields()
    
{
        
//
        // Moved this information so it is available also to ABN-Amro's iDEAL (basic) via Internetkassa
        
$order $this->getInfoInstance()->getOrder();
        
$shippingAddress $order->getShippingAddress();
        
$currency_code $order->getBaseCurrencyCode();
        
$description $this->getConfigData('description');
        if (
$description == ''{
            $description 
Mage::app()->getStore()->getName() . ' iDEAL payment';
        
}

        
//
        // ABN internetkassa v0.1 by G.j. vd Hoven (Webunity) <info@webunity.nl>
        
if (stripos($this->getApiUrl(), 'internetkassa.abnamro.nl')) {
            
//
            // Gather ammount
            
$ammount $order->getBaseGrandTotal();

            
//
            // Basic information
            
$fields = array(
                
'pspid' => $this->getConfigData('merchant_key'),    // Login name for the backend of ABN
                
'orderid' => $order->getIncrementId(),
                
'amount' => $ammount 100,
                
'currency' => $currency_code,
                
'language' => $this->getConfigData('language'),
                
'title' => $description,
                
'accepturl' => Mage::getUrl('ideal/basic/success', array('_secure' => true)),
                
'declineurl' => Mage::getUrl('ideal/basic/failure', array('_secure' => true)),
                
'exceptionurl' => Mage::getUrl('ideal/basic/failure', array('_secure' => true)),
                
'cancelurl' => Mage::getUrl('ideal/basic/cancel', array('_secure' => true))
            );
        
elseif (stripos($this->getApiUrl(), 'secure-ing.com')) {
            $fields 
= array(
                
'merchantID' => $this->getConfigData('merchant_id'),
                
'subID' => '0',
                
'amount' => $order->getBaseGrandTotal()*100,
                
'purchaseID' => $order->getIncrementId(),
                
'paymentType' => 'ideal',
                
'validUntil' => date('Y-m-d\TH:i:s.000\Z'strtotime ('+1 week')) // plus 1 week
            
);

            
$i 1;
            foreach (
$order->getItemsCollection() as $item{
                $fields 
array_merge($fields, array(
                    
"itemNumber".$i => $item->getSku(),
                    
"itemDescription".$i => $item->getName(),
                    
"itemQuantity".$i => $item->getQtyOrdered()*1,
                    
"itemPrice".$i => $item->getBasePrice()*100
                
));
                
$i++;
            
}

            
if ($order->getBaseShippingAmount() > 0{
                $fields 
array_merge($fields, array(
                    
"itemNumber".$i => $order->getShippingMethod(),
                    
"itemDescription".$i => $order->getShippingDescription(),
                    
"itemQuantity".$i => 1,
                    
"itemPrice".$i => $order->getBaseShippingAmount()*100
                
));
                
$i++;
            
}

            
if ($order->getBaseTaxAmount() > 0{
                $fields 
array_merge($fields, array(
                    
"itemNumber".$i => 'Tax',
                    
"itemDescription".$i => '',
                    
"itemQuantity".$i => 1,
                    
"itemPrice".$i => $order->getBaseTaxAmount()*100
                
));
                
$i++;
            
}

            
if ($order->getBaseDiscountAmount() > 0{
                $fields 
array_merge($fields, array(
                    
"itemNumber".$i => 'Discount',
                    
"itemDescription".$i => '',
                    
"itemQuantity".$i => 1,
                    
"itemPrice".$i => -$order->getBaseDiscountAmount()*100
                
));
                
$i++;
            
}

            $fields 
$this->appendHash($fields);

            
$fields array_merge($fields, array(
                
'language' => $this->getConfigData('language'),
                
'currency' => $currency_code,
                
'description' => $description,
                
'urlCancel' => Mage::getUrl('ideal/basic/cancel', array('_secure' => true)),
                
'urlSuccess' => Mage::getUrl('ideal/basic/success', array('_secure' => true)),
                
'urlError' => Mage::getUrl('ideal/basic/failure', array('_secure' => true))
            ));
        
}

        
//
        // Combine requeststring
        
$requestString '';
        
$returnArray = array();
        foreach (
$fields as $k => $v{
            $returnArray[$k] 
=  $v;
            
$requestString .= '&'.$k.'='.$v;
        
}

        
//
        // Debugging?
        
if ($this->getDebug()) {
            Mage
::getModel('ideal/api_debug')
                ->
setRequestBody($this->getApiUrl() . "\n" $requestString)
                ->
save();
        
}

        
return $returnArray;
    
}

Bij mij werkte dit, d.w.z. dat ik iig al geen errors kreeg.

LET OP:
* Krijg je de melding: Unknown merchantid, dan heb je niet je login naam bij Merchant_KEY ingevuld.
* De melding <i>unknown order/1/r/</i> heeft te maken met de referral bij de bank. Bij de bank staat jouw URL geregistreerd. Hier moet je invullen: http(s)://<magento_url>/ideal/basic/redirect/

Succes ermee!

 
Magento Community Magento Community
Magento Community
Magento Community
 
Gui
Guru
 
Avatar
Total Posts:  588
Joined:  2008-03-09
 

in de nieuwste versie van de iDeal module kan je bij de basic module een secure url en een test url invullen. Als dit niet werkt is het verstandig om een bug aan te melden voor die module op de volgende site: http://www.magentocommerce.com/boards/viewchild/10170/

Dit soort edits worden bij upgrades namelijk gewoon overschreven. Maar natuurlijk super dat je dit hebt uitgeplozen, kan Varien direct overnemen!

 
Magento Community Magento Community
Magento Community
Magento Community
 
Marksson
Jr. Member
 
Avatar
Total Posts:  15
Joined:  2008-03-24
 

@Webunity

Enorm bedankt voor deze post! Daar ga je nog veel mensen blij mee maken, denk ik! In ieder geval heb je mij enorm geholpen want ik liep tegen hetzelfde probleem aan dat de iDeal Easy van de ABN niet met een merchant key werkt. (Sowies raar dat ze nu ineens andere namen gebruiken: iDeal easy in plaats van iDeal basic.) Ik kreeg dus inderdaad de error dat de merchant key niet was opgegeven.

Jouw oplossing verhelpt dit en ik heb net een succesvolle betaling kunnen doen.

Proficiat!

 
Magento Community Magento Community
Magento Community
Magento Community
 
Larsky
Jr. Member
 
Total Posts:  7
Joined:  2008-09-20
 

Bedankt voor deze oplossing. Ik had eerder de oplossing van post http://www.magentocommerce.com/boards/viewthread/11990/ toegepast waarna de betalingsafhandeling eindelijk werd uitgevoerd, echter werd er daarna niet naar de juiste return url teruggegaan.
Pas na de hierboven beschreven oplossing werkte alles perfect.
Hartelijk dank!

 
Magento Community Magento Community
Magento Community
Magento Community
 
bisk
Member
 
Avatar
Total Posts:  35
Joined:  2007-09-03
Les Pays-Bas
 

Ik probeer iDEAL Easy aan de praat te krijgen. Bedrag, ordernummer etc komen goed aan bij iDEAL.

Standaard is mijn return url nog de homepage. Als ik het goed begrijp moet ik abn mailen om dit wijzigen naar www.homepage.nl/ideal/basic/redirect/. Correct?

Als je iDEAL als betalingswijze selecteert, en je bevestigt de bestelling bij de volgende stap, klopt het dat er op dat moment niet een order bevestigingsmail wordt gestuurd? Gebeurt dit pas nadat je van iDEAL bent teruggekeerd?

 
Magento Community Magento Community
Magento Community
Magento Community
 
Gui
Guru
 
Avatar
Total Posts:  588
Joined:  2008-03-09
 

nee dat zou eerder iets moeten zijn van (heb ik niet getest):
http://www.winkelnaam.com/ideal/basic/success/

De url die jij noemt is van winkel naar ideal.

Klopt, als je namelijk bij het ideal scherm op annuleren drukt wordt de bestelling geannuleerd. Het zou dan verwarrend zijn als je al een bevestiging hebt. De bestelling wordt wel opgeslagen in de database.

 
Magento Community Magento Community
Magento Community
Magento Community
 
bisk
Member
 
Avatar
Total Posts:  35
Joined:  2007-09-03
Les Pays-Bas
 

Bedankt voor je reactie. Is er iemand die iDEAL easy volledig werkend heeft met Magento 1.1.8 (dus ook de return vanaf iDEAL) en professionele hulp kan bieden, tegen betaling, dan graag bericht per pm.

 
Magento Community Magento Community
Magento Community
Magento Community
 
Appmerce
Guru
 
Avatar
Total Posts:  376
Joined:  2008-05-13
Amsterdam, The Netherlands
 

iDEAL Easy biedt volgens mij niet de mogelijkheid om een eigen Return URL in te stellen. Easy is ook bedoeld als donatie-knop op een enkele pagina. De correcte return url zou moeten zijn: uwshop.nl/ideal/basic/success/

Maar iDEAL Easy stuurt de shop standaard terug naar de pagina waar je vandaan kwam (de checkout / redirect).

Weet iemand of het überhaupt mogelijk is dat de ABN deze Return ULR instelt? Dan kun je uwshop.nl/ideal/basic/success/ opgeven en heb je een redelijk functionerend ding. iDEAL Easy moet dan wel een transactie Id terugposten, en weet niet of dat wel gebeurt.

 
Magento Community Magento Community
Magento Community
Magento Community
 
chason70
Member
 
Total Posts:  67
Joined:  2008-05-24
 

Waar kan ik HOW TO vinden van Ideal basic voor Rabobank?

 
Magento Community Magento Community
Magento Community
Magento Community
 
Alexx
Jr. Member
 
Total Posts:  6
Joined:  2008-12-15
 
Morningtime - 04 December 2008 08:20 AM

iDEAL Easy biedt volgens mij niet de mogelijkheid om een eigen Return URL in te stellen. Easy is ook bedoeld als donatie-knop op een enkele pagina. De correcte return url zou moeten zijn: uwshop.nl/ideal/basic/success/

Maar iDEAL Easy stuurt de shop standaard terug naar de pagina waar je vandaan kwam (de checkout / redirect).

Weet iemand of het überhaupt mogelijk is dat de ABN deze Return ULR instelt?

Zie mijn post in deze thread:
http://www.magentocommerce.com/boards/viewthread/11990/

 
Magento Community Magento Community
Magento Community
Magento Community
 
laurensxl
Jr. Member
 
Total Posts:  5
Joined:  2009-05-04
 

Ik probeer middels deze code ABN-Amro IDeal easy aan de praat te krijgen maar hij blijft telkens verwijzen naar de ING site! weet iemand wat ik hier verkeerd gedaan heb?

 
Magento Community Magento Community
Magento Community
Magento Community
 
bisk
Member
 
Avatar
Total Posts:  35
Joined:  2007-09-03
Les Pays-Bas
 

Je moet wel in de Admin bij Payment methods de secure url wijzigen in: https://internetkassa.abnamro.nl/ncol/prod/orderstandard.asp

Overigens zou ik het volgens deze methode doen, dan werkt iDEAL easy perfect incl. de return naar de shop.:

Zie mijn post in deze thread:
http://www.magentocommerce.com/boards/viewthread/11990/

 
Magento Community Magento Community
Magento Community
Magento Community
 
Mcbert
Jr. Member
 
Total Posts:  2
Joined:  2009-01-23
 

Ik heb Ideal Easy aan de praat gekregen met de bovenstaande code. Geen probleem. Waar ik wel tegen aan loop is, dat de teksten in het Engels zijn en dat de Ideal-pagina ook in het Engels is. Ik heb de aanwijzingen gevolgd uit een andere post (http://www.magentocommerce.com/boards/viewthread/11990/) maar dat maakte geen verschil.

De default language is NL en in de extensie heb ik ook Dutch staan. Wat kan ik doen om e.e.a. in NL te krijgen?

Alvast bedankt,
Bert

 
Magento Community Magento Community
Magento Community
Magento Community
 
Mcbert
Jr. Member
 
Total Posts:  2
Joined:  2009-01-23
 

Ik heb inmiddels de bestanden gevonden die vertaald moeten worden (ben pas sinds een paar dagen Magento gebruiker)

Nu zoek ik alleen nog een oplossing voor het doorsturen naar een Engelstalige Ideal-pagina.
Als iemand me in de goede richting kan sturen?

Bert

 
Magento Community Magento Community
Magento Community
Magento Community
 
smoothman36
Member
 
Total Posts:  52
Joined:  2009-12-04
 

Is er al een oplossing van het doorsturen naar de engelstalige ideal pagina van iDeal?
Kan het zelf ook niet vinden namelijk,..

 
Magento Community Magento Community
Magento Community
Magento Community
 
Blazing
Jr. Member
 
Total Posts:  21
Joined:  2008-11-13
 

Goedendag,

Bij mij is het ook nog niet gelukt helaas.

Wat ik heb gedaan:
//’merchantID’ => $this->getConfigData(’merchant_id’),
‘PSPID’ => $this->getConfigData(’merchant_id’),
‘subID’ => ‘0’,
//’amount’ => $order->getBaseGrandTotal()*100,
‘Amount’ => $order->getBaseGrandTotal()*100,
//’purchaseID’ => $order->getIncrementId(),
‘orderID’ => $order->getIncrementId(),

De tip om bepaalde bestanden te kopieren naar /frontend/blank/default werkt niet.
De tip om een deel van basic.php te vervangen werkt ook niet. Error in lijn 218 van dit bestand.

URLs bij de bank:
refferer: https://www.site.com/store/ideal/basic/redirect/
return: https://www.site.com/store/ideal/basic/success/

Ingevoerd in admin:
https://internetkassa.abnamro.nl/ncol/test/orderstandard.asp
https://internetkassa.abnamro.nl/ncol/prod/orderstandard.asp
Merchant key

Merchant ID niet omdat deze niet bij Easy/Basic komt.

Het resultaat:
Order reference :  1100000022
Total charge :  ---
Beneficiary :  ---
ERROR, Merchant not active

Dit is ook nog in het Engels, maar dat maakt op het moment nog niet uit.

Graag hoor ik van jullie wat ik verkeerd heb ingevoerd. Ik kan nergens een eenduidige handleiding vinden, dus vond het maar lastig iets te doen hiermee.

Bedankt alvast.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top
Page 1 of 2