New Location

As of August, 2010, the USAA Web BillPay Timeout Buster is now 'USAA Timeout Buster', available at addons.mozilla.org. It now is a Firefox addon (not requiring GreaseMonkey). USAA changed their timeout protocol (presumably to stop the USAA Timeout Buster from working!), but I have worked around that.




Summary

People who use USAA's Web BillPay bill payment service run the risk of damaging their credit scores, if they enter their bill payment information, and the following page times out as they are doing other things. If this happens, either they run the risk of bouncing a check, or having a late bill payment. This program changes the USAA 'switch to a special timeout page' timeout system, to one that alerts you to the timeout and keeps the page as it is (so you remember what you were doing).

This program works if you use FireFox with the GreaseMonkey add-on. Warning: Although this program should be perfectly safe, you should always be very careful running programs that run while you are on banking sites!

Installation

To install the program, just go to addons.mozilla.org. click here, and click 'Install'. After installing, go to a USAA page, and you should see 'Page Timeout: 21m' (or however many minutes the timeout on that page happens to be). Then, wait for the page to timeout, to make sure that the program is working.

The Problem

USAA (an organization providing primarily insurance and banking services) has a timeout on each page on their website, that removes almost any evidence of the page you were last on (I've seen 21, 42, and 61 minutes). So if you leave your computer, or are working on something else on the computer for too long, you'll "lose your place", so to speak. Typically, while being a nuisance, it isn't much of a problem; if you were planning to check your savings account balance or retreive a document, you'll likely remember again.

But, when paying bills, you're pretty much guaranteed bad credit if your memory isn't flawless and you do multiple things on the computer at the same time. That's because USAA's Web BillPay requires you to "confirm or cancel" bills after you enter all the information. I enter the bill into my checkbook before confirming (because when I click the 'confirm' button, I work on something else on the computer, to maximize my efficiency). That runs the risk of the page timing out, not leaving a reminder to confirm the transaction. USAA Customer Service recommends entering the information in your checkbook after you confirm the transaction, but by clicking the CONFIRM button first and going to another task, you run the risk of forgetting to record the transaction in your checkbook. Either way, you are guaranteed to either bounce a check or miss a bill payment if you get that timeout page and forget what you hadn't yet done. Either way can hurt your credit score.

I've forgotten to write the bill in my checkbook a few times, so I switched to recording it in the checkbook before hitting CONFIRM -- but now twice I haven't confirmed the transaction (or so USAA claims!). The second time, that hit me with a late fee and interest of about $70 (USAA covered the first $50, per my interpretation of their Terms and Conditions). They also revoked a promotional offer, and warned that if it happened again, my APR would skyrocket (not a big deal for me, since I pay the full amount every month, but still disconcerting!). You would *think* that if someone went to the trouble of entering all the information about a bill, and they decided against having the bill paid, they wouldn't just let the page time out. Especially for "E-bills" where USAA knows the amount due and the due date, and knows that if the payment doesn't get there on time, there will be late fees.

If you use the USAA website, you've likely many times seen the timeout page and say to yourself "Gee, something at USAA timed out -- I hope it wasn't important!" It isn't always USAA BillPay; perhaps you are considering getting life insurance, go to the life insurance page, and leave it there as a reminder that you need to get life insurance (isn't that what open tabs are for in web browsers?). But a few days later, you go back, and see a timeout page, with no recollection of what had been there. Poof, you forget all about getting life insurance.

So, using USAA Web BillPay it is impossible to avoid potential credit issues unless your memory is excellent (actually, it has to be perfect).

I do think that USAA is a wonderful organization. I've had the occasional problem with them, but like most members, I find that overall they do an excellent job. That said, this is a nasty problem that USAA really, really has to fix. In about 15 years of using the web, I've never encountered another website with an issue like this. Worse, [1] They ask you to approve the transaction or cancel it, they assume that a timeout means that you want to cancel (which has never been the case with me), and [2] they refuse to honor their guarantee which *does* apply in this situation.

How It Works

This script simply waits until 30 seconds before the timeout is to occur, and sends a "window.stop()" instruction, which stops "loading" of the window (which I believe is the same as hitting the ESC key). This will stop the META REFRESH that USAA uses to accomplish their timeout. It waits that long to help ensure that anything else the page does will work (e.g. all pictures load).

The addon listens for any requests to change the current webpage to the webpage that USAA redirects to when a timeout occurs. If such a request is made, it simply cancels the request. This works out better than the old way, as the addon doesn't even know that you are on the USAA website.

The addon does a couple other things, too. It also adds a red warning box to the USAA page that timed out, so you won't be tempted to take an action after you've been logged out (USAA will just direct you to a login page if you do). It also generates a pop-up box, which will get your attention if you are doing something else on the computer. Finally, it will generate a logfile entry on the USAA servers, so they will know that a timeout occurred (rather than you simply closing the window). I tried a number of other options; the most elegant (stopping the META REFRESH) doesn't seem possible via JavaScript, and you can't add a note to the timeout page telling you the page you had just been on (since the URL doesn't distinguish between entering bill information versus confirming it).

Disclaimers

You are using this program at your own risk. To the best of my knowledge, it should work fine. It is a pretty simple script. But with computers, anything can go wrong. Note that there is a slight chance that USAA may handle a timeout differently than it handles a closed window, in which case USAA may think that you closed the window. Also, there is a slight chance that the 'window.stop()' function that it uses to disable the META REFRESH could stop something else (such as an image loading). But I can't imagine the program would do anything that would interfere in any way with your usage of USAA. Also, this program is not in any way affiliated with USAA.