Symptoms:

  • In Internet Explorer, inline payments (Flex Checkout) fail. However, payments on the external (redirect) payment-page are working fine.
  • After some time, the buyer sees the message "payment failed".
  • In the exception.log the error "integrity constraint violation" shows up.
  • When using another browser, the problem does not occur.


Cause:

Internet Explorer does not proceed with the payment process because the P3P headers are missing. Therefore it assumes a malicious website.


Solution:

The P3P headers must be transmitted. This can be done as follows:


Configuration in .htaccess file:

<ifModule mod_headers.c>
Header set P3P "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\""
</ifModule>


 Configuration in the Apache vHost:

<VirtualHost>
Header set P3P 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'
</VirtualHost>