If you pay the bill by card with four days of the direct debit payment, virgin have already told the bank how much the bill is. The banks need time to set up the payments multi millions to be paid every day, so they force Virgin to give then five working days notice of the payment.
If you want to pay in advance do it at least a week before the payment is due
Welcome to the community and thanks for popping by with your bill query.
Regarding what you have said above here is some information that may help explain this process for you:
Direct Debits (DD's) are set by the bill when this is created and DO NOT adjust or cancel themselves with us for the month if you make a manual payment with us, eg, via eBilling.
If you make a manual payment and have an active DD with us, you have to call us via 150 or 0345 454 1111 or speak to us via Webchat for us to arrange to stop the pending payment you have via DD.
If the DD is due to be debited within the next 3-5 days, this would need to be cancelled with the bank, as we may not be able to stop this individual transaction from processing. We pass payment requests in advance to the banks ready to process the DD’s on the date they should be taken usually 2-3 working days in advance.
What will happen now as you have paid us twice is that the duplicate payment will credit to the account for you and be used as a payment against the next statement with us.
If you'd like to discuss with in further detail, then please get in touch with the Webchat teams or via phone where they would be happy to go through this with you and how this has impacted your account.