Do you have any equipment, like a BT Home hub or a BT YouView box?
Did you give BT 30 days notice that you were leaving?
To stop your BT products (such as phone, broadband, TV, Calling Features), you'll need to give us a minimum 30 days' notice.
If you want to stop the service before the 30-day period ends, you'll be charged for the remaining days.
Virgin Media would have told BT that they were taking over your service and your number on the 13th or 14th, which is why you got the message from BT.
The charge would have included the deferred cost of any supplied equipment, if you were still within your minimum term.
The charges would possibly be 30 days from the 13th January plus deferred equipment charges, which is why its a large amount.
BT would charge you for the home hub if you had not completed the minmum term. As to the rest of the charges, you would have to ask BT.
Its usually best to wait until you are out of contract, before changing provider.
The latest T&Cs are here https://www.bt.com/terms/post11thjan2019voiceandbroadband/
I think the issue is that you cancelled while still in a contract, so the 14 days may not apply.
c. You can cancel the agreement at any time by giving us:
If you're within the minimum term, you may have to pay a fee for cancelling early.
The only way I could see you could save the cost, would be to cancel your move to Virgin Media, until your BT contact ends, then BT could be given the 14 days notice as specified.
You would have to let BT know that is what you want to do.
The charges will be based on the fact the you informed Virgin that you want to move to them and they in turn contacted BT.
Because you did this on 13th January it would not be giving BT the correct amount of notice, in your case I belive this would be 30 days notice because the ISP you are moving to is Virgin who do not use the Openreach infrastructure so in effect you are ceasing your line and not transferring it to the "new" ISP through an approved switching process.
To clarify if that is the case I would suggest that you phone the number supplied by BT and ask them why there is a charge.
Can you remember for certain when your BT service started or when you last accepted a new minimum term, TBH if the early termination charges are £140 that seems more than the charges that would apply if it were just a discrepancy between 14 day notice for regular migrations and 30 days if quitting completely.
If you asked to port the phone number and VM used the correct process ( VM giving your notice to BT), and this does seem to have been done as you got a 'sorry to see you go' letter, if you were not bothered about the phone number and didn't ask for a port VM probably wouldn't inform BT , you would have to do that yourself, but that doesn't seem to be an issue.
The VM network is a completely separate one, so if you got a new number , the BT service would stay until you told them to stop it, VM asking for the number stops the service as you cannot have a BT line without a number on it, once the number goes so to does the account the number was associated with.
It could be what you think of as your end of minimum term date ( not end of contract ) is wrong and it's a lot later than 25th Jan, if you haven't already done so, I would check what date your ETC's are based on, and check against any emails from BT welcoming you, or advising you of any new 'deal' and any 'new' contractual dates, it could be you thought you had a 12 month term but it was 18 , or you accepted an offer from BT that gave you a new minimum term later than 25 Jan
£140.24 is too much to have 1 day left on the contract, I'd say you have a minimum of 3 months unless part of that is a deferred payment charge for equipment.
30 days notice is only required to cancel, in your case you're switching so that takes around 14 days, you won't be charged for any service after you leave.
The sorry to see you leave email will have equipment listed, so unless it states it's for a hub or Youview box then you left with several months left on your minimum term.
It's not too late to cancel and avoid the charge, tell Virgin to hold off or mention you have early termination charges, some providers will contribute towards exit fees, ring 0800 800 150 and ask for the Loyalty team, they'll be able to explain the charges and may even offer you a loyalty deal to stay with BT.