fix bug at the time of the payment when stock=0 and checkAvailableStock=0

if stock=0 and checkAvailableStock=0
and forbid negative stock
Sorry, my mistake.
But there's a condition: 
a &isin; [1, +&infin;],
so a > 0 is always false and throws an exception.

And here's the good explain:
The exception is thrown if a > b, so to pass the test: a <= b 
if  a <= b, then 0 <= b - a. It can't be negative. QED