The Authorize plugin seems to me to have multiple problems
clean install on vm 3.8.8 .. std checkout
when a CC number is entered and the field looses focus onchange="javascript:checkAuthorizeNet(2, this);" is triggered
function checkAuthorizeNet(id, el)
{
ccError=razCCerror(id);
CheckCreditCardNumber(el.value, id);
if (!ccError) {
el.value=\'\';}
}
but the js file components/com_virtuemart/assets/js/vmcreditcard.js isn't loaded afaik and these throw errors
adding $html .= '<script src="/components/com_virtuemart/assets/js/vmcreditcard.js"></script>'; loads the above functions but this again fails on
if (cardname.toLowerCase () == cards
.name.toLowerCase()) {
in the checkCreditCard() function as cardname is 0
...
just returning true for checkAuthorizeNet(2, this) doesn't help the disappearing fields though, when you click T&Cs and on this particular install passing the cc details ( without VM OPC selected) is very flaky ..
the majority of the time no details are stored in the $cart and as reported cleared when any other function is called.

Jenks .. do u have any clients with a working Authorize on the stand checkout on 3.8.8. ?
My two clients with Authorize both report that it is broken but aren't sure from when... the method isn't used often.