I feel like the solution is too simple and obvious, sine we're really not doing anything new. There are plenty of similar actions people perform daily without the process causing much stress or anguish.
Every day I use a chip card to enter into my building and don't spend an extra moment thinking about it. I then insert my credit card into a machine to get my parking validated at the end of every day, which is the same physical action as using a chip reader though that machine technically reads my magnetic strip.
Here's the two things these processes do that make them so successful:
For one, they don't make a noise until the interaction has succeeded. Currently, the card reader beeps and boops and flashes the whole time through. What does one beep mean compared to another? Why does it go crazy if I don't remove my card soon enough? People get anxious about hearing that annoying beeping noise so they sometimes pull their cards out preemptively to avoid hearing it. It feels like you're being punished for doing something right. The system should chime pleasantly once the transaction is completed: the user then feels rewarded, takes their card, and doesn't feel like society as a whole is collapsing because everything won't stop beeping at them. If the transaction fails, show the user that, but don't make a noise. The worst thing ever would be if everyone in line heard that your checking account is overdrawn.
Secondly, they focus on what the user should do, not what the machine is doing. All we should have to think about is putting the card in the reader, waiting, and then pulling it out. The user shouldn't have to care what is going on in some server farm in Germany. We can break this down to three easy steps:
- Insert Card

- Please Wait (and provide a signature if needed)

- Remove Card

Was that really so hard? NO. Now take your card, go home, and enjoy your new collectible Tanya Harding baseball bat.