10.09.2013 Views

iDEAL Advanced - Pronamic

iDEAL Advanced - Pronamic

iDEAL Advanced - Pronamic

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>iDEAL</strong> <strong>Advanced</strong> – Integratiehandleiding PHP<br />

Als de status van een transactie niet bekend is, of gelijk is aan Open, staan de volgende<br />

mogelijkheden tot uw beschikking om de status alsnog op te halen:<br />

- ‘Handmatig’ een statusverzoek uitvoeren voor een bepaald transactionID. Dit vereist het<br />

implementeren van functionaliteit in de webshop waarmee de acceptant in staat is als een<br />

losstaande handeling een statusverzoek te starten voor een op te geven transactionId.<br />

Nota bene: Functionaliteit die uitsluitend bedoeld is voor de eigenaar van de webshop,<br />

en niet voor consumenten, dient zodanig te worden geïmplementeerd dat onbevoegden<br />

deze functionaliteit noch rechtstreeks, noch indirect kunnen starten. Hiertoe dient een<br />

adequaat autorisatiemechanisme te worden geïmplementeerd.<br />

- Geautomatiseerd periodiek statusverzoeken uitvoeren voor alle nog niet afgehandelde<br />

transacties. Hierbij gelden dezelfde richtlijnen als voor het ‘handmatig’ ophalen van één<br />

transactiestatus.<br />

- Automatisch een statusverzoek uitvoeren nadat de expirationPeriod is verlopen. Zie<br />

hiervoor ook de laatste pagina van paragraaf 3.3.1 van de Referentiegids.<br />

- Inloggen in het <strong>iDEAL</strong> Dashboard, de betaling opzoeken en de status opvragen middels de<br />

‘Status request-knop’.<br />

Voorbeeld<br />

Een webwinkel die vliegtickets verkoopt, reserveert een ticket bij iedere potentiële aankoop voor<br />

een periode van 15 minuten. Binnen deze periode dient een consument een vliegticket aan te<br />

schaffen. Zo niet, dan wordt het ticket weer vrijgegeven voor verkoop aan andere consumenten.<br />

Indien de consument binnen 5 minuten via IDEAL een vliegticket koopt, maar het browser-venster<br />

na de betaling bij zijn internetbankier afsluit, dan wordt hij niet teruggeleid naar de webwinkel. De<br />

webwinkel krijgt nu geen signaal dat de betaling voldaan is en zal na 15 minuten het vliegticket<br />

vrijgeven, terwijl de consument wel degelijk heeft betaald!<br />

Om dit te voorkomen, dienen in de webwinkel maatregelen te worden genomen, bijvoorbeeld door<br />

het implementeren van een aan een timer gekoppelde navraagfunctie. De webwinkel zou dan (in<br />

dit specifieke voorbeeld) gebruik kunnen maken van een expirationPeriod van bijvoorbeeld<br />

10 minuten (hetgeen betekent dat een consument maximaal 10 minuten over een <strong>iDEAL</strong>transactie<br />

mag doen; daarna krijgt de transactie automatisch de status expired; verlopen). Als<br />

een consument dan na de gedefinieerde vervalperiode van 10 minuten nog niet is teruggekeerd<br />

naar de webshop, dan zal de zelfgebouwde navraagfunctie automatisch een statusverzoek doen,<br />

om zodoende ruim voor de reserveringsperiode van 15 minuten te kunnen beschikken over een<br />

definitieve status.<br />

4.4 Foutafhandeling<br />

Indien een fout optreedt in het berichtenverkeer tussen acceptant, acquirer en/of issuer wordt door<br />

de <strong>iDEAL</strong> <strong>Advanced</strong> Connector een ander bericht teruggegeven. Om te kijken of er een fout is<br />

opgetreden dient u na het ophalen van een response te controleren of er een fout is opgetreden<br />

door het aanroepen van de volgende functie:<br />

Copyright © ING. Versie 2.3, april 2010 Pag 21 van 26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!