The open-source solution is affixing your credit card (or an "additional cardholder" card) to the back of your phone.
Google Pay, Apple Pay, Samsung Pay are the ones I know of. My bank's app used to be able to do mobile payments but they stopped unfortunately. Banks bristle at the fact there could be open source solutions to anything in the financial sector, it could take away from their upcharging and parasitism.
Security-wise that is significantly worse. Google Pay generates a random card number per transaction and isn't active when the phone is locked.
I keep my credit cards in an NFC blocking sleeves because the passive NFC can't be turned off. Someone could literally bump into you and cause a transaction.