Onjuiste betaling door betalen via QR-code op de Cloud-website

Als ik de QR-code scan voor de betaling van een factuur op de website, zoals op Log on, dan is de betaling incorrect.

Voor een factuur van EUR 71,39 wordt enkel EUR 71,00 overgemaakt.

Vreemd genoeg staat dit bedrag ook bij “Openstaand Bedrag” in de linkerkolom.

De oorzaak is een bug in het case statement van Invantive UniversalSQL. Dit statement wordt gebruikt in de interne verwerking van facturen en betalingen.

Het volgende statement geeft als resultaat van c de waarde 123 in plaats van 123.45:

select case 
       when false 
       then 456 
       else 123.45 
       end 
       c

De datatypebepaling wordt gebaseerd enkel op de eerste then, maar had in dit geval breder gemoeten.

Een bug hiervoor is geregistreerd en een oplossing zal binnenkort in productie genomen worden.