Can a Smart Contract Use More of a Token than What Is Specified in the Allowance?
No, a smart contract cannot use more tokens than the amount specified in the allowance. The logic is enforced by the token's own smart contract code, as defined by the ERC-20 standard.
When the spender contract calls the transferFrom() function, the token contract checks if the requested amount is less than or equal to the current allowance. If the amount exceeds the allowance, the transaction will fail, protecting the user's funds beyond the approved limit.