It boils down to the project scope. As long as you are comfortable with delivering what they're asking for, you should go for it.
For example a client might ask, "I want to a simple web app that does x and charges users a monthly subscription for access." Can you build out the functionality to carry out whatever x is and set up something like Stripe? If so, take the job, if not say you're booked and move on/forward them on to someone else.
Also keep in mind, if they knew someone better for the job, they probably wouldn't be talking to you (for example, your non-technical friend approaches you to build a simple webapp, you're probably the most technical person they know, if they knew a rockstar or whatever, they probably would have asked them instead).