Ik ben ondertussen al meer dan een week bezig, met het proberen te verwerken van de nieuwe IDEAL 3.3.1.
We hebben een eigen script, waardoor we niet een standaard module kunnen gebruiken (bv. van Joomla etc.).
Ter info het Ideal script wat nu nog gebruikt wordt komt nog ergens uit 2005 (safe_thinMPI weet niet of u dit wat zegt?).
Wat heb ik tot zover gedaan:
- De documentatie handleiding van Ideal advanced gelezen (ook paragraaf 4.3 geprobeerd, maar zonder dat ik dit überhaupt werkend kreeg)
- Gecontroleerd op PHP 5.3 (5.3.25)
- Ideal_v3.cer gedownload en geplaatst (voor toevoegen zie bijlage config.conf)
- ik heb een certificaat aangemaakt met openssl en 'cert.cer' geupload in het 'Ideal Dashboard' & priv.pem aangemaakt.
- config.conf goed aangepast (zie bijlage).
- zoeken op 'Exception:Failure Signing Data: - SHA256' foutmelding heeft niet geholpen
Problemen tot zover:
- Ik krijg het niet voor elkaar een bankenlijst weer te geven tijdens het betalingsproces.
- Als ik het voorbeeld gebruikt krijg ik een Exception:Failure Signing Data: - SHA256 foutmelding
de ec en de trxid worden in de werkende omgeving goed opgeslagen, maar in de nieuwe omgeving van Ideal 3.3.1 loopt hij vast op regel 45 & 50 (zie bovenstaande script) hierdoor worden deze gegevens niet opgeslagen.
Patrick, het ideal proces bestaat uit de volgende stappen:
1 ophalen en weergeven van lijst van beschikbare banken
2 het aanmaken van een transactie (en wat mij betreft het opslaan van een aantal gegevens in de database)
3 het doorsturen van de klant naar zijn eigen bank om de betaling te voltooien
4 wanneer de klant terugkeert naar de site de status van de transactie opvragen bij de bank en indien success dan de bestelling verwerken en de status in de database bij werken met een UPDATE query
5 min of meer los daarvan: voor de klanten die niet terugkeren periodiek de status opvragen van de transacties die nog op 'Open' staan.
Bij jou gaat er ergens iets fout.
of je slaat de gegevens niet juist op in de database (veldlengte wel groot genoeg?) bij stap 2,
of je vraagt op foutieve wijze de gegevens weer op uit de database. (de result zou altijd één rij moeten bevatten). Overigens hoef je bij stap vier niet perse de gegevens uit de database te vergelijken met de $_GET variabelen. In principe vraag je altijd een geldig transactieId van Ideal en zo niet dan krijg je ook netjes een foutmelding.
Problemen tot zover:
- Ik krijg het niet voor elkaar een bankenlijst weer te geven tijdens het betalingsproces.
- Als ik het voorbeeld gebruikt krijg ik een Exception:Failure Signing Data: - SHA256 foutmelding
Enig idee wat hier fout kan gaan?
De bankenlijst heb ik nog niet voor je bekeken, echter het signing issue herken ik wel. Zoals de meeste code op internet staat geschreven werkt niet voor php 5.3, deze kan namelijk geen signing aan zoals iDEAL het wil.
Ik heb het toendertijd opgelost met xmlseclibs, tenzij dat je de mogelijkheid hebt om het te testen op php 5.4 (en daarna je workspace te updaten naar 5.4)