Normally 3 days, occasionally 2. Not sure of the whys but its like when you get something refunded in a shop, although the purchase was instant the refund takes a few days.
The bank takes your money straight away,the retailer knows he has got the money but does not show in his bank for 2-3 days,and the same works in advance for refunds or withdrawals.