It’s technically possible to give non-admins access to anything that stored in the Discourse database by creating a Data Explorer query that returns the information, then giving a group access to that particular query. I’m assuming that the payment details you’re looking for are stored in the database, but I haven’t looked into that closely.
A role that could be used to give outside contractors access to theme related parts of the admin section would make a lot of sense. There’s generally no need for someone who’s making a quick fix to a theme to have access to user details, api keys, Data Explorer queries, etc.