How I fixed TouchID on My MacBook After 3 Months

March 4, 2025 by Nick

Pretty much from the day I started using my new M4 Pro MacBook, I wasn’t able to use Apple Pay. I had issues with it before so I chalked it up to a bad macOS version and called it a day. Updates to Sonoma came and went, and the issue persisted. I just wouldn’t use Apple Pay on my computer and dealt with the slight frustration. Not a big deal.

Fast forward to me doing lots and lots of iOS development, and my frustration with App Store Connect growing beyond what’s bearable. So I decided to give the Helm Mac App a try. Or so I thought. I was unable to install it because, you guessed it, the installation tried to read my finger print.

Even talking to the Apple phone support for an hour and trying to reset all kinds of settings did nothing. We unchecked all TouchID options, and by all measures, it should’ve just asked me for my password. But it didn’t. And I couldn’t install any new (free) apps.

So I opened a Feedback Assistant, formerly Radar, and talked to my friend about it, who used to work at Apple for a bit, hoping he might know someone who might know something.

I tried to upload logs to my report, and to install additional Apple Pay and TouchID logging profiles. The section of the apple dev website where these are stored seemed to be broken, though, and all those profiles failed to install with a “expiration date expired” message. But hey, just another drip of broken Apple software into the ocean of broken Apple stuff.

Finally, though, a friend of a friend had an idea that cracked this case wide open. The animation he saw was consistent with another window blocking the TouchID pop-up. He asked me to quit all third party apps one by one to see if any window manager, etc., could block the window being the foremost app.

And here’s where this turns into a huge self-own. Because sure enough, after closing one particular app, the problem went away. The Unblocked To-Do List App, developed by yours truly.

In fact, it wasn’t just that one, but also the Unlimited Clipboard History—another app from the outstanding developer—that uses the same overlay mechanism.

I wrote both apps to have a global system overlay that appears when pressing a shortcut. ⌘ ⇧ C and ⌃ ␣ respectively. Both apps have a NSWindow that hosts a SwiftUI ContentView. Both content views fade to 0% opacity and the windows are disabled when the overlays disappear.

Turns out that’s not enough for greedy TouchID, which can’t have any invisible pixels blocking its beautiful UI from the eyes of the user. So after adding another step to the hiding method—moving the window out of the way and sizing it to 1x1 pixel—the issue was finally fixed. For anyone following along at home:

window.setFrame(NSRect(x: -1, y: -1, width: 1, height: 1), display: false, animate: false)

And that’s it. Two app updates and two days of waiting for the app store review team to approve this change later, my TouchID was finally fixed. Apologies to the 3 people out there who use any of these apps—I’m sure the U.S. economy is breathing a sigh of relief after this major impediment has been lifted and Americans can finally max out their credit cards on their laptops again.