It is a PITA but take ownership.
Either your card issuer is withholding or declining payment or BA systems are not completing the transaction.
Call your card issuer and ask if they are seeing a request for payment from BA and if they are declining payment or responsible in any way for the payment not going through. Assuming that isn't the problem, call BA and explain that the problem is absolutely with BA and ask how they can will rectify this.